powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
19 сообщений из 44, страница 2 из 2
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37835937
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Edd.DragonИ что коментировать?
Код: plaintext
1.
// это обработчик кнопки Start:


В таких случаях хватает одного комментария вроде

Код: pascal
1.
// Действия по кнопкам


для секции обработчиков. Если, конечно, они тривиальные. Если нетривиальные - не жалко и по одному на такой обработчик.
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37835970
Edd.Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да нет, пример просто пример того, что при простом коде в коменте будет банально его перевод с английского на русский.

Комент перед началом каждой функции может требоваться по корпоративным правилам оформления. Просто лень было придумывать пример не с именем функции, а с каким-нибудь кодом.
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37835983
Edd.Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Типа

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
// если файл кончился, то дописываем в выходной файл "конец", иначе просто пишем прочитанный символ

if(ch == EOF)
{
    fputs("конец", fout);
}
else
{
    fputc(ch, fout);
}




Всего один комент на 4 строчки кода + 4 строчки скобок. Но какой бесполезный, дублирующий и отжирающий время!
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37835987
Edd.Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Более того, чтобы этот коменты был НЕ менее понятен, чем сам код - нужно потратить время на его придумывание. Я вот не потратил - так читаю и он меня самого путает.
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37836007
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Edd.DragonДа нет, пример просто пример того, что при простом коде в коменте будет банально его перевод с английского на русский.
Хороший коммент - не будет. Что я собственно и имел в виду встречным примером.

Edd.DragonКомент перед началом каждой функции может требоваться по корпоративным правилам оформления.
В задницу тупые правила :) Ну или если лояльно - корпоративные правила есть subject of refinement.

Edd.DragonВсего один комент на 4 строчки кода + 4 строчки скобок. Но какой бесполезный, дублирующий и отжирающий время!
Сам код не лучше Ибо

Код: plaintext
1.
fputs(ch == EOF ? "конец" : ch, fout);
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37836028
SergeyFirst
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Edd.Dragon,
Мне же комментарий кажется вполне уместным. Так же, если бы вы разбирались в чужом коде, то этот комментарий вам бы не показался лишним. Да и свой код с комментариями через месяц выглядит более осмысленным нежели без них.

Вообще при разработке больших алгоритмов необходимо стремиться разгрузить голову, чтобы повторно не приходилось разбираться в ранее написанном. Чем проще код и чем лучше он структурирован тем проще в дальнейшем его доработать и меньше вероятность сделать ошибку.
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37836043
Edd.Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergeyFirstМне же комментарий кажется вполне уместным. Так же, если бы вы разбирались в чужом коде, то этот комментарий вам бы не показался лишним. Да и свой код с комментариями через месяц выглядит более осмысленным нежели без них.

Нет, в данном случае коментарий повторяет код по-русски. Т.е. является излишним. Уместным был бы коментарий перед циклом, в котором лаконично объясняется, что в цикле делается. Более подробно поясняет сам КОД. Но это уже 1 комент на 10-15 строчек кода, но никак не на 5. Каждые 5 строчек - это таки получится перевод кода на русский.
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37836057
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Edd.DragonНо это уже 1 комент на 10-15 строчек кода, но никак не на 5.
Зависит от кода. Не думаю, что уместно считать строчки. В принципе, я для себя пришёл к выводу, что хороший комментарий должен составлять что-то вроде схемы (внутри подпрограмм - блок-схемы) более высокого, чем код, уровня. То есть давать возможность бегло просмотреть код, читая только комментарии, и получить общее представление "что и как".
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37836060
SergeyFirst
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Edd.Dragon,

Это не только перевод кода на русский, но и комментарий к именам переменных и методов . Без вашего комментария сложно было бы понять что такое ch, fputs, fout. Пришлось бы смотреть выше по коду, искать место где инициализированы переменные, описаны методы. А так всё более менее понятно.

Да, конечно в данном случае это может быть 10-15 секунд, но когда за рабочий день встречается сотни подобных ситуаций, такие комментарии облегчают жизнь. Да и лишняя дисциплина ещё ни кому не мешала.
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37836068
Edd.Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerЗависит от кода. Не думаю, что уместно считать строчки.
Разумеется. Может быть такой алгоритм, что там на каждую строчку придется писать депешу и желательно со ссылкой на картинку поясняющую. Но ведь подобный код составляет мизер в большом объеме "среднестатичтического" кода, а бОльшая часть все же должна читаться легко и с не частыми коментами. Иначе получается, что по-русски ты изъясняться умеешь, а вот на языке программирования материшься как сапожник =))
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37836073
Edd.Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergeyFirst Без вашего комментария сложно было бы понять что такое ch, fputs, fout.
Вот-вот, раньше абсолютно не умели обзывать функции в стандартных бибилиотеках Си. Потому никакой комент не был лишним. Все на символах экономили... Сейчас же таким не страдаем.
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37836093
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergeyFirstБез вашего комментария сложно было бы понять что такое ch, fputs, fout.
Только "студенту", никогда в жизни не писавшему на Си. А это немного не та целевая группа, на которую рассчитан хороший комментарий. Хороший комментарий должен приносить пользу участнику проекта, разработчику. Комментарии к ch, fputs и fout уместны в примерах книги "учимся программировать на Си", в рабочем же коде они - мусор, мешающий читать код.
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37836094
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergeyFirstEdd.Dragon,

