Оформление и сопровождение кода на c++
Подборка ссылок по оформлению и сопровождению кода на c++
Оформление и сопровождение кода. Все вопросы связанные со стандартами оформления кода, документацией (ТЗ, эксплуатационная и техническая документация), тестированием.
На основе поста Odissey_ на сайте codenet.ru
Обновлено 23.01.2017
Оформление кода
- C++ Core Guidelines (Bjarne Stroustrup, Herb Sutter)
- GNU C++ Coding Standard
- Google C++ Style Guide
- Geotechnical Software Services C++ Programming Style Guidelines
- OpenOffice C++ Coding Standards
- Joint Strike Fighter C++ coding standards
Статья Спольски об истории Венгерской нотации и о распространенной ошибке при ее использовании - здесь
Документация
Техническое задание - WikiНабор «учебно-тренировочных» документов на программы
Анализ и проектирование
Хороший сайт по объектно ориентированному анализу, паттернам и стандартам проектирования - http://ooad.asf.ru/NASA Software Assurance Technology Center (SATC) - Центр NASA, документация по процессу разработки ПО.
Тестирование
- Wiki
- Microsoft Unit Testing Framework for C++
- CppUnit (бесплатный)
- Google Test (бесплатный)
- Parasoft C++test (платный)
- Миниатюрный заголовочный файл. В помощь студенту, постигающему азы unit тестирования QuickTest (там же и подробное описание с примерами).
Профилирование
- Valgrind (Linux, OS X, бесплатный)
- Intel VTune Amplifier (платный)
- AMD CodeXL (бесплатный)
- Microfocus DevPartner Studio Professional Edition (платный)
- AQTime Pro (платный)
Утечки памяти (memory leak)
- Обнаружение утечек памяти с помощью библиотеки CRT в Visual Studio (MSDN)
- Visual Leak Detector for Visual C++ (бесплатный)
- Deleaker for Visual C++ (платный)
- Valgrind (Linux, OS X, бесплатный)
- Intel Inspector (платный)
- Parasoft Insure++ (платный)
- Borland DevPartner Studio Professional Edition (платный)
- AQTime Pro (платный)
Три утилиты для поиска утечки для встраиваемых систем - Memory Leak Detection in Embedded Systems
Автоматическое документирование кода
Система автоматического документирования DOXYGEN. Кроссплатформен.Рисование диаграмм по коду Graphviz. Кроссплатформен.
Открытые лицензии
Анализ лицензий: GNU General Public License (GPL), GNU Lesser General Public License (LGPL), лицензия BSD, лицензия Mozilla Public License (MPL) на предмет их применимости в условиях российской правовой системы - здесьСтатья "Проблема лицензии BSD" - здесь
Сравнение свободных лицензий
Creative Commons
What open source license to choose?
Open source licenses visual comparison
Работа с UML диаграммами
- Enterprise Architect (платный, но очень хороший =)
- Инструменты UML-моделирования (список)
- Dia. Можно прикрутить еще Dia2code для перевода диаграмм в код и доставляем Medoosa для поддержки реинжиниринга.
- Umbrello (поддерживает реинжиниринг, под KDE, linux)
- DOXYGEN
IDE
- Visual Studio Community Edition (бесплатен, только для Windows)
- JetBrains CLion (платный, кроссплатформенный)
- Eclipse CDT (бесплатен, кроссплатформен)
- NetBeans IDE (бесплатен, кроссплатформен)
- Xcode (бесплатен, только для OS X)
- Code::Blocks (бесплатен, кроссплатформен)
- QtCreator (бесплатен, кроссплатформен)
- KDevelop (бесплатен, только для *nix систем)
Рефакторинг (refactoring)
Анализ кода (code analysis)
- Wiki
- Cppcheck
- PVS-Studio
- PC-lint for C/C++
- Coverity Code Advisor
- Klocwork
- Parasoft C++test
- Yasca
- Rough Auditing Tool for Security (RATS)
- LDRA Tool Suite
- QA-C++
Библиотеки
- Boost
- International Components for Unicode (ICU)
- OpenSSL
- libxml libxml C++ wrapper
- zlib Gzstream (c++ wrapper)
- LZMA SDK
Полезная коллекция. Отправил в букмарки.
ОтветитьУдалитьВ анализ кода можно добавить Klocwork, а в контроль версий - Bazaar.
Спасибо, добавлю.
ОтветитьУдалить