Плохой vs. хороший код / wtf is clean code

2022 ж. 24 Жел.
145 364 Рет қаралды

Python Интенсив от SkillFactory: go.skillfactory.ru/AzEgWw
Скидка 50% по промокоду WINDERTON и три курса в подарок + возврат денег за курс, если не нашли работу после обучения (промокод до 08.01.2023 г.)
Правильные наименования идентификаторов в коде дают +50% к читаемости.
За почти 100 лет существования программирования, у нас появились определенные правила, исключения и предпочтения, как именно давать имена разным сущностям в коде.
Я собрал все в одном месте.
Я wndtn, мне 20 c чем-то лет, и я изучаю computer science и программирую ~10 лет.
Я into С++, и всякие low-level штуки.
У меня есть небольшой проект, xplatform, который вы сможете найти на github, и через него практиковаться в изучении всей базы программирования, и если вам повезет(если вы упорный), вы станете хорошим программистом %)
Если нужна помощь в программировании 1 на 1, чекайте ссылки .
всем добра
Телега - t.me/wndtn
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Подпишись сюда:
Telega и чатик - t.me/wndtn
Boosty(менторинг) - boosty.to/wndtn
Instagram - / winderton
Github проекта(код с канала) - github.com/winderton
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Оборудование:
Камера - Sony a7ii
Объектив - SIgma F1.4 DG
Микрофон - AudioTechnica at2035
Звуковая карта - Scarlett Solo
Петличка - Rode smartlav+
Клавиатура - HyperX Alloy
Вторая клавиатура - apple magic keyboard(black edition)
Монитор DELL 25'
Монитор Asus mg248q
Iphone 11 pro(зеленый)
CAMLINK elgato - для стриминга
JBL headset
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Музыка:
technica - Unviverse
technica - time
technica - Tech
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
00:30 Введение
1:33 Первый пример
1:56 Второй пример
2:21 Про важность Английского в программировании
2:43 Третий пример
3:13 Четвертый пример
4:17 Пятый пример
4:40 Шестой пример
4:47 Бонуска
6:12 Седьмой пример
7:00 Куча примеров на примере куска кода
8:30 Исключения из правил
8:40 Математика И геймдев.Наименования.
9:05 Низкоуровневое программирование. Наименования.
9:26 Интринзики, векторизация, SIMD. Наименования. Intel.
9:57 Пример с интринзиками
10:44 Венгерская нотация
11:33 Итоги и резюме

