@kiberlain

Как вы читаете незнакомый код?

Прочёл сейчас как работает javascript код, про глобальный код, глобальный объект, про стек контекстов.
Вопрос программистам-алгоритмистам, вы действительно при анализе видите в уме контекст каждой функци?
Как вообще разбираете работу программ?
  • Вопрос задан
  • 893 просмотра
Пригласить эксперта
Ответы на вопрос 3
Martovitskiy
@Martovitskiy
Наткнулся недавно на статью.
Почему программисты ненавидят работать с чужим кодом?

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

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

— Ты хотя бы записку на двери повесил бы, что швабры для держания потолка! У нас тут ядовитый газ течет! Что нам делать?
— Включай вентилятор. Он сдует газ с острова.
— Я его, б...ть, демонтировал сразу же!
— Зачем?
— Зачем ты построил 120 тонный вентилятор? Ты не мог положить ящик бл...ских ПРОТИВОГАЗОВ?
— Ящик противогазов искать нужно, а вентилятор у меня с прошлого заказа оставался.

— Вася, я убрал твой вентилятор! Мы тут задыхаемся!
— Херли вы тогда там делаете? Садитесь на воздушный шар и у..бывайте!
Ответ написан
ThunderCat
@ThunderCat Куратор тега JavaScript
{PHP, MySql, HTML, JS, CSS} developer
Вопрос программистам-алгоритмистам
Это че за такая отдельная каста?

вы действительно при анализе видите в уме контекст каждой функци?
Если функция нормальная, ее контекст угадывать не нужно, она принимает параметры и отдает значение. Что там "унутре" есть смысл смотреть только если косяк конкретно в этой самой функции.

Как вообще разбираете работу программ?
Зависит. Маленькие программы написанные на коленке насквозь можно просмотреть за пару минут, большие, но с нормальной архитектурой тоже легко понимаются, хуже всего большие и бестолково, без какого-либо проекта, нахреняченные приложения, которые и не прочитать нормально, и разбирать нужно практически ВСЕ, кода много, написан плохо, обслуживать геморно.
Ответ написан
Комментировать
Есть два способа
1) Пошагово под отладчиком выполнить программу
2) Написать тесты для приложения

Первый проще, второй правильнее.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы