Компьютерное программирование. Компиляторы и IDE
Программирование – это процесс написания компьютерных программ.
Если вы читаете данный урок, то вы точно пользуетесь компьютерными программами. Они не появляются сами по себе, а создаются программистами.
Примерно вот так они выглядят изначально:
Рис.1 Фрагмент исходного кода браузера Firefox.
Если вы обратите внимание на картинку, то заметите, что программа — это просто некоторый текст. Возможно, сейчас он кажется вам непонятной абракадаброй, но на самом деле в нем есть свои четкие правила, которые никто не может нарушить. Эти правила и составляют основу любого языка программирования. В принципе, записать текст программы можно в любом текстовом редакторе, даже в стандартном блокноте ОС Windows, но есть одно значительное но.
Как вы, наверное, знаете, компьютер не понимает ничего, кроме нулей и единиц. Уж тем более он не понимает никаких слов, поэтому написанный нами текст программы для него, примерно как и для вас сейчас – набор непонятных символов. Чтобы компьютер понял то, что мы от него хотим, нам нужна специальная программа, которая, если так можно выразиться, переведет программу, записанную на языке программирования, на язык, понятный компьютеру. Такая программа называется компилятором , а сам процесс перевода программы на понятный компьютеру язык — компиляцией . Итак, процесс написания программ состоит в самом простом виде из следующих шагов:
- написать код программы в любом текстовом редакторе
- скомпилировать исходный код
Но это неудобно писать код в блокноте, потом компилировать его специальной программой, особенно если ваша программа состоит из большого количества файлов с исходным кодом. В связи с этим программисты создали для себя такие программы, в которых можно сразу писать код, проверять его на ошибки, компилировать и запускать готовую программу. В общем, все сразу и в одном флаконе. Такие программы называются интегрированными средами разработки (IDE) . Таким образом, любая IDE сочетает в себе по крайне мере текстовый редактор и компилятор. Здесь мы подходим к вашему первому практическому заданию.
Сохрани в закладки или поддержи проект.
Практика
- Установить на свой компьютер любую IDE, которая поддерживает написание программ на языке Си (отдельно компилятор языка Си), и научиться выполнять в ней основные действия. Подробные инструкции ниже.
- Среда разработки Pelles C
- Среда разработки Code::Blocks (материал урока подготовил Денис Колодич)
- список будет пополняться
Дополнительные материалы
В видеоролике ниже рассказывается история развития компьютерного программирования от, так сказать, «пионеров» этой области. Рекомендую к просмотру всем.
Топ-8 популярных IDE для программирования на C++
Подробный обзор 5 популярных IDE программирования на C++. (Visual Studio, Eclipse CDT, NetBeans и т.д.). Многие из них поддерживают также и другие языки.
Сегодня рассмотрим 8 популярных сред программирования на C++. Многие из них поддерживают также и другие языки.
Microsoft Visual Studio
Visual Studio — интегрированная среда разработки C++, которая позволяет разрабатывать как консольные приложения, так и приложения с графическим интерфейсом, в том числе с поддержкой технологии Windows Forms. Она также подходит для создания веб-сайтов, веб-приложений и веб-служб для всех поддерживаемых платформ: Windows, Windows Mobile, Windows CE, .NET Framework, Xbox, Windows Phone, .NET Compact Framework и Silverlight.
- Есть бесплатная версия Visual Studio Community.
- Встроенный интерфейс командной строки.
- API для подключения дополнительных инструментов отладки.
- Полный набор инструментов разработчика для создания и клонирования Git-репозиториев, управления ветвями и разрешения конфликтов слияния прямо в интегрированной среде разработки C++.
- Большой набор дополнений для расширения базовой функциональности.
- Высокая стоимость платных версий Professional и Enterprise (от 45 долларов в месяц).
- Высокие требования к «железу».
- Нет версии для Linux.
Eclipse CDT
Eclipse — свободная интегрированная среда разработки модульных кроссплатформенных приложений, которая приобрела большую популярность среди разработчиков на Java, однако в данной статье мы рассмотрим выпуск Eclipse CDT (С/С++ Development Tooling). Данная среда является отличным выбором, так как Eclipse CDT не только обладает всеми необходимыми инструментами, но и бесплатна и работает под различными операционными системами: Windows/Linux/macOS.
- Бесплатное использование.
- Автозавершение и другие возможности, которые помогают быстрее писать код.
- Большой набор плагинов для расширения функциональности.
- Развитое сообщество разработчиков, подробная документация.
- Встроенное юнит-тестирование, оптимизация тестов.
- Настраиваемый графический интерфейс.
- Медленный запуск, потребление большого объёма памяти.
- Проблемы с обратной совместимостью.
- Возможны конфликты плагинов.
Sublime Text
Sublime Text — проприетарный текстовый редактор, написанный на C++ и Python. Разработан в 2008 году. У этого текстового редактора кода достаточно большое сообщество, поэтому нет проблем с поиском дополнений и обучающих материалов.
- Можно пользоваться бесплатно.
- Не предъявляет высоких требований к «железу».
- Встроенная поддержка нескольких десятков языков программирования.
- Автозавершение и подсветка синтаксиса в текстовом редакторе кода.
- Большой выбор плагинов, написанных на Python.
- Не такой хороший отладчик, как в Visual Studio и других IDE.
- Нет автосохранения файлов.
- Постоянно предлагает купить платную версию.
NetBeans
NetBeans — еще одна бесплатная интегрированная среда разработки. Позволяет создавать приложения на языках программирования Java, Python, PHP, JavaScript, C, C++ и ряде других. У этой интегрированной среды программирования C++ есть дистрибутива для платформ Microsoft Windows, Linux, FreeBSD, macOS , OpenSolaris и Solaris, а для всех остальных платформ есть возможность собрать NetBeans самостоятельно из исходников.
- Бесплатная интегрированная среда разработки C++ .
- Кроссплатформенная поддержка.
- Большой выбор плагинов.
- Автозавершение кода, инструменты для рефакторинга.
- Развитое сообщество разработчиков.
- Медленный запуск.
- Проблемы с собственным кэшем при сборке готовых программ.
- Для установки требуется JDK.
Qt Creator
Qt Creator — интегрированная среда разработки C++, доступная на Windows, Linux и macOS. Предоставляет бесплатную версию, которой можно пользоваться в течение 1 месяца. Предлагает полный набор инструментов разработчика, предназначенных для создания и развёртывания приложений.
- Поддерживает отладку, профилирование, автозавершение кода и рефакторинг.
- Возможность компиляции проектов для разных ОС.
- Большой вес приложений.
- Не всегда работает автозавершение кода.
- Дорогая платная версия.
- Нужна регистрация для скачивания бесплатной версии.
CLion
CLion — кроссплатформенная среда программирования на C++ от компании JetBrains. Включает в себя современные стандарты C ++, libc ++ и Boost. Поддерживает также другие языки программирования — Kotlin, Python, Rust и т.д. — «из коробки» или с помощью плагинов.
- Удобные механизмы отладки приложений.
- Автозавершение кода.
- Поддержка VIM.
- Нет бесплатной версии — только демо на 30 дней.
- Нет встроенного компилятора.
- Возникают проблемы с установкой компилятора.
CodeLite
CodeLite распространяется бесплатно и работает во множестве операционных систем: Windows 7/8/8.1/10, Debian, Ubuntu, Fedora, OpenSUSE, ArchLinux и macOS. Интерфейс прост и интуитивно понятен, что делает его весьма хорошим выбором для новичков. Также следует отметить, что последние версии этой интегрированной среды разработки C++ поддерживают проекты на PHP и Node.js.
- Мощный инструмента автозавершения кода, основанный на собственном синтаксическом анализаторе.
- Плагины для работы с Git и SVN.
- Встроенный отладчик.
- Сложный интерфейс.
Code::Blocks
Завершает нашу подборку бесплатная среда разработки Code::Blocks. Она позволит писать не только на С/С++, но и обеспечит поддержкой таких языков программирования, как Fortran и D (с некоторыми ограничениями). У набора инструментов разработчика есть возможность для расширения за счёт установки плагинов. У этой среды программирования на C++ есть версии под Windows, macOS и Linux, однако существует возможность установить её на любую Unix-подобную систему при помощи сборки исходников.
- Бесплатная среда разработки C++.
- Автозавершение кода.
- Встроенный отладчик.
- Большой выбор плагинов для расширения функциональности.
- Не подходит для разработки больших проектов.
На данный момент этот блок не поддерживается, но мы не забыли о нём! Наша команда уже занята его разработкой, он будет доступен в ближайшее время.
IDE помогают работать с языком, но чтобы его изучить, нужны время и ресурсы. Вот ещё пара полезных материалов, которые помогут вам освоить C++:
- Бьёрн Страуструп: что в C++ надо было сделать по-другому, зачем его учить и совет начинающим программистам
- Книги по C++: исчерпывающая подборка для начинающих
Какую IDE посоветуете для C( просто си, не плюсы!)? И с какой книги начать изучать программирование на языке С?
Какую IDE посоветуете для C, что используют тру программисты на си? Под винду!
Какие сейчас самые актуальные книги, может быть курсы по СИ?
- Вопрос задан более трёх лет назад
- 5250 просмотров
3 комментария
Простой 3 комментария
Под какую операционную систему нужна IDE?

