Работа программиста очень сложна. Поэтому любой инструмент, который ее облегчает, следует только приветствовать. Теоретически можно кодить, имея под рукой только блокнот и компилятор, но на практике программист пользуется специальными инструментами для ускорения работы.
Разберем семь инструментов программиста, которые нужны для повседневной работы.
1. Интегрированная среда программирования (IDE)
Среда разработки — это основной инструмент, который программист запускает сразу же, как только приходит на работу. Типовая среда включает:
- Редактор с подсветкой кода
- Компилятор
- Отладчик
- Управление проектами
Существуют универсальные IDE, которые поддерживают много языков программирования:
- CodeBlocks
- NetBeans,
- Eclipse,
- Qt Creator,
- Geany.
Существуют специализированные IDE, которые нацелены на один язык программирования:
- Visual Basic,
- Delphi,
- Dev-C++.
К сожалению, практика работы программиста такова, что знания одного языка программирования и одной среды программирования явно недостаточно. Постоянно приходится использовать разные языки или среды в зависимости от задачи. Поэтому рекомендую пробовать и изучать разные IDE. Вы никогда не знаете, где это может пригодиться.
ЯЗЫКИ ПРОГРАММИРОВАНИЯ. ЧТО НУЖНО ЗНАТЬ!
Есть много сравнительных таблиц IDE. Например, здесь. Ниже фрагмент сравнительной таблицы IDE для C/C++.

В качестве основного IDE лучше выбрать ту среду разработки, которая вам наиболее комфортна и удобна. И ее уже изучить досконально. Это существенно повысит вашу производительность.
2. Профилировщик кода (профайлер, профилер)
Профилировщик кода, или как часто на жаргоне его называют профилер (от слова profiler) — это инструмент, который собирает информацию о работе программы. Как правило, профилер требуется в тех случаях, когда ваша программа работает не так быстро, как хотелось бы.
Чтобы найти узкое место программы запускают профилер, который фиксирует время выполнения различных фрагментов программы.
Существует много профилеров, как универсальных, так и специализированных. Большой список можно найти здесь (en).

Но самым популярным профилером является GNU Gprof. Он есть в сборке Си-экспресс. Чтобы его использовать, нужно сделать следующие действия:
1. Включить профилирование в параметрах сборки проекта. Щелкнуть правой кнопкой на проекте и выбрать соответствующий пункт меню.

2. Перекомпилировать и запустить программу.
3. Запустить профилер. Меню — Модули — Code profiler

