Longobard
написал 6 июля 2004 года в 00:43 (974 просмотра)
Ведет себя
как мужчина; открыл 291 тему в форуме, оставил 2499 комментариев на сайте.
Как их следует оформять (в смысле каковы тут правила «хорошего тона»)? А то у меня я так посмотрел — не сорцы а помойка :) Ни тебе комментов, длинные имена переменных то имя_переменной то ИмяПеременной то Имя_переменной и т.д. :) Короче надо исправлять. Чего вы пишете в начале сорца? В комментах. А?
Последние комментарии
-
OlegL, 17 декабря 2023 года в 15:00 →
Перекличка
21
-
REDkiy, 8 июня 2023 года в 9:09 →
Как «замокать» файл для юниттеста в Python?
2
-
fhunter, 29 ноября 2022 года в 2:09 →
Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt?
6
-
Иванн, 9 апреля 2022 года в 8:31 →
Ассоциация РАСПО провела первое учредительное собрание
1
-
Kiri11.ADV1, 7 марта 2021 года в 12:01 →
Логи catalina.out в TomCat 9 в формате JSON
1
DevOps as a Service from Palark
24/7 SRE & DevOps service to cover all your Kubernetes needs.

Ну, загляни, скажем, в сырцы MPlayer’а, они довольно неплохо оформлены.
Good Luck,
UT
Это шутка? Сорцы Mplayer’а — это одна из самых запущеных помоек, что я видел.
LONGOBARD:
Почитай The Practice of Programming (у нас «Практика программирования», Бином, Невский Диалект, 2001) Кернигана и Пайка. Или посмотри сорцы Plan9 from Bell Labs, или сорцы старого UNIX’а V6 или V7 — их можно взять на ftp’шнике The Unix Preservation Society. На худой конец — прекрасный пример хорошо офрмленных исходников, как ни странно, — Sendmail.
Вы наверное меня не так поняли. Каков ваш стиль оформления сорцов? Мой такой:
/******************************************************************************* * Copyright (C) 2004 by LONGOBARD * * longobard@users.mns.ru * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * ********************************************************************************/ (это в начале каждого сорца) Далее: обьявления функций: возвращаемое значение Класс::Функция (арги) { код } длинные имена переменных пишу как ИмяПеременной, короткие как переменнаяА как вы?
я примерно так:
/* Без какого-либо заголовка */ int my_func ( int some1, int some2, int some3) { code goes here .... ..... if ( ) { more code ....... } }Переменные пишу как
имя_длинной_пересенной.
Пример
Имена функций:
имя_долгой_функции()
пример
Имена виджетов:
действие_btn для button
Имена callback-ов:
void on_действие_btn_clicked(….)
{
…
}
А я так:
/* (c) myst, 2004/01/01 */ #include <...> int funcname(int, int, ..., int, ..., int); int global; enum Flags { FIRST, SECOND, THIRD }; typedef enum Flags Flags; struct Something { int fieldone; int fieldtwo; ... double fieldn; }; typedef struct Something Something; int funcname(int argone, int argtwo, ..., int argm, ..., int argn) { Something s; int local; /* long description */ if (...) { dosmth(); /* short description */ } }Вообще-то за indent’ом должна следить одноименная прога либо функция редактора. В *Emacs, например, Enter+TAB или лучше C-j обычно помогают.
Я так понял, работаете один а не в команде. Тогда все просто. Если берете какой-нибудь старый сырец (полугодичной, скажем, выдержки) и практически сходу врубаетесь в то, что он делает (внимание, тонкость: как делает — отдельный разговор) то все в порядке. А вообще, документировать код — это арт. Не ко всем и не сразу приходит.
P.S. ИМХО, самый запущенный код из тех, что я видел — это Dungeon Crawl
смотри , я например очч люблю и уважаю как Gnome-овские сурсы сделаны .
по поводу длинных имён …. ну к примеру ничегоне вижу зазорного в таком имени макроса G_TYPE_CHECK_CLASS_CAST
а вообще не плохо почитать Extreem Programming на эту тему .