iOS Makes Me Hate
3.94K subscribers
1.16K photos
167 videos
15 files
1.34K links
Авторский канал про iOS разработку. Путь продуктовых самураев в MAANG.

Самое больше iOS сообщество практиков: https://boosty.to/lionbond/

Автор: @lvbond Senior iOS Yandex, ex-Avito, VK
Download Telegram
Структуры данных: Стэк

Продолжаем работу с базой. Тут все очень просто и даже изи.

Представим стопку книг на столе: можно добавить или убрать книгу только сверху, но нельзя выкинуть из середины или снизу.

В стеке элементы добавляются и удаляются в порядке "последний пришел, первый ушел
This media is not supported in your browser
VIEW IN TELEGRAM
Такую ачивку получит каждый бета-тестер.

В симулятор иосника уже 80 отправленных заявок

70 установили. 40 в чате. Кучу идей предложили. Еще больше в бэклоге.

Симулятор не ищет дороги для вкатышей. Если ты пришел зарабатывать деньги, то лучше бы пошел в веб. А если бы я искал способ заработать на инфобизнесе, то надел маску клоуна и пошел на ютуб рассказывать мотивирующие истории как зарабатывать бабки.

Но приоритеты другие. В чате спросили: «чем движет создание апки?». Движет идея.

Я верю, что лучший способ улучшаться — наслаждаться процессом, а не гнаться за результатом.

Вот что движет
👍12❤‍🔥2🗿2🆒2🤔1🐳1
DIP vs DI vs IoC

Часто вспоминая DI мы начинаем путаться в аббревиатурах. Попробуем разобраться. Даже в одном из прошлых постов в комментариях перепутали IoC и DI.

Inversion of Control (IoC) — это некий абстрактный принцип, характеристика, набор рекомендаций для написания слабо связанного кода. Суть его в том, что каждый компонент системы должен быть как можно более изолированным от других, не полагаясь в своей работе на детали конкретной реализации других компонентов.

Иначе говоря, уменьшая сцепление между ними.

Dependency Inversion Principle — это принцип, который дает рекомендации о том, какими должны быть зависимости. Например, закрытые протоколами.

Dependency Injection (внедрение зависимостей) — это один из способов реализации принципа Inversion of Control (помимо еще есть Service Locator и Фабричный метод)
👍8💯1
Образованный человек

Сейчас началась учеба. Читаю разные учебники по менеджменту, экономике и культуре. Мне интересно учиться. Интересно наполнять себя знаниями и находить применение знаниям. Приходил к этому, честно говоря, долго. В голове много мыслей. Всеми хочется поделиться, но не знаю как обернуть.

Наткнулся на интересный отрывок из книги "Энциклопедия менеджмента" П. Друкера. И многие слова показались дико пронзительными. Возможно, когда-нибудь, когда станет больше постов про софт скиллы я порефлексирую. А сейчас просто поделюсь:

"В основе общества знаний должна лежать концепция образованной личности. Эта концепция должна быть универсальной именно потому, что в данном случае речь идет, прежде всего, об обществе, а также в силу глобального характера такого общества — с точки зрения его финансов, экономики, заложенных в нем возможностей служебного роста, технологии, центральных вопросов и, главное, — его информации. Посткапиталистическое общество нуждается в некоей унифицирующей, объединяющей силе. Ему требуется некая лидирующая группа, способная сфокусировать местные, частные, отдельные традиции вокруг единых для всего общества ценностей, единой концепции совершенства и взаимного уважения

Образованный человек должен уметь проецировать свои знания в настоящее, не говоря уж о том, чтобы заставить их работать на будущее.

Посткапиталистическое общество нуждается в образованной личности даже больше, чем любое из ранее существовавших обществ, а доступ к великому наследию прошлого и в дальнейшем будет важным элементом. Но это наследие будет включать в себя намного больше, чем цивилизацию, которая по-прежнему завязана на западной, иудейско-христианской традиции, за которую горой стоят "гуманисты". Образованная личность, которая нужна нашему обществу, должна быть готова к активному восприятию других культур и традиций: например, великого наследия китайской, японской и корейской живописи и керамики; философских течений и религий Востока, а также ислама — как религии и как культуры. Кроме того, образованная личность будет не такой "книжной", как типичный продукт гуманитарного образования, предлагаемого "гуманистами". Образованной личности понадобятся не только хорошо тренированные аналитические способности, но и хорошо тренированное восприятие."

Советую почитать главу целиком
👍4
Паттерн: Строитель (Builder)

lvl: mid-

Супер крутой порождающий паттерн. Какой-то непонятной волею судеб так вышло, что билдер — самый популярный паттерн, который я юзал. В других вселенных можно описать психотип, назвав самые частые использованные тобой паттерны проектирования

Строитель — это класс (необязательно), который создает сложный объект пошагово и закрывает его за протоколом.

Используется паттерн тогда:

создание сложного объекта не должно зависеть от последовательности и связей его частей. Можно вызывать только те шаги, которые нужны;

процесс конструирования должен обеспечивать различные реализации конструируемого объекта. Например, деревянные стены или бетонные
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍5
📚 "Программист-прагматик"

Опытного программиста выдают не только знания решения технических задач, но бесконечность других деталей за рамками технической документации.

Недостаточно просто надеть костюм врага и выучить пару слов на чужом языке, чтобы казаться своим. Твой чужой акцент и повадки быстро выдадут. Придется много лет жить и впитывать культуру.

Также и в программировании. Выучить как кнопку красить можно, но решишь ли ты проблемы за рамками технической документации?

Многие популярные книги несут универсальные советы. Не привязанные к платформе. Это все потому, что люди везде одинаковые, будь даже разные языки программирования.

О чем книга? О психологии, программировании, управлении, обучении. О хардах и софтах.

Какие идеи я вынес?

- Понравилась метафора с трассирующими пулями. Поможет для развития продукта

- Полезная глава про устранению багов, а не поиску виноватых. Как настроить нужный тон

- О глупой идеи написать совершенный код.

Программист-прагматик — та самая книга бессмертных идей, что учит не быть программистом-анальником

#books
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4💅2🐳1🫡1
Паттерн: State

lvl: jun

Назначение:
Позволяет объекту варьировать свое поведение в зависимости от внутреннего состояния.

Мотивация:
Допустим у нас есть класс (NetworkState), который реагирует на соединение с нетворком. У класса есть методы отправки запроса. И прежде чем отправит запрос, он смотрит на состояние соединения.

Применимость:
- когда поведение объекта зависит от его состояния и должно изменяться во время выполнения;
- когда в коде операций встречаются состоящие из многих ветвей условные операторы, в которых выбор ветви зависит от состояния.Паттерн состояние предлагает поместить каждую ветвь в отдельный класс. Это позволяет трактовать состояние объекта как самостоятельный объект, который может изменяться независимо от других.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍2
Я часто ругаю ютуб-контент за треш, мусор и фриковатость. Банальные истории на поверхности и пересказ доки. Но смотря на технические каналы как Aleks OS понимаю, что качественный контент всегда перебивает любой временный треш.

Можно пересказывать кучу пословиц и афоризмов о "какое время — такие и герои". Как всем страшно. За работу. За жизнь. За всё.

Как стали полезны глупые развлекательные видосы. Дешевые андтидепрессанты, с кучей побочных эффектов. Как расстояние всех разделило и создало спрос на всякие сообщества. Но это всё временно.

Как люди, в приступах истерии, создают иррациональные культы, будто в падающем самолете. Чувства и эмоции затупили рациональность. Они повторяют ежедневно аффирмации об успехе и разворачивают жабу, с монетой во рту, жопой к двери. В надежде пережить и найти успех.

Моя вера в общество восстанавливается, когда вижу, что часовой ролик про ассемблер набирает пол ляма просмотров за год. Это больше, чем все вместе взятые ролики иосников, выпущенные за последний год.

Наверное, стоит задуматься о качестве материала и сравнить.Спрос на качественные знания не уменьшается. Он увеличивается, когда кругом появляется больше говнеца.

Разделяйте контент на фан и пользу. От питания только печеньками кариес, лишний вес и смерть

UPD: со стороны выглядит как рекламный пост
💅8👍4🌭3💯3
Forwarded from AvitoTech
Нам хотелось, чтобы внесение изменений юнитами в функционал друг друга было комфортным и лёгким.

Для этого мы определили подходы к автоматизации тестирования и внесению изменений, а потом объединили всё в Соседское соглашение.

Несколько главных поинтов вынесли в карточки, полный текст — в Playbook.

Make Code Green Again!

#playbook_avitotech
Думаю записать серию роликов. 🤡Торговать лицом и пытать вас своим сиплым голосом. Какие темы интересны?
Anonymous Poll
34%
Качественное тестирование
36%
Паттерны в реальной жизни
18%
UI и покраска кнопок
37%
Многопоточка
13%
Язык и его красота
7%
О жизни
51%
Да покайфу че нравится, то и делай
😁1
Необходимая база

Когда ты уже замотивировался, встал со стула, закрыл ютуб и ответил на вопрос: "А что я должен сделать?". То след видос для тебя. Открывай обратно 🤣

Для специфичной первой работы покраски кнопок это необязательно знать, но сильно пригодится изучать параллельно для общего образования.

Вопрос специфик какой-нибудь либы и общих знаний алгоритмов, информатики не должен нас пугать. Ведь любая специфика уходит в корень и стоит на общих знаниях.

Еще один канал с качественным техническим контентом. Роли об универсальной базе в программировании.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7