Gach1much11sMyFuture @Gach1much11sMyFuture Автор вопроса
Александр Ананьев, извините, исправил пост.
Под винду

Решения вопроса 0
Ответы на вопрос 5
Сергей Горностаев @sergey-gornostaev Куратор тега C
Седой и строгий
Посоветую не использовать IDE на этапе обучения. И посоветую использовать поиск для выбора книг.
Ответ написан более трёх лет назад
Нравится 1 2 комментария

Gach1much11sMyFuture @Gach1much11sMyFuture Автор вопроса
ну мне нужен же какой-то редактор и компилятор
Сергей Горностаев @sergey-gornostaev Куратор тега C
Gach1much11sMyFuture, любой текстовый редактор и Build Tools for Visual Studio или MinGW в качестве компилятора.

Внимание! Изменился адрес почты!
Тру программист на С под винду — это розовый слон, умеющий говорить на китайском 🙂 Задач для программиста на С под виндой — исчезающе мало, поэтому все тру программисты на С давно мигрировали на линух 🙂 и там используют Eclipse 🙂 или ничего — только редактор и gcc 🙂
Самой лучшей книгой по С я до сих пор считаю ту, по которой начал учиться сам 🙂 — Уэйт, Прата, Мартин «Язык С».
Ответ написан более трёх лет назад
Комментировать
Нравится 1 Комментировать

