Added more tooling decsriptions

This commit is contained in:
Evgeny Melnikov
2021-10-10 21:34:45 +03:00
parent 1ef863d773
commit 6ab96a2bb7

View File

@@ -1,19 +1,19 @@
# Инструментарий для работы с языком
Начинающие разработчики имеют малый кругозор по доступному инструментарию, который облегчает работу с кодом, а также повышает эффективность и оберегает от многих ошибок при написании кода. Все эти инструменты не панацея и не серебряная пуля от всех бед языка, но они значительно сглаживают имеющиеся углы. Ниже представлен список распространенных и популярных инструментов, признанных разработчиками по всему миру.в
Начинающие разработчики имеют малый кругозор по доступному инструментарию, который облегчает работу с кодом, а также повышает эффективность и оберегает от многих ошибок при написании кода. Все эти инструменты не панацея и не серебряная пуля от всех бед языка, но они значительно сглаживают имеющиеся углы. Ниже представлен список распространенных и популярных инструментов, признанных разработчиками по всему миру. Данный список - лишь малая часть доступного инструментария. Со временем вы начнете лучше ориентироваться в них и найдете для себя что-то новое.
## IDE (Integrated Development Environment)
* Microsoft Visual Studio IDE
* **Microsoft Visual Studio IDE**
Сайт: https://visualstudio.microsoft.com/
Стоимость: Community Edition - бесплатно
Интегрированная среда разработки от компании Майкрософт. Предоставляет весь необходимый набор инструментов (редактор кода, компилятор, отладчик, профилировщик и т.д.) из коробки. Поддерживает разработку на различных языках программирования, а также кроссплатформенную разработку. Отличное начало для новичков, т.к. современный интерфейс дружелюбен как к новичкам, так и к практикующим разработчикам. На первых порах это идеальный инструмент, т.к. практически не требует от себя какой-либо "доработки напильником".
Интегрированная среда разработки от компании Microsoft. Предоставляет весь необходимый набор инструментов (редактор кода, компилятор, отладчик, профилировщик и т.д.) из коробки. Поддерживает разработку на различных языках программирования, а также кроссплатформенную разработку. Отличное начало для новичков, т.к. современный интерфейс студии максимально дружелюбен, и практически не требует какой-либо "доработки напильником".
* Qt Creator IDE
* **Qt Creator IDE**
Сайт: https://www.qt.io/product/development-tools
@@ -22,7 +22,7 @@
Изначально Qt Creator позиционировал себя как IDE для разработки графических интерфейсов для приложений, разрабатываемых на языке C++. Но со временем данный фреймворк оброс огромными возможностями, что в итоге превратилось в полноценную экосистему для разработки кроссплатформенных приложений. Фреймворк предоставляет большую библиотеку примитивов для различных потребностей: работа с сетью, графический интерфейс, работа с базами данных, работа с популярными форматами: изображения, текстовые файлы и т.д. Современный Qt Creator выступает в роли основного конкурента для Visual Studio, но в основном он снискал славу в среде разработчиков, которые разрабатывают приложения под различные дистрибутивы Linux.
* Eclipse IDE
* **Eclipse IDE**
Сайт: https://www.eclipse.org/downloads/packages/
@@ -31,7 +31,7 @@
Довольно мощная, мультиплатформенная среда разработки, но при этом довольно тяжеловесная. Ключевая особенность Eclipse - модульность. Философия Eclipse состоит в том, что любой разработчик может доработать среду разработки под себя посредством подключения дополнительных расширений. Взята за основу некоторыми разработчиками компиляторов под специализированные ОС или микроконтроллеры (например: ОС реального времени QNX).
* JetBrains Clion IDE
* **JetBrains Clion IDE**
Сайт: https://www.jetbrains.com/clion/
@@ -42,34 +42,39 @@
## Расширения
* JetBrains ReSharper C++
* **JetBrains ReSharper C++**
Сайт:
Сайт: https://www.jetbrains.com/resharper-cpp/
TO DO: description
Стоимость: бесплатная для учебных заведений, в ином случае - платная
* Visual Assist
Расширение для MS Visual Studio. Добавляет различные дополнительные возможности для работы с исходным кодом: дополнительная подсветка кода и подсказки по нему, построение диаграмм зависимостей между проектами, рекомендации по типовым ошибкам в коде или по его улучшению, дополнительная информация во время отладки, продвинутый поиск, навигация по проектам и т.д. Является конкурентом Visual Assist.
Сайт:
* **Visual Assist**
TO DO: description
Сайт: https://www.wholetomato.com/
* Incredibuild
Расширение для MS Visual Studio. Добавляет различные дополнительные возможности для работы с исходным кодом: дополнительная подсветка кода и подсказки по нему, дополнительная информация во время отладки или при написании кода, продвинутый поиск, навигация по проектам и т.д. Является конкурентом JetBrains ReSharper.
Сайт:
TO DO: description
* **Incredibuild**
Сайт: https://www.incredibuild.com/
Стоимость: платно, актуальная цена указана на сайте
Приложение/расширение для распределенной сборки проектов. Объединяет все рабочие станции разработчиков в единую сеть, за счет чего сборка исходного кода может производиться одновременно на десятках машин. Это позволяет ускорить скорость сборки больших проектов в несколько раз.
## Пакетные менеджеры и системы сборки
* Cmake
* **Cmake**
Сайт: https://cmake.org/
Кроссплатформеная система автоматизации сборки приложения из исходного кода. Генерирует необходимые артефакты для последующей сборки приложения на целевой платформе. На текущий момент считается "стандартным" инструментом для сборки различных библиотек при поставке в качестве исходного кода.
Кроссплатформенная система автоматизации сборки приложения из исходного кода. Генерирует необходимые артефакты для последующей сборки приложения на целевой платформе. На текущий момент считается "стандартным" инструментом для сборки различных библиотек при поставке в качестве исходного кода.
* Conan
* **Conan**
Сайт: https://conan.io/
@@ -78,26 +83,38 @@
Пакетный менеджер, а также менеджер зависимостей для организации C++ библиотек и фреймворков. Поддерживает работу с различными платформами: Windows, Linux, etc. Поддерживает интеграцию с CMake, Visual Studio и т.д.
* Ninja
* **Ninja**
Сайт: https://ninja-build.org/manual.html
Стоимость: бесплатно
Менеджер сборки проектов для приложений, написанны на Си и C++. Основное преимущество, которое пытается добиться данный менеджер: быстрая сборка проектов. Поддерживает кроссплатформенную разработку, поддерживает все популярные компиляторы.
Менеджер сборки проектов для приложений, написанных на Си и C++. Основное преимущество, которое пытается добиться данный менеджер: быстрая сборка проектов. Поддерживает кроссплатформенную разработку, поддерживает все популярные компиляторы.
## Анализаторы кода
* PVS Studio
* **PVS Studio**
Сайт:
Сайт: https://pvs-studio.com/
TO DO: description
Стоимость: триал на 30 дней, далее платно
Кроссплатформенный (Windows, Linux, MacOS) статический анализатор кода от российской компании PVS-Studio. Основная задача анализатора - провести анализ исходников на предмет различных ошибок, которые не обнаруживаются компиляторами или на этапе ревью кода. Благодаря ему можно свести до минимума ошибки, связанные с синтаксическими конструкциями языка и их подводными камнями.
* Cpp Check
* **Cpp Check**
Сайт:
Сайт: https://cppcheck.sourceforge.io/
TO DO: description
Стоимость: бесплатно
Бесплатный анализатор кода. Поможет отловить распространенные ошибки при помощи анализа исходного кода, которые могут быть упущены компилятором или в процессе ревью кода. Кроссплатформенный, поддерживает популярные дистрибутивы Linux, работает под Windows.
* **Valgrind**
Сайт: https://www.valgrind.org/
Стоимость: бесплатно
Набор инструментов, которые помогут исследовать разнообразные проблемы во время работы приложения: утечка памяти, профилирование тормозов и т.д. Заточен для работы с различными дистрибутивами Linux.