Например TDA7294

Форум РадиоКот • Просмотр темы - Почему программист ненавидит ковырять чужой код
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вт апр 23, 2024 19:18:52

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Почему программист ненавидит ковырять чужой код
СообщениеДобавлено: Пт июн 10, 2022 10:51:18 
Открыл глаза

Карма: 3
Рейтинг сообщений: 0
Зарегистрирован: Чт ноя 26, 2020 13:19:49
Сообщений: 50
Рейтинг сообщения: 0
Меня недавно спросили, почему программисты ненавидят работать с чужим кодом. Долго думал, как донести до обычного пользователя всю суть 3,14здеца.

Решил привести небольшую аналогию:

Вот представь, что тебе доверили достроить за другим прорабом лабораторию на острове. Ты приходишь на объект, а там кроме недостроенного здания: огромный вентилятор (размером со здание), большой воздушный шар и комната набитая швабрами. Почесав голову, ты разбираешь этот хлам и доделываешь лабораторию. Сдаешь объект ученым, но через 5 минут они выбегают с криком: "УТЕЧКА ЯДОВИТОГО ГАЗА!!!".

— Как так–то, бл@ть! Должно же работать! — в отчаянии кричишь ты и звонишь прошлому прорабу:

— Вася, у нас ядовитый газ потёк! В чем проблема?

— Не знаю, должно было все работать. Что–то в проекте менял?

— Немного, швабры вынес...

— Швабры потолок держали!

— Что??? Что, бл@ть, извините???

— Говорю, швабры потолок держали. Над ними цистерны с газом были. Очень тяжелые, пришлось в комнату снизу швабры напихать.

— Ты хотя бы записку на двери повесил бы, что швабры для держания потолка! У нас тут ядовитый газ течет! Что нам делать?

— Включай вентилятор. Он сдует газ с острова.

— Я его, бл@ть, демонтировал сразу же!

— Зачем?

— Зачем ты построил 120 тонный вентилятор? Ты не мог положить ящик бл@дских ПРОТИВОГАЗОВ?

— Ящик противогазов искать нужно, а вентилятор у меня с прошлого заказа оставался.

— Вася, я убрал твой вентилятор! Мы тут задыхаемся!

— Херли вы тогда там делаете? Садитесь на воздушный шар и уе%ывайте от туда!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Почему программист ненавидит ковырять чужой код
СообщениеДобавлено: Пт июн 10, 2022 11:17:38 
Друг Кота
Аватар пользователя

Карма: 29
Рейтинг сообщений: 1319
Зарегистрирован: Сб дек 18, 2021 19:25:32
Сообщений: 10479
Рейтинг сообщения: 0
В тему соседней ветки про мат: какой смысл заменять в матерных словах символы? Как где-то прочитал в интернете: это всё равно, что минет на площади среди кучи людей прикрывать ладошкой

А по теме: это бред. Изучение профессионального чужого кода интересно, а хорошо документированного - вдвойне, а за деньги - втройне.

_________________
добавь radiokot.ru##.tablebg > tbody > tr:has(td>a[href*="?f=17"]) в адблок, сделай форум чище!
"Э-э-э-хей... растёт правосознание!"


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Почему программист ненавидит ковырять чужой код
СообщениеДобавлено: Пт июн 10, 2022 12:48:22 
Открыл глаза

Карма: 3
Рейтинг сообщений: 0
Зарегистрирован: Чт ноя 26, 2020 13:19:49
Сообщений: 50
Рейтинг сообщения: 0
А если не задокументированный, без комментариев и на ассемблере, да ещё и микроконтроллер новый?
(в смысле ещё не изученный)


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: Почему программист ненавидит ковырять чужой код
СообщениеДобавлено: Пт июн 10, 2022 13:04:10 
Друг Кота
Аватар пользователя

Карма: 29
Рейтинг сообщений: 1319
Зарегистрирован: Сб дек 18, 2021 19:25:32
Сообщений: 10479
Рейтинг сообщения: 0
тоже хорошо - добавляем младших три ноля к цене ;)

_________________
добавь radiokot.ru##.tablebg > tbody > tr:has(td>a[href*="?f=17"]) в адблок, сделай форум чище!
"Э-э-э-хей... растёт правосознание!"


Вернуться наверх
 
Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Почему программист ненавидит ковырять чужой код
СообщениеДобавлено: Пт июн 10, 2022 15:03:44 
Потрогал лапой паяльник
Аватар пользователя

Карма: 9
Рейтинг сообщений: 67
Зарегистрирован: Ср сен 16, 2020 20:38:41
Сообщений: 302
Откуда: Краснодарский край, г.Абинск
Рейтинг сообщения: 0
тоже хорошо - добавляем младших три ноля к цене ;)
Ннну, и останешься без работы ... :)

А по поводу вышесказанного ... интересно разбираться в чужом коде когда есть исходник с комментариями, а оно, таки оОочень редко попадается :)
Занимался программированием много лет, и не свои программы приходилось разбирать и переделывать ...
Своя программа сделана по твоей логике, она тебе (даже и без комментариев) будет всегда понятна. Самое страшное в чужой программе -- понять логику, въедешь -- всё пойдёт! Даже на незнакомом тебе (до этого) языке программирования ... :wink:

_________________
Лучше сделать и жалеть, чем жалеть, что не сделал ...


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Почему программист ненавидит ковырять чужой код
СообщениеДобавлено: Пт июн 10, 2022 15:31:10 
Собутыльник Кота
Аватар пользователя

Карма: -12
Рейтинг сообщений: -25
Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 2525
Рейтинг сообщения: 0
Своя программа сделана по твоей логике, она тебе (даже и без комментариев) будет всегда понятна.

Во-во, мне коллега все, как ни взглянет в мой код, говорит, мол, надо бы тебе уже на С++ переходить — все ООПщину в С тащишь ☺ Но мне С нравится: простой ЯП, не требующий постоянно шарахаться по интернету в поисках документации (ман почитал в консоли - и готово), да и логика простая (не то, что классы с шаблонами). Я уж молчу о времени сборки: мой код собирается за несколько секунд, у коллеги же g++ может минуту пыхтеть!

_________________
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Почему программист ненавидит ковырять чужой код
СообщениеДобавлено: Пт июн 10, 2022 16:05:47 
Открыл глаза

Карма: 3
Рейтинг сообщений: 0
Зарегистрирован: Чт ноя 26, 2020 13:19:49
Сообщений: 50
Рейтинг сообщения: 0
Ну, у меня 4 месяца ушло, чтоб её разобрать (и то честно говоря не до конца всё понял, т. к. писалась она как говорили мне шаблонами(присутствовали лишние куски кода на мой взгляд))


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Почему программист ненавидит ковырять чужой код
СообщениеДобавлено: Пт июн 10, 2022 18:35:46 
Друг Кота
Аватар пользователя

Карма: 29
Рейтинг сообщений: 1319
Зарегистрирован: Сб дек 18, 2021 19:25:32
Сообщений: 10479
Рейтинг сообщения: 0
все ООПщину в С тащишь
Аналогично! Притом, был период наоборот, когда рванув за всеми в ООПнутые языки, долгое время работал в них с минимумом ООП :)
Но вот сейчас, всё более увлекаясь С#, мне как-то становится неловко в обычном С...

Добавлено after 3 minutes 34 seconds:
Про комментарии: до сих пор вспоминаю исходники TMSSoftware для Delphi, комментариев там было минимум, но все по существу, а один звучал примерно так: "Мы не понимаем, почему не работает, если не добавить 1" :))
Вот именно на их исходниках я нехило продвинулся в Delphi. На исходниках Reogrid очень сильно скакнул в C#

Так что, хорошие чужие исходники - это отличный опыт может быть.

Добавлено after 2 minutes 17 seconds:
Ну, у меня 4 месяца ушло, чтоб её разобрать (и то честно говоря не до конца всё понял, т. к. писалась она как говорили мне шаблонами(присутствовали лишние куски кода на мой взгляд))
Зато это наверняка улучшило понимание ТЗ в целом, и возможно, есть возможность предложить заказчику вариант создания лучшей версии? За отдельные деньги, разумеется :)

_________________
добавь radiokot.ru##.tablebg > tbody > tr:has(td>a[href*="?f=17"]) в адблок, сделай форум чище!
"Э-э-э-хей... растёт правосознание!"


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Почему программист ненавидит ковырять чужой код
СообщениеДобавлено: Пт июн 24, 2022 08:20:37 
Друг Кота
Аватар пользователя

Карма: 94
Рейтинг сообщений: 3479
Зарегистрирован: Пн фев 09, 2009 22:19:49
Сообщений: 17569
Откуда: Когда-то был прекрасный город для людей
Рейтинг сообщения: 0
Не будьте уверены, что ваш код самый оптимальный.
Разобравшись в чужих алгоритмах, найдете пути улучшения своих.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Почему программист ненавидит ковырять чужой код
СообщениеДобавлено: Вт окт 25, 2022 09:25:09 
Друг Кота

Карма: 49
Рейтинг сообщений: 523
Зарегистрирован: Чт фев 20, 2014 18:57:55
Сообщений: 18494
Рейтинг сообщения: 0
Не будьте уверены, что ваш код самый оптимальный.

Мало того, он может быть даже оптимальным, но нечитаемым - это к вопросу от "своей логике", причем ООП там или нет по барабану. Есть любители наплодить по функции на каждое элементарное действие, а внутри функций еще раз так сделать - на первый взгляд вроде даже и ничего смотрится... пока не всплывет какой нибудь необычный баг и не придется это отлаживать кому то другому.

_________________
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y