|
Умение читать код. Что это такое? | ☑ | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0
Aceforg
12.06.15
✎
01:13
|
На мисте гугл выдает на первом странице выдает одни вакансии. Что же это такое? Вы умеете читать код?
|
||||||||||||||||
1
Aleksey
12.06.15
✎
01:24
|
Умение разбираться в чужом коде» — строка-детектор, которая содержится чуть более, чем во всех вакансиях на должность программиста и смежные должности. Чаще всего акцент на этой фразе делается для вакансий разработчика на C++ и PHP, где «чужой» не только код.
https://lurkmore.co/%D3%EC%E5%ED%E8%E5_%F0%E0%E7%E1%E8%F0%E0%F2%FC%F1%FF_%E2_%F7%F3%E6%EE%EC_%EA%EE%E4%E5 |
||||||||||||||||
2
Aceforg
12.06.15
✎
01:30
|
(1) Сравнивать 1с и С++ не имеет смысла. На С++ имеет смысл "умение читать код". А как насчет 1С?
|
||||||||||||||||
3
Aceforg
12.06.15
✎
04:13
|
Для поднятия темы
Подошел коллега спросил почему в правилах красный крестик. Посмотреть в конфигурации КД не судьба? Спросил как работают обработчики правилах обмена? Тоже не судьба? 1С не С++ с кучей синтаксического сахара, вроде перегрузки операторов и т.д. А зачем эйчары требуют навыки чтения кода, и так ведь на русском написано? |
||||||||||||||||
4
Zamestas
12.06.15
✎
04:15
|
Тихо сам с собою...
|
||||||||||||||||
5
VladZ
12.06.15
✎
05:33
|
(0) Задача программиста - составить программу по разработанному алгоритму. Умение "читать код" - это обратный процесс. Т.е. процесс составления алгоритма по тексту программы.
|
||||||||||||||||
6
Рэйв
12.06.15
✎
05:56
|
(0)>>и так ведь на русском написано
Мало ли что на русском... Начинающему адинеснику на первых порах этот русский - все равно что китайские иероглифы. Не важно какой язык с++ или 1С - умение понять логику чужого кода- это явление межязыковое. |
||||||||||||||||
7
Лодырь
12.06.15
✎
05:58
|
(3) Думаю, эйчары сами толком не понимают, что хотят.
А навык понимания замысла автора кода - полезен. И этот замысел подчас бывает нифига не очевиден. |
||||||||||||||||
8
VladZ
12.06.15
✎
06:08
|
(3) "А зачем эйчары требуют навыки чтения кода, и так ведь на русском написано?". На русском или английском - не имеет значения. Можно и на русском накодить так, что без бутылки не разберешься.
|
||||||||||||||||
9
Маратыч
12.06.15
✎
06:09
|
(5) Во, совершенно точная формулировка.
|
||||||||||||||||
10
Маратыч
12.06.15
✎
06:10
|
+(9) В бытность мою рядовым погромистом, многие локальные нюансы учета гораздо проще было понять, заглянув в код, нежели через объяснения бухов.
|
||||||||||||||||
11
Одинесю
12.06.15
✎
07:36
|
Нет пункта - если прижмет разберусь.
|
||||||||||||||||
12
bodri
12.06.15
✎
08:20
|
Прогеру код необходимо читать как книгу и ещё важней понимать что написано. ИМХО. Если не понимаешь то, что написано другим, то и кодить не сильно-то и умеешь.
|
||||||||||||||||
13
Маратыч
12.06.15
✎
08:26
|
(12) Зачастую проще самому с нуля переписать, чем разбираться в опусах гамнокодеров.
|
||||||||||||||||
14
bodri
12.06.15
✎
08:50
|
(13) +100500
|
||||||||||||||||
15
Vovan1975
12.06.15
✎
08:50
|
(0) Reverse Engineering батенька, это тебе не сертификатик зазубрить, ага
|
||||||||||||||||
16
ice777
12.06.15
✎
08:55
|
(13) это точно. и получится раз в 20 читабельней и раз в 50 короче )
собственно, быдлокод меня лично убивает длиной, понятно отчего. |
||||||||||||||||
17
Гобсек
12.06.15
✎
08:57
|
(15)Reverse Engineering - это другое. Это когда есть программа, но нет исходных текстов. И требуется проанализировать как эта программа работает для тех или иных целей.
|
||||||||||||||||
18
ice777
12.06.15
✎
08:57
|
+(16) простейшие примеры: ЗаполнитьЗначенияСвойств, Выгрузить. Такие простыни видел взамен..
|
||||||||||||||||
19
Маратыч
12.06.15
✎
09:00
|
(16) Понятие рефакторинга быдлокодерам чуждо %) Они попросту костылей кучу навешивают, ну и в результате получается громоздкая неудобоваримая и принципиально некомментируемая конструкция :)
|
||||||||||||||||
20
Маратыч
12.06.15
✎
09:02
|
+(19) Впрочем, это сугубо по-человечески объяснимо - принцип "работает - не трожь" в действии.
|
||||||||||||||||
21
fisher
12.06.15
✎
09:03
|
(13) Если бы всё так просто было. Это только в простейшем случае вход-выход очевиден и можно переписать не вдаваясь. Обычно, чтобы грамотно отрефакторить, нужно детально разобраться в уже написанном, чтобы понять все особенности существующей реализации и возможные сайд-эффекты. овнокод тем и примечателен, что он как правило плохо изолирован и структурирован, что осложняет рефакторинг.
|
||||||||||||||||
22
Маратыч
12.06.15
✎
09:06
|
(21) Так о том и речь, что рефакторить свой гомнокод должен сам автор в первую очередь.
|
||||||||||||||||
23
fisher
12.06.15
✎
09:14
|
(22) Сам же в (19) написал. Кто понимает в рефакторинге, тот в принципе ..овнокода не пишет.
|
||||||||||||||||
24
fisher
12.06.15
✎
09:17
|
А по теме, "умение читать код" в самом деле является почти отдельным навыком и нарабатывается с опытом. Опытный прог гораздо быстрее разберется в чужих алгоритмах, чем менее опытный.
|
||||||||||||||||
25
fisher
12.06.15
✎
09:19
|
Хотя выделять его в отдельный пункт в вакансии - это бред, т.к. он практически всегда прямо коррелирует с опытом работы.
|
||||||||||||||||
26
Маратыч
12.06.15
✎
09:22
|
(23) Ну, скажем так, человек может даже понятия "рефакторинг" не знать, но при этом дописывать свой код, не навешивая костылей, а грамотно перерабатывая предыдущую структуру алгоритма.
|
||||||||||||||||
27
nva_15
12.06.15
✎
09:23
|
Не так часто попадаются хорошие книги. То же самое и с кодом.
Читаю все как книгу |
||||||||||||||||
28
Маратыч
12.06.15
✎
09:25
|
(27) Парадокс в том, что "изящный" код зачастую сложен для понимания, ибо используются нетривиальные и неочевидные решения решения.
|
||||||||||||||||
29
fisher
12.06.15
✎
09:26
|
(26) Само собой. А можно щеголять терминологией а писать так, что "рука-лицо".
(28) На этот случай придуманы комментарии |
||||||||||||||||
30
Маратыч
12.06.15
✎
09:32
|
(29) А комментарии не особо помогут, когда весь алгоритм построен так, что он только цельным куском дает результат, а "внутри" там вообще непонятная хрень происходит. Глянь как-нибудь исходники демок, в которых десяток килобайт бинарного кода генерирует трехмерный ролик минут на двадцать. Там никакие комментарии не помогут, только скрупулезное изучение совершенно диких рекурсивных алгоритмов.
|
||||||||||||||||
31
VladZ
12.06.15
✎
09:33
|
(25) Да, согласен.
У меня сложилось такое впечатление: если в вакансии есть такое требования, значит предыдущий прог был такой "писатель", что после него пилить и пилить... |
||||||||||||||||
32
Vladal
12.06.15
✎
09:51
|
"Умение читать код" похоже на умение "чтения нот с листа" или просто чтения - во всех трех случаях читающий понимаеЮ о чем написано, может сразу же воспроизвести мелодию с первого раза, без тренировки, или простопонимает смысл прочитанного. Например, смысл фразы "Умение читать чужой код".
|
||||||||||||||||
33
fisher
12.06.15
✎
09:59
|
(30) Глупость. Комментарии всегда помогают. Трудны для понимания обычно реализации сложных математических алгоритмов, когда сам в этих алгоритмах ни бум-бум. Тут будет "угадал все буквы - не смог назвать слово". Но тут без вариантов - нужна соответствующая база.
|
||||||||||||||||
34
nva_15
12.06.15
✎
10:00
|
(31) Вакансии пишут с подачи начальника. У начальников обычная проблема с подчиненными - заставить их работать и пресечь отмазки. Стандартная отмазка - "там такое написано... и вообще я чужой код не понимаю".
Поэтому и пишут требование в вакансии, чтобы потом работник не смог отмазаться. |
||||||||||||||||
35
fisher
12.06.15
✎
10:02
|
(34) Программист, который не может разобрать чужой код - не соответствует занимаемой должности.
|
||||||||||||||||
36
nva_15
12.06.15
✎
10:03
|
(35) Именно. Но кто же проверять-то будет?
|
||||||||||||||||
37
Biker
12.06.15
✎
10:04
|
(0) это способ поднять собственную самооценку, ты сразу звезда, а все вокруг руко-опые дегенераты.
Я и свой код с трудом читаю |
||||||||||||||||
38
MadHead
12.06.15
✎
10:05
|
Исключительно телепатия
Я не умею читать |
||||||||||||||||
39
fisher
12.06.15
✎
10:05
|
(36) Зачем проверять? Ляпнул такую фразу - на выход. Это не отмазка. Это заявление об увольнении.
|
||||||||||||||||
40
nva_15
12.06.15
✎
10:09
|
Надо еще заметить, что в 1С не столько важен код, сколько общая архитектура решения, структура данных, выбор регистров. И когда "прочитаешь" эту часть, то дальнейшая работа с таким "творением" выглядит порой совсем невесело.
|
||||||||||||||||
41
Draziw
12.06.15
✎
10:11
|
Вчера прислал знакомый директор код 1Сника, говорит что скажешь, как пишет. А я к кодингу на 1С не притрагивался год, открыл, повтыкал, закрыл... утратил навык чтения чужого кода за год :( как буд-то и небыло 10 лет программирования на 1С до этого.
|
||||||||||||||||
42
fisher
12.06.15
✎
10:11
|
Мне лично в вакансиях такая фраза ни разу не попадалась. Но это не показатель, конечно. Думаю, что она просто копипастится HR друг у друга либо её втыкают начальники отделов, которые тоже её где-то когда-то слышали и которым она кажется уместной и многозначительной.
|
||||||||||||||||
43
Draziw
12.06.15
✎
10:15
|
(42) Не ну скажем иногда бывает такой код, который проще удалить и написать все заного, чем в нем разбираться :) Даже у меня есть такие проекты.
|
||||||||||||||||
44
Draziw
12.06.15
✎
10:17
|
+(43) Ну т.е. сточку "умение разбираться в чужом коде" - в вакансии интерпритирую, как у нас есть проект который писали 3 года разные студенты и теперь его надо дорабатывать, но переписывать все и за дорого мы не хотим.
|
||||||||||||||||
45
PLUT
12.06.15
✎
10:37
|
(0) понять и простить замысел кодеров
|
||||||||||||||||
46
Vovan1975
12.06.15
✎
10:52
|
(17) да нихрена это не другое. самое что ни на есть оное.
|
||||||||||||||||
47
Draziw
12.06.15
✎
11:00
|
(46) гуглим лучше. в (17) прав. Reverse Engineering - это когда нет исходников. Т.е. ты видишь результат, и пытаешься понять как - именно поэтому "Reverse" - ты знаешь что как-то это сделали, и надо придумать как - идешь от обратного.
|
||||||||||||||||
48
oslokot
12.06.15
✎
12:41
|
Как книгу, говорите? Нате, читайте код :)
http://savepic.ru/7323849.jpg |
||||||||||||||||
49
Garikk
12.06.15
✎
12:43
|
(48) ну при определенном желании можно взять список ассемблерных кодов и таки прочитать этот код
|
||||||||||||||||
50
oslokot
12.06.15
✎
12:45
|
(49) прочитать можно, а понять алгоритм бывает очень нелегко
|
||||||||||||||||
51
Vovan1975
12.06.15
✎
13:37
|
(47) исходники есть всегда. Неважно на ассемблере или на 1С.
|
||||||||||||||||
52
Vovan1975
12.06.15
✎
13:39
|
(49) особенно будет интересно читать коды если это секция DATA
|
||||||||||||||||
53
PLUT
12.06.15
✎
17:16
|
(48) я них.я не понял
|
||||||||||||||||
54
Бертыш
12.06.15
✎
18:35
|
Нормальное такое требование в контексте ситуации когда ты не ваяешь проект с нуля. Есть диаметральное требование это как раз уметь проектировать и создавать конфигурации с нуля.
Когда мне необходимо найти место где минимальным вмешательством вклинится в чужой код для решения задачи пользователя, то этот навык самое то. При этом это может быть не только код доработанный кем-то не по стандартам 1С, но и код типовых разработанных по стандартам 1С. Читаю все как книгу |
||||||||||||||||
55
Draziw
12.06.15
✎
20:31
|
(51) пфф... исходники - это то на чем программа писалась изначально от слова - "исход", а не то во что она потом скомпилированная превратилась.
|
||||||||||||||||
56
Draziw
12.06.15
✎
20:32
|
(55) + но в принципе ничего страшного, просто есть люди, у которых свой толковый словарь в голове и значение слов в этом словаре не соответствует общепринятому :)
|
||||||||||||||||
57
loralu
13.06.15
✎
00:05
|
Читать чужой код = переделывать после прошлого программиста
|
||||||||||||||||
58
loralu
13.06.15
✎
00:06
|
Нормальное такое требование в контексте ситуации когда ты не ваяешь проект с нуля. Есть диаметральное требование это как раз уметь проектировать и создавать конфигурации с нуля.
+1 |
||||||||||||||||
59
Vovan1975
13.06.15
✎
08:33
|
(55) это тараканы в вашей голове, не нужно выдавать их за общепринятые.
И потом, можно подумать что читать листинги на том же цэ плас-плас легко и безпроблемно. |
||||||||||||||||
60
Старый чайник
13.06.15
✎
10:47
|
Если код читать вслух, то можно случайно вызвать дьявола Миста ©
|
||||||||||||||||
61
kyvv
13.06.15
✎
11:31
|
(54,58) Смысл понятен, но код ... https://ru.wiktionary.org/wiki/диаметрально
|
||||||||||||||||
62
МаксимМП23
15.06.15
✎
10:36
|
(0) Ну а как ты дописываешь, к примеру, типовые?
Нужно же сначала понять как новый функционал мягко интегрировать в существующий. Для этого надо читать и анализировать кон разрабов, чтобы сильно не велосипедить. |
||||||||||||||||
63
Гёдза
15.06.15
✎
10:38
|
без умения читать код не сможешь типовую допилить
|
||||||||||||||||
64
Kvant1C
15.06.15
✎
10:50
|
А вот интересно, когда типовые пишут, они как-то свой код комментируют или все в голове держат? Если комментируют, то где эти комментарии? Может они из текстов, которые войдут в релиз комменты удаляют, а для разработки оставляют с комментариями?
|
||||||||||||||||
65
fisher
15.06.15
✎
10:57
|
(58) Любой мало-мальски опытный программист автоматически умеет первое и второе в той или иной степени. Это всё равно как: "ищется переводчик, необходимы навыки чтения и письма".
Максимальная польза от этих требований в вакансиях - попытка отпугнуть совершенно левых соискателей, ходящих "на авось". |
||||||||||||||||
66
Глобальный_
Поиск 15.06.15
✎
10:58
|
(0) "На мисте гугл выдает на первом странице выдает одни вакансии" - вроде тоже на русском написано. Но ни хрена не понятно.
|
||||||||||||||||
67
Глобальный_
Поиск 15.06.15
✎
11:00
|
Хм. А у меня вообще все программирование в основном заключается в чтении и копировании кусков чужого кода.
|
||||||||||||||||
68
Fish
15.06.15
✎
11:00
|
(65) Вот только, к сожалению, это мало кого отпугивает :)
|
||||||||||||||||
69
adron
15.06.15
✎
11:15
|
Помимо способностей "Умение читать чужой код" и его синонима "разбираться в чужом коде", ещё есть смежная способность "Умение писать читаемый код", от которой многое зависит. Можно так нагов...кодить, что никакие умения не спасут. А можно написать красивый код, который даже новичок сможет подправить.
|
||||||||||||||||
70
разработчик 1с
15.06.15
✎
11:16
|
> На мисте гугл выдает на первом странице выдает одни вакансии
писать научись сперва |
||||||||||||||||
71
fisher
15.06.15
✎
11:18
|
(69) Если бы. Новички стонут, если нужно разбираться в программе, у которой вложенность стека вызовов больше двух. Поэтому пишется своя линейная портянка, как ода копи-пасту.
Зачем далеко ходить. Много ли новичков смогут грамотно подправить типовую? |
||||||||||||||||
72
ultrannge89
15.06.15
✎
13:31
|
Ну наверное это те кто могут например в коде регламентированной отчетности разобраться с А = Б*К3\Е4 и так для каждой ячейки. А вообще так не нравится что порой каждый новый программист на предприятии, начинает перво наперво клеймить своего предшественника за карявый код.
|
||||||||||||||||
73
ИС-2
naïve
15.06.15
✎
13:40
|
(18) тоже, только некоторые методы появились не сразу. Это к вопросу о наличии велосипедов в базах-долгожителях
|
||||||||||||||||
74
bzs015
20.06.15
✎
05:31
|
Сейчас новые методы есть у прогеров - это писать прогу и копию. В проге никаких комментариев, зато для себя копию, где все как положено с комментариями. Попробуй прочитай код без комментариев.
|
||||||||||||||||
75
Ненавижу 1С
гуру
20.06.15
✎
07:53
|
Иногда удивляет собственный код
|
||||||||||||||||
76
sevod
23.06.15
✎
11:50
|
(74) Это ты о типовых? :)
|
||||||||||||||||
77
sevod
23.06.15
✎
12:00
|
Мне вот интересно, как вот это "умение читать код", реально проверить? Дать для проверки чужой код и что с ним сделать? И сколько времени дать на то что бы разобраться? Час, день, неделю?
Есть реальные примеры собеседований? А то я только обратное видел, навроде задач по спецу по платформе. Причем получал и отправлял по почте, никто и не проверял сам я или не сам делал. |
||||||||||||||||
78
Kvant1C
23.06.15
✎
12:07
|
(77) Ну например даешь вот такой код: http://govnokod.ru/17951 и просишь объяснить, что он делает.
|
||||||||||||||||
79
zak555
23.06.15
✎
12:08
|
сегодня потратил 3 часа, чтобы в форме к существующему механизму прикрутить доп параметр
проще было бы заново всё переделать, но заказчик захотел отставить всё, как есть |
||||||||||||||||
80
gigi789
23.06.15
✎
12:19
|
(78) выводит макет попутно делая запрос заполняя тз не чего сверх страшного.
|
||||||||||||||||
81
gigi789
23.06.15
✎
12:21
|
кроме ЗУП
Читаю все как книгу |
||||||||||||||||
82
Jokero
23.06.15
✎
12:37
|
"Умение чтения чужого кода" в вакансии означает, что вам придется переделывать то, что перед вами натворил предшественник.
|
||||||||||||||||
83
Igor 2007
25.06.15
✎
15:57
|
Я писатель. Ранее пытался читать, но понял что это не моё.
С живыми людьми надо общаться :) Я не умею читать |
||||||||||||||||
84
Лефмихалыч
25.06.15
✎
16:12
|
(0) умение быстро сделать правильный вывод о том, зачем нужен этот код
Читаю все как книгу |
||||||||||||||||
85
Лефмихалыч
25.06.15
✎
16:15
|
+(84) ну, или, если и не быстро, то хотя бы за конечное время
|
||||||||||||||||
86
Lama12
25.06.15
✎
16:18
|
(48) Эх... были времена. Читал такой код для процессора Z80.
Сейчас только структурные языки читаю, отчасти некоторые ОО. Языки типа Lisp вообще не представляю даже как читать :) |
||||||||||||||||
87
Зеленый пень
25.06.15
✎
16:29
|
(75) +100
Иногда смотришь на код, который писал несколько лет назад и думаешь: "блин, круто, сейчас так не напишу!" |
||||||||||||||||
88
Starhan
26.06.15
✎
08:19
|
(87) такая же фигня тупеем понемногу :)
|
||||||||||||||||
89
onx1
26.06.15
✎
12:08
|
В таких вакансиях «Умение читать чужой код» просто надо заменить на «Желание читать чужой код», причем перед словом код иногда поставить ругательное слово. Тогда все становиться ясно)
Вроде умею читать, но не знаю что это. |
||||||||||||||||
90
LazyStranger
26.06.15
✎
12:28
|
(87) +1
Я и свой код с трудом читаю |
||||||||||||||||
91
pavig
26.06.15
✎
12:57
|
Иногда натыкаюсь на свой код. Иногда даже плАчу, когда так бывает.
Я и свой код с трудом читаю |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |