Чашечка Java
Open in Telegram
Лучшие материалы по Java на русском и английском Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels
Show more8 283
Subscribers
-124 hours
-57 days
-7130 days
Posts Archive
8 283
Java News Roundup: JEPs for JDK 21, Spring Cloud AWS 3.0, OptaPlanner to Timefold
This week's Java roundup for May 1st, 2023 features news from OpenJDK, JDK 21, Spring Boot 3.1.0-RC2, Spring Modulith 0.6, Spring Cloud for Amazon Web Services 3.0.0, Spring Cloud Data Flow 2.10.3, Spring Tools 4.18.2, Infinispan 14.0.9.Final, Open Liberty 23.0.0.4, Quarkus 3.0.2 and 2.16.7, Helidon 3.2.1, Apache Camel 4.0.0-M3, Arquillian 1.7.0 and OptaPlanner transitions to Timefold.
By Michael Redlich
Read: https://www.infoq.com/news/2023/05/java-news-roundup-may01-2023/
8 283
Visual Studio Code 1.78 debuts profile templates for Python, Java, Angular
Read: https://www.infoworld.com/article/3695770/visual-studio-code-178-debuts-profile-templates-for-python-java-angular.html#tk.rss_java
8 283
From Extinct Computers to Statistical Nightmares: Adventures in Performance
Thomas Dullien, distinguished software engineer at Elastic, shared at QCon London some lessons learned from analyzing the performance of large-scale compute systems.
By Renato Losio
Read: https://www.infoq.com/news/2023/05/performances-extinct-computers/
8 283
Open Liberty 23.0.0.3 Unveiled: Embracing Cloud-Native Java Microservices, Jakarta EE 10 and Beyond
IBM unveiled Open Liberty 23.0.0.3, boasting support for Java SE 20, Jakarta EE 10, and MicroProfile 6.0. This significant release introduces the Jakarta EE 10 Core Profile, Web Profile, and Platform and enhancements to various features that comprise the profiles. Additionally, the release includes MicroProfile Telemetry 1.0 and updates to Metrics, OpenAPI, and JWT Authentication specifications.
By A N M Bazlur Rahman
Read: https://www.infoq.com/news/2023/05/open-liberty-23003-unveiled/
8 283
Шаблон проектирования: Composite
Всем привет! В данной статье рассмотрим паттерн проектирования Composite ("Компоновщик").
Начнем немного с теории.
Паттерн Composite, исходя уже с самого названия, позволяет скомпоновать объекты в структуры по типу "дерева", для предоставления иерархии от частного к целому, а также позволяя клиентам единообразно трактовать отдельные и составные объекты этого дерева. Данный паттерн используется для группировки мелких компонентов в более крупные, которые в свою очередь, могут стать основой для еще более крупных структур.
Читать: https://habr.com/ru/articles/733546/?utm_campaign=733546
8 283
Инфраструктура Selenium-тестов: как создать связную систему Allure-отчётов без Allure-сервера
Как часто вы формируете Allure-отчёты во время проведения автотестов? Наверняка, чтобы отслеживать изменения от отчёта к отчёту, вы также используете Allure-server. А что делать, если нет возможности содержать отдельный сервер для отчетов или он не отвечает всем вашим запросам? Я SDET-специалист SimbirSoft Дмитрий, и в этой статье расскажу о плагине, который мы придумали в качестве альтернативы Allure-server. Он обладает необходимыми возможностями для обработки отчётов и позволит сэкономить бизнесу на стоимости использования сервера.
Читать: https://habr.com/ru/companies/simbirsoft/articles/733486/?utm_campaign=733486
8 283
Дайте крудошлепа
Я устроился в небольшую компанию, которая сделал круд-приложуху на 20 таблиц типа "заметки" и активно ее продавала госорганам за невменяемый бабос.
У нас был 3(три) Т-Р-И статуса юзера. Anonym -> Logined -> Phone_Confirmed. Молодой талант до меня увидел в этом граф, и написал класс на 200+ строк, реализующий алгоритм Флойда–Уоршелла, прикрутил стейт-машину и не найдя интересных задач, c блеском прошел собес в Яндекс и свалил.
Меня наняли сеньором, и я каюсь ничерта не понял, алгоритм прекрасно работал на первой ступени, на второй давал сбои, тоскливо погуглил этот алгоритм, стер все к черту и написал: if(status==Logined & phone!=null){status=Phone_Confirmed}.
Один коллега посмотрел на меня с немой благодарностью, а начальник офигел и сказал, что код нерасширяем и захардкожен, а тот алгоритм мог пройти за время логN через тысячу вершин и по истечению испытательного урока меня уволили нах, так как мой технический уровень не соответствовал их высоким требованиям, впрочем выдали три зарплаты и я благодарен этим людям. Мой код оставили, тот так и не смогли починить.
Это было вступление.
Уважаемый Яндекс, Сбер и прочая! Я умею быстро решать задачи и кратно увеличивать выхлоп простыми решениями. Я самый умный программист, среди всех ваших работников! Я - НадНадсеньор! Сейчас докажу.
Потому что, только я могу решить задачку, которую вы уже 10 лет решить не можете, когда прилетает пуш-уведомление или смс и в твоем всплывающем окне написано:
"Ваш шестизначный пароль доступа в наше приложение: 123..."
Не согласен! ...
Читать: https://habr.com/ru/articles/733400/?utm_campaign=733400
8 283
Реализация авторизации на основе ролей в Spring Boot с помощью Keycloak
Контроль доступа на основе ролей является обязательным условием для любого приложения, имеющего дело с пользователями, которые могут получать доступ к определенным ресурсам в зависимости от своей роли в организации.
Читать: https://habr.com/ru/companies/otus/articles/733404/?utm_campaign=733404
8 283
How to use ForkJoinPool in Java
Read: https://www.infoworld.com/article/3693752/how-to-use-forkjoinpool-in-java.html#tk.rss_java
8 283
Yelp Adopted the MVI Architecture to Improve Performance and Testability of Their Android App
Four years into the adoption of the Model-View-Intent (MVI) architecture for their Android app, Yelp engineer Paul Martin says it allowed them to have performant screens and improve unit testing.
By Sergio De Simone
Read: https://www.infoq.com/news/2023/05/yelp-mvi-android-performance/
8 283
Java News Roundup: Quarkus 3.0, MicroStream 8.0, JEP 442, GraalVM, Infinispan
This week's Java roundup for April 24th, 2023 features news from OpenJDK, JDK 21, GlassFish 7.0.4, GraalVM 22.3.2, Microsoft OpenJDK, Spring releases. Quarkus 3.0.0, MicroStream 8.0.0, Micronaut 3.9.1, Hibernate ORM 6.2.2, Hibernate Reactive 2.0.0.CR1, Infinispan 15.0.0.Dev01, Apache Camel 3.20.4, Camel Quarkus 2.13.3, JUnit 5.9.3, JReleaser 1.6.0, JobRunr 6.1.4, JDKMon 17.0.49 and Foojay.io.
By Michael Redlich
Read: https://www.infoq.com/news/2023/05/java-news-roundup-apr24-2023/
8 283
О разнице между лямбдами и обычными функциями и о имплементации лямбд в некторых языках программирования
Цель настоящей статьи - изучить лямбда функции: чем они отличаются от обычных функций и изучить, как они реализованы в С++, Python 3 и Java.
На протяжении этой статьи я буду использовать godbolt.org, чтобы компилировать код и изучать машинный код или байт код. Я думаю, что при чтении статьи может быть удобнее смотреть не на приведённый машинный код в статье, а на этом сайте.
Читать: https://habr.com/ru/articles/732434/?utm_campaign=732434
8 283
Как за полчаса написать простую читалку книг FB2 для десктопа на Java
Недавно мне для личных целей понадобилось написать читалку FB2. И сразу я столкнулась с тем, что информации по теме минимум. Палочка-выручалочка под названием ChatGPT выдал что-то невразумительное в ответ на довольно подробный запрос. К тому же, никаких готовых библиотек, чтобы по-быстренькому наваять ридер, я также не смогла обнаружить. Хотя искала долго и упорно, как Чубакка расческу.
Все это привело меня к закономерному выводу, что сначала нужно изучить формат FB2. А потом подумать, как прочитать его стандартными способами и вывести на экран. После того, как я немного разобралась со структурой FB2, начала догадываться, почему нет готовых библиотек. Дело в том, что этот формат довольно простой, и нет особой необходимости писать для него отдельную библиотеку. Можно довольно быстро наваять свой код, который будет читать практически все файлы FB2. И вы сможете убедиться в этом, если дочитаете статью до конца.
А раз все так просто, зачем я пишу эту статью? Для этого у меня есть две причины. Во-первых, это моя первая проба пера на Хабре. А во-вторых, возможно, это сэкономит кучу времени другому такому же новичку, как я. Ну, или пригодится какому-нибудь студенту, который пишет реферат.
Читать: https://habr.com/ru/articles/732412/?utm_campaign=732412
8 283
Вопросы и ответы для собеседования по Kotlin. Часть 3
Цикл статей с вопросами по Kotlin, которые могут задать на собеседованиях.
Вопросы и ответы для собеседования по Kotlin. Часть 1
Вопросы и ответы для собеседования по Kotlin. Часть 2
Вопросы и ответы для собеседования по Kotlin. Часть 3 — вы находитесь здесь
Вопросы и ответы для собеседования по Kotlin. Часть 4 (скоро)
Читать: https://habr.com/ru/articles/728742/?utm_campaign=728742
8 283
Zero Downtime и Spring Boot. Апдейтим базу
Привет! Когда-то обновление версии сервиса было сложной задачей. Нужно было последовательно выполнить ряд действий, перезапустить инстансы, и не забыть предварительно забэкапить наши данные. Пользователям сервиса показывалось предупреждение, что сервис временно недоступен, и куча усилий тратилась на то, чтобы максимально снизить время этой недоступности.
Сейчас же у нас есть супер-мощные инструменты для управления сервисами. Они позволяют иметь несколько разных версий сервиса одновременно. Бизнес-пользователи могут управлять тем, какую версию видит та или иная группа пользователей. Обновление и откат версии сервиса могут происходить без прерывания работы пользователей. И когда появился такой мощный и красивый молоток, все начали хотеть забивать гвозди только им. Даже те, кому это, на самом-то деле, вообще не нужно. И тут есть проблема - наличие инструмента не означает автоматической готовности сервисов для того, чтобы этот инструмент с ними можно было использовать. И если обновлять сервисы старым способом было сложно, то новым это делать еще сложнее. Давайте посмотрим, почему это так, и как вообще получить этот ваш Zero Downtime.
Читать: https://habr.com/ru/articles/728850/?utm_campaign=728850
8 283
Java Gets a Boost with String Templates: Simplifying Code and Improving Security
JEP 430, String Templates (Preview), has been promoted from Proposed to Target to Targeted status for JDK 21, a feature JEP type that proposes to enhance the Java programming language with string templates, which are similar to string literals but contain embedded expressions incorporated into the string template at run time.
By A N M Bazlur Rahman
Read: https://www.infoq.com/news/2023/04/java-gets-a-boost-with-string/
8 283
What is API Gateway Design Pattern in Microservices? With Examples
Hello guys, API Gateway Design Pattern is a pattern that has emerged as a popular solution for managing APIs in a microservices architecture. As the number of services in the architecture increases, it becomes challenging to manage the APIs and handle requests from external clients. To address this challenge, API Gateway Design Pattern provides a single entry point for all the APIs in a microservices architecture. In the past, I have shared several Microservices design patterns like e Event Sourcing, SAGA, Database Per Microservices, CQRS, API Gateway, and also shared best practices to design Microservices and in this article, I am going to talk about the API Gateway Design Pattern, and how you can implement in Java using Spring Cloud Framework (Spring Cloud Gateway).
Java Interview questions and tutorials
Read: http://www.java67.com/2023/04/3-what-is-api-gateway-design-pattern-in.html
8 283
Angular vs React vs Vue.js ? Which is better to learn web development in 2023?
JavaScript web frameworks are important parts of modern web development. Several JavaScript web framework and libraries are active today. If you plan to become a web developer, you may encounter these web frameworks. A web developer, especially a
front-end web developer should be skilled in at least one of these frameworks. Angular and React are the two most popular web frameworks and libraries today. Vue.js is the rising star. In this article, we will compare these three frameworks on different parameters like Community support, Performance, ease of Learning, and jobs to find out which frontend development framework between Angular, React.js and Vue.js you should learn in 2023.
Java Interview questions and tutorials
Read: http://www.java67.com/2023/01/angular-vs-react-vs-vuejs-which-is.html
8 283
React Native vs Flutter? Which is better to learn for App Development in 2023?
Hello guys, if you are wondering whether to learn Flutter or React Native for App Development in 2023 then you have come to the right place. Earlier, I have shred best courses to learn Flutter and React Native and in this article, I will share my thoughts on which one is better suited for App development in 2023 and which mobile app development framework beginner should learn in 2023. In the recent decade, the mobile application community has grown tremendously. The total number of applications on the play store surpassed one million in the year 2013 and by mid-2020, it was estimated that there are more than 2.8 million
applications on the google play store.
Java Interview questions and tutorials
Read: http://www.java67.com/2023/01/react-native-vs-flutter-which-is-better.html
8 283
How to Find Lowest Common Ancestor of a Binary Tree in Java? Example Tutorial
Hello guys, if you are wondering how to find the lowest common ancestor of a binary tree in Java then you are at the right place. Earlier, I have shared 40+ binary tree questions and today I am going to share solution of one of the popular binary tree question here. To
find the lowest common ancestor of a binary tree in java requires that
we run through a binary search tree and how it operates. What
then is a binary search tree? A Binary tree is a data structure in
which each node can have at most two children. That is, each node in the
binary tree will have data, left child and right child. The first node
of the tree is called the Root.
Java Interview questions and tutorials
Read: http://www.java67.com/2022/01/how-to-find-lowest-common-ancestor-of.html
