Семь принципов хорошей разработки
Принципы разработки программного обеспечения играют решающую роль при создании высококачественных, удобных в сопровождении и эффективных программных систем. К этим принципам относятся: DRY. KISS, YAGNI, SLAP, SOLID. О них и пойдет речь в данной статье.
Читать статью
Принципы разработки программного обеспечения играют решающую роль при создании высококачественных, удобных в сопровождении и эффективных программных систем. К этим принципам относятся: DRY. KISS, YAGNI, SLAP, SOLID. О них и пойдет речь в данной статье.
Читать статью
👍3🔥2
Ждем вас на открытом уроке, где вы узнаете, что такое Java Instrumentation API и для чего нужны агенты. В онлайне изучим агент, позволяющий изменять код бизнес-классов для добавления дополнительных trace-логов для отладки приложения.
Вебинар подходит Java-разработчикам, которые сталкиваются с вопросами производительности приложений.
После занятия вы сможете писать и подключать Java-агенты самостоятельно, а также будете иметь представление о возможностях Java Instrumentation API.
Встречаемся 22 августа в 20:00 мск.
Спикер — Tech Lead в одном из крупнейших российских банков и кандидат технических наук.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥1
Forwarded from Книги для Java программиста
Компания-разработчик СУБД Postgres Professional выпустила новую книгу «PostgreSQL 16 изнутри». Электронная версия учебника находится в свободном доступе. Автор книги — Егор Рогов, директор по разработке образовательных программ Postgres Professional.
Первое издание этого учебника, основанное на 14-й версии PostgreSQL, было выпущено в марте 2022 года и обновлено до 15 версии. Из-за большого читательского интереса компания перевела книгу на английский язык. Позже она стала самым популярным тематическим изданием 2023 года по версии Postgres Weekly и вошла в список профессиональной литературы на официальном сайте сообщества PostgreSQL.
В актуальной редакции книги «PostgreSQL 16 изнутри» учтены замечания читателей, исправлены опечатки, а также отражены изменения, произошедшие в версии PostgreSQL 16.
Также Postgres Professional обновила локализованную документацию к PostgreSQL 16.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍11🔥3❤2
Ждем вас на открытом вебинаре, где мы познакомимся с одной из базовых тем языка Java — Обобщения (Generics).
Изучим, для чего они нужны, где они применяются в стандартной Java-библиотеке, а также как их можно использовать в своем коде.
Встречаемся 21 августа в 20:00 мск.
Спикер Александр Фисунов — Senior Kotlin Developer в SSP Software на проекте ВТБ, опытный Java-разработчик и кандидат технических наук.
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ruPlease open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥1
JPA Entity. Загрузи меня не полностью
JPA часто подвергается критике за невозможность загружать сущности частично, что на самом деле является большим заблуждением. Spring Data JPA и Hibernate включают в себя множество инструментов по частичной загрузке сущностей.
Подготовили статью, в которой рассмотрели имеющиеся в Spring Data JPA инструменты для частичной загрузки сущностей, а также разобрали их особенности и corner-кейсы.
Читать статью
JPA часто подвергается критике за невозможность загружать сущности частично, что на самом деле является большим заблуждением. Spring Data JPA и Hibernate включают в себя множество инструментов по частичной загрузке сущностей.
Подготовили статью, в которой рассмотрели имеющиеся в Spring Data JPA инструменты для частичной загрузки сущностей, а также разобрали их особенности и corner-кейсы.
Читать статью
Teletype
JPA Entity. Загрузи меня не полностью
JPA часто подвергается критике за невозможность загружать сущности частично, что на самом деле является большим заблуждением. Spring...
1👍6🔥2
Новое событие в JFR для диагностики использования устаревшего (deprecated) кода
В Java есть специальная аннотация @Deprecated для маркировки уставшего кода. С определенной периодичностью такой код из JDK удаляется. Обычно о конкретных сроках удаления анонс делается заранее и в теории можно успеть подготовиться, но на практике не все так просто.
В больших проектах найти куски устаревшего кода в куче зависимостей задача не тривиальная и требующая хорошей автоматизации. В этой ситуации к нам приходит на помощь новый тип события в JFR. Он был добавлен в JDK 22.
Давайте посмотрим на простом примере как это работает.
Читать статью
В Java есть специальная аннотация @Deprecated для маркировки уставшего кода. С определенной периодичностью такой код из JDK удаляется. Обычно о конкретных сроках удаления анонс делается заранее и в теории можно успеть подготовиться, но на практике не все так просто.
В больших проектах найти куски устаревшего кода в куче зависимостей задача не тривиальная и требующая хорошей автоматизации. В этой ситуации к нам приходит на помощь новый тип события в JFR. Он был добавлен в JDK 22.
Давайте посмотрим на простом примере как это работает.
Читать статью
Teletype
Новое событие в JFR для диагностики использования устаревшего (deprecated) кода
В Java есть специальная аннотация @Deprecated для маркировки уставшего кода. С определенной периодичностью такой код из JDK удаляется...
1👍3🔥2
Хотите освоить ключевой навык для Java-разработчика и обеспечить безопасность данных в своих проектах?
Ждем вас на открытом вебинаре 27 августа в 20:00 мск, где мы разберем:
- основы Spring Security;
- применение Spring Security для защиты данных и повышения безопасности проектов;
- применение магии «Alohomora» для открытия запертых дверей в мире безопасности.
Урок идеально подходит для Java- и Kotlin-разработчиков.
Встречаемся в преддверии старта курса «Разработчик на Spring Framework».
Все участники вебинара получат специальную цену на обучение!
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ruPlease open Telegram to view this post
VIEW IN TELEGRAM
1👍3
Абстрактные классы и интерфейсы в Java
В каких случаях стоит использовать абстрактный класс, а в каких — интерфейс? Давайте разбираться, в чем между ними разница.
Читать статью
В каких случаях стоит использовать абстрактный класс, а в каких — интерфейс? Давайте разбираться, в чем между ними разница.
Читать статью
Telegraph
Абстрактные классы и интерфейсы в Java
В каких случаях стоит использовать абстрактный класс, а в каких — интерфейс? Давайте разбираться, в чем между ними разница. Абстрактные классы и интерфейсы встречаются повсюду как в Java-приложениях, так и в самом Java Development Kit (JDK). Каждый из них…
👍5🔥2
Мечтаешь о карьере в бигтехе?
Приходи на интенсив в Открытые школы Т1 для Java-разработчиков с опытом от года. Лучшие выпускники получат оффер от Т1 — крупнейшей ИТ-компании по версии RAEX 2023🔝 и уникальный карьерный фаст-трек до мидла в бигтехе.
В портфеле Холдинга Т1 800+ масштабных проектов и 70+ продуктов и услуг.
🧠 Всего за полгода мы выпустили 500+ специалистов. Участники присоединились к командам финтех-разработки и разработки ИТ-продуктов. Выпускников также ждут в юнитах облачных сервисов, развития ИИ-решений, интеграции и консалтинга.
Программа курса: spring framework; docker; синхронное и асинхронное взаимодействие, брокеры сообщений; паттерны, SOLID.
⌛️ Быстрое обучение: 1 месяц.
💻Гибкий формат: все этапы онлайн, занятия по вечерам.
Готов прокачаться вместе с экспертами индустрии? Тогда подавай заявку до 22 августа!
Старт интенсива — 28 августа.
Реклама. ООО "Т1". ИНН 7720484492.
Приходи на интенсив в Открытые школы Т1 для Java-разработчиков с опытом от года. Лучшие выпускники получат оффер от Т1 — крупнейшей ИТ-компании по версии RAEX 2023🔝 и уникальный карьерный фаст-трек до мидла в бигтехе.
В портфеле Холдинга Т1 800+ масштабных проектов и 70+ продуктов и услуг.
🧠 Всего за полгода мы выпустили 500+ специалистов. Участники присоединились к командам финтех-разработки и разработки ИТ-продуктов. Выпускников также ждут в юнитах облачных сервисов, развития ИИ-решений, интеграции и консалтинга.
Программа курса: spring framework; docker; синхронное и асинхронное взаимодействие, брокеры сообщений; паттерны, SOLID.
⌛️ Быстрое обучение: 1 месяц.
💻Гибкий формат: все этапы онлайн, занятия по вечерам.
Готов прокачаться вместе с экспертами индустрии? Тогда подавай заявку до 22 августа!
Старт интенсива — 28 августа.
Реклама. ООО "Т1". ИНН 7720484492.
👍1
Реализации Microkernel архитектуры с помощью Java OSGI
Я хотел бы поделиться опытом реализации микроядерной архитектуры (microkernel) на Java с помощью OSGI (Open Service Gateway Initiative). Этот подход является промежуточным вариантом между микро-сервисной и монолитной архитектурой. С одной стороны присутствует разделение между компонентами на уровне VM с другой - межкомпонентное взаимодействие происходит без участия сети, что ускоряет запросы.
Читать статью
Я хотел бы поделиться опытом реализации микроядерной архитектуры (microkernel) на Java с помощью OSGI (Open Service Gateway Initiative). Этот подход является промежуточным вариантом между микро-сервисной и монолитной архитектурой. С одной стороны присутствует разделение между компонентами на уровне VM с другой - межкомпонентное взаимодействие происходит без участия сети, что ускоряет запросы.
Читать статью
Teletype
Реализации Microkernel архитектуры с помощью Java OSGI
Я хотел бы поделиться опытом реализации микроядерной архитектуры (microkernel) на Java с помощью OSGI (Open Service Gateway Initiative)...
👍4❤1🔥1
Ждем вас на открытом вебинаре «Введение в Java Unit: тестирование с использованием Junit и Mockito», 28 августа в 20:00 мск,
где мы разберем:
Спикер Роман Вороновский — опытный разработчик и ментор.
Встречаемся в преддверии старта курса «Специализация Java-разработчик».
Все участники вебинара получат специальную цену на обучение!
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ruPlease open Telegram to view this post
VIEW IN TELEGRAM
1👍2
Графический интерфейс для bash, делаем работу в командной строке удобнее
Когда пишешь код в IntelliJ IDEA, привыкаешь что везде есть подсказки, везде где можно работает комплишен, всегда можно одним кликом перейти на декларацию метода или на его юсаджи. После этого интерфейс командной строки выглядит как-то бедно. Конечно, он очень хорошо продуман, сделан настолько удобным, насколько это возможно в текстовом UI, но в графическом UI возможностей намного больше. Представляю вам плагин для JetBrains IDE, позволяющий работать в командной строке cо всеми удобствами IDE.
Читать статью
Когда пишешь код в IntelliJ IDEA, привыкаешь что везде есть подсказки, везде где можно работает комплишен, всегда можно одним кликом перейти на декларацию метода или на его юсаджи. После этого интерфейс командной строки выглядит как-то бедно. Конечно, он очень хорошо продуман, сделан настолько удобным, насколько это возможно в текстовом UI, но в графическом UI возможностей намного больше. Представляю вам плагин для JetBrains IDE, позволяющий работать в командной строке cо всеми удобствами IDE.
Читать статью
Teletype
Графический интерфейс для bash, делаем работу в командной строке удобнее
Когда пишешь код в IntelliJ IDEA, привыкаешь что везде есть подсказки, везде где можно работает комплишен, всегда можно одним кликом...
👍2🍾1
Prostore — простой Event sourcing + CQRS фреймворк
На данный момент на рынке мало Event sourcing + CQRS фреймворков. А те, что есть, непопулярны и имеют слабую поддержку, поэтому многие создают свои in-house решения. В этой статье расскажу о выполненном командой «Programming Store» проекте Prostore, который может послужить примером при создании вашего собственного решения.
Читать статью
На данный момент на рынке мало Event sourcing + CQRS фреймворков. А те, что есть, непопулярны и имеют слабую поддержку, поэтому многие создают свои in-house решения. В этой статье расскажу о выполненном командой «Programming Store» проекте Prostore, который может послужить примером при создании вашего собственного решения.
Читать статью
Teletype
Prostore — простой Event sourcing + CQRS фреймворк
На данный момент на рынке мало Event sourcing + CQRS фреймворков. А те, что есть, непопулярны и имеют слабую поддержку, поэтому многие...
👍2
Курс «Углубленное изучение языка Java» предлагает:
Готовы расширить свои карьерные перспективы? Получите скидку на обучение и доступ к подарочным урокам прямо сейчас
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ruPlease open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍2
Руководство по обработке исключений в Java Stream
Друзья, вашему вниманию предлагается небольшое руководство по обработке исключений в Java Stream, из которого вы узнаете: 😃
✔️ Как обрабатывать проверяемые исключения, выбрасываемые методами из промежуточных операций в стримах
✔️ Как использовать блок try-catch в лямбда-выражениях
✔️ Как безопасно извлекать метод.
Также, даны рекомендации использовать Optional вместо выбрасывания значения null из извлекаемой функции.
Хорошей практики!
Читать статью
Друзья, вашему вниманию предлагается небольшое руководство по обработке исключений в Java Stream, из которого вы узнаете: 😃
✔️ Как обрабатывать проверяемые исключения, выбрасываемые методами из промежуточных операций в стримах
✔️ Как использовать блок try-catch в лямбда-выражениях
✔️ Как безопасно извлекать метод.
Также, даны рекомендации использовать Optional вместо выбрасывания значения null из извлекаемой функции.
Хорошей практики!
Читать статью
👍3🔥1
📚На занятии со старшим разработчиком Андреем Поляковым, вы узнаете: https://vk.cc/czN3eE
- Что из себя представляет подход Data Streams
- Как принцип инверсии зависимостей (dependency inversion principle, DIP) используется для получения паттерна Iterator
- Как применяется принцип инверсии зависимостей для получения повторно используемых алгоритмов над коллекциями объектов.
- Почему стоит избавляться от циклов при работе с коллекциями
После вебинара «Паттерн Iterator: от применения принципа DIP до Data Streams» вы сможете продолжить обучение на курсе.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Работа с null ссылками: Kotlin vs. Java
Предложенная сегодня статья напомнит про "ошибку на миллион долларов", а также сравнит между собой языки программирования Java и Kotlin с точки зрения их работы с null ссылками. 😃
Приятного чтения!
Читать статью
Предложенная сегодня статья напомнит про "ошибку на миллион долларов", а также сравнит между собой языки программирования Java и Kotlin с точки зрения их работы с null ссылками. 😃
Приятного чтения!
Читать статью
👍6❤2🔥1🎉1
Хотите глубже понять типы данных в Java? Ждем вас на открытом вебинаре 2 сентября в 20:00 мск,
где мы разберем:
Урок идеально подходит для тех, кто хочет изучить Java вглубь, узнать тонкости и хитрости языка, а также для Java-разработчиков, стремящихся структурировать свои знания и лучше подготовиться к собеседованиям.
Спикер Дмитрий Коган — опытный разработчик, председатель совета предприятия в DXC, публицист, спортивный журналист и блогер.
Встречаемся в преддверии старта курса «Углубленное изучение языка Java».
Все участники вебинара получат специальную цену на обучение!
Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/czWbGy
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ruPlease open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2
Красивый код с Java Optional и Either
Многие из Java разработчиков, особенно начинающие, упускают из вида возможности функционального программирования. 😒
Предложенная сегодня статья научит вас последовательному соединению экземпляров Optional и Either для написания лаконичного и красивого кода.
Хорошей практики!
Читать статью
Многие из Java разработчиков, особенно начинающие, упускают из вида возможности функционального программирования. 😒
Предложенная сегодня статья научит вас последовательному соединению экземпляров Optional и Either для написания лаконичного и красивого кода.
Хорошей практики!
Читать статью
1👍8🔥1
📚 Пройди тест на знание Java и получи доступ к 🌿 🌿 открытым урокам по Spring
🕗 Два открытых урока можно посмотреть без регистрации и оценить формат обучения. Для доступа ко всем открытым урокам из курса «Разработчик на Spring Framework» от OTUS необходимо пройти входное тестирование: ответить на 21 вопрос и уложиться в тайминг.
📊 -Курс рассчитан на профессионалов с практическим опытом работы на Java.
- Мы будем 5 месяцев погружать вас в теорию и практику Spring Framework. - Дадим 18 практических работ. Процесс review сдаваемой работы максимально приближен к тому, каким он мог быть на реальном проекте. Помимо этого, мы попросим вас сдать дипломную работу , каких скучных записанных занятий, только живые онлайн-лекции, интересные практические задачи и развернутая обратная связь от лучших экспертов ниши. 📅 Старт группы уже 30 сентября 2024г . Доступна рассрочка на обучение.
➡️ НАЧАТЬ ТЕСТИРОВАНИЕ
🕗 Два открытых урока можно посмотреть без регистрации и оценить формат обучения. Для доступа ко всем открытым урокам из курса «Разработчик на Spring Framework» от OTUS необходимо пройти входное тестирование: ответить на 21 вопрос и уложиться в тайминг.
📊 -
- Мы будем 5 месяцев погружать вас в теорию и практику Spring Framework.
➡️ НАЧАТЬ ТЕСТИРОВАНИЕ
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ruPlease open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥1