Media is too big
VIEW IN TELEGRAM
ООП на пальцах
В видео рассматривают ключевые идеи объектно-ориентированного программирования: объекты и классы, принципы инкапсуляции, полиморфизм, наследование, композицию и агрегацию, использование интерфейсов, шаблоны проектирования, SOLID-принципы и внедрение зависимостей. Всё с примерами и объяснением, так что отлично подойдёт для начинающих.
#урок #теория #oop #ru
В видео рассматривают ключевые идеи объектно-ориентированного программирования: объекты и классы, принципы инкапсуляции, полиморфизм, наследование, композицию и агрегацию, использование интерфейсов, шаблоны проектирования, SOLID-принципы и внедрение зависимостей. Всё с примерами и объяснением, так что отлично подойдёт для начинающих.
#урок #теория #oop #ru
🆒2
Media is too big
VIEW IN TELEGRAM
Как тестировать JS: от А до Я
Разработка-разработкой, но приложения без тестирования далеко в прод не уйдут. Поэтому вот подходящий гайд.
В этом видео показывают, как тестировать JS-приложения с нуля до продвинутых техник. Разбираются основные подходы, как писать юнит-тесты, проверять работу React-приложений, тестировать маршруты и состояние, а также делать полное e2e тестирование. Плюс, объясняют, как находить изменения в интерфейсе с помощью инструментов для регрессионного тестирования UI.
#урок #веб #javascript #ru
Разработка-разработкой, но приложения без тестирования далеко в прод не уйдут. Поэтому вот подходящий гайд.
В этом видео показывают, как тестировать JS-приложения с нуля до продвинутых техник. Разбираются основные подходы, как писать юнит-тесты, проверять работу React-приложений, тестировать маршруты и состояние, а также делать полное e2e тестирование. Плюс, объясняют, как находить изменения в интерфейсе с помощью инструментов для регрессионного тестирования UI.
#урок #веб #javascript #ru
OAuth 2.0 и OIDC: подробный гайд о защите API и пользовательских данных
OAuth 2.0 и OpenID Connect (OIDC) — это основа современной аутентификации и управления доступом, но внедрение этих протоколов требует вдумчивого подхода.
В статье разбираем, как безопасно использовать эти инструменты.
Ключевые темы — токены (access, refresh, ID), их правильное хранение и защита от атак, особенности реализации в SPA и на сервере. Узнаете о методах, которые помогут избежать уязвимостей и построить надёжную систему аутентификации.
#статья #урок #безопастность #ru
OAuth 2.0 и OpenID Connect (OIDC) — это основа современной аутентификации и управления доступом, но внедрение этих протоколов требует вдумчивого подхода.
В статье разбираем, как безопасно использовать эти инструменты.
Ключевые темы — токены (access, refresh, ID), их правильное хранение и защита от атак, особенности реализации в SPA и на сервере. Узнаете о методах, которые помогут избежать уязвимостей и построить надёжную систему аутентификации.
#статья #урок #безопастность #ru
Tproger
OAuth 2.0 и OIDC: как защитить API и пользовательские данные
Григорий Миронов, Senior Backend Developer в Почте Mail.ru рассказывает, что такое OAuth 2.0 и OIDC и как безопасно настроить токены
Media is too big
VIEW IN TELEGRAM
Курс: Git и GitHub для начинающих
Git — это система, которая позволяет следить за изменениями в файлах и работать над проектом вместе с другими.
В видео покажут, как установить Git и начать пользоваться GitHub. Также вы разберёте основные команды: как копировать проекты (clone), создавать новые (init), объединять изменения (merge), работать с ветками (branch, checkout), отправлять изменения (push), получать новые (pull), сохранять прогресс (commit), добавлять файлы (add) и настраивать Git (config).
#git #урок #начинающим #ru
Git — это система, которая позволяет следить за изменениями в файлах и работать над проектом вместе с другими.
В видео покажут, как установить Git и начать пользоваться GitHub. Также вы разберёте основные команды: как копировать проекты (clone), создавать новые (init), объединять изменения (merge), работать с ветками (branch, checkout), отправлять изменения (push), получать новые (pull), сохранять прогресс (commit), добавлять файлы (add) и настраивать Git (config).
#git #урок #начинающим #ru
Наконец гайд по паттернам простыми словами
Автор репозитория постарался как можно проще объяснить все популярные паттерны проектирования, и у него это получилось — ссылка на реп.
Все паттерны структурированы, к каждому есть человеческое описание, описание с вики, пример с жизни и пример кода. Можно использовать как шпаргалку, либо за один вечер разобраться во всех паттернах.
#урок #паттерны #en
Автор репозитория постарался как можно проще объяснить все популярные паттерны проектирования, и у него это получилось — ссылка на реп.
Все паттерны структурированы, к каждому есть человеческое описание, описание с вики, пример с жизни и пример кода. Можно использовать как шпаргалку, либо за один вечер разобраться во всех паттернах.
#урок #паттерны #en
❤🔥2
База по работе с массивами и списками
Как хранить и обрабатывать данные эффективно? Массивы и списки — ключевые инструменты, которыми пользуются разработчики на Python, Java и C++. Они помогают организовать всё: от пользовательских данных до результатов вычислений.
Массивы фиксированы и строгого типа, тогда как списки — гибкие и динамичные. Например, в Python списки позволяют смешивать числа, строки и даже логические значения. А в C++ работа с массивами требует тщательного контроля памяти и индексов.
Всю теорию, необходимую каждому разработчику, собрали в гайде.
#урок #начинающим #ru
Как хранить и обрабатывать данные эффективно? Массивы и списки — ключевые инструменты, которыми пользуются разработчики на Python, Java и C++. Они помогают организовать всё: от пользовательских данных до результатов вычислений.
Массивы фиксированы и строгого типа, тогда как списки — гибкие и динамичные. Например, в Python списки позволяют смешивать числа, строки и даже логические значения. А в C++ работа с массивами требует тщательного контроля памяти и индексов.
Всю теорию, необходимую каждому разработчику, собрали в гайде.
#урок #начинающим #ru
❤1
Лучшие практики для работы с командной строкой
Командная строка — мощный инструмент, который может значительно ускорить работу, если освоить её основные команды и приёмы. Вместо того чтобы кликать мышкой по папкам, можно моментально переключаться между директориями, находить файлы по заданным критериям и автоматизировать задачи с помощью скриптов.
Хотите настроить терминал под себя? Bash, Zsh и Fish позволяют кастомизировать среду, добавлять автодополнение, подсветку и удобные алиасы. В этом гайде собрали советы по поиску файлов, работе с историей команд и полезным инструментам. Разобраться в этом проще, чем кажется — а профита ещё больше.
#урок #советы #ru
Командная строка — мощный инструмент, который может значительно ускорить работу, если освоить её основные команды и приёмы. Вместо того чтобы кликать мышкой по папкам, можно моментально переключаться между директориями, находить файлы по заданным критериям и автоматизировать задачи с помощью скриптов.
Хотите настроить терминал под себя? Bash, Zsh и Fish позволяют кастомизировать среду, добавлять автодополнение, подсветку и удобные алиасы. В этом гайде собрали советы по поиску файлов, работе с историей команд и полезным инструментам. Разобраться в этом проще, чем кажется — а профита ещё больше.
#урок #советы #ru
Как уменьшить Docker-образ с помощью многоэтапной сборки
Контейнеры в Docker — это удобно, но зачастую образы получаются слишком тяжелыми. Лишние мегабайты не только расходуют дисковое пространство, но и увеличивают риски безопасности. Одним из лучших способов борьбы с этим является многоэтапная сборка.
Такой метод позволяет отделить этапы сборки и выполнения, убирая ненужные зависимости из финального образа. Например, в Go можно создать минималистичный контейнер с чистым бинарником, а в Java – использовать JDK только для сборки, оставив в продакшене легковесную JRE. В статье разбираются реальные примеры и даются полезные советы по оптимизации.
#урок #docker #советы #ru
Контейнеры в Docker — это удобно, но зачастую образы получаются слишком тяжелыми. Лишние мегабайты не только расходуют дисковое пространство, но и увеличивают риски безопасности. Одним из лучших способов борьбы с этим является многоэтапная сборка.
Такой метод позволяет отделить этапы сборки и выполнения, убирая ненужные зависимости из финального образа. Например, в Go можно создать минималистичный контейнер с чистым бинарником, а в Java – использовать JDK только для сборки, оставив в продакшене легковесную JRE. В статье разбираются реальные примеры и даются полезные советы по оптимизации.
#урок #docker #советы #ru
Разбираем паттерны в React и для чего они нужны
В React есть паттерны, которые помогают не просто делиться логикой, а выстраивать чёткое взаимодействие между компонентами. Хотим меньше обёрток и больше читаемости? Тут в игру вступают хуки и составные компоненты.
Хуки позволяют переиспользовать логику без лишнего шума, а compound components дают собрать интерфейс как из лего — гибко и понятно. А ещё с хуками проще тестировать и сопровождать код.
В статье — коротко об этих подходах, примерах и капле Suspense-магии.
#урок #react #ru
В React есть паттерны, которые помогают не просто делиться логикой, а выстраивать чёткое взаимодействие между компонентами. Хотим меньше обёрток и больше читаемости? Тут в игру вступают хуки и составные компоненты.
Хуки позволяют переиспользовать логику без лишнего шума, а compound components дают собрать интерфейс как из лего — гибко и понятно. А ещё с хуками проще тестировать и сопровождать код.
В статье — коротко об этих подходах, примерах и капле Suspense-магии.
#урок #react #ru
❤2
Как правильно пользоваться Git — культура работы с инструментом
В командной разработке важно держать баланс между скоростью и порядком. Git становится мостиком, который помогает всем двигаться в одном направлении. Система веток, вроде Git Flow, позволяет держать новый код в отдельных feature-ветках, чтобы основной проект оставался стабильным. А если коммиты именовать чётко, с префиксами вроде fix или docs, то искать изменения в истории — одно удовольствие.
В этой статье куча практичных идей и ссылок на гайды, которые помогут разобраться глубже.
#урок #git #советы #ru
В командной разработке важно держать баланс между скоростью и порядком. Git становится мостиком, который помогает всем двигаться в одном направлении. Система веток, вроде Git Flow, позволяет держать новый код в отдельных feature-ветках, чтобы основной проект оставался стабильным. А если коммиты именовать чётко, с префиксами вроде fix или docs, то искать изменения в истории — одно удовольствие.
В этой статье куча практичных идей и ссылок на гайды, которые помогут разобраться глубже.
#урок #git #советы #ru
Гайд по ArgoCD: автоматизированный деплой в Kubernetes
Каждый деплой в Kubernetes — как отдельный квест: собрать, применить, проверить, откатить... И это всё вручную, особенно если команд много и сред ещё больше. Но ведь можно обойтись без рутины и постоянной возни с kubectl.
ArgoCD берёт всё это на себя: следит за Git-репозиторием, сам обновляет кластер, а интерфейс показывает, что происходит, в реальном времени. Плюс, удобная работа с Helm, Kustomize и даже YAML без лишних настроек.
Как всё это настраивается и почему ArgoCD так полюбили DevOps-инженеры — разбирают в статье.
#урок #k8s #ru
Каждый деплой в Kubernetes — как отдельный квест: собрать, применить, проверить, откатить... И это всё вручную, особенно если команд много и сред ещё больше. Но ведь можно обойтись без рутины и постоянной возни с kubectl.
ArgoCD берёт всё это на себя: следит за Git-репозиторием, сам обновляет кластер, а интерфейс показывает, что происходит, в реальном времени. Плюс, удобная работа с Helm, Kustomize и даже YAML без лишних настроек.
Как всё это настраивается и почему ArgoCD так полюбили DevOps-инженеры — разбирают в статье.
#урок #k8s #ru
Наконец доступный гайд по CSS Container Queries
Container Queries дают возможность стилям реагировать на размер контейнера, а не всего экрана, что сильно упрощает жизнь при создании карточек, виджетов или целых дашбордов.
Ловите настоящий путеводитель по Container Queries, написанный простым языком и с кучей интерактивных примеров. Он погружает в тему без лишнего занудства, наглядно показывая, как компоненты могут подстраиваться под любой контейнер.
#урок #css #начинающим #en
Container Queries дают возможность стилям реагировать на размер контейнера, а не всего экрана, что сильно упрощает жизнь при создании карточек, виджетов или целых дашбордов.
Ловите настоящий путеводитель по Container Queries, написанный простым языком и с кучей интерактивных примеров. Он погружает в тему без лишнего занудства, наглядно показывая, как компоненты могут подстраиваться под любой контейнер.
#урок #css #начинающим #en