﻿# Стандарт кодирования

Стандарт кодирования \- набор правил и соглашений, используемых при написании исходного кода на некотором языке программирования \[1\]\. Другие варианты названия: стандарт оформления кода, coding standard, coding convention, programming style, code style guide\.

Стандарт оформления кода обычно принимается и используется некоторой группой разработчиков программного обеспечения с целью единообразного оформления совместно используемого кода\. Такой стандарт сильно зависит от используемого языка программирования\. Например, стандарт оформления кода для языка Си\+\+ будет серьёзно отличаться от стандарта для языка PHP\.

Стандарт оформления кода описывает различные аспекты создания и сопровождения исходных текстов программ\. В качестве примера, можно перечислить следующие аспекты: правила именования переменных, стиль отступов, способ расстановки скобок, использование пробелов при оформлении арифметических выражений, стиль комментариев и так далее\.

Существует достаточно большое количество литературы посвященной рекомендациям в оформлении кода и создании стандартов кодирования\. Но в первую очередь хочется выделить две книги: "Совершенный код" \[2\] и "Веревка достаточной длины, чтобы\.\.\. выстрелить себе в ногу\." \[3\]\.

Многие [статические анализаторы кода](https://pvs-studio.ru/ru/blog/terms/0046/) за счёт гибкой настройки позволяют осуществлять контроль соблюдения стандарта кодирования, принятый в компании\. В этом случае предупреждения, выдаваемые статическими анализаторами кода, можно рассматривать не только как диагностику потенциальных ошибок, но и как уведомление о нарушении принятого стандарта кодирования\.

## Библиографический список

1. Wikipedia\. [Стандарт оформления кода](https://ru.wikipedia.org/wiki/%D0%A1%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82_%D0%BE%D1%84%D0%BE%D1%80%D0%BC%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F_%D0%BA%D0%BE%D0%B4%D0%B0)\. 
1. Макконнелл С\. Совершенный код\. Мастер\-класс / Пер\. с англ\. \- М\. : Издательско\-торговый дом "Русская редакция"; СПб\.: Питер, 2005\. \- 896 стр\.: ил\. ISBN 5\-7502\-0064\-7\.
1. Google C\+\+ Style Guide\. [https://google\.github\.io/styleguide/cppguide\.html](https://google.github.io/styleguide/cppguide.html)
1. Geotechnical Software Services\. C\+\+ Programming Style Guidelines\. [http://geosoft\.no/development/cppstyle\.html](http://geosoft.no/development/cppstyle.html)
1. David Abrahams and Nathan Myers\. C\+\+ Coding Guidelines\. [http://bit\.ly/2aym28b](http://web.archive.org/web/20150428175452/http:/files.rsdn.ru/19450/coding_guidelines.html)