Шаблоны разработки. Антипаттерны (завершение)

  Рет қаралды 9,469

Sergey Nemchinskiy

Sergey Nemchinskiy

Күн бұрын

Пікірлер: 18
@t.f.5722
@t.f.5722 3 жыл бұрын
Молодой и красивый Сергей Немчинский.
@Das.Kleine.Krokodil
@Das.Kleine.Krokodil 2 жыл бұрын
просто с усами, это отличает сильно
@НатаниэльДампо
@НатаниэльДампо Жыл бұрын
Спасибо Немчинскому, я любитель самоучка, но еслибы 10 лет назад знал что есть такие курсы, обязательно пошёл бы и не приобретал знания на болезненом опыте.
@9Corvinus
@9Corvinus 6 жыл бұрын
В очередной раз ловлю себя на мысли, что проходили мы это еще в университете давным-давно, но тогда это не воспринималось так остро, а сейчас - насмотревшись на кучу кода, переданного интеграторами и проведя годы в его рефакторинге... Ох, некоторые вещи я теперь знаю, как называются))))
@Das.Kleine.Krokodil
@Das.Kleine.Krokodil 2 жыл бұрын
Спасибо
@kai3341
@kai3341 3 жыл бұрын
Оптимизация не всегда говнение. Правда, в моём опыте в основном выходит скорее выкорчёвывание мыльного пузыря и прочего говна с целью максимального упрощения кода (иногда сложность кода сокрыта слоями абстракции. Сей антипаттерн крайне распространён и называется ORM. Шутка это лишь наполовину, и похоже, потребует объяснения). И как результат -- О ЧУДО! -- код действительно начинает работать сильно быстрее. И обычно такую оптимизацию я называю побочным эффектом, чтобы заказчик не пугался.
@SergeyNemchinskiy
@SergeyNemchinskiy 3 жыл бұрын
ОРМ надо уметь готовить. Часто выходит сделать на ОРМе даже быстрее, чем на нативном SQL
@cybd08
@cybd08 9 жыл бұрын
Весёлая концовка получилась
@betking1990
@betking1990 10 жыл бұрын
Норм объясняешь))
@dutnum5766
@dutnum5766 8 жыл бұрын
Имена переменных с венгерской нотацией прекрасно запоминаются. В памяти держится не только имя, но и тип переменной. Через некоторое время префиксы добавляются "в уме" добавляются автоматически. Как раз имя переменные без префикса начинают выглядеть "странно". Не могу сказать что она устарела: Microsoft до сих пор использует венгерскую нотацию в том числе и в новых API. В Java венгерская нотация ограниченно используется в Android API (префикс m для полей класса).
@svyatoslavs945
@svyatoslavs945 5 жыл бұрын
Приведу пример, где, все же пригождался закомментированный код: начал писать оптимизирующую фичу, в процессе понял, что есть сложности, времени на эту фичу уйдет намного больше запланированного, а есть в другом месте код, который требует срочной реализации. Закомментировал новое, вернул старое неоптимальное, написал todo и ушел заниматься делами. Через несколько дней появилось время, вернулся и дописал оптимизацию, хотя, конечно, за эти дни появились новые мысли, часть переделал, но закомментированное помогло не забыть основную идею.
@0imax
@0imax 3 жыл бұрын
Не знаю, когда Вы это делали, под какой системой контроля версий и какой объём кода требовал изменений, возможно тогда такой подход был вполне ок. Сейчас подобные задачи элементарно решаются отдельной веткой в гите: Надо сделать оптимизацию - от последней версии сделали отдельную ветку и там ковыряетесь. Потребовалось срочно добавить фичу, а оптимизацию ещё не доделали - создаёте новую ветку от того же места, добавляете фичу, проверяете, сливаете в основную ветку. Затем доделываете оптимизацию и так же сливаете изменения в основную ветку. Итого задачи не мешают друг другу, переключаться между ними легко и просто, а главное - у Вас всегда есть 100% рабочая версия Вашей программы. До знакомства с гитом я не пользовался системой контроля версий вообще, т.к. считал, что раз пишу код один, нафига мне это надо. А как попробовал, теперь всё делаю с гитом, ибо так намного удобнее.
@svyatoslavs945
@svyatoslavs945 3 жыл бұрын
@@0imax В принципе, да, согласен, с GIT это все работает, но, возможно это моя личная психология, мне проще на короткое время повесить todo и закомментированный кусок кода, который потом будет постоянно попадаться на глаза, чем делать отдельную ветку, которая при активной работе может и забыться/потеряться, и которую потом еще надо будет сливать с тем, что ушло вперед. В последнее время, однако, чаще получается другое использование: у меня код готов и работает, а в интеграции у коллег что-то сломалось, поэтому, часть рабочего кода до починки комментируем с пояснением, что текущее состояние - костыль, и условием, когда его можно будет откатить.
@TheKotopec
@TheKotopec 2 жыл бұрын
29:10
@Xilax220
@Xilax220 9 жыл бұрын
Про оптимизацию кода скажу пару слов. Можно писать быстрый код сразу, либо писать медленный. Взять хоть те же патерны регекспов в цыкле. Вроде может показаться обычным при тестовых прогонах. Но! Если вы начнете проводить SVT тестирование, то к вам придет инженеры и скажут, что вы тут "наковногодили" и у вас патерны постоянно компилируется. Лучше об этом думать на автомате. Это только один из примеров. Есть уйма кода которая ведет себя похоже. Кодите пожалуйста сразу быстро, нет сложности в оптимизации в момент измышления над кодом.
@alexpepper2146
@alexpepper2146 9 жыл бұрын
а IDEA ж вроде умеет уже давно подставлять по абривиатуре.. не так?
@alexpepper2146
@alexpepper2146 9 жыл бұрын
+Sergey Nemchinsky ну, если по абривиатуре всегда вводить, то найдётся (относится к таинственному коду), или таже венгерская натация хотя сам сие не предпочитаю )
@gen7891
@gen7891 7 жыл бұрын
Проект надо изучать не по коду, особенно если он говен. А по руководству системного программиста, где бы была расписано архитектура , концепции и тд но никто так не работает потому что архитекторов в команде нет. Это как строители без бригадира. Но если на стройке все понимают что бригадир нужен, то в ИТ все не понимают что нужен архитектор в команде. Поэтому столько гавнокода и рождается и так будет... потому что бизнесу нужны демки прям ща ...
Шаблоны разработки. Шаблоны GoF 5
54:52
Sergey Nemchinskiy
Рет қаралды 12 М.
Декомпозиция, типовые решения
44:31
Sergey Nemchinskiy
Рет қаралды 37 М.
BAYGUYSTAN | 1 СЕРИЯ | bayGUYS
36:55
bayGUYS
Рет қаралды 1,9 МЛН
IL'HAN - Qalqam | Official Music Video
03:17
Ilhan Ihsanov
Рет қаралды 700 М.
Mom Hack for Cooking Solo with a Little One! 🍳👶
00:15
5-Minute Crafts HOUSE
Рет қаралды 23 МЛН
Шаблоны разработки. ООП и основы UML
59:13
Sergey Nemchinskiy
Рет қаралды 78 М.
Шаблоны разработки. Вводная лекция
47:52
Sergey Nemchinskiy
Рет қаралды 79 М.
Шаблоны разработки. Шаблоны GoF 3
52:51
Sergey Nemchinskiy
Рет қаралды 20 М.
Шаблоны разработки ПО. Вводная лекция
1:09:44
Sergey Nemchinskiy
Рет қаралды 18 М.
Шаблоны разработки ПО. Шаблоны GRASP
1:05:12
Sergey Nemchinskiy
Рет қаралды 31 М.
Шаблоны разработки. Шаблоны GoF 4
47:33
Sergey Nemchinskiy
Рет қаралды 14 М.
Лучший Гайд по Kafka для Начинающих За 1 Час
1:15:01
КАК УСТРОЕН TCP/IP?
31:32
Alek OS
Рет қаралды 259 М.
BAYGUYSTAN | 1 СЕРИЯ | bayGUYS
36:55
bayGUYS
Рет қаралды 1,9 МЛН