Владимир Коротенко @firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
IAR
Visual Studio 2019
Eclipse
————
Sublime3
Visual Studio code
Насчет книг. Кнута и Страуструпа
Ответ написан более трёх лет назад

Gach1much11sMyFuture @Gach1much11sMyFuture Автор вопроса
и какую из этих пяти выбрать?
Сергей Горностаев @sergey-gornostaev Куратор тега C
У Кнута и Страуструпа разве есть учебники C?

Владимир Коротенко @firedragon
Сергей Горностаев, Кнут пишет за алгоритмы. Они в чем то близки к С. Хотя он настаивает что это псевдокод.
Насчет второго каюсь склероз, конечно же кресты.
В замену предлагаю
lib.ru/CTOTOR/kernigan.txt
Сергей Горностаев @sergey-gornostaev Куратор тега C
Владимир Коротенко, предлагать человеку читать «Искусство программирования» до изучения языка — всё равно, что предлагать ребёнку изучать высокий стиль в поэзии до того, как он выучит алфавит. А по поводу K&R.

Владимир Коротенко @firedragon
Изложу свое имхо.
Кнут в общем то не снобит и прямо предупреждает что некоторые задачи сложные, и их можно читать для развлечения. Собственно он и просит перечитывать по нескольку раз.
Что же до Карнеги, там основы, а дальше можно углубятся, и смотреть что наворотили за это время.
- Visual Studio 2019 Community Edition
- Керниган и Ритчи, язык программирования Си
Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
Developer, ex-admin
IDE: MSVS, VS Code, qtcreator.
Я лично предпочитаю qtcreator, но там вам нужно будет еще как минимум cmake изучить, чтоб можно было проект компилировать из него, так что лучше MSVS на первых порах (или возможно VS Code).
Из минусов микрософтовского компилятора — он не поддерживает ни один стандарт Си полностью. Т.е. ANSI С и то что микрософт посчитал нужным поддержать для себя любимых. На первых порах это будет не важно, но дальше захочется большего. Так что, возможно, для обучения лучше использовать mingw (msys2+mingw) и к нему прикрутить VS Code.
Книга: Дейтелов «Как программировать на С»
В книге по Си только 50%, дальше начинаются плюсы, что наверное и не плохо. Сам по себе Си — язык очень компактный и легкий.
Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
Ваш ответ на вопрос
Войдите, чтобы написать ответ

- C++
- +1 ещё
Как решить данную задачу на двумерные массивы c++?
- 1 подписчик
- 23 часа назад
- 106 просмотров
6 лучших IDE для программирования на С и С++
Перевод статьи «6 Best IDEs For C and C++ Programming Language».

Способность понимать и писать код это одна из вещей, которые превращают выпускника вуза в программиста или разработчика. Большинство вузов начинают свою программу с языка С, а затем переходят на С++. И поскольку С++ является производной С и предлагает функционал объектно-ориентированного программирования, то без хорошей IDE вам будет сложно писать код.
Интегрированная среда разработки (Integrated Development Environment, IDE) оказывает большую помощь программисту, предоставляя все необходимые для работы удобства. Также она повышает производительность труда разработчика благодаря полезным инструментам, функциям автозаполнения и сотням сочетаний клавиш.
Сегодня я расскажу о нескольких лучших IDE для разработчиков, пишущих на C и C++. Эти инструменты сделают вашу работу более легкой и позволят выполнять больше задач за меньшее время.
1. Eclipse

