@ZZahar
Если решил проблему - нажми "отметить решением"

Появится ли такой тип программиста?

Здравствуйте!
У меня появилась мысль про новый тип программиста, сейчас объясню в чем заключается его задача.
Например, у нас есть достаточно большой проект (например higeload интернет магазин по-типу Ozon'а) и, конечно, в таком большом проекте не обходится без костылей и некрасивого кода, но рано или позно эти костыли и код начинают превращаться в технический долг(или уже превратился) и разработчикам, грубо говоря, приходится менять
Переменная += 1;
на
Переменная++;
И другие костыли и некрасивый код. Особенно, думаю, это проблема очень-очень больших проектов.
Задача нового типа программиста изменять уже существующий код, который уже написан и всячески его редактировать.
То есть такие люди следят за красотой кода. Они просто берут и правят код, создают более понятные переменные, меняют циклы
for (i; i < Переменная; i++){
 // что-то
       for (j = 0; i >= Переменная; j--){
        // что-то
       }
}

на более понятные
for (ПонятныеПеременная; ПонятнаяПеременная < Переменная; ПонятнаяПеременная++){
 // что-то
       for (ПонятнаяПерменная2; ПонятнаяПеременная2 >= Переменная; ПонятнаяПеременная2--){
        // что-то
       }
}

Думаю, идею вы поняли.
Но они не занимаются тестированием, как тестировщики и просто делают код красивей, быстрей и понятней.

Как думаете, вообще появятся ли такие программисты(будем называть их, допустим, корректорами кода)?
Будут ли такие корректоры кода давать по башке программистам, что бы они писали нормальный код?
Так же это будет мотивировать программистов писать нормальный код или только больше их разленивит, мол "корректоры все сделают"?
И что думаете насчет зарплат?
Буду рад любым ответам и комментариям.
  • Вопрос задан
  • 1524 просмотра
Решения вопроса 8
POS_troi
@POS_troi
СадоМазо Админ, флудер, троль.
CodeReview-еры они зовутся и давно уже изобретены, но редко это отельная должность :)
Ответ написан
NeiroNx
@NeiroNx
Программист
Думаю с этим справится даже автоматическая система. И программисты "обезьянки" не появятся.
Ответ написан
petermzg
@petermzg
Самый лучший программист
Как правило если код не понятен при коротких переменных, то значит он не оптимален и корректировка с красивостью не прибавят ему производительности.
И такие "улучшения" будут из категории "Мартышкин труд"
Ответ написан
Комментировать
zoonman
@zoonman
⋆⋆⋆⋆⋆
Code Review

По-русски это называется процессом рассмотрения кода, или просто проверкой кода командой. Появляется после того, как команда проходит через стадию говнокодерства редактированием файлов на сервере через FTP и начинает использовать современные средства управления версионированием кода, в которых можно делать Pull request (запросы на добавление вашего кода в общую базу, GitHub, GitLab).

В нормальных конторах это делается либо всеми разработчиками, либо наиболее опытными. Это очень помогает новичкам влиться в общий процесс и замечать косяки еще до того, как они попадут в общий код.

Кроме code review, есть такая вещь, как стандарты. Она заключается в том, что существует некий общепринятый документ, который декларирует, как писать код, сколько делать отступов, табы или пробелы и т.д. Нередко он декларирует интерфейсы и тому подобное. В мире PHP это набор стандартов PSR. И все без исключений следуют этому стандарту.

Кроме этого существует ряд вспомогательных инструментов, таких как анализаторы кода, которые проверяют код на наличие потенциальных ошибок и прочие моменты. В мире PHP это Mess Detector и CodeSniffer.

В заключении отвечу, что такой должности нет и врядли она когда-нибудь появится.

Слежение за качеством кода это обязанность каждого разработчика.

Осознание этого приходит с повышением квалификации разработчика.
Ответ написан
usdglander
@usdglander
Yipee-ki-yay
Программист-уборщица? =)
Ответ написан
Комментировать
mrusklon
@mrusklon
Не получается? Яростно гугли!
обычно этот гемор на тимлиде
Ответ написан
Комментировать
devalone
@devalone
̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
приходится менять
Переменная += 1;
на
Переменная++;

Вот тут не понял, нахрена? Оба варианта имеют место быть, но если язык поддерживает префиксный инкремент, то лучше тогда вообще так:
++Переменная;
На простых типах разницы скорее всего не будет(благодаря оптимизации), а вот при использовании классов - да.
Но вернёмся к теме поста. Нахрена такой программист нужен, когда можно сразу писать нормально?
Ответ написан
Astrohas
@Astrohas
Python/Django Developer
Нет, ибо такие программисты должны иметь знания выше других, чтобы предлагать альтернативные варианты. А рейт таких людей минимум 20 баксов в час. Лучше их силу и мысли тратить в благое русло.
Обычно в больших проектах стараются избегать изменения без причин. Версионность и всякое такое...
Поэтому обычно кодоревюшки делаются во время пулреквеста, перед мерджем
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
angrySCV
@angrySCV
machine learning, programming, startuping
массово скорее всего никто не будет переписывать код только для того чтоб он был покрасивее, жизненный цикл продукта и его отдельной версии очень короткая, бесполезная трата ресурсов.
Ответ написан
Комментировать
opium
@opium
Просто люблю качественно работать
Обычный рефакторинг кода, любой программист это делает обычно рано или поздно, причем рефакторинг появился ещё до вашего рождения и назвать это открытием вряд-ли можно
Ответ написан
@evgeniy_lm
Не появится никогда.
Если программист одиночка фрилансер, он пишет как хочет. В команде изначально оговаривается стандарт.
Так же вы должны понимать, что язык С, из которого переведенные вами конструкции попали в другие языки, был разработан для очень медленных машин (единицы МГц) с ничтожным по нынешним меркам количеством памяти (десятки килобайт). По этому масса конструкций типа if (++переменная > 10) в тексте программы занимали существенно меньше места и более проще компилируются чем конструкции типа
Переменная = Переменная + 1;
if (++переменная > 10)

Но на самом деле для человека второй вариант более приемлем с точки зрения восприятия текста, т.е. является наиболее "красивым" хотя так даже сейчас ни кто не пишет чтобы не давить лишние кнопки
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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