Универсальный внешний накопитель для всех iOS-устройств, совместим с PC/Mac, Android
Header Banner
8 800 100 5771 | +7 495 540 4266
c 9:00 до 24:00 пн-пт | c 10:00 до 18:00 сб
0 Comments

Лучшие IDE для Raspberry Pi / Хабр

Raspberry Pi — это, может, и не единственный одноплатный компьютер (single-board computer, SBC) на рынке, но он, определённо, является самым популярным. Raspberry Pi пользуется огромное количество людей, он является центром экосистемы, в которую входит множество официальных и неофициальных ресурсов и изделий — от книг и дополнительного оборудования до форумов и учебных курсов. Raspberry Pi снабжён отличной, поддерживаемой в актуальном состоянии документацией. Благодаря Raspberry Pi Foundation регулярно выходят новые модели SBC, появляются и усовершенствования моделей предыдущих поколений. Raspberry Pi, учитывая его серьёзную вычислительную мощность, отлично показывает себя в роли настольного компьютера. Он подходит и тем, кто занимается программированием.


Raspberry Pi

Из этого материала вы узнаете о том, почему Raspberry Pi имеет смысл рассматривать как компьютер, подходящий для разработчика ПО. Здесь же мы поговорим о выборе интегрированной среды разработки (integrated development environment, IDE). Среди рассмотренных IDE можно найти инструменты для программирования практически на любом языке.

Почему Raspberry Pi отлично подходит в качестве настольного компьютера программиста?

Raspberry Pi, скромный одноплатный компьютер размером с кредитную карточку, скрывает в себе гораздо большую вычислительную мощь, чем кажется на первый взгляд. Так, например, хотя новый Raspberry Pi 4 и не крупнее сравнимых моделей предыдущих поколений, он несёт в себе много улучшений. В нём больше памяти, которая быстрее, чем раньше. Есть варианты с 1, 2, 4Гб RAM, а через некоторое время после выхода появился и вариант с 8Гб памяти. В Pi 4 имеется новая однокристальная система Broadcom BCM2711 и четырёхъядерный 64-битный процессор Cortex-A72 ARM v8, работающий на частоте 1,5 ГГц. В распоряжении пользователя есть пара USB 2.0-портов, два HDMI-порта, способных выводить 4K-видео, двухдиапазонный Wi-Fi-адаптер, Bluetooth 5. 0 BLE. Raspberry Pi обладает всеми атрибутами нормального настольного компьютера.

Я, в качестве эксперимента, неделю, в роли настольного компьютера, пользовался Raspberry Pi с 4 Гб памяти. Я с лёгкостью справился со всеми своими обычными делами. Я писал тексты, редактировал изображения и аудиозаписи, смотрел веб-страницы, открывая кучу вкладок браузера. Raspberry Pi достойно справился с этими задачами. А если в таком же качестве использовать 8-гигабайтный вариант платы, то можно будет совершенно спокойно работать, запуская сразу много программ. При таком раскладе скорее окажется так, что работой будет перегружен процессор, но забить под завязку память, вероятно, не удастся. Для Raspberry Pi существует множество дистрибутивов Linux. Поэтому перед нами — отличный миниатюрный компьютер, который можно приспособить под решение самых разных задач. Если поставить на Pi с 4 или 8 Гб памяти какой-нибудь 64-битный дистрибутив Linux, вроде Ubuntu или Raspberry Pi OS (ранее эта ОС называлась Raspbian), можно будет на полную мощность задействовать ресурсы памяти устройства и запускать 64-битные приложения.

В результате оказывается, что у программиста, который решил сделать этот компьютер рабочей машиной, есть возможность воспользоваться целой кучей IDE.

У того, что на базе Raspberry Pi можно создать отличный компьютер для программиста, есть несколько причин:

  • Множество совместимых дистрибутивов Linux.
  • Доступность.
  • Маленькие размеры.
  • Отличное соотношение цена/качество.
  • Наличие массы IDE.

Geany: лучшая многоязычная IDE


Geany