Пікірлер
  • Нравится такое?

    @wndtn@wndtn Жыл бұрын
    • Аж передернул

      @ivanivenskii6942@ivanivenskii6942 Жыл бұрын
    • Да, спасибо, было интересно. У тебя в конце видео очепятка, вместо camelcase написано camlecase, это так, к слову

      @Pilotofhell26@Pilotofhell26 Жыл бұрын
    • Превосходно!

      @user-pg8ry1tm3t@user-pg8ry1tm3t Жыл бұрын
    • По инструкциям был студенческий проект, там конечно говнокода и костылей хватает, но если интересует, могу скинуть

      @user-pi4oc8rz1k@user-pi4oc8rz1k Жыл бұрын
    • Рекламы только слишком мало, можно еще пару вставок в начале видео, несколько десятков в процессе и пару сотен в конце И желательно брать еще более зашкварных рекламодателей, чтобы после скиллфактори шла реклама рейд шадоу ледженджс, после него гикбрейнса и сверху на этом всем университет синергия и подписка на экосистему мтс, тогда будет вообще хорошо

      @user-cd7yy3cx9q@user-cd7yy3cx9q Жыл бұрын
  • А как же видос на 12 часов о плюсах..

    @levandr1556@levandr1556 Жыл бұрын
    • 10 часов! И сначала по С 10, а потом по Плюсам))) ❤

      @kamsikamsa@kamsikamsa Жыл бұрын
    • Попахивает не чистым.

      @user-qy7xe6or8b@user-qy7xe6or8b Жыл бұрын
    • А так-то, может быть он решил, что выпустить 10 часов разными роликами, будет куда проще запомнить.

      @user-qy7xe6or8b@user-qy7xe6or8b Жыл бұрын
    • В сети в принципе если хорошенько покопаться, можно найти неплохую годную инфу как по Си, так и по плюсам, в т.ч. для новичков. Но ссылок давать не могу, бо нехорошо постить ссылки на авторском канале. Правила хорошего тона ютуба не забываем соблюдать. Просто ищите усерднее, вся инфа есть в свободном доступе.

      @randomcreations1079@randomcreations1079 Жыл бұрын
    • @@randomcreations1079 скинь ссылку

      @ivanivenskii6942@ivanivenskii6942 Жыл бұрын
  • Топ самых сложных задач в программировании: 1. Начать новый проект без шаблона 2. Подключать библиотеки в которых сломано имя типа 3. Писать драйвера на ассемблере

    @mcminox7921@mcminox7921 Жыл бұрын
    • 0. Написать шаблон для будущих проектов.

      @1kvolt1978@1kvolt1978 Жыл бұрын
    • начать писать мэйкфайлы вместо вызова компилятора каждый раз

      @arboleet@arboleet Жыл бұрын
    • 1. Начать

      @rickeyok@rickeyok Жыл бұрын
    • -n. Перестать смотреть видео и перейти к практике.

      @user-gu5hk5bx9i@user-gu5hk5bx9i6 ай бұрын
    • 4. Назвать объект

      @user-jz7zv6jr4x@user-jz7zv6jr4x5 ай бұрын
  • В python добавление __ приводит к тому что метод фактически будет иметь другое имя с префиксом имени класса, что делает его как бы private методом и не позволяет переопределить в дочернем классе. Т.е. в Base и Derived классах __some_method это разные методы: Base__some_method и Derived__some_method соответственно

    @omgdmgable@omgdmgable Жыл бұрын
  • Такой видос это та самая невидимая помощь и себе и другим. Культура таких вещей оч важна. Спасибо)

    @Foxguyanimation@Foxguyanimation Жыл бұрын
  • Отличное видео получилось, много полезной инфы для новичков. Мне нравиться как ты амбициозно и доступным языком объясняешь 👍

    @Metaphorical_Lion@Metaphorical_Lion Жыл бұрын
  • посмотрел с кайфом, ботать инглиш топ основа, даже если не прогаешь, в любой непонятной ситуации просто его ботаешь и не паришься потом

    @votyakov@votyakov Жыл бұрын
    • Круто,что учитель информатики учится писать понятный код,чтобы потом учить писать этот понятный код

      @kenapcho3733@kenapcho3733 Жыл бұрын
    • Auf

      @kda5581@kda5581 Жыл бұрын
  • Для новичка в мире программирования очень полезное видео. Всегда не знаешь как правильно назвать переменные, а оказывается есть правила, спасибо!)

    @4ebyrashkalife@4ebyrashkalife Жыл бұрын
    • Если ты новичок, то держись от этого канала подальше. Обходи романа стороной.

      @obi3kenobi@obi3kenobi Жыл бұрын
    • @@obi3kenobi Почему?

      @_KirieshkaKMA_@_KirieshkaKMA_ Жыл бұрын
    • @@obi3kenobi yeah, why?

      @farresalt4381@farresalt4381 Жыл бұрын
    • К сожалению они не едины для всех, но действительно "выберите и придерживайтесь".

      @alexperemey6046@alexperemey6046 Жыл бұрын
    • И в каком месте оно полезное? Человек хочет просто написать int a = b + c;, а его тут же заставляют писать first_variable или __totalAmount с какими-то черточками в начале. Как по-мне, в программировании важно знать, как решить, а не как писать

      @Misha-775@Misha-775 Жыл бұрын
  • С терминологией прям беда. Функция - это подпрограмма, которая возвращает некий результат. Процедура - это подпрограмма, которая результат не возвращает. Метод класса может быть как процедурой так и функцией но, следуя парадигме, работает только с данными (полями, членами) класса. Формально, в некоторых языках (например в сях) нет процедур, но любая сишная функция, возвращаюшая void может рассматриваться как процедура.

    @drone_tales@drone_tales Жыл бұрын
  • 4:50 разница между одним подчеркиванием и двумя(хотя обойти эту "защиту" несложно): Одно подчеркивание обозначает, что это можно использовать в данном классе и в дочерних, а два подчеркивания разрешают доступ ТОЛЬКО из данного класса. Если писать без подчеркиваний перед именем, то это обозначает что это публичное(аналог private, protected и public из плюсов, только названия у первых двух поменяли)

    @user-uh4bz3lh8l@user-uh4bz3lh8l Жыл бұрын
  • Спасибо, узнал про венгерскую конвенцию. Хорошо бы ещё выделять места в коде о котором идёт речь и на что следует обратить внимание во время просмотра. Т.к. бывает сложно одновременно вникать в код и понять о каком участке этого кода в данный момент идет речь. Как говориться не тупой, а просто медленно доходит :)

    @user-ry6go9cw9o@user-ry6go9cw9o Жыл бұрын
    • 😄😄

      @user-js2ew5xi1s@user-js2ew5xi1s Жыл бұрын
  • В это время C#: у нас есть правила написания кода и ты должен их соблюдать. Никакой самодеятельности

    @qwertymangames1800@qwertymangames1800 Жыл бұрын
  • Капец как интересно! Больше видосов по инфраструктуре и таким вот нюансам которые очевидны программистам высокого уровня и неизвестны начинающим.

    @FormAlDeGid@FormAlDeGid Жыл бұрын
  • Прям закидываешь контентом в последнее время, спасибо!

    @l1bra154@l1bra154 Жыл бұрын
  • Для возможности прогуглить я бы добавил еще упоминание конкретных кодстайлов, например тоже очень популярный кодстайл от гугла, где почти все правила чуть другие (и касаются не только непосредственно наименований). Ну и самое главное - когда начинаешь проект, важно сразу определить кодстайл (пусть он и будет солянкой из разных более принятых стандартов), которому будут все следовать, чтобы потом в процессе работы не было холиваров.

    @Saiel2285@Saiel2285 Жыл бұрын
    • В разных компаниях - разные требования и стандарты, это же касается не только стиля написания кода, а скажем аспекта безопаности или распространения сэмплов. Для себя можно свой стиль придумать, как ты и сказал. По факту та же венгерская нотация нужна если ты каким-нибудь опенсурсом занимаешься

      @helpless3526@helpless3526 Жыл бұрын
    • @@helpless3526 в опенсорсе если это старый проект и венгерская нотация там принята - да, придётся использовать. Но её вроде как всем миром уже послали куда подальше, т.к. даже в виме с lsp можно посмотреть тип переменной. В целом, если это твой проект, не важно куда он идет, в опенсорс или просто пет, ты волен писать код как хочешь, пока это позволяет компилятор и твоё (команды) понимание здравой логики. В других случаях естественно нужно следовать принятым стандартам

      @Saiel2285@Saiel2285 Жыл бұрын
    • @@Saiel2285 Правила именования нужны и для тебя тоже. Поэтому нужно думать над названиями отдельных переменных и над общей системой именований. В команде над системой думать уже не нужно, нужно взять ту, что есть.

      @alexperemey6046@alexperemey6046 Жыл бұрын
  • Такой видос очень полезен для многих, продолжай делать подобные! А я, как минимум буду ждать и обязательно смотреть!

    @Vorono4ka@Vorono4ka Жыл бұрын
  • Спасибо большое за твой труд!

    @szapsis@szapsis Жыл бұрын
  • Не знал про венгерскую нотацию, с каждым видосом узнаю что-то новое, спасибо огромное. Надеюсь такими темпами скоро перерасту в гигапрограммиста😂

    @studied7962@studied7962 Жыл бұрын
    • программируй и может перерастешь а так 2 рекламы в ролик потреблять тоже годно

      @braveknight6857@braveknight6857 Жыл бұрын
  • Видос познавательный,продолжай в том же духе, спасибо 😉

    @vlad_jonson1289@vlad_jonson1289 Жыл бұрын
  • Сделай видео по настройке компилятора VSC? Что и как лучше под С++ настроить, чтобы с отладчиком было норм и компилить под Linux/Windows можно было.

    @macvaer1525@macvaer1525 Жыл бұрын
  • Спасибо! Прекрасный контент. То, что нужно.

    @user-pg8ry1tm3t@user-pg8ry1tm3t Жыл бұрын
  • Спасибо, Виндертон! Действительно полезный видос

    @itszzupart6607@itszzupart6607 Жыл бұрын
    • имхо, иногда надо такие видики делать

      @wndtn@wndtn Жыл бұрын
    • @@wndtn почаще бы, редко такой контент встречаю

      @itszzupart6607@itszzupart6607 Жыл бұрын
  • Видео по бустерам векторных команд было бы интересно глянуть. На счет наименования, не привели важный для примера шарп. Ведь там размеры функций и некоторых имен начинают включать 3-4+ слова и иногда читать код из за этого еще сложнее, так как теряются зрительно операторы. А сходу даже 3-4 словное название может очевидно не сказать не знакомому с этой программой человеку о его назначении.

    @Daniel-mp7bv@Daniel-mp7bv Жыл бұрын
  • 8:55 Так это не исключения из правил, это прямая привязка кода к предметной области. Хотя ладно, индексы i,j,k - наследие мат. итерации по множеству элементов. А вот x,y,z-координаты у векторов, это точное описание предметной области, в которой мы работаем с вектором.

    @yelmoralardclaw@yelmoralardclaw Жыл бұрын
  • Дружище, такое нужно, благодарочка)

    @igormia6995@igormia6995 Жыл бұрын
  • Я программист-любитель C++ начального уровня уже 10 лет потому что думал что тупой, а оказывается что читать чужой код тяжелее чем писать. Если бы мне изначально это сказали я бы наверно стал программистом. Балуюсь мк атмега.

    @user-ev5zy3ql9m@user-ev5zy3ql9m Жыл бұрын
  • Очень хочу увидеть туториал по intel sse, simd, avx и о том как с этим работать из джавы. Заранее огромное спасибо

    @vmened@vmened Жыл бұрын
  • Определённое надо! Спасибо больше, полезно пересмотреть что бы вспомнить

    @ilnur-muh@ilnur-muh Жыл бұрын
  • давай видосик по SIMD, с кайфом будет. всегда сложно воспоинимать это было, хотя без этого никуда, особенно, если на каком-нибудь masm пишешь..FPU уже не канает

    @helpless3526@helpless3526 Жыл бұрын
  • "Венгерская нотация" облегчает создание читов. Я с этим лично сталкивался. Зачем-то в код засунули упорядоченные имена переменных, которые я не знал, от чего вообще. Я вчитался в них, создал предполагаемую структуру, и начал накладывать её на разные массивы данных. Таким образом я не только добыл данные, но также и точно узнал, за что отвечают эти значения. Их "венгерность" была в том, что они начинались с b_name, i_name, d_name. И я понял, что это bool, integer и dword и т.д.

    @isha_the_ishism@isha_the_ishism Жыл бұрын
  • Благодарю Вас за видео 👍

    @eduardgorodetskiy6543@eduardgorodetskiy6543 Жыл бұрын
  • Двойное подчеркивание в атрибуте класса заставляет интерпритатор Python перезаписать имя атрибута, что бы при расширении класса не было конфликта имен.

    @NeverovMaxim@NeverovMaxim Жыл бұрын
  • В Пайтон: Одно подчеркивание - имя доступно во всех дочерних классах, но не за пределами класса Два подчеркивания - имя доступно только в данном классе и нигде более

    @dmitriyneledva4693@dmitriyneledva4693 Жыл бұрын
    • т.е. protected и private, если использовать классические термины.

      @alexperemey6046@alexperemey6046 Жыл бұрын
    • Но по факту, если использовать одно подчеркивание, имя доступно вне класса

      @user-xt9cg6yl6j@user-xt9cg6yl6j Жыл бұрын
  • Круто, побольше таких роликов👍

    @user-hg9jk1rq3o@user-hg9jk1rq3o Жыл бұрын
  • Спасибо! Отличное видео!

    @MegaLexa98@MegaLexa98 Жыл бұрын
    • Яге

      @hauyt424@hauyt424 Жыл бұрын
  • ку бро! не хочешь снять полноценное видео по кодстайлу?

    @pingzete837@pingzete837 Жыл бұрын
  • Добавлю от себя - не забивайте болт на пробелы, как показано в примере с переменными в цикле! Текст любого содержания надо сначала прочесть, и делать это при возможности без боли :/

    @qandak@qandak Жыл бұрын
  • Будет интересно послушать про intrisic и прочие оптимизации)

    @MrMolekula@MrMolekula Жыл бұрын
  • мне нравится как в голанге подошли к названию функций. Если начинается с маленткой буквы - значит метод \ функция приватная и ее видно только внутри ее пакета. для публичных методов только PascalCase юазельный, имхо.

    @ananaslegend@ananaslegend Жыл бұрын
  • Не помню когда подписался на тебя, но понимаю почему. Голос - топ. Контент - топ. Видео - топ. Однозначно лайк и колокольчик

    @wispace@wispace Жыл бұрын
  • весь семак за 12 минут, кайф

    @h_e_r_m_e_s_1337@h_e_r_m_e_s_1337 Жыл бұрын
  • Когда будет курс по любом ЯП?)

    @swipechannel@swipechannel Жыл бұрын
  • 4:40 - self._private, self.__protected. Разницы почти нет... Только особенности при наследовании. А сделать реально приватными или защищенными можно только подключив спец либу для этого

    @questiontaker@questiontaker Жыл бұрын
  • В целом про такие вещи как венгерская нотация (и другие нотации, в т.ч. для ассемблера), и другие моменты программирования появившиеся довольно таки давно можно прочитать в древней литературе по программированию и computer science. В более современных книгах такую инфу порой опускают, т.к. наверное думают, что книгу читают уже прошаренные ребята. Поэтому всем, кто хочет копать глубже, читайте древние книги иногда тоже.

    @randomcreations1079@randomcreations1079 Жыл бұрын
    • Вот на фиг. Сейчас на каждую действительно полезную древнюю книгу написан более актуальный аналог. Который говорит о том же самом, но с учетом современных реалий.

      @alexperemey6046@alexperemey6046 Жыл бұрын
    • Венгерская нотация только мусорит код. Все современные IDE умеют выделять значимые различия в именах цветом.

      @RustedCroaker@RustedCroaker Жыл бұрын
  • в пайтон дабл-андерскор (за исключением “magic” методов) имеет значение private а один андерскор protected. protected это просто соглашение а private это реально private

    @tigranav.3960@tigranav.3960 Жыл бұрын
  • А по поводу стакана, кстати, я бы предложил третий вариант: сосуд вдвое больше нужного:)

    @justyoutubechannel1502@justyoutubechannel1502 Жыл бұрын
  • Намного лучше построен видос чем до этого был по плюсам. Чистая выжимка инфы с минимум "отвлечений" от темы, вот так овер хорошо.

    @DominusFuror@DominusFuror Жыл бұрын
  • очень интересно, спасибо

    @pronikfire@pronikfire Жыл бұрын
  • аффтор, за базар отвечаешь? 😆

    @istar6540@istar6540 Жыл бұрын
  • Хорошо зашло видео!

    @tigpa86@tigpa86 Жыл бұрын
  • 3:18 Метод - это функция, принадлежащая какому-либо классу. (основы ООП для ВУЗов)

    @f1am3d@f1am3d10 ай бұрын
  • Было бы здорово видео по инструкциям

    @user-rn9jx7gt7r@user-rn9jx7gt7r Жыл бұрын
  • Уважаемый автор, получилось неплохо. Но вы бы небольшой списочек литературы дали в конце. Тема же большая и сложная. В одном видосе не охватишь. А так вроде и по делу, а вроде и по верхам совсем ✌️

    @user-bw5in2yo7s@user-bw5in2yo7s Жыл бұрын
  • 9:47 отличный код, чтобы получить по шапке от Ибшников, безопасность так сказать нынешних програмистов во всей красе

    @andie2334@andie2334 Жыл бұрын
    • Поподробнее, пожалуйста. Интересно.

      @iskak9@iskak9 Жыл бұрын
    • ​@@iskak9 Во-первых, для работы со строками в C++ следует использовать std::string, а не нуль-терминированные строки (причины давно известны: производительность, безопасность). Во-вторых, этот код копирует в dest 12 символов из src, а значит, не копирует завершающий нуль. Конкретно в этом коде это проблемы не вызовет, т.к. dest выводится в консоль посимвольно и итераций в цикле будет ровно 12. Но при попытке использовать любую сишную функцию для работы со строками с dest, типа strlen(), произойдёт выход за границы dest, т.к. эти функции читают данные, пока не встретят нуль. И вообще, нуль-терминированные строки - игрушка дьявола и извращение. На C и C++ лучше вообще не писать, если досконально не знаешь стандарт, т.к. слишком велика вероятность вызвать undefined behaviour, как в случае с strlen(dest). Многие не знают, но единственное место с undefined behaviour в программе автоматически лишает программиста всех гарантий на корректность её работы, и это относится ко всему коду программы, а не только к участку с UB. Просто разработчики компиляторов - слишком добрые люди, и очень стараются сделать так, чтобы твой говнокод работал. Короче говоря, на C и C++ лучше вообще не писать, если ты не бог, а раз ты не бог, то и не пиши.

      @bytefu@bytefu Жыл бұрын
  • Привет,есть такое предложение или желание, не знаю,у тебя есть видос про собеседование,сделай стрим якобы собеседование только от подписчиков 😉

    @vlad_jonson1289@vlad_jonson1289 Жыл бұрын
  • 1:42 А разве можно использовать имя sum? Ведь это имя встроенной функции вычислить сумму чисел в списке.

    @user-gf6er4ug6g@user-gf6er4ug6g Жыл бұрын
  • хороший ролик. неплохо рассказал

    @seeklay@seeklay Жыл бұрын
  • Взгляд начинающего. Приходишь на курсы где тебе рассказывают, что за год сделают из тебя джуна. Проходит год и ты понимаешь насколько ты далек от джуна. Чуть позже к тебе приходит осознание что курсы это колесо для хомячка.

    @user-te9dr5jf3e@user-te9dr5jf3e11 ай бұрын
  • Блин, бро, что с английским ин зис видео? Camle вместо Camel, Klass вместо Class. Может это аллегория или постирония, в таком случае заранее извиняюсь)

    @Misha-775@Misha-775 Жыл бұрын
  • Имена переменной по Go way - да да, пошли мы нафиг)

    @nickthemocker1534@nickthemocker1534 Жыл бұрын
  • Я думал в начале реклама и хотел её пропустить

    @user-hd2xe1ds1n@user-hd2xe1ds1n Жыл бұрын
  • По третьему пункту: завел себе словарь имен переменных, функций, классов... сумарно уже порядка 500 имен, разделены по группам применения... словарь покрывает %%90 необходимого мне на новом проекте, остальные 10% придумываются и заносятся в словарь

    @k0t_bayun115@k0t_bayun115 Жыл бұрын
  • да теперь понимаю , когда программист говорит эту программу написал тот или инной человек или компания

    @user-hs6hl5vd7q@user-hs6hl5vd7q Жыл бұрын
  • Давай примеры на плюсах будут) На петухоне они не читаются для нормального человека, а на плюсах - самое то👍🏻

    @exe9395@exe9395 Жыл бұрын
  • Мне больше всего понравилась часть кода import time as time :)

    @mrd_a_r_kcode494@mrd_a_r_kcode494 Жыл бұрын
    • я хотел написать as t, чтобы уродливо выглядело, но видимо забыл

      @wndtn@wndtn Жыл бұрын
  • Ты таакоооой молодец !

    @svetoslavzamotaev2725@svetoslavzamotaev2725 Жыл бұрын
  • Создать интернет - в точку 🤣🤣🤣🤣🤣

    @ToNNaG@ToNNaG Жыл бұрын
    • что он сказал после этого? я пытался понять, но не вышло

      @Thread_Sleep@Thread_Sleep Жыл бұрын
    • @@Thread_Sleep равенство P и NP классов это одна из нерешëнных задач тысячелетия, за решение которой институт Клэя платит $1.000.000. Простыми словами: есть класс задач, для которых пока не придумали алгоритм решения, который работает быстрее полного перебора. Суть проблемы в том, чтобы придумать такой алгоритм, тогда P=NP, или доказать, что это не возможно P≠NP.

      @user-rt5ci7rb1c@user-rt5ci7rb1c Жыл бұрын
  • По SIMD и оптимизации хорошо объясняет Agner Fog

    @edkachalov@edkachalov Жыл бұрын
    • ооо, чел. У меня есть оптимизации в закладках основных. Можешь во многих видосах увидеть.

      @wndtn@wndtn Жыл бұрын
    • @@wndtnя много видео видел о ASM на KZhead и там информация уровня Hello World. Только Agner Fog объясняет сложные вещи такие как векторизация.

      @edkachalov@edkachalov Жыл бұрын
  • Видео на высоте. Автор засунул в название качественный кликбейт, а само видео это приятные темные визуалы и приятный голос, сценарий без воды. Вообщем я был тут до 10 млн просмотров

    @ByteNode1@ByteNode1 Жыл бұрын
  • Не встречал такой информации в книгах, которые читал.... Очень пригодится) спасибо за видео! Как раз тот контент, которого раньше не находил на других каналах

    @user-pz5dj7cb6e@user-pz5dj7cb6e Жыл бұрын
  • Спасибо

    @Iwalkaroundtheworld@Iwalkaroundtheworld Жыл бұрын
  • НЕТТТ! Самая главная и сложная проблема в программировании - КАК НАЗВАТЬ ПЕРЕМЕННЫЕ !

    @user-fg1lj2qm5p@user-fg1lj2qm5p Жыл бұрын
  • Отличное видео

    @user-jg7ye7fj2j@user-jg7ye7fj2j Жыл бұрын
  • О😂 мой кореш в рекламе в начале

    @kaspersky_ege@kaspersky_ege Жыл бұрын
  • Очень круто и полезно хочу гайд как читать код для маленьких

    @user-lo1xq9yy5x@user-lo1xq9yy5x Жыл бұрын
  • так а че там с web3 и NP задачами? тема не раскрыта

    @user-ju3kc8cn9p@user-ju3kc8cn9p Жыл бұрын
  • Скиньте ссылочку, с чего начинать учить английский? учусь на программиста, с английским все плохо😢

    @IBmusic_vector@IBmusic_vector Жыл бұрын
    • Я начинал с "полоиглот англ за 16 часов". Лет 10 назад )

      @wndtn@wndtn Жыл бұрын
    • Пока какие-нибудь курсы изучения языка не поломали вам мозг, используйте секретный метод изучения. Берете свой любимый сериал, фильм или мультфильм на английском. Включаете английские титры. Русские не нужны, смысл происходящего в вашем любимом фильме вы уже точно помните. Все фразы которые хотите перенять и запомнить, громко орёте в распознавалку речи, типа "голосового помощника" в телефоне. Орать надо громко, перенимая не только слова, но и манеру произношения и жесты ( нужно обезьянничать, как это делают дети ). Если "распознавалка" понимает то что говорит актёр в фильме, но не понимает то, что пытаетесь изобразить вы сами, то в вашем произношении есть ошибка. Если "распознавалка" вас понимает, то человек-собеседник, потенциально, наниматель-экзаменатор вас точно поймёт. Более того оценит раскованность речи, а так-же перенятую у профессионального актёра мимику и язык тела (эмоджи). Сейчас наём на работу производят в основном удалённо в режиме видео, - тренируйтесь по возможности на камеру. С коллегами вам так-же придется общаться по видеоконференциям. Удалённая работа сейчас в моде. Используйте в общении только тот набор фраз, шаблонов речи (идиом), который выучили таким образом, - у собеседника возникнет иллюзия что вы владеете языком в полном объёме на уровне "native" или "near-native". Я так проработал английский(70), русский(90), польский(90), чешский(20), болгарский(10), венгерский(10), японский(10). Циферки в скобках это процент владения каждым языком. Что даёт такой подход? Я проработал с японцами пол года, общаясь на японском, прежде чем тем удалось понять что я и десятой части японского языка толком-то и не знаю. Записывайте на диктофон то что вам говорят, можно внимательно прослушать позже, или даже прогнать через "распознавалку". Особого внимания заслуживает встроенная в язык механика подтверждения понимания - слушать собеседника нужно активно, мимика и жесты очень важны. Изучите пустые фразы - заполнители, пословицы, длинные ругательства, упоминания погоды, анекдоты, истории за котиков (заготовленные истории) Это очень помогает болтать без умолку, пока думаешь о том чтобы такого сказать, или пытаешься понять о чем конкретно тебя спросили. Ну и то, чего делать нельзя ни при каких обстоятельствах - не пытайтесь придумать фразу на своём родном языке и переводить её на выбранный вами язык на лету. Это никогда не работает, в вашем распоряжении есть только то, что вам удалось идеально отрепетировать. Даже такая мелочь как произнести имя "Серёжа", например на близко-родственном украинском языке, без акцента, можно тренировать неделю. Некоторые слова выбранного вами языка вы так и сможете научиться произносить. Просто избегайте произносить такие слова. Всегда помните, что язык Эллочки-людоедки из "12 стульев" существует в любом языке. Но во многих бытовых случаях достаточно и его. Весь набор наиболее употребляемых в языке фраз и выражений, никогда не соответствует академическим правилам этого языка. В основном это сплошные исключения из правил, включающие и "новояз", и слова-паразиты. Как в в польском "перделка", "пердолыты", "попердолила до склэпу" ... никогда не употребляется в литературном варианте языка ( как русский мат ), но без понимания этих слов-паразитов, часто невозможно понять смысл фразы целиком.

      @andreypronko1859@andreypronko1859 Жыл бұрын
  • Дякую за відео)

    @user-do5ud7hh5y@user-do5ud7hh5y Жыл бұрын
  • Да, го гайд на производительность

    @finn2516@finn2516 Жыл бұрын
  • Ну большинство на с подобных языках пишут в взуалке, где кулэнг включен по умолчанию))) Так что двойной ___ Легален!

    @walkfromwalkstreet@walkfromwalkstreet Жыл бұрын
  • Где 12 часов по плюсам?)

    @gimalfas888@gimalfas888 Жыл бұрын
  • Когда будет геймдев ?

    @maksoniusis@maksoniusis Жыл бұрын
  • 8:50 помню кто то писал что 3 вложений for() очень плохо

    @vadiks20032@vadiks20032 Жыл бұрын
  • Три сложнейшие проблемы в программировании: 1. САМОЗАНЯТОСТЬ

    @white_145@white_145 Жыл бұрын
  • Про питон , не знаю почему автор не потратил примерно пять минут на гугление, но различие в питоне __ и _ это протекдед и приватные методы. Отличие в том что протекдет метод это по сути алиас для названия метода как название класса + название метода и сделано это для того что б этот метод был гарантировано уникальным. А еще не пишите в камел кейсе на питоне это не по пеп8 и глазки болят

    @klasdtigra@klasdtigra Жыл бұрын
  • Что такое теоретическая компрессоциация??

    @Xamz_pok@Xamz_pok Жыл бұрын
  • 12 часов о плюсах ждем

    @MartinXProject@MartinXProject Жыл бұрын
  • просто прогайте на go и не парьтесь

    @ghettoar2529@ghettoar2529 Жыл бұрын
  • Грустно, что примеры на питоне не соответствуют пеп8

    @davisdmitry@davisdmitry Жыл бұрын
    • Я то за если напишешь какой-то гайд лайн. Я на питоне не пишу в принципе, но думаю если бы писал, то делал бы красиво все.

      @wndtn@wndtn Жыл бұрын
  • Children Computer Science (CCS ❤) просто поддержу кометном вместо лайка) всегда приятно 10 минут посмотреть))

    @kamsikamsa@kamsikamsa Жыл бұрын
  • python: _a - private, __a - protected. в первом случае не желательно использовать, а в последнем прям нельзя(хотя можно)))))

    @user-rp9ki4nv5p@user-rp9ki4nv5p Жыл бұрын
    • наоборот _a protected, __a private

      @Lelouch-@Lelouch-7 ай бұрын
  • Сначало виде по плюсам, становимся в очередь

    @user-to8oq5ro4m@user-to8oq5ro4m Жыл бұрын
  • В JS именование констант с большой буквы отнюдь необязательно, даже наоборот я не видел, чтобы так кто-то делал, за исключением чрезвычайно редких моментов

    @vadimkiryanov4933@vadimkiryanov4933 Жыл бұрын
    • В англоязычных обучалках типа curriculum на freecodecamp делают упор что константы следовало бы писать большими буквами.

      @Captal_de_Bush@Captal_de_Bush Жыл бұрын
    • Константы - это более широкое понятие. Есть просто const - в том числе и вполне изменяемые сложные объекты - они по сути не настоящие "константы", только формально. Есть enum (хотя типа нет, но enum есть), - там тоже никто большими не пишет. Но вот глобальные строки или нумерик - пишут. В частности в тех же .env файликах я никогда и не видел как-то по-другому записанных констант...

      @alexperemey6046@alexperemey6046 Жыл бұрын
  • А вообще лучше прочитайте «чистый код» Роберта Мартина

    @user-pu1pn7pi4x@user-pu1pn7pi4x Жыл бұрын
  • Цитата: Java - язык в котором есть реально интерфейсы… Ну common) Java произошел от C++ взяв лучшее) В том числе и интерфейсы ;-)

    @CybBrain@CybBrain Жыл бұрын
  • Них..я не понятно, но Очень интересно.

    @mrhironAB@mrhironAB Жыл бұрын
  • Просто лучший...

    @Zloy4izh@Zloy4izh Жыл бұрын
  • неожиданно большой актив

    @user-nm8st2sp6h@user-nm8st2sp6h Жыл бұрын
  • крутой видос реально, но, блин, можно говорить чутка помедленнее)

    @user-ip3cy7kl1r@user-ip3cy7kl1r Жыл бұрын
  • Привет, сделай крутой видос о с++🎉🎉🎉

    @IBmusic_vector@IBmusic_vector Жыл бұрын
    • Крутой )

      @wndtn@wndtn Жыл бұрын
KZhead