Смотреть ваши видео одно удовольствие. Чисто, без воды, матов и прочего. Надеюсь произошедшая ситуация никак не повлияла на вашу работу.
@t0digital
5 жыл бұрын
Кто снимает видео в час ночи с субботы на воскресенье и выкладывает его в 5 утра, тот я. Сорян за большой тайминг:)
@sevaluv5530
4 жыл бұрын
Я тот пользователь который любит подольше. Я существую. Спасибо.
@Olegis31
3 жыл бұрын
Спасибо большое за ваш труд и за то, что делитесь своими знаниями. У вас очень хороший канал, много полезной информации.
@ldm2316
4 жыл бұрын
Он ведь настолько крут, что его видео можно смотреть в 4k.
@t0digital
4 жыл бұрын
...пока не стал нищебродом, продав 4k камеру))
@mentatij
5 жыл бұрын
Добавлю от себя: - к "is_" для булевых значений добавлю часто используемое "has_" (has_child и т.п.) - советую записать отдельно часто используемые глаголы для названий функций на английском (humanize, fetch, get, create и т.п.) - со временем список устаканится и осядет в голове - про декомпозицию функций: моё правило - функция должна умещаться на экран или меньше (зависит от экрана)
@t0digital
5 жыл бұрын
Отличные рекомендации, спасибо!
@1979BAAL
4 жыл бұрын
@@avazart614 на константы капсом сама IDE может ругаться. Есть смысл использовать класс Enum, будет удобная дотнатация. Например из видео: class AOGUID(Enum) ..., затем AOGUID.moscow
@kovesik
4 жыл бұрын
Дебилизм , что функция должна умещаться на экране, если у тебя 4к монитор, а у меня фулхд, у тебя вмещается а у меня нет, функция должна быть такой длины, которая для неё достаточно
@cupofcode1170
4 жыл бұрын
@@kovesik не дебилизм, а норма. такие как ты могут и на 1000 строк растягивать функцию логирования, "такой длины для нее достаточно". ты в ней ориентироваться не сможешь потом, потому и придумано правило 1-2 экранов.
@v.t.o.r.n.i.k.408
3 жыл бұрын
@@kovesik Этому правилу очень много лет. Тогда мониторы (например, монохромный монитор CGA/Hercules) вмещали стандартные 25 строк в текстовом режиме. Поэтому под "экраном" подразумевается именно эти 25 строк. Одна функция - не более 25 строк.
@ДенисК-р6я
3 жыл бұрын
Оставлю самый лучший комментарий, пусть и бесмысленный, но очень нужный и важный.
@antaki93
2 жыл бұрын
Касаемо перевода терминов, я иногда использовал такой подход. Переводчик бывает неточным и может не знать, какое именно значение слова я имею в виду. Поэтому я открывал статью в русской Википедии с нужным названием и переключал язык на английский, чтобы открыть англоязычную версию статьи. Название этой англоязычной статьи - и есть нужный мне корректный перевод слова. На самом деле, сделать это проще и быстрее, чем объяснить :)
@Vjidowkdkcpapqkfjfw
2 жыл бұрын
Алексей, спасибо! Все по делу! Про чистый код плюсую!
@НиколайИ-д9м
2 жыл бұрын
Каждое видео на вес золота! Спасибо за труд!
@t0digital
2 жыл бұрын
Спасибооо!
@dmytrokorbanytskyi1586
4 жыл бұрын
Есть еще очень хорошее правило: "длинна имени переменной должна быть пропорциональна области ее видимости". Если у вас счетчик цикла, область видимости которого одна-две строки, то длинное имя будет только загромождать код.
@t0digital
4 жыл бұрын
да, интересная мысль, согласен
@w3k5ik
3 жыл бұрын
Чистый код, от дядюшки Боба, вторая глава
@dmsun859
4 жыл бұрын
Спасибо, после твоего видео пошел переписывать свой код
@t0digital
4 жыл бұрын
Отлично! Приятно, что было полезно
@blackonyx9848
4 жыл бұрын
Чисто субъективное наблюдение опишу тут: часто переменные типа paying_customers или paying_for_waranty_custormers, и проч. упрощают чтение отдельной строки, но при этом усложняют восприятие функции/ класса/ модуля в целом(очень много повторяющегося текста). при этом например аспект paying_for_woranty может быть понятен из контекста функции/ класса/ модуля. Для меня не понимание структуры функции/ класса/ модуля видится большей проблемой чем не понимание отдельной строки, т.к. структурные огрехи - высокоуровневые и имеют больший множитель на последствия ошибок. Такая вот мысль
@victoriaiero2938
4 жыл бұрын
коммент в поддержку канала ❤️
@arudskyy
4 жыл бұрын
Многие упомянутые вещи очень часто входят в официальный стиль программирования принятый фирмой или проектом разработчиком. Отклонение от этого стиля на этапе контроля качества (ревью) приравнивается ошибке в коде и возвращается к разработчикам для доработки. Последний момент, комментарии "для чего" код (переменная) это очень важный и редкий зверь; программистов нужно учить этому, как и именованию, в том числе. Спасибо за хорошее изложение основополагающих элементов для высококачественных проектов!
@art61017
3 жыл бұрын
Материал полезный, подача отличная, а за мнение по поводу комментариев в коде огромный плюс!
@mrleshiy39
4 жыл бұрын
3:40 Зачем нужен читаемый кот и где его взять?
@t0digital
4 жыл бұрын
Без кота и жизнь не та!
@rinatyagafarov5328
6 ай бұрын
Благодарю за видео!
@laklaan8187
4 жыл бұрын
Давеча меня не взяли джуном на галеру сугубо из-за нейминга, а в книгах этому внимание не уделяется (по большей части). После данного видео (а также msdn) - стало все на свои места и пришло полное понимание. Респект автору!
@t0digital
4 жыл бұрын
Йее, спасибо! Удачи в поиске работы!
@sjdjjsjsjs3991
21 күн бұрын
a, b, c, foo это плохие имена? 😂
@SoulPervert
4 жыл бұрын
ок # записываем в I удвоенное значение l если l больше 1 иначе удваиваем I I = l * 2 if l > 1 else I *2
@spamcolector
4 жыл бұрын
Gori v ady
@rkozom
4 жыл бұрын
Все верно, да. Спасибо!
@Tavda
4 жыл бұрын
А я в своё время читал "Совершенный код" (Макконнелл Стив). Примерно про то же речь идёт.
@ДмитрийНиколаевич-з2у
10 ай бұрын
По своему опыту скажу что именование в коде очень важно и это первое во что вас будут тыкать носом на первой работе.
@АлексейКирсанов-ф9й
5 жыл бұрын
А можно видео на тему архитектуры? Сам испытываю огромные проблемы с тем, что сделать классом, а что сделать методом, какие есть общие правила? В команде оно понятное дело как то выстраивается, но что делать, если пишешь в одиночестве?)
@t0digital
5 жыл бұрын
Советую читать хорошие книги по архитектуре ПО (Роберт Мартин, Фаулер, Gang of Four и др.), это как правило книги не привязанные к конкретному языку программирования или привязанные к Java/C++, но даже если пишете на других языках, это будет очень полезно. Ну и читать-изучать хороший код на том ЯП, что изучаете - например, код хороших open source фреймворков и библиотек. Мы тоже обязательно будем делать видео по архитектуре, это огромная тема и материала на русском языке по ней практически ноль на ютубе - будем восполнять:)
@swimmwatch
5 жыл бұрын
Cамый годный контент по программированию на всём ютубе. Старайся выпускать видео по-чаще .
@t0digital
5 жыл бұрын
Спасибо за такую оценку, это приятно! Будем пробовать выходить на 2 видео в неделю
@AZmievsky
4 жыл бұрын
Писать надо всегда только "как хочется". Просто хотеть писать нужно "как правильно" :)
@ОлегКоб-з6з
4 жыл бұрын
Вспомнил доклад с Moscow Python, Григория, там более обширно раскрыта тема. У тебя очень хорошая идея проскочила, писать так, что-бы по одной строке было понятно что это, без доп информации сверху/снизу. Спасибо!
@t0digital
4 жыл бұрын
Петров красавчик, согласен!
@Dmitrii-Zhinzhilov
2 жыл бұрын
Благодарю!
@selfkilla
4 жыл бұрын
18:10 Если уж на то пошло, что частые значения нужно выносить в константы, то наверное стоило бы сказать что на языке Python есть такая чудесная вещь как Enum, в которой можно хранить все нужные значения группируя их.
@t0digital
4 жыл бұрын
Да, Enum хорош, но это видео не привязано к питону, на питоне просто примеры
@illiadenysenko7776
5 жыл бұрын
У меня есть вопросик по поводу функций. Вот к пример, пишем мы функцию сортировки. Мы можем для нее написать как минимум две реализации. 1) Взять условный массив и просто по указателям менять в нем значения. 2) Взять массив, а вернуть указатель на отсортированный. И в Пайтоне к примеру это *sort* и *sorted* , где *sorted* скорее не глагол, а больше похоже на прилагательное (в русском языке есть отдельное слово для таких слов, просто я не помню точно, как оно называется)
@t0digital
5 жыл бұрын
Спасибо за вопрос! Python жесть какой продуманный на самом деле, в нём не просто есть много функционала из коробки, в условном PHP его тоже много, но в отличие от PHP (просто для примера), который развивался спонтанно и без продумывания того, как и почему в нём всё делается, в Python всё очень логично, целостно и архитектурно выверенно. По теме вопроса - конечно, из каждого правила могут быть исключения, в первую очередь рулит здравый смысл, о чём тоже говорится в The Zen of Python, не надо следовать правилам просто чтобы следовать, это не УК РФ:) *sort* глагол, то есть отсортируй _сам_ объект, *sorted* можно перевести как _отсортированный_ , то есть не отсортируй сам объект, а верни отсортированный объект. И это логично. То есть list.sort() - отсортируй _сам_ объект, изменив его, а sorted(list) - верни отсортированный=sorted объект. При этом _отсортированный_ это причастие, то есть типа прилагательное, образованное от глагола, у него все равно глагольная природа, природа действия.
@tohoto2183
4 жыл бұрын
Причастное .
@-Alexey-
4 жыл бұрын
@@tohoto2183 просто причастие
@eugenedukatta9355
4 жыл бұрын
А вопрос-то конкретно какой? Да, это причастие - аналог "сделанный". С такими словами если это флаги (переменные типа bool) хорошо идут приставки is_. Например, is_sorted (да отсортированный), is_sorted_ascending (да отсортированный по возрастанию)
@AXSMEBEL
4 жыл бұрын
sort для сортировки объекта, getSorted (get_sorted) для возврата сортированного объекта
@-Alexey-
4 жыл бұрын
Тоже не люблю комментить код, а юзать удобоваримые названия. Когда-то даже спор был с другом, он как раз юзал все эти "однобуквеные" переменные предварительно делая большой коммент-легенду. В итоге он тоже пришел к нормальному неймингу.
@t0digital
4 жыл бұрын
Кто-то сказал, что нейминг это одна из самых сложных штук в программировании, и в этом есть доля правды. Когда все правильно и по уму названо - великий кайф
@rasskazovdenis
5 жыл бұрын
Хорошие напутствия! Спасибо. В универе нас учили, что необходимо придерживаться одной из существующих нотаций именования (учитель советовал венгерскую). Но когда читаешь код, оформленный в другом стиле, то сложно перестроиться. Но даже так, это лучше, чем бессистемное оформление и никто кроме автора не понимает.
@t0digital
5 жыл бұрын
Да, всё так. Naming conventions хорошая штука, и как правило в компаниях есть какие-то свои правила именования и визуального оформления кода, это может быть общепринятый стандарт (PEP8 для Python, например) или его модифицированная версия, которая оправданно и осознанно изменяет в каких-то моментах стандарт.
@dimitrishat8659
3 жыл бұрын
хардкодить - это вообще дичь. Хороший контент. Благодарю !
@Владислав-и3б9н
4 жыл бұрын
Отличная пропаганда! =) Поддержу лайком
@peachok3564
4 жыл бұрын
Вот про комментарии очень хорошо отметил. Практически всегда вижу как раз описательные комментарии, которые чуть ли не просто переписывают название следующей за ними функции. Так и хочется сказать "мужик, я могу прочитать название функции, зачем ты это дублируешь в виде комментария"
@pythonbeginnerr
6 ай бұрын
Это видео будет актуально всегда!🔥 Большое Вам спасибо🫡🤝
@t0digital
6 ай бұрын
Спасибо!
@pythonbeginnerr
6 ай бұрын
@@t0digitalпоражаюсь Вашей оперативности и уровню взаимодействия с аудиторией, великолепно🫡✊
@allen_woka
4 жыл бұрын
Спасибо за Ваш труд, всё очень интересно, а то спрашивала у друга, мол, может есть какие-то устоявшиеся нормы для нэйминга в определенных ситуациях, ответил: «Да называй как хочешь»
@t0digital
4 жыл бұрын
«как хочешь» точно не надо, надо «как надо»)))
@NikitaSerditov
4 жыл бұрын
Чувство юмора - на уровне
@kosatchev
5 жыл бұрын
Начал программировать с поддержки чужих сайтов на PHP. Сейчас учу питон и немного Java по примерам, и разбирая чужой код на гитхабе. Подписываюсь прямо под каждым словом!
@t0digital
5 жыл бұрын
Отличный, или, пожалуй, даже лучший способ изучения технологии это изучение и проработка чужого хорошего и не очень кода наравне с написанием своего. Хотя почему-то мало кто хочет изучать чужой код и учиться на нём.
@silicodance
2 жыл бұрын
20:37 Может для command лучше использовать аббревиатуру cmd ?
@AMTVE
5 жыл бұрын
Я программирую очень быстро прям как в тех фильмах про хакеров. Но иногда я могу остановится на пол часа чтобы придумать название переменной. Это сложно. Да еще когда англ плохой вообще хоть в окно прыгай
@t0digital
5 жыл бұрын
Тоже такое бывает:) но зато потом, как придумаешь - кайф
@amirych
4 жыл бұрын
Так же, но нейминг css классов для меня мучение, когда надо придумать имена классов для элементов компонента которые нужны просто как обертки или элементы декора
@ZadolbaloNafig
4 жыл бұрын
Один знакомый "программист" в 90е все переменные в программах назвал типа: a, aa, aaa, aaaaa, ab, a1, a2, d4... Смотришь на такое e2e4 и охереваешь)))
@t0digital
4 жыл бұрын
Шахматист, должно быть:)
@alexanderbardin8272
5 жыл бұрын
На самом деле нэйиминг саааааааааамое сложное в программировании)). Логику придумать можно при любом раскладе, а вот с именами порой беда
@nikmoskolenko5656
4 жыл бұрын
Чувак ты крут
@t0digital
4 жыл бұрын
Спасибо :)
@nikmoskolenko5656
4 жыл бұрын
@@t0digital Давай дружить
@t0digital
4 жыл бұрын
Давай 🙏
@MrBoombastic379
Жыл бұрын
Привет! Спасибо за контент! А что за часы у тебя? :)
@t0digital
Жыл бұрын
Рад, что полезно! Здесь часы Ракета Петродворцовый Классик. Чет не нашел их сейчас на их официальном сайте
@ВасяБасилов
3 жыл бұрын
Ну вот я и называю: хз_что_за_хрень_потом_должно_пригодиться. Не понимаю что им не нравится
@artemhrytsenko1353
4 жыл бұрын
А что насчёт заглавных букв и нижних подчеркиваний? Например, employee_list или EmployeeList или во все EMPLOYEE_LIST?🤔 Естественно именно в данном примере будет лучше написать EmployeeList, но что насчёт других случаев?
@t0digital
4 жыл бұрын
это должно регламентироваться стандартами либо языка, на котором пишете, либо должно быть регламентировано внутри команды, в которой работаете
@fensrg
4 жыл бұрын
9:07 Я бы добавил что называть массивы однотипных сущностей добавляя в конце "s" очень вредная привычка, т.к. одна буква может в коде стать не заметной, а вот если добавить в конце List например customerList или employeeList то отличеи от просто customer и employee на лицо и такие имена дают сразу понимание что это множество.
@Anklav24
4 жыл бұрын
По моему с точки зрения английского языка кривовато выглядит customerList(да и с русского покупательЛист), это похоже на так называемый руглишь, когда вроде английский, а вроде отовсюду русские кости торчат)
@fensrg
4 жыл бұрын
@@Anklav24 customer чаще употребляется в значении клиент, а с чего вы вдруг перевели слово List на русский язык как Лист вообще не понятно это все что угодно но только не лист, а словосочетание customer list в англ тексте имеет значение список клиентов. А почему в коде лучше использовать приставку List вместо буквы "s" я уже объяснил. Подучите английский, так как видимо с ним у вас очень плохо...
@Anklav24
4 жыл бұрын
@@fensrg Отлично объяснили, только последняя фраза... Не хорошо, со своими друзьями так общайтесь.
@fensrg
4 жыл бұрын
@@Anklav24 эм... и что же я плохого сказал? И к тому же мы вроде не друзья или я что-то пропустил?
@Anklav24
4 жыл бұрын
@@fensrg Хочу обратить внимание ваше, на то что вы грубите не знакомым людям.
@sevashpun
4 жыл бұрын
Спасибо большое за видос! У меня валяется такая же книжка Чистый код. Я как то купил и никак не могу прочитать её :(
@t0digital
4 жыл бұрын
О, у меня огромное количество книг лежит в очереди на почитать. Главное, не превращать self education в shelf education :)
@AlexanderWaal
4 жыл бұрын
Спасибо за видео, очень классное! Хотелось бы узнать ваши мысли о том, насколько сильно нужны программисту софт скилы и нужны ли они в принципе? И второй вопрос, который вытекает из первого. Что делать с коллегами, которые являются хорошими кодерами но их коммуникативные навыки оставляют желать лучшего и очень часто любая их коммуникация выливается в конфликтную ситуацию?
@t0digital
4 жыл бұрын
Спасибо! Софт скилы нужны, потому что хотим мы того или нет, большой результат всегда делает команда, несколько человек. Один человек, каким бы молодцом он ни был, все равно ограничен своими ресурсами. А при правильном подборе команды 1+1=11 :) Конфликтных людей надо или переучивать в неконфликтных, или максимально дистанцировать от остальных, если это возможно, или увольнять - из-за него одного все остальные эффективные члены команды могут разбежаться или упадёт общий боевой дух, и вместе с ним упадут результаты
@AlexanderWaal
4 жыл бұрын
@@t0digital спасибо за ответ, лишний раз подтвердили мое мнение )
@vladimiraksenov5548
4 жыл бұрын
Переменная которая доступна тысячам или даже десяткам тысяч строкам кода - это уже глобальная переменная, что само по себе нехорошо.
@t0digital
4 жыл бұрын
да!
@torburgmax
Жыл бұрын
считаете, что синглтон - антипаттерн?)
@Kirill-rg8vj
4 жыл бұрын
19:15 а лучше для таких приколов использовать глобальные енамы
@gleb4059
3 жыл бұрын
Алексей, если вы позаимствовали эту тему, включая шутки, у другого спикера, то почему бы не дать на него ссылку? Оригинал - kzitem.info/news/bejne/22uN0XiHj5eKiGk
@yk4r2
3 жыл бұрын
Окей, а если констант прям много, мб проще сделать отдельный датакласс с ними?
@recursive.6568
3 жыл бұрын
Я делаю .env файл, в котором пишу все константы, значения которых которых я получаю в файле «data.py», другие файлы импортируют оттуда нужные переменные
@TonyPinkevich
3 жыл бұрын
А что думаете на счёт комментариев в проекте на русском языке, если команда русскоязычная и международная команда не планируется на ближайшие несколько лет?
@torburgmax
Жыл бұрын
это нормально. но надо соблюдать чистоту, то есть не писать лишних комментариев. если это, конечно, не документация класса или поведения
@nitroflap
4 жыл бұрын
Брух, постоянно использую эту шутку в начале в своей речи.
@AZmievsky
4 жыл бұрын
Мне показалось или команда была с токенами? :)
@t0digital
4 жыл бұрын
may be:)
@Disorrder
4 жыл бұрын
Комментарии лучше писать на английском или русском языке?)
@t0digital
4 жыл бұрын
если на 100% уверены, что код будут читать только русскоязычные, можно писать на русском, в остальных случаях лучше на английском
@LinuxbyDmitry
4 жыл бұрын
Да какой там старый код), писал одну штуку два дня в итоге запутался сам и понял что надо писать по другому)))
@t0digital
4 жыл бұрын
вот и вот:)
@andreychernykh256
4 жыл бұрын
!
@t0digital
4 жыл бұрын
🙏
@vyachislove2502
4 жыл бұрын
Лайфак: Когда имя переменной слишком длинное и вы его сокращаете, можно написать в комменты расшифровку его, а то постоянно такая херня, когда вроде бы имя правильное и если ты знаешь полное имя, то оно дает тебе понимание, но только вам, например "garcar", я то знаю что это переменная - МАШИНА ИЗ ГАРАЖА, GARAGE CAR- слишком длинно, а garcar непонятно, и в комментарии вы лучше объясните полное имя переменной
@Disorrder
4 жыл бұрын
а если ты такое сокращение используешь в нескольких файлах, надо везде добавлять такой комментарий или только в каком-то одном? Или завести отдельный файл - словарь сокращений? Очевидно, что это плохая идея.
@torburgmax
Жыл бұрын
garageCar абсолютно нормальное с точки зрения длины имя переменной. если вам нужно написать что-то filtredByColorGarageCars, просто подумайте над тем, что вы делаете не так. то есть у вас просто неправильно декомпозированный код
@pestovalexey
Жыл бұрын
Товарищ правильно упоминает необходимость знания английского языка, сопровождая данное утверждение целым рядом ошибок. Company - это кАмпани (если не говорим о кучке товарищей), запомнят эту истину на Ютубе когда-нибудь, не знаю. - ну не используется данное слово в понятии биржевого курса. Встречаю данное безобразие практически в каждом онлайн . И это навскидку, что осталось в пустой голове после быстрой перемотки данного ролика.
@АлеАле-ч2й
5 жыл бұрын
Emacs !!!!!!!!!!
@АндрейКочегура-м5я
Жыл бұрын
использование русского языка в именах переменных - это кощунство
@vagabundin2953
3 жыл бұрын
Зач ты столько воды льешь?
@t0digital
3 жыл бұрын
Так надо!
@Shandbaron
5 жыл бұрын
Братка все хорошо, но вот только такой контент и тема не выйдут в массы. Зайдёт обзор ПО, рекомендации, кидербезопасность, и все это доступным языком. Если только для души делаешь то норм, а если хочешь зарабатывать то лучше выбирай темы более доступные для широкого зрителя
@illiadenysenko7776
5 жыл бұрын
Вот так вот и будут темы более доступные для широкого зрителя, а годноты не будет))
@t0digital
5 жыл бұрын
Монетизировать канал будем обязательно. Здесь собираются умные парни и это очень круто! Гораздо круче, чем миллион ботов и накрученных просмотров :)
@t0digital
5 жыл бұрын
@@illiadenysenko7776 только годнота, только хардкор! Смотрю вот дизы появляются, значит верной дорогой идём, подбешиваем кого-то гг:)
@Shandbaron
5 жыл бұрын
Диджитализируй! АйТи студия дизы продвигают видео в любом случае, лучше чем 0 реакция
@Shandbaron
5 жыл бұрын
Диджитализируй! АйТи студия дизы ставят как правило от нехуй делать, вызвать бурления. Ты верной дорогой идёшь, забей на хейтеров и неудачников
@alexleshenko
2 жыл бұрын
get get_.... тож плохо, у нас за это били))
@torburgmax
Жыл бұрын
почему?
@michailshultz8638
2 жыл бұрын
Информации мало. Хотелось бы больше примеров. Можно сразу смотреть с 7:25. За видео спасибо.
@vovapyshkin6054
3 жыл бұрын
Привет) Как в Webstorm из html перенести все названия классов в css ?
Пікірлер: 153