SOLID в деталях: Принцип единственной ответственности
В серии роликов "SOLID в деталях" я постараюсь подробно рассказать о принципах SOLID, а так же продемонстрировать их практическое применение.
В первом ролике речь пойдёт о принципе единственной ответственности (Single Responsibility Principle; SRP), его трактовках и их практическом применении.
В серии роликов "SOLID в деталях" я постараюсь подробно рассказать о принципах SOLID, а так же продемонстрировать их практическое применение.
В первом ролике речь пойдёт о принципе единственной ответственности (Single Responsibility Principle; SRP), его трактовках и их практическом применении.
YouTube
SOLID в деталях: Принцип единственной ответственности
В серии роликов "SOLID в деталях" я постараюсь подробно рассказать о принципах SOLID, а так же продемонстрировать их практическое применение.
В первом ролике речь пойдёт о принципе единственной ответственности (Single Responsibility Principle; SRP), его…
В первом ролике речь пойдёт о принципе единственной ответственности (Single Responsibility Principle; SRP), его…
👍13❤3🔥2
Ответишь — пройдешь на продвинутый курс "Java Developer. Advanced" от OTUS по специальной цене.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍4🔥2😁2
Инкапсуляция
Инкапсуляция — это принцип ООП, который заключается в сокрытии внутреннего представления класса от внешнего мира. Для этого используются модификаторы доступа: private, protected, public.
Обычно поля класса делаются private или protected, а методы — public. Это позволяет скрыть реализацию класса и предоставить к ней контролируемый доступ через public методы.
При запуске этой программы на выходе мы получим:
John 0
Инкапсуляция — это принцип ООП, который заключается в сокрытии внутреннего представления класса от внешнего мира. Для этого используются модификаторы доступа: private, protected, public.
Обычно поля класса делаются private или protected, а методы — public. Это позволяет скрыть реализацию класса и предоставить к ней контролируемый доступ через public методы.
При запуске этой программы на выходе мы получим:
John 0
👍25❤6🔥2☃1
Хотите научиться создавать эффективную и масштабируемую архитектуру микросервисов?
Тогда курс «Microservice Architecture» от OTUS точно для вас!
Мы расскажем, как проектировать, разрабатывать и тестировать микросервисные приложения. Вы узнаете, какие технологии использовать, как интегрировать сервисы друг с другом и почему это важно.
Курс состоит из трёх модулей, в каждом из которых есть теория и практика. В ходе обучения вы получите все необходимые знания и навыки для создания современной архитектуры микросервисов, а также сильный проект в свое портфолио!
Курс доступен для приобретения в рассрочку.
Пройдите бесплатное вступительное тестирование прямо сейчас и узнайте, готовы ли вы к обучению на курсе: https://otus.pw/xJ48/
Тогда курс «Microservice Architecture» от OTUS точно для вас!
Мы расскажем, как проектировать, разрабатывать и тестировать микросервисные приложения. Вы узнаете, какие технологии использовать, как интегрировать сервисы друг с другом и почему это важно.
Курс состоит из трёх модулей, в каждом из которых есть теория и практика. В ходе обучения вы получите все необходимые знания и навыки для создания современной архитектуры микросервисов, а также сильный проект в свое портфолио!
Курс доступен для приобретения в рассрочку.
Пройдите бесплатное вступительное тестирование прямо сейчас и узнайте, готовы ли вы к обучению на курсе: https://otus.pw/xJ48/
👍6❤3🔥3
Адаптер - Шаблоны проектирования в деталях
Адаптер - популярный шаблон проектирования, используемый в тех случаях, когда требуется адаптировать существующий класс к использованию с другим интерфейсом. Реализован он может быть через наследование, либо через композицию.
Адаптер - популярный шаблон проектирования, используемый в тех случаях, когда требуется адаптировать существующий класс к использованию с другим интерфейсом. Реализован он может быть через наследование, либо через композицию.
YouTube
Адаптер - Шаблоны проектирования в деталях
Адаптер - популярный шаблон проектирования, используемый в тех случаях, когда требуется адаптировать существующий класс к использованию с другим интерфейсом. Реализован он может быть через наследование, либо через композицию.
В рамках серии роликов "Шаблоны…
В рамках серии роликов "Шаблоны…
❤9👍2
Скажите что-то на карьерном
Тинькофф в поиске крутых ИТ-спецов. С компании — профессиональный рост, интересные финтех-задачи, решение бытовых забот и работа там, где вы живете. С вас — выбрать вакансию и откликнуться тут
АО «Тинькофф Банк», ИНН 7710140679
Тинькофф в поиске крутых ИТ-спецов. С компании — профессиональный рост, интересные финтех-задачи, решение бытовых забот и работа там, где вы живете. С вас — выбрать вакансию и откликнуться тут
АО «Тинькофф Банк», ИНН 7710140679
👍5❤2🔥2😁1
FileChannel
FileChannel используется для работы с файлами на низкоуровневом вводе-выводе.
Основные возможности класса FileChannel:
— Чтение данных из файла и запись данных в файл.
— Работа с файлом по смещениям. Можно получить текущее смещение в файле, переместить указатель чтения/записи в нужное смещение.
— Маппинг файлов в память. Файл можно отобразить в память и работать с его содержимым как с массивом байтов.
— Блокировка частей файла. Позволяет защитить критические участки файла от одновременной записи.
— Асинхронная работа с файлами.
FileChannel эффективнее потокового ввода-вывода, т. к. избавляет от накладных расходов на создание объектов и буферизацию.
Используется в приложениях, где нужна высокая производительность работы с файлами.
FileChannel используется для работы с файлами на низкоуровневом вводе-выводе.
Основные возможности класса FileChannel:
— Чтение данных из файла и запись данных в файл.
— Работа с файлом по смещениям. Можно получить текущее смещение в файле, переместить указатель чтения/записи в нужное смещение.
— Маппинг файлов в память. Файл можно отобразить в память и работать с его содержимым как с массивом байтов.
— Блокировка частей файла. Позволяет защитить критические участки файла от одновременной записи.
— Асинхронная работа с файлами.
FileChannel эффективнее потокового ввода-вывода, т. к. избавляет от накладных расходов на создание объектов и буферизацию.
Используется в приложениях, где нужна высокая производительность работы с файлами.
👍20❤2
Уже 26 февраля в Слёрме стартует 6 поток курса «Apache Kafka для разработчиков». Это углублённый курс с практикой на Java или Golang и платформой Spring+Docker+Postgres.
10 часов чистой практики, 5 АМА-сессий со спикерами Слёрма, запись курса на два года, а на выходе – сертификат и новый стек ценных навыков.
Всего 5 недель заменят месяцы поиска литературы и чтения документации.
Ты сможешь мастерски:
⚡️ Создавать типовые приложения с использованием Кафки;
⚡️ Настраивать приложения так, чтобы они не развалились в проде;
⚡️ Строить архитектуру между микросервисами.
Ты пообщаешься со спикерами в реальном времени, получишь ответы на все вопросы и станешь частью профессионального комьюнити.
➡️ Занимай место по ссылке.
Реклама. ООО «Слёрм» г. Лиски, ИНН 3652901451
10 часов чистой практики, 5 АМА-сессий со спикерами Слёрма, запись курса на два года, а на выходе – сертификат и новый стек ценных навыков.
Всего 5 недель заменят месяцы поиска литературы и чтения документации.
Ты сможешь мастерски:
⚡️ Создавать типовые приложения с использованием Кафки;
⚡️ Настраивать приложения так, чтобы они не развалились в проде;
⚡️ Строить архитектуру между микросервисами.
Ты пообщаешься со спикерами в реальном времени, получишь ответы на все вопросы и станешь частью профессионального комьюнити.
➡️ Занимай место по ссылке.
Реклама. ООО «Слёрм» г. Лиски, ИНН 3652901451
❤10👍3🔥2
Интерфейс Delayed
Используется для объектов, у которых есть время истечения задержки.
Он позволяет организовать очередь объектов с учетом их задержки.
Основные методы:
getDelay(TimeUnit unit) — возвращает оставшееся время задержки в указанных единицах измерения.
compareTo(Delayed o) — сравнивает текущий объект с переданным по оставшемуся времени задержки.
Этот интерфейс реализуется классами, которые должны храниться в очереди с задержкой, например в DelayQueue.
Используется для объектов, у которых есть время истечения задержки.
Он позволяет организовать очередь объектов с учетом их задержки.
Основные методы:
getDelay(TimeUnit unit) — возвращает оставшееся время задержки в указанных единицах измерения.
compareTo(Delayed o) — сравнивает текущий объект с переданным по оставшемуся времени задержки.
Этот интерфейс реализуется классами, которые должны храниться в очереди с задержкой, например в DelayQueue.
👍20❤4🔥2
Класс java.lang
Класс java.lang — это базовый пакет, который автоматически импортируется в любую программу на Java.
Содержит фундаментальные классы, как Object, String, Integer и т. д., определяет общие классы-исключения, такие как NullPointerException, ArithmeticException, класс Math с математическими функциями, System для взаимодействия с системой.
Также включает класс Thread для многопоточного программирования, интерфейсы Cloneable, Runnable, Comparable, определяет класс Class, представляющий классы времени выполнения.
Класс java.lang — это базовый пакет, который автоматически импортируется в любую программу на Java.
Содержит фундаментальные классы, как Object, String, Integer и т. д., определяет общие классы-исключения, такие как NullPointerException, ArithmeticException, класс Math с математическими функциями, System для взаимодействия с системой.
Также включает класс Thread для многопоточного программирования, интерфейсы Cloneable, Runnable, Comparable, определяет класс Class, представляющий классы времени выполнения.
👍21🔥6❤4
💗 Если задуматься, с работой мы выстраиваем отношения так же, как с окружающими. И раз есть четыре типа привязанности к близким, то и к работе они должны быть.
Нашли классный тест от Карьерного маркетплейса hh.ru как раз на эту тему. Всего пять вопросов — и вы узнаете, какой тип привязанности ваш. А ещё вместе с результатами вы получите скидку 14% на карьерную консультацию с 12 по 19 февраля.
Реклама. ООО «Хэдхантер», 129085, г. Москва, ул. Годовикова, д.9, стр.10, ОГРН 1067761906805. erid: 2VtzqvcEeTs
Подробнее об условиях акции.
Нашли классный тест от Карьерного маркетплейса hh.ru как раз на эту тему. Всего пять вопросов — и вы узнаете, какой тип привязанности ваш. А ещё вместе с результатами вы получите скидку 14% на карьерную консультацию с 12 по 19 февраля.
Реклама. ООО «Хэдхантер», 129085, г. Москва, ул. Годовикова, д.9, стр.10, ОГРН 1067761906805. erid: 2VtzqvcEeTs
Подробнее об условиях акции.
👍7❤4🎉1
Что такое Kubernetes?
В данном видео мы рассматриваем технологию оркестрации контейнеров - Kubernetes
В данном видео мы рассматриваем технологию оркестрации контейнеров - Kubernetes
YouTube
Что такое Kubernetes?
В данном видео мы рассматриваем технологию оркестрации контейнеров - Kubernetes
Дружное сообщество:
https://news.1rj.ru/str/pse_club
Материалы для разработчиков:
https://proselyte.net/
Рекомендуемые материалы:
00:00:00 Введение
00:00:42 Задачи оркестрации
00:05:20…
Дружное сообщество:
https://news.1rj.ru/str/pse_club
Материалы для разработчиков:
https://proselyte.net/
Рекомендуемые материалы:
00:00:00 Введение
00:00:42 Задачи оркестрации
00:05:20…
👍15❤4
Java varargs
Java varargs (variable arguments) — это механизм, предоставляемый Java, который позволяет методу принимать переменное количество аргументов одного типа. Он позволяет передавать любое количество аргументов заданного типа в метод, без явного указания массива аргументов.
Для объявления переменного количества аргументов в Java используется троеточие (...) после типа данных аргумента в определении метода.
Java varargs (variable arguments) — это механизм, предоставляемый Java, который позволяет методу принимать переменное количество аргументов одного типа. Он позволяет передавать любое количество аргументов заданного типа в метод, без явного указания массива аргументов.
Для объявления переменного количества аргументов в Java используется троеточие (...) после типа данных аргумента в определении метода.
👍19❤3
Как проходит техническое собеседование инженеров мобильной разработки в RuStore
Старший Android-разработчик в команде монетизации RuStore рассказывает, из каких ингредиентов можно собрать полезное и эффективное техническое интервью.
Статья будет полезна как практикующим инженерам, которые уже собеседуют к себе в команду, так и тем, кто сам проходит собеседования – поможет лучше понять потенциального работодателя.
Читать статью
Старший Android-разработчик в команде монетизации RuStore рассказывает, из каких ингредиентов можно собрать полезное и эффективное техническое интервью.
Статья будет полезна как практикующим инженерам, которые уже собеседуют к себе в команду, так и тем, кто сам проходит собеседования – поможет лучше понять потенциального работодателя.
Читать статью
❤8👍3
Java и контейнеры Linux — технологии совсем неновые, да и использовать их вместе начали отнюдь не вчера. Многие из нас имеют такой стек в промышленной эксплуатации, и вроде бы даже все работает.
Но, если что-то может пойти не так, надо ставить вопрос не «если», а «когда». Что же может пойти не так в контейнеризованной JVM? Чтобы дать некоторые ответы на этот вопрос, копнуть придется глубоко. В докладе освещены нюансы работы Linux, контейнеризации и JVM друг с другом.
Основные темы доклада: использование ресурсов системы и особенности работы лимитов, сетевые особенности контейнеров и диагностика JVM в контейнере.
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Алексей Рагозин — Java в контейнере: особенности эксплуатации
Подробнее о Java-конференциях:
— весной — JPoint: https://jrg.su/gTrwHx
— осенью — Joker: https://jrg.su/h7yvG4
— —
Java и контейнеры Linux — технологии совсем неновые, да и использовать их вместе начали отнюдь не вчера. Многие из нас имеют такой стек в промышленной…
— весной — JPoint: https://jrg.su/gTrwHx
— осенью — Joker: https://jrg.su/h7yvG4
— —
Java и контейнеры Linux — технологии совсем неновые, да и использовать их вместе начали отнюдь не вчера. Многие из нас имеют такой стек в промышленной…
👍9❤4🔥3
Уже год работаешь в ИТ и готов к росту и масштабным проектам?🚀 Прокачай скиллы c Холдингом Т1!
Приглашаем Java-разработчиков в Открытую школу Т1 — программу найма в формате ИТ-интенсива: offer week + обучение без отрыва от работы.
🤚Поможем улучшить навыки и освоить новые перспективы, если ты готов к переменам в карьере, имеешь опыт работы Java-разработчиком от года и хочешь присоединиться к команде лидера* ИТ-рынка — Холдинга Т1!
📚В программу включили блоки по spring framework, docker, SOLID и др. Подробнее на сайте.
📌Как это работает?
🔹Подай заявку на сайте
⬇️Рассмотрим резюме, если твой профиль подойдет, то попросим пройти тестирование👌 При успешном прохождении — зачислим в группу
🔹Лучшим назначим интервью и направим оффер!
Формат обучения: онлайн (8 часов в неделю) Программа длится 1 месяц
🏳️Принимаем заявки до 25 февраля!
*По версии CNews Analytics 2022, TAdviser 2021 и RAEX 2023
Приглашаем Java-разработчиков в Открытую школу Т1 — программу найма в формате ИТ-интенсива: offer week + обучение без отрыва от работы.
🤚Поможем улучшить навыки и освоить новые перспективы, если ты готов к переменам в карьере, имеешь опыт работы Java-разработчиком от года и хочешь присоединиться к команде лидера* ИТ-рынка — Холдинга Т1!
📚В программу включили блоки по spring framework, docker, SOLID и др. Подробнее на сайте.
📌Как это работает?
🔹Подай заявку на сайте
⬇️Рассмотрим резюме, если твой профиль подойдет, то попросим пройти тестирование👌 При успешном прохождении — зачислим в группу
🔹Лучшим назначим интервью и направим оффер!
Формат обучения: онлайн (8 часов в неделю) Программа длится 1 месяц
🏳️Принимаем заявки до 25 февраля!
*По версии CNews Analytics 2022, TAdviser 2021 и RAEX 2023
👍7❤4🔥2
Алгоритмы (2023) PDF
В этом руководстве содержатся основные сведения об алгоритмах: анализируются различные типы алгоритмов, рассматриваются мето-ды их построения (рекурсия, динамическое программирование и др.), приводятся практические примеры. В конце каждой главы приводятся упражнения, направленные на закрепление пройденного.Для изучения материала требуется знание основ дискретной математики и методов доказательств, а также представление об основных вычислительных задачах и алгоритмах. Желателен практический опыт работы с языком программирования, поддерживающим косвенную адресацию и рекурсию.Издание адресовано студентам и преподавателям технических вузов, а также тем, кто хочет изучить основы алгоритмизации.
В этом руководстве содержатся основные сведения об алгоритмах: анализируются различные типы алгоритмов, рассматриваются мето-ды их построения (рекурсия, динамическое программирование и др.), приводятся практические примеры. В конце каждой главы приводятся упражнения, направленные на закрепление пройденного.Для изучения материала требуется знание основ дискретной математики и методов доказательств, а также представление об основных вычислительных задачах и алгоритмах. Желателен практический опыт работы с языком программирования, поддерживающим косвенную адресацию и рекурсию.Издание адресовано студентам и преподавателям технических вузов, а также тем, кто хочет изучить основы алгоритмизации.
❤19👍8🔥4😁3