Если Вы программируете на С\С++, в основе Вашего стиля кодирования лежит

     

    Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.

    Если Вы программируете на С\С++, в основе Вашего стиля кодирования лежит

    • 9.8%Google C++ Style Guide93
    • 11.2%Microsoft Coding Standards106
    • 11.3%Linux kernel coding style107
    • 1.3%Boost Guidelines13
    • 2.3%Alexandrescu C++ Coding Standards22
    • 0.5%Mozilla C++ Portability Guide5
    • 10.6%Другой общеизвестный101
    • 26.8%Собственный, не основанный на предыдущих254
    • 25.8%Нет у меня его. Зачем он нужен?245
    Поделиться публикацией

    Похожие публикации

    Комментарии 72

        0
        Запостите тоже самое только про PHP, пожалуйста. Думаю, будет интересная картина. Я честно пытался сделать сам, но кармы не хватает.
          0
          Не силен в стандартах, принятых в PHP, не смогу предложить варианты.
            +2
            Так скооперируйтесь, коллеги, для того ведь Хабр и нужен!
            vooD — предложи варианты, а tangro — забабахай опрос.
              +1
              Варианты:
              1. Zend Coding Standard
              2. PEAR Coding Standard
              3. Стандарт используемый в моем любимом Framework/CMF/CMS (кроме Zend)
              4. Другой общеизвестный
              5. Собственный, не основанный на предыдущих
              6. НЛО мне сказал, что лучший стандарт — его отсутствие.
                0
                Отличные варианты, тогда уж можно сразу:
                1. Zend
                2. PEAR
                3. Что-то другое
                  +1
                  Ок, публикую. Сошлюсь на Вас, как на автора вариантов. Еще вставлю ссылочки.
                  Zend Framework Coding Standard for PHP
                  PEAR Coding Standards
                  Horde Coding Standards
                    0
                    Спасибо :)
                      +1
                      -11 пост набрал :) А этот топик +15. Приверженцы С++ как-то спокойнее относятся ко всяким гайдам.
                        0
                        Это всего лишь показывает уровень экспертизы программистов в PHP. Печально.
                0
                Когда-то занимался разработкой на php, использовал довольно известный стандарт
                0
                Жаль нет нигде сводной таблицы по стилям :-(
                +4
                Вот я с ними не ознакамливался достаточно и затрудняюсь какой вариант ответить…
                Странный опрос…
                  +2
                  Ну, это очень просто. Если Вы с ними не ознакамливались (но какой-то четко формализированный стиль у Вас есть) — это пункт «Собственный, не основанный на предыдущих». Если Вы с ними не ознакамливались, поскольку и не планировали заводить никакого стиля — это пункт «Нет его у меня».
                    +3
                    а если по счастливой случайности мой стиль совпадет с одним из классических?
                      +2
                      Ну, я думаю тогда Вы заслуживаете комплимента за самостоятельное достижение одного из лучших мировых стандартов.
                    +14
                    — Вы умеете играть на пианино?
                    — Не знаю, не пробовал.
                    +1
                    У меня собственный, основанный на «Google C++ Style Guide» и «Microsoft Coding Standards»
                      +2
                      Их получается совместить? А дайте почитать.
                        +1
                        Основа от Microsoft'a, от гугла немного и довольно много своего.
                        Пример кода (со времён написания этого кода стиль немного изменился, но в целом такой же)
                          +3
                          Забыл вставить ссылку на сам код
                            +1
                            Комментариев бы в ваш стильный код)
                              +3
                              жуть :-)
                                0
                                m_bEnterMessage = !m_bEnterMessage;
                                if(m_bEnterMessage)
                                {

                                }
                                else
                                {

                                }

                                улыбнуло у вас в коде. А вообще, я лично не нахожу удобным именование вида m_pMyMsg, m_dwCursorPos,… я предпочитаю длинные имена: displayIntervalIsRunning, howMuchValuesNeedToCut, для функций такие имена saveAllElementInDiv() и т.д.

                                соотв. любой кто читает после меня не испытывает проблем.
                                  0
                                  Не особо понял, зачем у вас модификаторы const при передаче параметров метода по значению. Параноя какая-то )
                            +14
                            Qtшный стиль, он отчасти BSDшный
                              +2
                              Собственный, основанный на общеизвестных.
                                +1
                                Общеизвестных много. Опрос как раз чтобы понять, чем люди больше руководствуются. Можете выбрать наиболее повлиявший или написать в комментариях все.
                                +1
                                Ни когда не задумывался, чей же стиль у меня (есть и есть, что с него взять?).
                                Но ближе всего к Microsoft Coding Standards, выбрал его.
                                  +1
                                  Я вот поймал себя на том, что часть моих убеждений в кодировании основано на какой-нибудь аргументации (стандарт, статья, обсуждение, обдумывание) а часть — просто на «так привык» или «так впервые когда-то увидел и решил не изобретать велосипед». Стало интересно как выбирают для себя правила другие люди.
                                    +2
                                    Лет десять-пятнадцать записывают на бумажке удачные решения. Потом сравнивают получившееся с существующими стандартами, находят тот у которого 95-процентное совпадение и на этом успокаиваются :)
                                      +3
                                      Я вот в этом процессе как раз между «Лет десять-пятнадцать записывают на бумажке удачные решения» и «на этом успокаиваются». Потому и опрос создал.
                                      +2
                                      С этой точки зрения могу сказать, что вырабатывал его сам, методом проб и ошибок.
                                      Первоисточником стиля был Pascal (в универе его изучал 1м, до этого с 9 го класса знал).
                                      Заменить все «{» на «Begin» и «}» на «End», еще пару специфичных конструкций и получится довольно похоже на него )))
                                      Смотрел, писал, искал как мне удобно оформлять и понимать код. Уже когда увидел, что полугодовалые исходники оформлены в том же стиле, с которым и сейчас работаю, понял что стиль выработался.
                                    0
                                    Интересно было бы выделить отдельно такие стандарты как MISRA. Есть ли на Хабре люди пишущие с соблюдением этих стандартов.
                                      +1
                                      Пишу на C#. У нас в команде мы сошлись на том, что для C# самым распространенным является стандарт Microsoft. К тому же, под него, в основном, заточены правила StyleCop.
                                      Немного подпилили под себя правила и успешно пользуемся.

                                      В команде у людей, в общем-то, всегда есть разные предпочтения по форматированию, именованию и пр. Однако с использованием Microsoft Coding Standard у нас проблем не было, всех устраивает.
                                        +3
                                        В С# почти нет вариантов — Microsoft, как разработчик основной IDE и основного компилятора диктуют стиль. А вот на классических плюсах пишут все и по-разному.
                                          +1
                                          Причем MS навязывает свой стиль ОЧЬНЬ прогрессивно.

                                          Вспоминаю времена своего «кодо-писания» с использованием MFC как дурной сон (в плане стиля кода и наименования переменных/функций)
                                          0
                                          Не с одного ли мы проекта )))) Тоже писал до этого сам и в проекте стали писать Microsoft Style. На мой взгляд он наиболее логичный и понятно читаемый.
                                          Ну неудобно мне читать неизвестно где кончающийся if и начинающийся код а ля
                                          if(a== 1 ||
                                          b== 2 ||
                                          c== 3 ||) {
                                          d=4

                                          }
                                          или som_variables_is_so_difficult_to_read

                                          0
                                          Ближе всего мой стиль к BSD.
                                            0
                                            Microsoft Coding Standard за исключением венгерской нотации.
                                              0
                                              А что в венгерской нотации не подходит?
                                              Пожелания работодателя?

                                              P.S. У нас она рекомендована, но не ''мордуют''…
                                                0
                                                Читали исходники драйверов когда-нибудь? Осмелюсь предположить — нет. Так вот там ни одного упоминания про венгерскую нотацию нет, я так же считаю что она излишняя.
                                                  0
                                                  Доводилось читать исходники драйверов.
                                                  В большинстве своем, правда, на ''чистом'' С, где ''гуру старой закалки'' любят ''особый стиль''.
                                                  Приходилось сталкиваться и с вообще ''малочитаемым'' кодом, где автор через 2 месяца не мог быстро разобраться…
                                                  Я против чрезмерной формализации, но, по-моему, например, ''система'' в названиях переменных — не помеха при любом раскладе…
                                              +2
                                              Boost Guidelines + GNU coding style
                                                0
                                                Sun Coding Conventions с адаптацией к c++
                                                  +10
                                                  K&R
                                                    +5
                                                    Повторюсь, но все таки qt.gitorious.org/qt/pages/QtCodingStyle
                                                      0
                                                      проголосовал за Microsoft Coding Standards, т.к. стараюсь придерживаться его.
                                                        +5
                                                        Зачем вы стили C и C++ смешали?
                                                          0
                                                          Kernel style
                                                          В основном пишу для ядра на Си, когда переключаюсь на плюсы — пишу в таком же стиле

                                                          Очень компактно и читаемо
                                                            0
                                                            Собственно говоря почему так мало стандартов? Загляните в netbeans и там будет довольно большой список вариантов форматирования.
                                                            А так пиши в своем стиле похожем на ANSI. Но вообще всё зависит от ОС под которую пишу. Именование переменных и функций, а также возвращаемые значения отличаются когда пишу под Windows или под Linux
                                                              –1
                                                              В своем продукте выработали свой собственный стиль и стараемся его придерживаться. Для себя пишу в стиле Ultimate++. Он больше похож на то, что принято в C#. Только вместо class пишется struct, чтобы не писать потом сразу public:. При этом при наследовании не надо добавлять public, например:
                                                              struct Button : Ctrl
                                                              {
                                                              Button();
                                                              ...
                                                              };


                                                              Очень удобно и практично.
                                                                +3
                                                                А тут не путают теплое с мягким? Есть совершенно ортогональные аспекты: стандарты форматирования, стандарты именования переменных, практики использования языка (шаблоны, исключения, RTTI).
                                                                Например, Mozilla guidelines говорят в основном, каким подмножеством C++ можно пользоваться, а Linux kernel style описывает в основном форматирование кода (так как он вообще не про C++).
                                                                  +1
                                                                  Странно, что никто не вспомнил JSF air vehicle C++ coding standards, который рекомендует Страуструп на своей страничке (впрочем, ничего особо хорошего в этом стандарте нет).
                                                                  Что же касается ответа на вопрос, то я пользуюсь собственной химерой, созданной на основе некоторых из предложенных стандартов.
                                                                    0
                                                                    Чуть выше я вспомнил MISRA, про JSF решил и не спрашивать. Рад что кто-то слышал про JSF :)
                                                                      0
                                                                      Да откуда нам знать-то про «Jamaica Star Forces air vehicle C++ coding standards»?!
                                                                        0
                                                                        Так может кто еще и про DO-178B слышал, тогда бы мир, дружбу, жвачку объявили бы)))
                                                                    0
                                                                    Если речь идёт о форматировании кода и об именовании переменных и методов, то я использую очень многие правила из WebKit Coding Style Guidelines. В исходниках WebKit'а хорошо видно, как эти правила улучшают удобочитаемость кода. А что касается правил использования языковых фишек, то тут я руководствуюсь только собственным опытом и здравым смыслом.
                                                                      +2
                                                                      Смесь K&R и Linux.
                                                                        0
                                                                        Пользуюсь NetBeans стилем форматирования, именование идентификаторов в стиле Qt…
                                                                          0
                                                                          По ссылке MS-style — наглая ложь! Краем глаза видел всем известные исходники. :-)
                                                                            0
                                                                            Я не знаю, возможно слишком давно читал Саттера с Александреску, но там же насколько я помню очень мало собственно стандарта, там просто оговариваются моменты которые должны быть чётко определены в рамках проекта-команды — то есть руководство по созданию собственного стандарта кодирования.
                                                                            • НЛО прилетело и опубликовало эту надпись здесь
                                                                              0
                                                                                0
                                                                                Почему нет варианта, «по рекомендациям Макконнелла»?
                                                                                  0
                                                                                  В книгах Макконнелла почти по любому аспекту приводится штук 5 вариантов стиля. Причем смелость сказать «лучший — только вот этот» он на себя не берет. Максимум скажет «вот этот и этот плохой, а из оставшихся выбирайте сами».
                                                                                    0
                                                                                    Приводит он действительно много вариантов, но рекомендует один, максимум два. Я соответствующую главу недавно совсем перечитывал.
                                                                                      0
                                                                                      Ну вот из-за случаев «максимум два варианта» я его сюда и не включал. Ну не стандарт это, если рекумендуется 2 варианта.
                                                                                        0
                                                                                        А в вашем стандарте каждый случай прям четко-четко прописан? Вплоть до того, сколько пробелов ставить в отступах и сколько должно быть комментариев на каждый N строк кода?

                                                                                        Просто есть мнение, что стандарт нужен не совсем для того, чтобы вот весь код был прям по стандарту, а несколько для иных целей :) Нет ничего страшного, если иногда немного от него отклоняться. Или если стандарт не загоняет программиста в строжайшие рамки. В крайнем случае, код всегда можно прогнать через плагин, форматирующий его нужным образом.
                                                                                          0
                                                                                          Тут и вправду нужно не путать теплое с мягким. В стандарте да, действительно прописано сколько пробелов ставить в отступах и сколько должно быть комментариев (правда не на N строк кода, а по некоторым другим метрикам). Но Вы правы в том, что стандарт стандартом, а работа работой и в ней иногда случается (или бывает необходимо) от него отклониться. Это мне было понятно с самого начала и в уточнениях не нуждалось, а вот используемые стандарты мне были интересны.
                                                                                  0
                                                                                  Qt
                                                                                    0
                                                                                    Поддерживаю — как принято в Qt! Хотя иногда склоняюсь к Linux стилю особенно когда pure C.
                                                                                    А так как в последнее время пишу на Python 80% времени, то применяю PEP к C++ насколько это возможно.
                                                                                    т.е. ClassName и new_object.

                                                                                    Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                                                    Самое читаемое