Это не только перевод кода на русский, но и комментарий к именам переменных и методов . Без вашего комментария сложно было бы понять что такое ch, fputs, fout. Пришлось бы смотреть выше по коду, искать место где инициализированы переменные, описаны методы. А так всё более менее понятно.большая проблема таких комментариев, что их никто не обновляет при поддержке и сопровождении, поэтому получается примерно такая вот фигня:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
// если файл кончился, то дописываем в выходной файл "конец", иначе просто пишем прочитанный символ

if(ch == EOF)
{
    fputs("end-of-file", fout);
}
else
{
    fputc(ch, fout);
}
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37836106
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Саша147Здравствуйте!

Имею 2.5 года опыта работы на Delphi + Firebird + DevExpress + FastReport. С некоторого времени стал замечать за собой, что на написание простых конструкци кода, таких как например, обработчик установление enabled=true/false для 5-6 кнопок (или другие проверки) у меня уходит относительно много времени, которое можно было бы потратить на более сложные участки программы.

Но вот тут скрывается основная проблема - каким образом писать сложные программы простыми, явными алгоритмами? Подскажите пожалуйста из своего опыта, на что стоит обратить внимание, какие типовые методики существуют? Если есть литература на эту тему, поделитесь пожалуйста ссылочкой на неё)


Существуют другие языки программирования, в которых есть например средства метапрограммирования или средства расширения языка.
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37838610
pectopatop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivСаша147...2.5 года опыта работы на Delphi...

Существуют другие языки программирования, в которых есть например средства метапрограммирования или средства расширения языка.
Расширять язык ? Синтаксис т.е. ? Или добавлять свои объекты/классы/компоненты?
Если второе - то Делфи это умеет с огромным успехом (хоть Delphi-компоненты, хоть OLE, хоть CORBA, хоть веб-сервисы, хоть DLL... что еще не назвал из значимого? Java-классы?)
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37838716
Фотография k0rvin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pectopatopРасширять язык ? Синтаксис т.е.?

грубо говоря, да.
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37839015
Фотография S.G.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergeyFirstМне же комментарий кажется вполне уместным. Так же, если бы вы разбирались в чужом коде, то этот комментарий вам бы не показался лишним. Да и свой код с комментариями через месяц выглядит более осмысленным нежели без них.
Насчет комментариев, есть хорошая фраза: "комментарий должен объяснять, что здесь делается, а не как оно делается". То есть вместо "здесь цикл по переменной j" надо "получаем конечную сумму".
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37839097
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
S.G.Насчет комментариев, есть хорошая фраза: "комментарий должен объяснять, что здесь делается, а не как оно делается".
Фраза хорошая и известная, но если подумать, не очень умная (ну или плохо переведённая). Потому как есть классический пример соответствующего ей комментария

Код: pascal
1.
2.
// move b to a
a := b;



Классический - потому что на Коболе это выглядело гораздо смешнее :) Более того, она в ряде случаев неверная. Оцените например комментарий

Код: pascal
1.
2.
// А теперь применяем метод Петрова-Сидорова
... двадцать строк тяжёлых формул ...



Так что всё не так просто :)
...
Рейтинг: 0 / 0
Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
    #37839267
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pectopatopMasterZivпропущено...


Существуют другие языки программирования, в которых есть например средства метапрограммирования или средства расширения языка.
Расширять язык ? Синтаксис т.е. ? Или добавлять свои объекты/классы/компоненты?
Если второе - то Делфи это умеет с огромным успехом (хоть Delphi-компоненты, хоть OLE, хоть CORBA, хоть веб-сервисы, хоть DLL... что еще не назвал из значимого? Java-классы?)
http://ru.wikipedia.org/wiki/Nemerle
...
Рейтинг: 0 / 0
19 сообщений из 44, страница 2 из 2
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Каким образом писать сложные многофункциональные программы простыми простыми алгоритмами?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]