3. Система контроля версий
Часто бывает, что программист внес правки в исходный код и программа перестала работать. Для быстрого возврата к работающей версии используются системы контроля версий (SVN). Они ведут учет изменений в файлах и позволяют откатить изменения до нужной точки.
Основы Программирования — #1 — Логика. Алгоритмы
Наиболее популярными являются:
Раньше SVN работали на компьютере разработчика, но в последнее время используются веб-серверы для SVN. Это дает много преимуществ, можно работать на разных компьютерах и иметь копию программы в облаке.
Существенных отличий между этими системами нет. Базовый функционал одинаковый, разница только в способах реализации. Поэтому можете выбрать ту систему, которая вам больше понравится.
Самыми популярными серверами SVN являются:
- GitHub (сервис платный, но бесплатен для проектов с открытым исходным кодом).
- Bitbucket (бесплатный сервис)
4. Визуальный редактор интерфейса
Хотя интерфейс программы можно полностью написать в коде, но это подходит только для совсем простых программ. Программирование интерфейса вручную — это чрезвычайно долгий и трудоемкий процесс.
Есть еще одна причина, чтобы это процесс сильно ускорить — общение с заказчиком. Самый первый разговор с заказчиком станет намного продуктивнее, если вы сможете быстро набросать макет программы. Заказчики ничего не понимают в программировании, но интерфейс понимают все. Чем более быстро вы покажет макет будущей программы, тем быстрее получите заказ.
Существуют множество редакторов интерфейса, которые помогают набросать внешний вид программы простым перетаскиванием виджетов. Другое их название GUI-конструкторы. Они могут как отдельными программами, например, Glade. А могут быть плагинами к IDE, как, например wxSmith для CodeBlocks.
Как правило, задача визуального редактора — задать расположение элементов интерфейса, а код обработки сообщений программист пишет уже в программе.
5. Редактор баз данных
Для прикладных программ работа с базами данных (БД) является обязательным условием. Если вы пишете программу для автоматизации бизнеса, то вам потребуются работа с базами:
- Сотрудников
- Товаров
- Покупателей
- Счетов и т.д.
Базы данных — это основа автоматизации любой компании. Поэтому программисту в той или иной форме нужно будет взаимодействовать с базами данных. В этом ему помогают редакторы БД, которые позволяют управлять информацией в базах данных.
Самым мощной и удобной системой управления базами данных (СУБД) является Microsoft Access, который входит в состав Microsoft Office. Возможности Access очень велики. Эта СУБД позволяет разработать автоматизацию небольшую компании. Но полученный продукт не очень удобно тиражировать из-за особенностей лицензирования Microsoft Office.
Самыми распространенными редакторами БД являются:
- PhpMyAdmin
- HeidiSQL
- DBTools Manager
6. Инструмент тестирования ПО
Как только программист написал программу, то нужно убедиться в том, что она работает. Для этого существует отдельный процесс, который называется тестирование ПО.
Суть тестирования состоит в том, что тестировщик выполняет пакет тестов и проверяет соответствие реального поведения программы с заданным.
Проблема тестирования заклюается в том, что предвидеть заранее все возможные варианты использования программы невозможно. Поэтому тестирование ПО — это больше искусство, чем наука.
Пока программы были не очень сложными, использовалось так называемое «исчерпывающее тестирование», то есть проверялась работа программы на всех возможных ветках в ыполнения. Но очень скоро количество комбинаций веток стало превышать возможности тестировщиков, и сейчас проводится выборочное тестирование. Выбирается некоторый основной вариант использования программы и для него пишутся тесты.
Трудно найти универсальные инструменты автоматического тестирования. Как правило, программист ищет инструмент тестирования под конкретную задачу. Если же такого инструмента не находится, то приходится его писать самому.
7. Фреймворк
Многие программы имеют общие модули. Отсюда приходит желание не писать каждый раз программу с нуля, а использовать какой-нибудь каркас. Так появилось понятие фреймворка, что в переводе означает «каркас».
Фреймворк отличается от библиотеки тем, что библиотека никак влияет на работу программиста. Ему достаточно подключить библиотеку и он может произвольно вызывать функции библиотеки.
Фреймворк диктует принцип построения программы. Обычно при работе с фреймворком сразу генерится некоторый прототип программы, а программист должен развивать этот прототип до готовой программы.
Так как принципы разработки едины, то на фреймворке можно достаточно быстро построить вполне рабочую программу. Но есть и серьезный недостаток в использовании фреймворка.
Если функционал программы сильно отличается от тех принципов, которые использует фреймворк, то программисту приходится постоянно изобретать разные приемы, чтобы согласовать требования заказчика и ограничения фреймворка. Иногда бывает, что использование фреймворка не только ускоряет, а, наоборот, замедляет программирование.
Источник: progtips.ru
Среды разработки
Среды разработки приложений в Linux. Интегрированные среды разработки приложений в Linux. Программы для программирования в Linux. См. также редакторы кода.
KDevelop

KDevelop — кроссплатформенная интегрированная среда разработки (IDE) для C/C++, Python, JavaScript, PHP.
Eric

Eric — интегрированная среда разработки для языков программирования Python и Ruby.
Code Blocks

Code Blocks — интегрированная среда разработки (IDE) для C, C++ и Fortran. Code Blocks обладает всеми необходимыми функциями для разработки проектов.
Eclipse

Eclipse — интегрированная среда разработки (IDE). Имеет модульную архитектуру, что дает возможность существенно расширять и изменить функциональность среды под свои нужды.
Aptana Studio

Aptana Studio — бесплатная среда разработки (IDE) web-приложений. Поддерживаются основные языки программирования, подсветка синтаксиса, автодополнение кода, переход по функциям (definitions) и так далее.
Qt Creator

Qt Creator — бесплатная кросс-платформенная среда разработки (IDE), основанная на библиотеке QT и предназначена для редактирования, компиляции и отладки кода.
NetBeans