Geany — это нетребовательная к ресурсам и весьма функциональная IDE, пользовательский интерфейс которой, очень хорошо сделанный, основан на GTK+ и Scintilla. Это — универсальная система, поддерживающая несколько языков программирования. В частности — PHP, Java, Perl, Ruby, C++, C и C#. Geany может похвастаться множеством различных полезных возможностей. Среди них — автозавершение ввода, подсветка синтаксиса, возможность сворачивания и разворачивания блоков кода.

Эту IDE, потребляющую немного системных ресурсов и дающую возможность писать на множестве языков, можно признать лучшей интегрированной средой разработки для Raspberry Pi.

Среди основных особенностей Geany можно отметить следующие:

  • Поддержка множества языков (PHP, Java, Perl, Ruby, C++, C#).
  • Автозавершение ввода, подсветка синтаксиса, работа с блоками кода.
  • Скромные системные требования.

BlueJ: лучшая IDE для Java


BlueJ

BlueJ — это замечательная IDE для Java-разработчиков. Она отличается простым и удобным интерфейсом, существует её портативный вариант. Это — хороший инструмент для тех, кто занимается объектно-ориентированным программированием. BlueJ, помимо написания кода, позволяет выполнять программы. Изначально эта IDE была создана в качестве инструмента для обучения программированию Поэтому она подойдёт начинающим и опытным разработчикам. Учебное прошлое IDE видно, например, в её возможности визуализировать разные сущности и процессы вроде классов, объектов и вызова функций.

А опенсорсная библиотека Pi4J из Java SE позволяет работать с аппаратным обеспечением, подключённым к компьютеру.

Среди основных особенностей BlueJ отметим следующие:

  • Поддержка Java.
  • Отличная приспособленность для объектно-ориентированного программирования.
  • Наличие большого количества справочных материалов (вроде книг и документации), хорошая техподдержка.

Thonny: лучшая IDE для начинающих Python-разработчиков


Thonny

Thonny — это продвинутая Python-IDE, которая хорошо подходит для новичков. Хотя пользоваться ей вполне могут и профессионалы, некоторые черты этой IDE говорят о том, что она особенно хороша для начинающих питонистов. Она даёт в распоряжение программиста возможности по пошаговому выполнению выражений, средства визуализации стека вызовов и множество других полезных мелочей. Если новичок возьмёт всё это на вооружение — он не только улучшит свои навыки Python-программирования, но и будет лучше понимать то, что происходит во время выполнения кода.

Вот главные особенности Thonny:

  • Поддержка Python.
  • Простой в использовании отладчик.
  • Удобство для новичков.
  • Вычисление выражений.
  • Подсветка синтаксических ошибок.
  • Вспомогательные средства, помогающие разобраться в коде.

Ninja-IDE


Ninja-IDE

Редактор кода Ninja-IDE описан на его сайте как «Not Just Another IDE» («не просто ещё одна IDE»). Это — IDE, написанная на Python, которая просто восхитительно работает на Raspberry Pi. Nindja — это до крайности нетребовательный и приятный редактор кода, который подходит для разработки на многих языках, в число которых входит и Python. Например, здесь имеется очень удобное средство для поиска нужных фрагментов кода. Вызывается оно комбинацией клавиш

CTRL + K. Тут, кроме того, есть поддержка множества других полезных возможностей, что делает Ninja отличным выбором для программиста. Среди того, что умеет Ninja, можно отметить автоматическую расстановку отступов, работу с файлами, подсветку ошибок в соответствии с PEP 8. Более того, в Ninja есть инструменты для управления проектами, этот редактор поддерживает целую кучу плагинов.

Вот главные особенности Ninja-IDE:

  • Скромные системные требования.
  • Подсветка ошибок.
  • Мощные средства для поиска фрагментов кода.
  • Автоматическая расстановка отступов.
  • Инструменты для управления проектами.
  • Множество плагинов.

Greenfoot: лучшая IDE для новичков


Greenfoot

IDE Greenfoot основана на Java. Она ориентирована на обучение программированию. Поэтому в ней можно найти много приятных мелочей вроде системы автозавершения кода и подсветки синтаксиса. Greenfoot отличается чрезвычайно интерактивным интерфейсом, который легко освоить. Хотя этой IDE вполне могут пользоваться и опытные разработчики, она лучше всего подойдёт для, так сказать, «зелёных» программистов.

Вот основные особенности Greenfoot:

  • Ориентированность на новичков.
  • Эта IDE основана на Java.
  • Поддержка Java.
  • Встроенные средства для управления проектами.
  • Автозавершение кода, подсветка синтаксиса, автоматическое исправление ошибок.

IDE Lazarus


Lazarus

Отличная IDE Lazarus, которую можно запустить на Raspberry Pi, отличается кроссплатформенностью и бесплатностью. Она использует компилятор Free Pascal и прекрасно подходит для быстрой разработки. А именно, код она компилирует очень быстро, поддерживает кросс-компиляцию. Код она тоже выполняет с весьма высокой скоростью. Lazarus поддерживает анализ производительности кода. В ней имеется множество встроенных компонентов, а если их окажется недостаточно, то можно найти дополнительные компоненты в файлах пакетов Lazarus. Перед нами — хорошо документированный опенсорсный проект, поддерживающий множество языков программирования.

Среди особенностей Lazarus можно отметить следующие:

  • Быстрая компиляция и быстрое выполнение кода.
  • Удобство использования.
  • Поддержка визуального режима разработки, множество встроенных компонентов, возможность использования дополнительных компонентов.
  • Использование Free Pascal.
  • Поддержка множества языков.

Adafruit WebIDE: лучшая браузерная IDE


Adafruit WebIDE

Большинство IDE нужно загружать и устанавливать. А вот Adafruit WebIDE — это интегрированная среда разработки для Raspberry Pi, основанная на веб-технологиях. Вот видеодемонстрация этой IDE. Учитывая то, что эта IDE работает в браузере, она отлично подходит для программирования на Chromebook и даже для разработки программ на планшетных компьютерах. Adafruit WebIDE может компилировать код, написанный на разных языках программирования. Среди них — JavaScript, Ruby и Python. Но то, что эта IDE работает в браузере, не значит, что она бедна возможностями.

Работая с ней, код можно загружать в Git-репозиторий. Здесь даже имеется встроенный отладчик и система, упрощающая перемещение по коду.

Среди основных особенностей Adafruit WebIDE можно отметить следующие:

  • Работа в браузере.
  • Поддержка загрузки кода в Git-репозитории.
  • Простые компиляция и запуск кода.
  • Наличие отладчика и удобных средств для перемещения по коду.

Code::Blocks: лучшая IDE для начинающих C++-программистов


Code::Blocks 

IDE Code::Blocks ориентирована на C++. Это — бесплатный, опенсорсный, кроссплатформенный проект. Эта IDE поддерживает множество компиляторов, таких, как Clang, Visual C++ и GCC. Это — мощная, но, в то же время, простая и удобная среда разработки. Среди её возможностей — подсветка синтаксиса, автозавершение ввода, поддержка плагинов, возможность работы с блоками кода. Тут имеется интеллектуальный отладчик, с помощью которого удобно искать причины программных ошибок.

Хотя эта IDE была создана для разработки на C++, в список поддерживаемых ей языков входят ещё C и Fortran.

Вот её главные особенности:

  • Интеллектуальный отладчик.
  • Отличная поддержка компиляторов, среди которых можно отметить C++, GCC, Visual C++, Intel C++, Watcom, Borland C++.
  • Поддержка C, C++ и Fortran.
  • Подсветка синтаксиса.
  • Форматирование кода, автозавершение ввода, работа с блоками кода.
  • Поддержка плагинов.

Итоги

Хотя на рабочих столах программистов обычно встречаются компьютеры, работающие под управлением macOS, Linux и, что там говорить, даже Windows, Raspberry Pi при решении многих задач выглядит на их фоне вполне достойно. Это — отличный вариант второго компьютера. На базе Raspberry Pi можно сделать «песочницу» для всяких экспериментов, эта система вполне может стать и первым компьютером, скажем — для ребёнка, который учится программировать. Существует огромное количество различных IDE, которые позволяют использовать Raspberry Pi для написания кода на практически любом языке программирования. Среди этих IDE есть самые разные проекты — от универсальных, до узкоспециализированных. А некоторые IDE уже встроены в операционные системы, устанавливаемые на Raspberry Pi.

Пользуетесь ли вы Raspberry Pi в качестве рабочей машины программиста?

Страница не найдена — Modeling and recognition of 2D/3D images

Поищите используя форму ниже или просмотрите недавние записи.

Найти:

Найти:

Рубрики

  • Android programming
  • Artificial Intelligance
  • CAD Systems API
  • Computer vision
  • Geometric modeling
  • Image recognition
  • Machine Learning
  • Neural networks
  • OOP languages
  • Robotics
  • Unity3D
  • Web
  • WebGL

Темы

  • Защищено: Convolutional Neural Network. Object Landmarks
  • Технологии машинного обучения на простом примере
  • Введение в Unsupervised learning
  • Введение в Deep Q-Learning Network
  • Введение в Q-Learning
  • Защищено: Stereo Vision
  • Keras API models (Sequential, Functional, and Model Subclassing)
  • Защищено: Object detection algorithms
  • Введение в Google Colab (Introduction to Google Colab)
  • Защищено: Архитектуры нейросетей для CV
  • Защищено: Measurements of a human body (Sample plan to create MVP)
  • Защищено: Обзор алгоритмов детекции мимики лица (Overview of algorithms for detecting facial expressions)
  • CMake projects in Visual Studio — Quick start
  • Защищено: Linux C++ проект в Visual Studio
  • Защищено: От регрессии к нейронным сетям (From regression to neural networks)
  • Защищено: Основы калибровки (Calibration Basics)
  • Защищено: Калибровка системы «проектор-экран-камера» (Calibrating the projector-screen-camera system)
  • Защищено: Гомография в примерах (Homography in examples)
  • Защищено: Введение в GPU-программирование
  • Защищено: Методы 3d реконструкции помещений (Methods for 3d reconstruction of premises)
  • Аппроксимация линии по точкам контура через преобразования Хафа (Line approximation by contour points through Hough transforms)
  • Преобразование координат при калибровке роботов (Coordinate transformation when calibrating robots)
  • Защищено: Определение центроида лазерного пятна на цифровом изображении (Determination of the centroid of the laser spot on a digital image)
  • Start на GitHub
  • Инструменты для машинного обучения через нейросети (Machine learning via neural networks)
  • Оценка глубины по 360-градусному изображению (Depth estimation from a 360-degree image)
  • Алгоритмы регистрации облаков точек (Point cloud registration algorithms)
  • Регистрация облаков точек с оценкой соответствия. Основы (Compliance-Assessed Point Cloud Registration. The basics)
  • Cемантическая сегментация, панорама и фотограмметрия (Semantic segmentation, panorama and photogrammetry)
  • Защищено: Калибровка камеры (Camera Calibration)
  • Преобразование mesh-модели в модель B-rep (Conversion mesh-model в B-rep model)
  • Фотограмметрия (Photogrammetry)
  • От облака точек к поверхности (From point cloud to surface)
  • Пример организации экзамена в ZOOM (ZOOM exam organization example)
  • Защищено: Arduino проект «Автомобиль, который избегает препятствий» (Arduino project «A car that avoids obstacles»)
  • Основы программирования Arduino (Arduino programming basics)
  • Кратко об Arduino и Raspberry Pi (Briefly about Arduino and Raspberry Pi)
  • Подключение Raspberry Pi камеры и инсталляция OpenCV (Connecting a Raspberry Pi camera and OpenCV installing )
  • Основы программирования на Raspberry Pi (Raspberry Pi programming basics)
  • Face recognition. Python, DLIB
  • Распознавание лиц с IP камер. Выбор, хранение и обработка данных для принятия решения (Face recognition from IP cameras. Selection, storage and processing of data for decision making)
  • Адекватность и оптимальность нейронной сети на примере распознавания поворота головы (Adequacy and optimality of the neural network for detecting head rotation)
  • Машинное обучение распознавать поворот лица (Machine learning to recognize face turn)
  • Introduction to AI and references
  • Защищено: Tensorflow, Python, Visual Studio. Quick start
  • AI based on Unity ML Agents. Quick start
  • Модификация простой игры на Unity (Modification of a simple game on Unity)
  • WEB на Python с Django в Visual Studio
  • WEB на Python с Flask в Visual Studio
  • Обнаружение лица и выделение характерных точек (Face Detection in Python)
  • Нейросеть для классификации фруктов на Python (Fruit Neural Network)
  • Основы построения нейронных сетей на Python (numpy) в Visual Studio (Python numpy NN in Visual Studio)
  • Быстрый старт в WebGL (Quickstart in WebGL)
  • Быстрый старт в WEB программирование (Quickstart in WEB programming)
  • Быстрый старт с Qt C++ в Visual Studio (Quickstart with Qt C++ in Visual Studio)
  • Быстрый старт с Python в Visual Studio (Quickstart with Python in Visual Studio)
  • Распознавание лиц. 3D- реконструкция ASM модели (Face Recognition. 3D reconstruction of ASM)
  • Идентификация по множеству признаков при помощи нейросети (Identification by multiple features. Using neural network)
  • Идентификация по множеству признаков. Основы (Identification by multiple features. Basics)
  • Unity3D симулятор «Умная змейка со стереозрением» (Unity3D simulator «Smart snake with stereo vision»)
  • Игра “Snake” на Unity3D (The game “Snake” on Unity3D)
  • Основы Unity3D (Unity3D Basics)
  • Архитектура WebGL приложения для чайников (WebGL application architecture for Dummies)
  • Оптимизация OpenGL приложений (Optimizing OpenGL applications)
  • Взаимодействие HTML5 и JavaScript (HTML5 and JavaScript interaction)
  • Shaders in Unity3d
  • Матрицы поворота, углы Эйлера и кватернионы (Rotation matrices, Euler angles and quaternions)
  • Выделение объектов на изображении по методу Виолы-Джонса (Object selection in the image according to the Viola-Jones method)
  • CMake компоновка OpenCV (CMake OpenCV layout)
  • Распознавание лиц на основе OpenCV для C++ (Facial Recognition based on OpenCV C++)
  • OpenCV in Android
  • Введение в OpenCV программирование на C++ (Introduction to OpenCV C++ programming)
  • Основы компьютерного зрения  (Basics of computer vision — CV)
  • 2D/3D моделирование в Android (2D/3D modeling in Android)
  • Введение в Android программирование (Introduction to Android Programming)
  • Поиск объектов на изображении (Search for objects in the image)
  • Алгоритмы вычитания фона (Background Subtraction Algorithms)
  • Поиск похожего изображения (Search for a similar image)
  • Выделение особенностей на изображении (Highlighting features in the image)
  • Сегментация изображения (Image segmentation)
  • Выделение, отслеживание и описание контуров (Select, track and describe contours)
  • Предварительная обработка изображений (Preliminary image processing)
  • Алгоритмы cжатия изображений (Image Compression Algorithms)
  • Формирование изображения в цифровой камере (Imaging in a digital camera)
  • Пошаговый чертеж в AutoCAD (Step by step drawing in AutoCAD)
  • VLisp параметрический чертеж (VLisp parametric drawing)
  • VLISP 3D модель (VLISP 3D model)
  • Доступ к dxf на VLisp (Access dxf on VLisp)
  • Алгоритмы распознавания геометрических фигур (Algorithms for recognition of geometric shapes)
  • Формат и чтение BMP файла (BMP format)
  • ООП на VB примерах (OOP in VB examples)
  • Доступ к файлам на языке VB (Access to files on the VB language)
  • Язык Си в примерах (C language in examples)
  • ООП на С++ примерах (OOP in C ++ examples)
  • ООП на MFС примерах (OOP in MFC examples)
  • ООП на Java примерах (OOP in Java examples)
  • 2D графика на основе WinApi C++ (2D graphics based on WinApi C++)
  • 3D графика на основе WinApi C++ (3D graphics based on WinApi C++)
  • 3D графика на основе OpenGL WinApi C++ (3D graphics based on OpenGL WinApi C++)
  • Имитация полета крылатой ракеты на OpenGL WinApi C++ (Imitation of the flight of a cruise missile on OpenGL WinApi C++)

Поделится статьей

Как написать и скомпилировать программу на C в Raspberry Pi 4

Raspberry Pi

8 месяцев назад

от Awais Khan

В настоящее время язык программирования C приобретает все большее значение по сравнению с другими языками из-за его простого синтаксиса. Программа, написанная на языке C, может использоваться на самых разных платформах, включая персональные компьютеры, микроконтроллеры и так далее. Другое главное преимущество программирования на C заключается в том, что оно работает почти так же быстро, как код на ассемблере, и вы можете легко управлять мощными машинами с помощью программирования на C.

Если вы являетесь пользователем Raspberry Pi и хотите начать писать код на языке C, вам будет приятно узнать, что вы можете легко кодировать на своем Raspberry Pi, поскольку вам просто нужно хорошо понимать код и IDE для написания. и скомпилировать код.

Как написать и скомпилировать программу на языке C в Raspberry Pi 4

Здесь, в этой статье, вы узнаете, как писать и скомпилировать программу на языке C в Raspberry Pi 4, и прежде чем приступить к написанию своего первого кода, вам, вероятно, потребуется среда, в которой вы можете легко писать и компилировать свой код.

Geany — одна из наиболее часто используемых платформ пользователями Raspberry Pi, и вы можете писать код на Python, C или C++, и она считается достаточно быстрой IDE, которая может компилировать ваш код в кратчайшие сроки. Geany предустановлен в ОС Raspberry Pi, и вы можете запустить его, перейдя в меню Raspberry Pi и в опции «Программирование», вы увидите «Редактор Geany Programmer’s Editor» и щелкните по нему, и он откроется на ваш рабочий стол Raspberry Pi.

Если вы хотите написать свой первый код на языке C, вам нужно будет выполнить следующие шаги.

Шаг 1: Первое, что вам нужно сделать, это создать исходный файл в текстовом редакторе Geany. Для этого откройте Geany IDE и создайте новый файл, щелкнув параметр, как показано на изображении ниже.

Шаг 2: Когда вы нажмете кнопку «Создать новый файл», на Geany появится окно, в котором вы можете написать свой C-код.

Шаг 3: Теперь вы можете начать писать свой первый базовый код на C, который печатает текст «Добро пожаловать в подсказку Linux», и код будет таким, как показано на рисунке ниже.

#include h>

int main(){

printf(«Добро пожаловать в Linux»)

return 0;

}

Шаг 4: Нажмите на опцию «Документ», затем выберите «Установить тип файла» и в «Опции языков программирования» выберите «Исходный файл C». Когда вы это сделаете, вы увидите код, который будет выглядеть так, как показано на изображении ниже.

Шаг 5: После написания приведенного выше кода нажмите «Ctrl+S», чтобы сохранить файл с именем по вашему выбору, создав папку с именем «C-коды» и сохраните файл в ней.

Шаг 6: Теперь выберите опцию «Построить», как показано на изображении ниже, или нажмите кнопку «F9» на клавиатуре.

Вы увидите, что ваш код успешно встроен в компилятор.

Шаг 7: Теперь нажмите «Запустить или просмотреть текущий файл», чтобы запустить код.

Шаг 8: Когда вы нажмете на него, вы увидите диалоговое окно, открытое на вашем экране, где вы увидите свое сообщение «Добро пожаловать в подсказку Linux», которое является вашим необходимым выводом.

Заключение

Язык программирования C прост в написании, изучении и быстр, он предлагает множество библиотек. Raspberry Pi — одно из устройств, которое может запускать и выполнять программы на C очень простым способом. Теперь, когда вы успешно научились писать и компилировать свою программу на C в среде IDE в Raspberry Pi 4, вам следует начать писать свои собственные коды на языке C, потому что это единственный способ стать экспертом в программировании на C, и вы может легко создавать проекты на нем.

Об авторе

Аваис Хан

По профессии я инженер и научный сотрудник. Мой интерес к Raspberry Pi, встроенным системам и ведению блога привел меня сюда, чтобы поделиться своими знаниями с другими.

Посмотреть все сообщения

Введение в программирование на C и GUI — новая книга от Raspberry Pi Press

Последняя книга от Raspberry Pi Press, Введение в программирование на C и GUI , теперь доступна. Автор Саймон Лонг объясняет, как это было написано…

Learning C

Я очень хорошо помню свой первый день на «правильной» работе. Я только что закончил университет и был рад, что всемирно известная консалтинговая фирма взяла меня на работу инженером-программистом. Мне сказали, что большая часть моей работы будет на языке C, которым я никогда не пользовался, поэтому первым делом нужно было изучить его.

Мой менеджер вручил мне копию книги Kernighan & Ritchie The C Programming Language , указал на терминал в углу и сказал: «Это компилятор». Пошли!’, и оставил меня с этим. Итак, я начал читать книгу, которую большинство инженеров-программистов ласково называют «9».0099 К&Р ’.

Я не продвинулся далеко. K&R — это в основном спецификация языка Си. Деннис Ритчи, псевдоним «R», изобрел C, и хотя книга, которую он помог написать, является отличным справочным пособием, она не является хорошим введением для новичка. Как и большинство людей, знающих свой предмет вдоль и поперек, авторы склонны считать, что вы знаете больше, чем на самом деле, поэтому чтение книги, когда вы вообще ничего не знаете о языке, немного расстраивает. Я знаю людей, которые выучили C с K&R, и я им безмерно уважаю!

В конце концов я выучил C на работе по ходу дела; Я смотрел чужой код, собирал вещи вместе, выяснял, почему что-то не работает, просил помощи у коллег, наделал много ошибок и постепенно освоился. Я нашел только одну книгу, которая была полезна для новичка: она называлась C For Yourself и на самом деле была одним из руководств по давно исчезнувшему компилятору Microsoft QuickC. Эту книгу сейчас невозможно найти, поэтому мне всегда приходилось говорить людям, что лучшая книга для изучения C для новичков — это «9».0099 C Для себя,  но вы не сможете найти копию!” обсуждали возможные серии для журнала, и мы подумали о создании руководства по написанию приложений с графическим интерфейсом на C — это то, чем я занимаюсь в своей повседневной работе в Raspberry Pi, поэтому это казалось логичным началом. Мы поняли, что читателю нужно знать C, чтобы извлечь пользу из этой серии, и он не сможет найти копию 9. 0099 C Для себя . Мы решили, что сначала я должен решить эту проблему, поэтому я написал оригинальное руководство для начинающих по серии C для MagPi.

(Здесь я должен подчеркнуть, что эта серия предназначена для абсолютных новичков. Я открыто признаю, что упростил части языка, чтобы читателю не приходилось впитывать столько за один раз. Так что да, Я знаю о возврате кода успеха/неудачи из программы, но новичкам действительно не нужно узнавать об этом в первой главе, особенно когда многим никогда не понадобится писать программу, которая это делает. объяснил до главы 9.)

Итак, руководство для начинающих по языку C появилось первым, и теперь я приступил к написанию второй части, которую я планировал написать с самого начала. В разделе, посвященном графическим интерфейсам, описывается, как писать приложения с использованием набора инструментов GTK, который используется для большинства рабочих столов Raspberry Pi и связанных с ним приложений. GTK очень мощен и позволяет писать богатые графические пользовательские интерфейсы с относительно небольшим количеством строк кода, но он не самый интуитивно понятный для начинающих. (Во многом как и сам C!) Книга знакомит вас с основами создания окна, размещения в нем виджетов и заставляет виджеты делать полезные вещи, а также приводит вас к тому моменту, когда вы знаете достаточно, чтобы иметь возможность написать приложение наподобие те, которые я написал для рабочего стола Raspberry Pi.

Тогда казалось логичным объединить две части в одном томе, чтобы у человека, не имеющего опыта работы с C, было достаточно информации, чтобы начать с нуля и начать писать полезные настольные приложения.

Я надеюсь, что мне это удалось — и, по крайней мере, я надеюсь, что написал книгу, которая немного более доступна для начинающих, чем K&R !

Получите

Введение в программирование на C и GUI уже сегодня!

Введение в программирование на C и графическом интерфейсе доступен сегодня в интернет-магазине Raspberry Pi Press или для бесплатной загрузки здесь. Вы также можете приобрести копию в магазине Raspberry Pi в Кембридже или спросить в местном книжном магазине, есть ли она в наличии или может ли она быть заказана для вас.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *