Паттерн Decorator для репозитория кэширования и инвалидации кэша.
Одна из практически полезных статей про паттерны и главный вопрос программирования.
Кейс крайне полезный. Всегда важно кэшировать и данные для уменьшение нагрузки и ускорение апки.
Так еще это и проектировать с красотой.
Одна из практически полезных статей про паттерны и главный вопрос программирования.
Кейс крайне полезный. Всегда важно кэшировать и данные для уменьшение нагрузки и ускорение апки.
Так еще это и проектировать с красотой.
👍9🍌2
Дефолтное значение для словарей
Мало кто знает, но очень удобная вещь для решение алгосов на литкоде.
Спасет тысячу нервов и один горящий зад
Мало кто знает, но очень удобная вещь для решение алгосов на литкоде.
Спасет тысячу нервов и один горящий зад
👍10🍌3🦄2🐳1
На ютубе критично мало интересных форматов c задачами. Либо это индус и его пересказ боливудских фильмов. Либо неуверенные джуны, с пересказом самого заезженного решения. В таком формате теряется могучая сила видео. Тупой пересказ текста сложно принимается мозгом.
Есть куча крючков с музыкальными вставками, емкой речью и всеми другими плюшками, которые дают хороший монтаж, приятный автор и режиссура. Видео перестает быть плоским и открывает дополнительные плоскости для удержания внимания.
Вот топ видос, где все без воды и облегченно решаем вместе алгосики. Включаем в режиме "картинка в картинка" и алгоритмы становятся легким подкастом на фоне. Ведь нужно все упрощать.
Если этот пост наберет десять тысяч лайков, то устроим решение задач на раздевание
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Leetcode Паттерны Влад Тен – Алгоритмы Buy Sell Stock + Cyclic Sort
Полезные статьи и видео по разным направлениям разработки от инженеров Авито можно найти на сайте AvitoTech: https://bit.ly/3mIUOSx
Курс про Паттерны и практики написания кода для начинающих и middle-разработчиков от команды AvitoTech: https://bit.ly/3jCkyle…
Курс про Паттерны и практики написания кода для начинающих и middle-разработчиков от команды AvitoTech: https://bit.ly/3jCkyle…
👍12.8K🍌4⚡1
Ладно
Предыдущий пост кто-то хакнул и захотел совместить приятное с полезным.
Если серьезно, то я пару раз думал создать что-то интересное. Например, мы созваниваемся раз в 2 недели на алгобаттл. Берём самые рандомные изи задачи и пару экспертов. Устраиваем батл между ними и публика оценивает. Проигравшийпоказывает жопу выполняет желание публики.
Ну или предлагайте свой формат. Замутим тестовые созвоны
Предыдущий пост кто-то хакнул и захотел совместить приятное с полезным.
Если серьезно, то я пару раз думал создать что-то интересное. Например, мы созваниваемся раз в 2 недели на алгобаттл. Берём самые рандомные изи задачи и пару экспертов. Устраиваем батл между ними и публика оценивает. Проигравший
Ну или предлагайте свой формат. Замутим тестовые созвоны
🦄7🍌4👍1🐳1
Что юзаете для написания layout?
Anonymous Poll
8%
PinLayout
4%
Textture (AsyncDisplayKit)
0%
EasyLayout
52%
SnapKit
2%
EasyPeasy
1%
Stevia
1%
TinyConstraints
9%
Написали свое
45%
Никаких оберток над
🍌4
окей, гугл. а есть в мск не coffee and code, а beer and code в барах?
beer > coffee
beer > coffee
💊16🐳4👍3
ну, короче, ищу желающих быть организаторами beer & code moscow 😬
Please open Telegram to view this post
VIEW IN TELEGRAM
🍾12💊4🫡3
еще думаю в грузию в марте приехать. посоветуйте че там делать вообще кроме киндзмараули пить
Паттерн Decorator
⏺ lvl: mid
Когда вам задают вопрос про Open-Closed принцип, то говорите про паттерн декоратор. Extensions (расширения) в свифте не являются расширением функциональности и никак к принципу SOLID не относятся.
Назначение
Динамически добавляет объекту новые обязанности. Является гибкой альтернативой порождению подклассов с целью расширения функциональности.
Мотивация
Когда нужно возложить дополнительные обязанности на отдельный объект, а не на класс в целом.
Наследование — это первое, что приходит в голову многим программистам, когда нужно расширить какое-то существующее поведение. Но механизм наследования имеет несколько досадных проблем.
- Он статичен. Вы не можете изменить поведение существующего объекта. Для этого вам надо создать новый объект, выбрав другой подкласс.
- Он не разрешает наследовать поведение нескольких классов одновременно. Из-за этого вам приходится создавать множество подклассов-комбинаций для получения совмещённого поведения.
Одним из способов обойти эти проблемы является замена наследования агрегацией, либо композицией. Это когда один объект содержит ссылку на другой и делегирует ему работу, вместо того, чтобы самому наследовать его поведение. Как раз на этом принципе построен паттерн Декоратор.
Когда вам задают вопрос про Open-Closed принцип, то говорите про паттерн декоратор. Extensions (расширения) в свифте не являются расширением функциональности и никак к принципу SOLID не относятся.
Назначение
Динамически добавляет объекту новые обязанности. Является гибкой альтернативой порождению подклассов с целью расширения функциональности.
Мотивация
Когда нужно возложить дополнительные обязанности на отдельный объект, а не на класс в целом.
Наследование — это первое, что приходит в голову многим программистам, когда нужно расширить какое-то существующее поведение. Но механизм наследования имеет несколько досадных проблем.
- Он статичен. Вы не можете изменить поведение существующего объекта. Для этого вам надо создать новый объект, выбрав другой подкласс.
- Он не разрешает наследовать поведение нескольких классов одновременно. Из-за этого вам приходится создавать множество подклассов-комбинаций для получения совмещённого поведения.
Одним из способов обойти эти проблемы является замена наследования агрегацией, либо композицией. Это когда один объект содержит ссылку на другой и делегирует ему работу, вместо того, чтобы самому наследовать его поведение. Как раз на этом принципе построен паттерн Декоратор.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥2💊2
16 техник Фасилитации
Помимо сильной тех экспертизы разрабу необходимо множество доп навыков. Встречи — это всегда утомительно. Проведя пару часов в зуме можно потерять энергию как после восьми часов кодинга.
Чем сложнее и больше компания, тем больше диалогов: согласовать дизайн; контракт; текст; задачу. Уточнить детали соседних сервисов и АПИшек. Супер много раз придется открывать рот, рисовать в миро схемы и писать в мессенджерах.
Кодинг может занимать процентов 30%. Остальное все подготовка требований и фиксации.
💳 Я пару раз уже приходил к фасилитации. Когда в сберздоровье был фичалидом сложной задачи с пин-кодом, в которой требовались больше аналитической и координирующей работы. Знания технических особенностей бэка и мобилок нужно было переформатировать в понятную для всех речь. Был таким медиатором между тех.экспертами и манагерами. Еще тогда столкнулся, как сложно вести диалоги между людьми разных ролей.
🛍 В авито таких активностей стало еще больше. Тут уже требуется экономить время и ресурсы всех участников бесед и коммуникаций. Фасилитация — один из главных инструментов. В авито даже есть внутренний курс за 80к. Когда-нибудь наберусь смелости выделить на него бабки, но а пока только книги и статьи. 😬 💸
Помимо сильной тех экспертизы разрабу необходимо множество доп навыков. Встречи — это всегда утомительно. Проведя пару часов в зуме можно потерять энергию как после восьми часов кодинга.
Чем сложнее и больше компания, тем больше диалогов: согласовать дизайн; контракт; текст; задачу. Уточнить детали соседних сервисов и АПИшек. Супер много раз придется открывать рот, рисовать в миро схемы и писать в мессенджерах.
Кодинг может занимать процентов 30%. Остальное все подготовка требований и фиксации.
Please open Telegram to view this post
VIEW IN TELEGRAM
Indeed Career Guide
16 Facilitation Techniques and Their Benefits
Learn about 16 facilitation techniques your team can use to achieve its desired objectives during meetings or workshops and their relevance as management tools.
👍5💊1
365 дней богу Алгоритмов: Отчет за шестую неделю
Всё, начинаю продавать занятия по алгосам. Шутка. Пока рано.
На этой недели роадмапы вывели на пару медиумов и они оказались не такими сложными, как я ожидал от задач среднего уровня. Поэтому мотивация не упала, а даже поднялась. Плывем дальше.
38. Проверка дубликатов. Изи задача из списков самых частых вопросов.
39. Группировка анаграм. Легкий медиум. Взял словарь и отсортировал по ключу самых частых
40. Инвертирование бинарного дерева. Легко через рекурсию.
41. Самые частые k-элементов. Думаю одна из самых практических медиум.
42. Произведение всех элементов кроме i-того. Медиум с третьей попытки, но вроде неплохо
43. Удаление элемента в массиве. Тут перерешил через свап
44. Дизайн HashSet. Сначала решил тупо через dictionary, а потом посмотрел как нормально сделать надо
#365_дней_богу_алгоритмов
Всё, начинаю продавать занятия по алгосам. Шутка. Пока рано.
На этой недели роадмапы вывели на пару медиумов и они оказались не такими сложными, как я ожидал от задач среднего уровня. Поэтому мотивация не упала, а даже поднялась. Плывем дальше.
38. Проверка дубликатов. Изи задача из списков самых частых вопросов.
39. Группировка анаграм. Легкий медиум. Взял словарь и отсортировал по ключу самых частых
40. Инвертирование бинарного дерева. Легко через рекурсию.
41. Самые частые k-элементов. Думаю одна из самых практических медиум.
42. Произведение всех элементов кроме i-того. Медиум с третьей попытки, но вроде неплохо
43. Удаление элемента в массиве. Тут перерешил через свап
44. Дизайн HashSet. Сначала решил тупо через dictionary, а потом посмотрел как нормально сделать надо
#365_дней_богу_алгоритмов
👍7💊2⚡1
Если бы кто-то сейчас спросил о книге для алгосов, то я бы сначала посоветовал "Грокаем алгосы". А после уже книгу Скиена.
Читается немного сложнее, но после дешифровки знания впитываешь лучше из-за потраченной энергии. А еще там есть ссылки на рекомендованные задачи из литкода и других платформ после каждой темы.
Вообще, есть большое заблуждение, что чем проще инфа, тем лучше она запоминается. С математическими задачами так не работает. Также и с собесами на с решением онли задач из задачников и методичек. Никогда не понимал, как решение рандомных задач из составленного кем-то списка (они всегда дырявые) может оценить навык алгоритмического мышления, которые тренируется тонной литературы и тысячами часами практики.
Ссылка на книгу тут.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🐳3💊3