В начале месяца под одним из постов задали вопрос: Композиция === Dependency Injection?
Я тогда еще написал статейку, но все руки не доходили выложить ее сюда. Я постарался подробно объяснить, в чем разница и как использовать: Dependency Injection (Внедрение зависимостей), Dependency Inversion (Инверсия зависимостей) и Композиция.
Для тех, кто еще ленится двумя командами установить и запустить какой-нибудь статический анализатор кода, ребята записали хороший аудиоподкаст. Также есть частичная текстовая расшифровка.
🔥Трейты! Выстрел себе в ногу или рабочее решение? — ютуб-холивар в эту среду.
На примерах разберем, хороши ли трейты как способ снизить дублирование кода, быстро внедрить функциональность и не только. Читай подробнее о стриме и приходи в эфир 23 декабря в 19:00 (Мск/Минск, 18:00 — Киев).
Против трейтов: Валентин Удальцов (автор канала Пых).
В защиту: — Сергей Жук (Skyeng) — Кирилл Несмеянов (SpiralScout) — Иван Лещёв (BotHelp.iо) — Александр Дубовской (RaDon)
Как часто вы сталкиваетесь с проблемой, когда для тестирования задачи приходится менять код? Тесты отложенной отправки письма, генерации чего-то по расписанию раз в неделю и т.д.
Badoo имеет свое собственное решение, которое упрощает жизнь тестировщикам.
Сталкивались с таким, что требуется отрефакторить чего-то, или пофиксить багу, а там ну просто целый зоопарк наследников и наследников наследников? Ну или простая задача - нужен новый аргумент в конструкторе/методе. И задача превращается в ад. Это один из пунктиков, почему наследование стоит использовать осторожно, и композиция зачастую лучшее решение.
Этой весной я перевел статью о 8-ке в восьми кусочках кода, а на этой неделе состоится ее долгожданный релиз.
Если ты хочешь пообщаться с одними из главных контрибьюторов PHP Никитой Поповым и Дмитрием Стоговым, а также послушать о новых возможностях языка на практике - заходи на стрим 25 ноября.
24 октября релизнули composer v2.0, а также уже успели выпустить несколько багфиксов. Самые интересные плюшки обновленного композера в статье https://telegra.ph/Composer-2-CHto-novogo-10-28
NIX MultiConf #4. MultiTool для каждого в мире IT
Готовьте любимые снеки, напитки и усаживайтесь поудобней. Мы ждали этого целый год… НИКСовая мультиконференция возвращается! 24–25 октября NIX MultiConf #4 пройдет в новом онлайн-формате. Бесплатно.
2 дня, 14 направлений, более 30 докладов от украинских и зарубежных экспертов мирового уровня. Готовьте вопросы спикерам из NIX, Ask Applications, Data Art, BBС, AgileLAB, Elastic и Blue Yonder GmbH. За самый креативный вопрос разыграем NIX Growth box.
Уникальность конференции — в разнообразии инструментов для разработчиков, тестировщиков, дизайнеров и нетехнических специалистов в IT. Кто-то окончил ВУЗ и ищет направление по душе, кто-то хочет отвлечься от рутинных посиделок дома, а некоторые смельчаки сменили работу и пришли за новыми скиллами.
Полезности ждут новичков и senior’ов. Запускаем четыре новых направления: Python, Data Science, Sales Force, HR. И не забываем о традиционных — .NET, PHP, QA, Java, Design, WordPress, Android, JavaScript, Business Analytics, Project Management.
Когда: суббота и воскресенье 24–25 октября, с 10:00 до 19:00 Как принять участие: регистрируйтесь на сайте и получите подробную программу. Где: на YouTube-канале
Курс по базам данных с лучшими практиками по PostgreSQL, NoSQL, MySQL.
На входе вступительный тест из 20 вопросов только для тех, кто уже знает и любит базы данных. Пройдите тест и присоединяйтесь к группе: https://otus.pw/11t2/
Всем доброго воскресного вечера. Совсем недавно словили прелюбопытнейший фатал на продакшн. Спешу поделиться с вами (если, конечно, вы используете strict_types у себя в коде)
Работа с GIT — базовый навык любого IT-специалиста. Освойте его с нуля за 4 дня в OTUS на Супер-практикуме по использованию и настройке GIT.
📌Чему вы научитесь? — Изучите устройство GIT — Сможете настраивать репозитории — Изучите слияние и перебазирование веток — Получите навык разрешения конфликтов при слиянии веток — Сможете использовать графические инструменты для работы с GIT — Поймете как организовать процесс работы с GIT в команде
Все знания вы закрепите на практике и сможете свободно использовать и настраивать GIT в любом проекте.
Хэй хо! Все мы любим (я надеюсь), писать юнит-тесты. Ну и конечно же - потешить свое самолюбие, глянув на отчет code-coverage, когда там >50% кода покрыто тестами. Но так ли точна эта цифра? Давайте разберемся, как работают замеры и какие есть подводные камни.
Как в Highload системе ускорить работу баз данных?
Подключайтесь 18 сентября в 20:00 к демо-уроку «Индексы в MySQL: best practices и подводные камни». Вместе с преподавателем Владиславом Родиным вы разберете устройство Btree - индекса в MySQL в движках InnoDB и MyISAM, а также принципы построения планов запросов в MySQL. Изучите предназначение и механизмы работы кластерных и покрывающих индексов.
После занятия вы сможете пользоваться командой explain в MySQL, строить индексы, позволяющие оптимизировать запросы, составлять запросы, позволяющие переиспользовать существующие индексы.
Демо-урок входит в программу продвинутого онлайн-курса «Highload Architect», созданного для разработчиков и архитекторов, которые хотят научиться работать с высоконагруженными системами. Для регистрации на занятие пройдите вступительный тест https://otus.pw/YjFv/
Довольно занимательная статейка на тему "Как хранить перечисления в PHP, чтобы это было удобно". Есть ограниченный список значений? Нет Enum, к которому ты так привык в другом языке? В статье, на мой взгляд, лучшая реализация таких списков.