|
9 / 4 / 0
Регистрация: 12.05.2015
Сообщений: 48
|
|
Как понять нормальный у тебя код или нет?16.02.2016, 11:22. Показов 3153. Ответов 26
Метки нет (Все метки)
Сейчас в процессе изучения C++ столкнулась с тем, что подсматриваю в интернете кто и как выполняет те или иные задачи. Еще ни разу не было такого, чтобы наткнулась на полностью подходящий код. Всегда выкрадываешь только частицу из чужого кода.
Поневоле начинают закрадываться мысли, а правильный ли я пишу код? Как определить правильность кода? Да, код работает, но правильный ли он? Еще больше начинает закрадываться мыслей в направлении, а правильный код у других программистов. Учитывая тот момент, что наталкиваешься на неподходящие варианты кода. Порой явно какой-то неправильный. Мир кодеров не идеален?
0
|
|
| 16.02.2016, 11:22 | |
|
Ответы с готовыми решениями:
26
Надо понять правильно работает код или нет. И работает ли он вообще Как понять - Blu-ray привод или нет? Как понять это бан или нет? и почему? |
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||
| 16.02.2016, 14:41 | ||
|
Вот большинство студентов на форуме говорят, что пишут на С++, а сами лабают на Си. Красоту кода я имел в виду в широком смысле, т.е. приемлемость с вашей эстетической точки зрения. И здесь интуиция всегда подскажет. Как говорил Туполев, некрасивый самолет не полетит. Некрасивая программа может быть и скомпилируется, и даже правильно решит задачу, но может в других аспектах быть проблемой. Ну а с ясной и удобочитаемой программой и самому удобнее работать и видеть в ней ошибки, и другим приятнее ее читать.
1
|
||
|
1379 / 406 / 144
Регистрация: 22.10.2014
Сообщений: 872
|
||
| 16.02.2016, 14:50 | ||
|
Вот в бухгалтерии, для несведующего человека бухгалтерия это горстка чисел, для бухгалтера - каждое число обязано быть в определённой графе. Т.е. любой человек с улицы умеющий считать в столбик, сможет просчитать всю бухгалтерию и привести верные числа, только вот налоговая, не принимает бумажные салфетки с числами, им подавай определённую заполненную форму. Вот разница между проеденным бухгалтером и человеком с улицы в том, что бухгалтер знает, зачем нужна именно эта форма, почему её сделали именно такой, какую задачу она решает. П.С. Я предполагаю, что эти формы у бухгалтеров не с неба взяты, и там на самом деле есть умные люди, которые решают проблемы, а не создают их ![]() Переходя к коду и разговаривая о переменных, и о чужом неверном коде: Нужно быть наверняка уверенным, что чужой код сделан таким, по велению судьбы, а не специально, тогда он без проблем может быть неверным. Например оптимизации: 1) "Ломание" архитектуры, ради избавления от кэшпромахов. 2) Вынос условных переходов из логичного места в не совсем логичное, ради лучшего предсказывания переходов. 3) Использование какой-либо неудобной функции, вместо красивой и удобной, которая опять же может ускорить код. 4) Какие-то архитектурные решения, аля несколько доп. переменных - возможно они существуют ради облегчения будущего расширения кода, если так, то плох он или хорош этот код? Именно знание всяческих нюансов писавшего и отличает хороший код от "плохого", ровно также как и в бухгалтерии, ровно также как и во всех остальных областях. Но в общем случае, всё, что пишется на форумах, очень часто будет неверным, или не самым рациональным, на форумах обычно люди учатся или пишут частенько на отмашку. Всё увиденное нужно понимать и проверять. Последнее также относится к книгам
1
|
||
|
Игогошка!
1801 / 708 / 44
Регистрация: 19.08.2012
Сообщений: 1,367
|
||
| 16.02.2016, 14:55 | ||
|
4
|
||
|
9 / 4 / 0
Регистрация: 12.05.2015
Сообщений: 48
|
|
| 16.02.2016, 14:56 [ТС] | |
|
0
|
|
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||
| 16.02.2016, 15:03 | ||
|
Ну, это как спорить, например, кто правильнее написал стихотворение о любви. Математически вроде не докажешь, но всем как-то понятно, что у Ахматовой лучше получилось, чем у какого-нибудь васи пупкина.
0
|
||
|
1379 / 406 / 144
Регистрация: 22.10.2014
Сообщений: 872
|
||
| 16.02.2016, 15:11 | ||
нюансы, это само собой разумеющееся, озвучивать это ради холивара не хочу ![]() И привёл лишь то, что подталкивает к дополнительному изучению материала.
0
|
||
|
260 / 87 / 30
Регистрация: 29.10.2015
Сообщений: 196
|
|
| 19.02.2016, 18:56 | |
Сообщение было отмечено gru74ik как решение
Решение
По существу заданного вопроса.
Код должен соответствовать той ситуации и той проблеме, которую он решает. Попробую по нарастающей перечислить признаки крутизны кода. 1) Код выполняет условия задачи. Уже хорошо. И этого иногда достаточно, если задача сиюминутная и к ней больше никогда и никто не вернется - нужны лишь полученные данные, и все. 2) Код контролирует данные, подсовываемые в задачу, и не сваливается при неправильных данных, да еще и предупреждения пользователю выдает. Еще лучше. 3) Код написан в срок. Это вообще классно, и иногда это самый важный пункт. 4) Код вообще не глючил очень долго, и его не смогла "завалить" целая бригада тестировщиков. Еще лучше. 5) Код написан так, что вы вернулись к нему спустя два года, вам понадобилось что-то в нем доработать. И вы все вспомнили, как и что в нем устроено, и вам не понадобилось заново вникать в его структуру. Еще лучше. 6) Код написан так, что другой программист, которому его передали - разобрался в нем без проблем и смог сам внести в него нужные дополнения, не обрушив что-то другое. Еще лучше. Все, конечно, ИМХО.
2
|
|
| 19.02.2016, 18:56 | |
|
Как по матрице смежности понять изоморфны графы или нет Как понять правильно сверстана форма под мобильники или нет? Как понять, ограничена (сверху/снизу/в целом) последовательность или нет? DVD-RW Asus DRW-24B1S1T SATA Black RTL. Нормальный привод или нет? Понять, разноцветное изображение или нет Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер
На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
|
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/
TL DR
Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|