NetBeans — мощная бесплатная интегрированная среда разработки приложений (IDE). Поддерживает языки программирования Java, PHP, JavaScript, Ajax, Ruby, Ruby on Rails, C/C++ и другие.
Источник: pingvinus.ru
Программы для программирования основные

Перед вами среда для написания сайтов на PHP, CSS, HTML и jаvascript. Данная среда разработки очень удобна и имеет свои функциональные особенности. В PhpStorm есть подсветка синтаксиса, отладчик PHP кода и даже встроенный терминал. Есть возможность установки некоторых плагинов для расширения возможностей в написании своего проекта.
Новость отредактировал: Anatoliy88 — 27-11-2020, 12:16
Причина: Обновлено до версии 2020.2.2
- adminroman
- 16-10-2020, 05:05
- 14 198
- 2

JetBrains DataGrip — ещё одна разработка от компании JetBrains для той категории пользователей, которая работает с какими-либо базами данных. Программа максимально облегчает работу с базами данных, позволяет формировать их структуру и выполнять необходимые запросы. Безусловно печалит отсутствие русской локализации, но другие возможности и функции для работы с СУБД покрывают этот незначительный
Новость отредактировал: Anatoliy88 — 30-09-2020, 12:21
Причина: Обновлено до версии 2020.2.3

JetBrains CLion — программа для ведения разработки на C и C++. Программа очень сильно облегчает жизнь программисту и позволяет проводить рутинную работу с использованием автоматизированных функций и возможностей. Помимо этого, JetBrains CLion наделили поддержкой плагинов и подсветкой синтаксиса, что делает работу с кодом намного приятнее и эффективнее.
Новость отредактировал: Anatoliy88 — 30-09-2020, 12:19
Причина: Обновлено до версии 2020.2.3

Перед вами JetBrains GoLand — профессиональная IDE среда для помощи в написании кода на языке программирования GO. Язык имеет свои специфические функции, разработчики приложения GoLand всё это учли и выпустили в свет свою программу. В программе есть все необходимые инструменты для разработчика, включая улучшенную подсветку синтаксиса, функции для поиска ошибок в коде, а также форматирование кода
Новость отредактировал: Anatoliy88 — 30-09-2020, 12:15
Причина: Обновлено до версии 2020.2.3

Профессиональная программа для разработки и отладки мобильных и веб приложений с использованием языка программирования Java. Программа обладает всеми необходимыми инструментами и современными функциями для создания качественного и уникального приложения.
Новость отредактировал: Anatoliy88 — 30-09-2020, 12:13
Причина: Обновлено до версии 2020.2.2
- adminroman
- 29-09-2020, 13:19
- 11 986
- 1

Adobe RoboHelp — программа для создания справочных материалов и учебных пособий от компании Adobe. При помощи этого программного комплекса можно легко подготовить учебный или справочный материал, создать help-файл для приложения или онлайн сервиса.
Новость отредактировал: adminroman — 11-06-2020, 01:38
Причина: Обновлено до версии 2019.0.13.

CudaText — это многофункциональный текстовый редактор, который имеет функции подсвечивания синтаксиса различных языков программирования. Подойдет программистам, которые пишут код на одном или нескольких языках программирования одновременно.
Новость отредактировал: adminroman — 10-06-2020, 21:58
Причина: Обновлено до версии 1.103.1.0.

Разработка позволяющая создавать приложения для Android, iOS и Windows без выдающихся навыков в программировании. App Builder не будет создавать софт за вас, но облегчит многие сложные процессы в программировании. Внутри вы можете скачать программу App Builder вместе с кряком.
Новость отредактировал: adminroman — 10-06-2020, 21:42
Причина: Обновлено до версии 2020.87.

Adobe FrameMaker — программа для создания сложных документов. В некоторых случаях недостаточно одного текстового редактора. Например, чтобы создать профессиональный документ в рамках предприятия, нужны совсем другие инструменты и программы.

Google Web Designer — программа для создания небольших веб-сайтов, а также информационных баннеров. Теперь не нужно платить и искать кряки на различные программные продукты, чтобы сделать простенький сайт-визитку или landing-page. Достаточно воспользоваться продуктом от Гугл, чтобы решить эту проблему, в этом софте имеется все необходимое.
Источник: 1soft-download.com