Eclipse это одна из самых богатых функционалом IDE с открытым исходным кодом. Изначально она главным образом использовалась для разработки на Java, но сейчас поддерживает большее разнообразие языков. Эта IDE поставляется с отличным графическим пользовательским интерфейсом и функционалом drag-and-drop.
Eclipse доступна для Windows, Linux и MacOS. Эта среда предоставляет много продвинутых фич, таких как автоматический анализ кода, интеграция git, статический анализ кода и т. д.
Поддерживаемые языки: C, C++, C#, Java, JavaScript, Perl, PHP, Python, COBOL и т. д.
2. NetBeans

NetBeans это еще одна из лучших IDE для программирования на С и С++. Она имеет дружественный к пользователю интерфейс, а также несколько потрясающе полезных шаблонов проектов. Есть функционал drag-and-drop. Netbeans написана на Java, но предоставляет полную поддержку и набор инструментов, необходимых для разработчиков, пишущих на С и С++.
Лучшее в Netbeans это ее простые и эффективные инструменты для управления проектами. Поставляемый функционал можно расширить при помощи разнообразных полезных плагинов. С NetBeans вы сможете мониторить разработку вашего проекта удаленно.
Эта среда доступна для Windows, Mac OS X, Linux и Solaris.
Поддерживаемые языки: C, C++, Java, HTML, HTML 5 и другие.
3. Visual Studio Code

Visual Studio Code от Microsoft это одна из самых надежных и функциональных IDE, доступных для Windows, Linux и MacOS. Эта IDE базируется на фреймворке Electron.
Если говорить о функционале, Visual Studio Code обладает всеми нужными свойствами, такими как умное дополнение кода, подсветка синтаксиса, рефакторинг кода, поддержка сниппетов, возможности отладки, интегрированный контроль Git и т. д. Кроме того, вы можете кастомизировать эту IDE многими способами, включая сочетания клавиш и настройки.
Поддерживаемые языки: C, C++, C#, CSS, Go, HTML, Java, JavaScript, Python, PHP, TypeScript и т. д.
4. Code::Blocks

Code::Blocks поддерживает мало языков, но зато для них является одной из лучших IDE. Разработчики, пишущие на С и С++, оценят ее настраиваемость и гибкость. Лучшее в Code::Blocks это доступность множества плагинов. Функционал этой среды разработки можно сколь угодно расширить, в том числе с помощью пользовательских плагинов.
Умная подсветка синтаксиса, автодополнение кода и полнофункциональный отладчик, имеющиеся в Code::Blocks, сделают разработку действительно быстрой.
Code::Blocks доступна на всех платформах, включая Windows, Linux и MacOS.
Поддерживаемые языки: C, C++ и Fortran.
5. Atom

Atom это один из самых популярных и высоко настраиваемых редакторов кода. Он разработан Github и является прекрасным выбором как для маленьких, так и для крупных проектов. Доступен для Windows, Linux и OS X, поставляется с очень минималистическим пользовательским интерфейсом.
Эта IDE обладает всем необходимым функционалом. В ней есть менеджер пакетов, несколько панелей, функция поиска и замены текста, поддержка палитры команд и т. д. Кроме того, для Atom доступно множество плагинов: с их помощью вы сможете расширить функционал этого редактора и сделать его еще более полезным.
Поддерживаемые языки: C/C++, CSS, HTML, JavaScript, PHP, Python, Ruby и т. д.
6. Dev C++

Если вы ищете популярную IDE для разработки на С/С++ на начальном уровне, обратите внимание на Dev C++. Хотя эта среда не имеет многих более продвинутых функций, вам будут доступны автодополнение кода, менеджмент проектов, подсветка синтаксиса, поддержка CVS, встроенная отладка и пр. Dev C++ базируется на GNU Compiler Collection (GCC).
Эта среда вполне подходит для разработки мини-проектов на платформе Windows.
Поддерживаемые языки: C и C++.
Заключение
Надеюсь, вы найдете эту статью полезной. Хорошая IDE может помочь вам во многих вещах. Благодаря ей вы сможете писать код быстро и эффективно, поддерживать порядок в импортируемых библиотеках, экономить силы и время. Кроме того, ваша IDE может существенно облегчить вашу задачу по нахождению и исправлению багов.
А чем пользуетесь вы? Поделитесь в комментариях!
