Признаки слабого программиста
Вставка
- Опубліковано 24 вер 2019
- Практикуй английский с иностранцами в Cambly: bit.ly/2ll3im4
А в этом видео мы разберем основные ошибки и проблемы плохих программистов.
Видео о инкапсуляции: • ТВОЯ ГЛАВНАЯ ОШИБКА В ООП
Доп. ссылки:
● Insta: / _extremecode
● VK: extremecodetv
● Telegram Chat: t.me/extremecode (или в поиске @extremecode) - Наука та технологія
Братан, хорош, давай подпишись на наш Telegram канал, мы там байки и кулстори травим
🖤 t.me/extremecode
я кочу собес проходил и мне не интересно даже если кому то не нравится мой ответ. Компании все разные и они остро реагируют, на то что инкапсуляция это сокрытие реализации и говорит что нет, то видимо тут нужна Л - логика. И про санные тряпки менять блевать тянет.
На счет Л(логики) - есть такая вещь как сложные понятия и более простые, вот сокрытие данных это более простое понятие, которое входит в понятие инкапсуляция. Просто смотря как ты в общем раскроешь эту тему важно если скачать что это только сокрытие данных это не правильно. А само по себе это определение верное если все правильно дополнить
Автор видео тот ещё пирожок.
Патерн - патерн поведения
Инкапсуляция == сокрытие ))
Видео не смотрел, но могу уверенно сказать, что признак сильного программиста заключается в понимании инкапсуляции, то есть сокрытия
АХАХХАХАХАХАХ
Согласен,это одно и тоже :)
@@levleynov3663 Все так, братец xd🥹
Тоже не смотрел, зашел чисто убедиться, что инкапсуляция это сокрытие, а тут такой полезный коммент
ахахахаха
Однажды на моей первой работе, зашёл в кабинет шеф и спросил есть ли тут сильные программисты, я и ещё два человека подумали что может это звоночек на повышение и сказали что мы сильные программисты, весь последующий день мы с шестого этажа на нулевой а от туда в буханки таскали ленточные библиотеки, после этого я всем говорю что я слабый программист
😱😂👍 Я этот прикол знаю. Пришлось как-то везти монитор... на кресле с колесиками.
Ждём "ООП для недоразвитых"
для чайников что то надо показывать максимально просто но не проще )))
Стесняюсь, спросить. А вы недоразвитый, что так этого ждете?
@@homo-ergaster я да я
@@paveldumavin5068 Для прожённых самоваров*
Оно и так для недоразвитых)
Если ты не знаешь паттерн PIDOR ты не программист
Ты допустил пару ошибок в слове SOLID
@@idizor309
А вот щас обидно было, жду чтоб остасал завтра прям на столе
Chixx это ты?
Я овладел.
ухты что то новенькое узнал Надо затащить на собес
Месяц назад пришел студент устраиваться и сказал, что инкапсуляция это когда данные и методы содержаться в одном компоненте, и объяснил почему это не сокрытие. Я чуть не расплакался=) На работу приняли.
Я так же объяснял
На работу не взяли =)
@@smaramna Надо было объяснить что методы СОДЕРЖАТСЯ, а не "содержатЬся". Тогда может и взяли бы. Но это не точно.
@@billymon11
Это было общение с рекрутёром и технарём не в переписке, а в гугл мите, то есть со звуком
Ну и да, грамотно писать текст я тоже умею, иногда не без помощи словаря или даже гугла, но к вопросу трудоустройства это отношения практически не имеет
Точнее, если ты пишешь безграмотно - больше вероятность получить отказ или "мы вам перезвоним" (что в принципе одно и то же)
Но если грамотно - то вероятность получить приглашение, не увеличивается
@@smaramna
Согласен. Поэтому и добавил "Но это не точно" :)
@@billymon11 душноватый ты школяр
инкапсуляция - это сокрытие)
блин, жир из монитора потек!
бан
Инкапсюляция - это РАЗДЕЛЕНИЕ интерфейса от реализации.
есть сокеты, я "кря" как они реализованы(никто в душе не "кря"), но с их интерфейом я могу работать и клипать, например, клиент-серверные аппликухи.
@@me_000_xXx ого ты что программист
Бан.
"Первое, о чем мы должны беспокоиться - чтобы ваши коллеги и вы экономили время..."
Вот и получаем игры, которые вынуждают менять видеокарты и процессоры каждые 4 года...
Ну как посмотреть …
Лет 15-20 новый мощный компьютер через год становился ведром для новых игр , потому что сами программы быстро развивались , и компьютеры тоже .
Но при этом , чтобы на старых компьютерах хоть-как то можно было играть , разработчики выжимали что могли .
>Не беспокоимся об экономии времени
>Выпускаем идеально оптимизированную игру раз в 15 лет
>"Ебоные погромисты погромируйте игры быстрее сука"
а сейчас делают браузеры вместо программ, обленились нахуй и жрет оперативку
Ну время шло и закон Мура лососнул тунца в итоге, теперь тренд на оптимизацию появился, т.к. графические процессоры развиваются медленее центральных и тот же ксеон на 1155 сокете так же хорошо работает с видяхами до 1660й включительно, а уж на 2011 сокете и вовсе по 3090.
Другое дело, что люди берут домой ради энергоэффективности пользовательские процы за оверпрайс при тех же хар-ках что и серверные из недавнего времени, что успели значительно подешеветь.
Так что от оптимизации никуда не деться, и говнокодеры в двойном плюсе: сначала тяпляп в продакшн, а потом оптимизэйшн в продакшене за новые бабки. И все счастливы.
@@rightpowered не открою секрет, наверно, но кодеры за оптимизацию зп получают редко и далеко не всегда по вине собственной лени.
Почти у любого профи оптимизация идёт как отдельная задача, но бизнес, как правило, не согласует работу по ней - не выгодно.
Есть один тонкий момент, о котором ты не упомянул. Есть еще особый вид "программистов", которые только что познали силу и мощь паттернов и начинают хуярить эти паттерны, там где нужно и не нужно и потом получается тот самый "Overengeneered garbage code". Лишь хочу добавить, что паттерны тоже нужно применять с умом и понимать где они действительно нужны и главное какие из них.
Справедливости ради вынужден сказать, что одна хорошая мысль в видео есть: непонимание ООП ведет к непониманию паттернов. Уверен многие кто в свое время заморочился изучением ООП открывал книжку про паттерны и такой "О, да я всегда так делал"
паттерны нахуй не нужны, если кодить умеешь, то умеешь, не умеешь - книжка с паттернами не поможет
@@Alekseev95 Внатуре. Код есть код! А всякие там понапридуманные абстрактные парадигмы-шмарадигмы - второстепенно.
@@Alekseev95 чо? Тоесть ты когда с коллегами общаешься и тебе предлагаю реализовать абстрактную фабрику, ты такой: кококо нипонимаю на маслятском?
Похоже на девиз современного геймдева: "Ваше время стоит диких бабок - нахер оптимизацию!"
"нахер античиты!!!"
И ирония в том, что если программист будет тратить время на оптимизацию всего подряд, то в итоге у него получится забагованное недоделанное глючное говно. Потому что читаемость на нуле, времени потрачено уйма, и на доработку того, что _действительно_ нужно дорабатывать, времени уже не осталось.
Кстати да, я тоже это заметил. Дожились, ебать, что на $2000 ПК еле-еле выдает 100 FPS на УГ4 играх.
@@luck3949Рефакторинг: ну да, ну да, пошел я нахер...
@@luck3949 Каким хреном читаемость касается оптимизации использования ресурсов? Я так понимаю, тест-кейсами код не покрывается, особенно когда мы пытаемся добиться максимальный выхлоп с кода? Если разрабатывать , чтобы вывалить в релиз поскорее, а потом угандошиваться годами с допиливанием до работоспособного состояния, то как раз и получается гуано высшей пробы. Программист не работает где-то в вакууме, и его обязан курироваться прожект-менеджером и ебаться в мозг тестировщиком, ну или все 3 эпостасии должны в нем одновременно уживаться, ибо в противном случае результат проекта - кал.
Один из немногих каналов, где хочется поставить колокольчик!
Спасибо за интересную подачу!
Видос - балабольство - признак слабого программиста.
Спасибо, за подробный разбор! Теперь никогда не забуду, что инкапсуляция - это сокрытие!
1) 3:36
2) 5:37
3) 6:48
4) 9:47
Дишмон 4/4 , кто хуже?
@@oliwwateatwonan1321 чего блять, про что несет хуй пойми
@@oliwwateatwonan1321
Мне кажется 3
Спасибо за мотивацию, ещё бы проектов найти больше для практики, было бы вообще замечательно .)
Отличное видео! Для начинающего - особо нужная инфа!! Спасибко!!!
Толкового ничего не сказал, видео из жанра - "как заезжать в хату на зоне".
как и все другие его видео)))
Просто ты не целевая аудитория этого видоса/канала.
Дальше сингтона и фабрики так и не ушел.
Заходишь на собеседование в IT контору, а тебе hr полотенце кидает под ноги ))))))))))
Cамая точная аналогия для собесов))
Собеседование - это X-фактор, где умение или не умение петь мало влияют на мнение жюри (решение принято в первые 15 минут общения). Тебя по unit-тестированию "гоняют", а по факту в проекте лютый легаси окажется и никаких тестов :)
Братан, хорош, давай, давай, вперёд! Контент в кайф, можно ещё? Вообще красавчик! Можно вот этого вот почаще?
Дада, в принципе, все правда, а вот за аргумент против синглтона в качестве показывания навыков спасибо) 🙃👍🏽
да лажа. У меня ~15 лет опыта на шарпе, я паттерны знаю как свои 5 пальцев, но на собеседовании на вопрос о паттернах всегда начинаю с синглтона и смотрю на реакцию.
lnvaIidUsername И какая бывает реакция ?
Singleton и factory - два основных паттерна в ООП. Ну не при flyby же мне рассказывать (это экзотика и я не хочу смутить интервьюеров своим вычурным примером).
Спасибо, теперь я еще больше считаю себя куском говна
+1
Обрайщайся )
Чет аффтар, похоже, сам не шибко крутой программист. Воды как в моем дипломе (а эта штуке напоила пол-Африки), зато категоричности и пафоса - хоть отбавляй. Особенно позабавило про синглтон - мол, если с него начинают, то слабый программист, который, скорее всего, ничего не знает. Надо, видимо, начинать сразу с пула абстрактных фабрик, производящих какие-нибудь врапперы, чтобы собеседующий понял, что перед ним бог ООП
Да
Да вы больны, сударь!)))
Какой же у вас божественный канал! Боже храни youtube рекомендации!
Ну такое. Спорные моменты, особенно на счет спросить о паттернах и узнать знает ли человек ООП. Рекомендуемые шаблоны решения часто возникающих задач это одно, а знание как реализуется ООП в тех или иных языках это другое. Сам по себе ООП не является овернжинирингом, а наоборот в виду своей философии позволяет в более легкой форме реализовать бизнес задачи.
Но, в целом, спасибо за видос) Лайк за труды!
и что это было? Аффтор просто потыкал в нас ссаными тряпками. Я и сам себя могу потыкать ссаной тряпкой, а вот привести пример, например, почему ооп ведет к оверинженирингу и какие паттерны используются 24/7 в большинстве проектов нет.
Наследование: может быть настолько глубокое, что тебе надо полдня потратить, чтобы понять, как работает простейший объект и наследование ненужных конечному объекту данных.
Инкапсуляция: private когда можно public, магические методы, не всегда нужные геттеры-сеттеры...
Паттерны: смотри видео на канале "Паттер PIDOR".
@@KaraMaslyatam знакомый рассказывал. Попал на проэкт из времён 1.4 джавы...
Под 40 наследований... 3 месяца только вникали что с этим делать
@@ex-format в данной ситуации подходит универсальный вывод - всё хорошо в меру)
>и какие паттерны используются 24/7 в большинстве проектов
Все паттерны, которые ведут к уходу от ООП. Например, dependency injection.
@@LedoCool1 а инжектируешь то ты что ? :) какую сущность ?
Признак слабого программиста - говорить про ООП, но не говорить про другие подходы
Спасибо вам, ребятки с ExtremeCode! Очень полезно для новичка по С#:))
Видос на вес золота, дай Бог тебе здоровья, хлопiц.
Странно что у всех на уме лишь паттерны проектирования, когда как принципы SOLID гораздо важнее и влияют на конечный продукт гораздо больше чем паттерны проектирования.
Поддерживаю. Особенно когда паттерны добавляют потому, что знают их, жертвуя этими принципами.
Тоже не понимаю этой любви к заучиванию паттернов. Все эти паттерны или слишком частные или слишком простые. В итоге частные просто нафиг не нужны, встретишь их использование дай бог раз в жизни, а простые ... ну это как таблица умножения, ускоряют работу конечно, но в целом можно и самому до того же додуматься.
@@zkksch паттерны нужны не только для того чтобы их использовать самому, а чтобы было легче объяснять свою идею другим людям. Вместо того чтобы описывать пол часа алгоритм, ты можешь просто сказать название паттерна и тебя должны понять. (Ну эт в теории.....)
многие из старых паттернов уже признаны антипаттернами, solid да, норм тема
солид спорная шляпа очень спорная. это отрыжка рынка в IT по сути.
Такой надменный тон у автора, сразу видно - молодой =)
Ахаха... поддерживаю! Все рассмотренные вопросы нацелены на молодых (потому что опыта у них нет и непонятно что с них еще спросить можно)...
Поработал бы автор на аутсорсе когда с десяток легаси проектов с таким говнокодом что на голову не налазит гораздо проще к качеству кода стал бы относиться.
@@Petro_Bandera я думаю автор потому и не работает на аутсорсе с легаси проектами, так как к качеству кода относится адекватно
@@TopToro , слабак чтоль? ))
@@pacckat немужык штоль?
Братан хорош! Давай контент! В кайф! Можно ещё?! Вообще красавчик!!
Спасибо тебе за видосы. Я надеюсь твой канал проживёт вечно ну и духом не падай. Буду ждать новых видосов по ООП и C# ну и python если конечно знаешь его)
Блять, уже не первое видео смотрю этого парня. Пишу комменты чуть реже чем никогда. Но тут надо сука... Я ржу каждый раз как конь, камеди клаб просто слезно отсасывает... Красава! И боевой дух поднимается и хочется учить еще больше и дольше все. Спасибо за канал. Пойду дальше набираться мудрости под дикий лошадиный ржачь. Как же это ахуенно.
Спасибо чувак! Но признаюсь. Я байтики и даже битики гоняю. и знаю такую хрень как BOOL. А еще я обожаю калькуляторы на смартфоне весом в 1ГБ это признак вундервафельного програмиста. В пиратской бухте Embedded и IOT неумение делать так " HREN &= ((1
эмбеддер детектед )
МИСТЕР! Имеешь что то против ембеддед?
@@_-BIMBO-_ имею только за )
Как-то переживаю за HREN. Ты лучше его как константу объяви.
Возможно вы имели ввиду поразрядное ИЛИ, а не логическое?
ООП в массы! Ждемс!
Const - это директива, которая позволяет создавать условия для оптимизирующего алгоритма турбофан, который позволяет увеличить производительность в сотни раз, если он знает что то или иное значение будет неизменным, но есть одно но, эти оптимизации работают не дальше одной вложенности области видимости.
Поэтому, тут не всё так просто как ты рассказал... И пора воспользоваться своей же фразой, не стыдно чего-то не знать. Я смотрел много твоих видосов и ты красава, много шаришь и мне нравится твой контент поэтому продолжай :)
А я за 15 лет программирования (C#/Go) понял что сила не в GoF, SOLID, GRASP и т.д., а в простой вещи, называемой принцип KISS.
Кстати мало кто знает что KISS не айтишный принцип, а пришел в IT из американской военной промышленности 70-х годов, там были те же проблемы проектирования, что сейчас у нас в IT.
Суть моего спитча: любой простой гавнокод можно срефакторить до норм кода, а вот 10 этажную архитектуру с использованными +100500 паттернами, которая просто выводит на экран список пользователей, срефакторить очень тяжело и иногда просто невозможно на реально работающей системе => поддержка превращается в запуск шатла на марс.
Спасибо за понимание, чоо паттерны - это стандартные способы решения стандартных задач в ООП, а не создание архитектуры проблем, решаемых архитектурой паттернов там, где можно написать несколько десятков строк просто кода без затей.
Охренеть! 2 наносекунды против каких-то там жалких бабок каких-то программистов и программисты выигрывают...
2 наносекунды, даже по минимуму, даже если монитор выключен, даже если всё выключено, только процессор работал, какой ни будь i5 9400, это:
0.000000002 * 65 джоулей энергии просто в тепло (тепловыденение процессора),
даже для миллиона пользователей всего 100 раз в день это уже за 1 день:
130 джоулей.
А если это происходит у миллиарда пользователей тысячу раз в день, скажем, код где-то в популярном браузере, то:
130000 джоулей энергии.
130 мегаджоулей!
130 мегаджоулей в тепло просто потому, что "их время стоит дохрена бабок".
Да не стоит ваше время дохрена бабок, если вы сливаете почти 4 литра бензина каждый день в помойку просто потому что вам так проще понять чей то там код.
И ведь это реально 2 наносекунды и всего лишь миллиард пользователей и всего 1000 раз в день, а тот или иной участок кода может выполняться далеко не 1000 раз в день, а миллионы раз в день у многих миллиардов, например, декомпрессия jpeg или разборка HTTP заголовка или сраный a+b в каком ни будь интерпретаторе JS.
благодарю за видос!
годное видео, и отдохнул, и обучился.
за 2 года прогрессировал: научился китайские порно мультики рисовать и забыл код
Из-за таких гениев мне самому хочется стать блогером по программированию
Ой ей, последнее про оптимизацию всего подряд - это про меня. Теперь расслаблюсь)
пол видео как обычно бомбежка на сокрытие, то есть инкапсуляцию 👍
"ООП - целостный набор парадигм"
Чо?
Почему тогда это ООП?
Объектно ориентированное программирование...
Где здесь парадигмы?
Знание паттернов != Знание ООП.
Это лишь топовая фича,которую стоило бы знать.
объектно-ориентированное парадиграммирование :D
Вероятно, автор имел в виду, что ООП является парадигмой. Либо автор просто не знает, что такое парадигма в целом.
Я из этого видео запомнил что инкапсуляция это не сокрытие))
Улыбнуло)) Спасибо! Коротко и понятно, а главное по сути
"Не каждая система требует оптимизации", я у Sorax'а услышал в под касте в первые*. Спасибо что прямо все разложил - некогда месяцами* размышлять о таком - делать надо :)
В играх бывали проблемы, когда со 100 очками скрытности и шмотом на +28 скрытности перс начинал шуметь со страшной силой, так как скрытность была int8 и интерпретировалась как int8(128)=-128. Но этот косяк легко исправляется заменой на тип uint8.
В этом примере расходовать по любому бздёху int64 для более быстрого говнокода ведет к требованиям 100 Gb на диске, 32 Gb оперативки. Я понимаю, что менеджеру пох на пользователей, но это - плохая практика.
Вижу новый видос ExtremeCode - ставлю лайк
Ясно аффтору пять лет
отличный советы)
Как бы то ни было, константы все же помогают компилятору или интерпретатору оптимизировать, "зная" точно, что параметр или переменная всегда остается неизменной. Например компилятор может не выделять место в памяти под переменную а добавить в свою "символьную таблицу"(или как ее зовут на русском) и сразу подставить значения (в случае если не запрашивать в коде адрес переменной например, что форсит компилятор выделять память). Но конечно это не главный смысл const.
Ну и забыл уточнить, некоторые делают копию, чтоб передать в функцию константный параметр без указателя, полагаясь на оптимизации компилятора, не понимая, что копия может обойтись дороже, иногда даже на очень много, чем любые автоматические оптимизации.
Нихуя не понял, но ооочень интересно. Вернусь пожалуй когда разберусь в HTML.
@КУБАНЕНКО КАВКАЗОИДОВИЧ ХУЙЛОСТАНЦЕВВАТНОПЕРДАКОВИЧ а кто нужен-то? И как ваше высказывание соотносится с вакансиями на НН?
В сообществе C++ или Java принято рассматривать инкапсуляцию без сокрытия как неполноценную.
Спасибо за полезное видео! ЛАЙК
Вопрос: Можете посоветовать видео уроки по обручении PYTHON
Уже обручились?
Использую инкапсуляцию для сокрытия. Чем меньше в твоей библиотеке открытых методов, тем проще её изменять.
Оптимизировать нужно всегда, само понятие гласит о том чтобы искать оптимальный баланс, и если ты изначально наговнокодил так что все работает очень долго, ты потратишь еще столько же своего дорожайшего времени чтобы отрефакторить до состояния когда это будет работать достаточно эффективно. Опять же, слово refactoring можно дословно перевести как перестройка, а это быстро не бывает.
Вам бы поработать на одном серьёзном проекте лет 5 с кодом, который постоянно нужно расширять, но его трудно читать и понимать, а будучи оптимизированным под конкретную задачу его ещё и сложнее расширять... И желательно, что-бы ваш коллектив состоял минимум из 5 человек. Но если вам такое под силу, то у вас очень хорошая память и идеально поставленный процесс передачи данных и всё вечно на слуху. И скорее всего уже в состоянии возгорающегося уголька. Без обид, но автор прав.
Тоже в первые пол года своей карьеры думал что нужен "оптимальный баланс".
Но сейчас, как тот кто работает в отрасли 10 лет могу сказать, что оптимизировать не нужно пока не появится необходимость, так как твоя оптимизация (даже в плане поиска "оптимального баланса") в итоге окажется нахрен никому не нужна в бОльшем проценте случаев. Например, ты думаешь такой: "Вот этот участок должен работать максимально быстро, так как это популярная фича и все ей пользуются". В итоге этой фичей раз в пол года пользуется баба Нюра, во время полного затемения, когда луна в Марсе. Или второй пример: ты думаешь что в метод будут приходить огромные массивы данных и оптимизируешь его, в итоге туда приходят массивы по 1-5 объектов. И таких примеров ещё можно навалить кучу. Получается что ты бессмысленно убил на эту оптимизацию кучу времени, ещё и наговнял в коде, так как обычно оптимизированный код очень хреновый с точки зрения чтения, исключения лишь подтверждают правило.
Лучше писать код максимально просто и прямолинейно, принцип даже такой есть KISS, вот его надо в первую очередь использовать . А оптимизировать стоит уже готовый код, когда 100% известно что он используется постоянно, и когда оптимизация этого участка принесёт какую-то ощутимую экономическую пользу.
"Харэ байтоёбить, мне надо, чтоб твой калькулятор весил тридцатку и жрал двести мегов оперативы"
Уух. Вы делаете мир лучше
Сейчас только начал учить HTML и CSS. Ни**го не понял, но очень интересно.
Да я байто-еб но я программирую промышленные контроллеры, с размером памяти 8 Мбайт)))
Я программировал компьютер с 16 килобайтами озу. А в 128 килобайтах я сделал игру с хорошей графикой и музыкой.
@@pejtepivo, МК-52 105 шагов программы... Первый курс института, все счётные работы на нём. После него и РК86 выглядел просто шикарно.
Помню офигительные демки размером 4 килобайта. А сегодня коллега искал в старом Ruby функцию обрезания символов в начале строки, не нашёл. Но нашёл функцию обрезания в конце. Chomp или как-то так. (я не рубист, если что, давно когда-то писал немного). И ещё нашел функцию разворачивания строки. Так он додумался развернуть строку и обрезать в конце, а потом развернуть назад. Вот серьёзно, не анекдот, реальный случай! О том, какие вычислительные операции за этим стоят, он, конечно, не думал. говорит, а что , у нас компы быстрые (ему недавно подогнали макбук этого года). Пипец!
o_O шикарно живёте. Не знаю размер какой памяти, но, видимо, оперативной. Я прогал на контроллерах с 32, 64 килобайтами памяти. Да, байто-дрочерство там обязательно, но в пределах разумного. Я в своё время даже в циклах писал uint8_t, потому что знал, что массив размером поменьше будет. Но в реальности это нафиг не нужно, тем более когда меняешь программу, то такие вещи отслеживать очень сложно.
@@Dron008 Если не ошибаюсь, то строка в Ruby - объект. Тогда среди его свойств может быть что-то вроде "порядка символов", 0 - обычный, 1 - перевёрнутый. И тогда получается, что совершается не так уж и много лишних операций
thumb down:
reason :
git push --force
😆
Working one year as SDEt for one small/medium s/w house in us. Probably 90% of a staff would fail passing this test. Even an internal wiki onbord docs suggest to use SourceTree as a git client. Not sure even if anyone aware that git has CLI. So if you happen to be our candidate. No worries 👍 you would pass
Спасибо за видос,сразу попал в пару моих проблем или проблем моих друзей,будем меняться)
10:40 пора вьіходить из криокамерьі, хороший довод 5 лет назад. Сейчас можно узнать у azure сколько в деньгах стоит указанньій кусок кода на исполнении. Вцелом - очень хороший обзор.
Неплохо поплавал, столько воды, ууух!
Мне вот стало интересно, а как по-твоему переводится инкапсуляция, гений?
объединение свойств и методов в один объект. а сокрытие - это либо использование полей и методов с директивой private либо замыканий в JavaScript. но вообще если надо что-то скрыть без инкапсуляции никак
@@agentsmith9708 это узкий пример из конкретных ЯП. Инкапсуляция как реализация - это объединение свойств и методов. А инкапсуляция как цель - это сокрытие в смысле изоляции. В разных ЯП инкапсуляция может совмещать и сокрытие, и совмещение, или же что-то одно.
константа оптимизирует мозг программиста разве что)
Відео супер, відкрило очі. Дякую!
А когда мы уже увидем CODE (код) на этом данном канале?
Я говорил на собеседованиях кучу раз что это сокрытие. И все было ок, кидали офферы
они просто не знают правду)
После этого видео все изменится)
бляц
золотые слова!
с годами всё больше убеждаюсь что всё вышеизложенное правда, прошёл все косяки новичка на себе
Спасибо, вообще с гитхабом сложно, я все проекты не довожу до конца, и тупо начинаю новые... Сейчас мой гит это просто выставка уродов. Планирую создать новый акк и туда закинуть доделанные проекты
Пафаса дофига, а смысла ноль)
вот такие обычно доходят до высоких должностей, хотя бестолочи в технической части. а "байтоёбы" так и дальше красноглазят и байтоёбят и ездят на общественном транспорте
полиморфизм это использование указателя на указатель функции, а не прямого указателя функции (то есть даёт возможность поменять указатель и тем самым поменять имплементацию в будущем, но фиксирует публичный контракт во время написания кода)
указатель на указатель это Action,Func в C#
interface в C# это именованный массив Action/Func в C#
ООП живёт ещё в определенных нишах, а т.к. 90% программирования сейчас это backend HTTP service, которые по сути stateless, то там ООП не очень заходит, потому что суть ООП об изменяемом состоянии, которого в веб сервисах просто нет (REST по факту это набор функций с передаваемым состоянием в аргументах). В десктоп приложениях и там играх всяких на Unity ООП вполне себе подходит. Поэтому не очень согласен с тем что ООП очень жив, на подавляющем большинстве современного бэка ООП скорее вредно, чем полезно.
Я который только скачал visual studio и начал "программировать" и зашедший сюда: Неее поняяял, вы на каком языке разговарываете, сэр ?
автор, а где твой гитхаб?
Всрал 11 минут...
Инкапсуляция - способность объекта вмещать данные и манипулировать с ними скрывая при это детали реализации. Сокрытие одно из свойство инкапсуляции которое возможно применять отдельно от нее. Или я не понял в чем соль конфликта или не правильно понимаю инкапсуляцию. Помогите разобраться)
Контент огонь.
Инкапсуляция это сокрытие, я вам это от всей души говорю, это сокрытие, просто 100%.
Я в этом уверен и меня нельзя переубедить.
бан
Тут даже на википедии вопрос рассмотрен ru.m.wikipedia.org/wiki/%D0%98%D0%BD%D0%BA%D0%B0%D0%BF%D1%81%D1%83%D0%BB%D1%8F%D1%86%D0%B8%D1%8F_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)
Здесь путаете цель и средство. Средство - сокрытие (от изменения посторонними операциями), цель - защита данных и кода от ошибок в посторонних модулях.
@@vfnikster взрыв пукана
инкапсуляция делается сокрытием
*горит канал
Ну да, раскажите про байтоебство в геймдеве)))
Или в программировании микроконтроллеров, особенно Attiny и подобных.
@@user-vb6kh3ep7p сударь, да вы как разраб слабы. Видеоролик то не о контроллерах и не о том как экономить память. Он об ошибках начинающих разработчиков в большом мире энтерпрайза
8:46 - 9:04 - не совсем верное высказывание: const объекты в js мутабельны (их можно изменять), но переопределять их нельзя
За цитату из Мартина Фаулера по поводу противоречия оптимизации и рефакторинга респект.
ООП - "Вам нужен был банан, но вы получили гориллу, держащую банан, и целые джунгли."
А вообще видео очень слабое, паттерны на собеседовании спрашивают редко, про всякие байты не байты, это вообще лишняя информация, которой не стоит забивать голову в начале. В общем автору еще расти и расти
Всех знакомых спрашивали (С++, С#), но да, конечно от отрасли зависит.
@@iosifguzeev4362 ну на плюсах не удивлён такому)
@@LordoftheLamerS на каждом собесе по пыхе меня спрашивают паттерны. Наверное про них не спрашивают только html программистов
@@mars8430 Яндекс, Касперский, Mail.ru, Ingram Micro, МегаФон на вакансию веб-разработчика меня не спрашивали об этом, обычно спрашивали только там где на мой взгляд достаточно слабые команды как ни странно). Другой вопрос почему так? Я полагаю просто потому что опытные разрабы/тимлиды реально понимают, что если ты используешь паттерны проектирования, то либо ты пилишь свою библиотеку, либо делаешь что-то неоправданно сложным (там где можно сделать проще), как правило все эти паттерны проектирования уже вшиты во внутрянки всяких фреймворков/библиотек и нам остается просто этим пользоваться.
1:40 эта реклама настолько внезапная, что мне понадобилось 10 секунд, чтобы сообразить.
Вы нарезку со стрима сделали?)
Мой первый колокольчик, пили еще, пожалуйста
10:54
Судя по Киберпанку, оптимизировать не нужно никогда, ибо всегда есть железо помощнее.
"Инкапсуляция это сокрытие" ExtremeCode
Первый канал, которому действительно не впадлу поставить колокольчик
Тыкнул паузу на "у чела 2 репозитория с разницей в полтора года и там одно и то же", ммм а давай прикинем что челик рвется к тебе на джуна и прикинь, он и шарит не выше джуна. Что у него должно быть в соседних репах, в одной хеловорлд, во второй колайдер?
Если он пытается устроиться джуном, значит у него опыта скорей всего нет, либо самоучка, либо студик. В любом случае ему толком опыта неоткуда набраться и прогресс если есть, то только усилием самого персонажа, что автоматом накидывает ему плюсиков и выделяет из массы, то бишь он качал скилуху не получая за это денег, respect+ таким пацанам.
учите ооп, не байтоебте, учите английский на камблу, забудьте про синглтон - учите мултитон
Понятие инкапсуляции из книги по Java Шилдта. Если это не сокрытие то я хз как это назвать. возможно просто автор этого ролика сам не очень хороший программист
Механизм, связывающий код и данные, которыми он манипулирует, защищая оба
эти компонента от внешнего вмешательства и злоупотреблений, называется инкап
суляцией. Инкапсуляцию можно считать защитной оболочкой, которая предохраня
ет код и данные от произвольного доступа со стороны другого кода, находящегося
снаружи оболочки. Доступ к коду и данным, находящимся внутри оболочки, строго
контролируется тщательно определенным интерфейсом.
я начинающий программист и поэтому половину того что ты сказал я не понял но было интересно
Супер!
10:55 и вправду звучит как цитата говнокодера)))
"Premature optimization is the root of all evil" -- DonaldKnuth
Такой чувство что мне про зону росказуют
Инкапсуляция-это точно сокрытие, слова синонимы просто