Здравствуйте, Зверёк Харьковский, Вы писали:
ЗХ>несколько раз устраивался на работу С++-ником. слал всешда h-ники с классами. выбирал те, на которые мне самому приятно посмотреть. ЗХ>венгерская нотация, комменты и прочее — тут можно, ИМХО, решить только из личных предпочтений — типа, если ты считаешь, что этот код достаточно хорош, чтобы в нем было удобно копаться чужим дядям — его и шли. ЗХ>удобство кода создается разумными именами переменных, "красивым" стилем и комметами — но все в правильных пропорциях (типа не комментировать каждую строчку, не называть переменные длинне десяти букв и короче одной. не жертвовать скоростью и/или памятью ради красоты стиля и проч.)
Господи, сколько предрассудков! Переменные больше десяти букв нельзя видите-ли!!!
Что лучше
if(BoardID != 0)
NumberOfBoards++;
или
if(bid !=0)
brdnm++
???
Я бы предпочел первый код, несмотря на то что переменные более 10 букв :-)
За других говорить не буду, а мне нравится
1) единство стиля. Если одна переменная обозвана gNumberOfBoards, другая
board_id, третья cbsrlocal, то порядка в коде не будет. Должны быть какие-либо
coding standards, которым человек следует, хотя-бы и неписанные.
2) понятность кода. Если я вижу код который я не понимаю, значит и многие
другие программеры будут иметь те-же проблемы. Необходимы по крайней мере
минимальные коментраии.
3) Владение языком и понимание языка
Один чудик в нашей конторе писал
if(NumberOfBoards>0)
{
if(BoardId>0)
{
if(State=RUNNING)
{
...
}
}
}
У человека были проблемы c && и || — вложенность порой достигала 10.
Y> Я например данную практику считаю порочной...
Вполне допустимо выдернуть один небольгой файл, убрать из него все копирайты
и ссылки на другие части кода.
Y> Особенно становиться груссно когда просят выслать куски сданных комерческих проектов. Когда говоришь им про NDA и прочее и предлагаешь личные не коммерческие разработки — морщат нос...
Ничего страшного, берете 10kb из написанного мегпбайта, чистите и посыоаете. У меня всегда были некоммерческие проекты которые я мог показать
Y>А я обычно предпочитаю высылать набор интерфесов, а не классов.
AZ>Что лучше
AZ>if(BoardID != 0) AZ> NumberOfBoards++;
AZ>или
AZ>if(bid !=0) AZ> brdnm++ AZ>???
AZ>Я бы предпочел первый код, несмотря на то что переменные более 10 букв
Правильнее BoardCount, и как раз десять. Получается, ограничение верное.
Если серьёзно, то в случае сомнений нужно всегда выбирать более развёрнуте название вместо краткого. В особенности это касается аргументов функций.