Чашечка Java
8.55K subscribers
3.87K photos
13 videos
56 files
6.33K links
Лучшие материалы по Java на русском и английском

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels
Download Telegram
Android Studio Giraffe is Now Stable

Android Studio Giraffe is now stable, bringing in the new IntelliJ 2022.3, a new IDE look and feel, improved Live Edit, Compose animation previews, and more.
By Sergio De Simone

Read: https://www.infoq.com/news/2023/07/android-studio-giraffe-stable/
Магия Spring Framework своими руками

Spring Framework позволяет сфокусироваться на бизнес-логике, а вся настройка инфраструктуры выполняется автоматически благодаря постобработке бинов. Зачастую для реализации дополнительной функциональности применяется Spring AOP - аспектно-ориентированное программирование.
Spring AOP бин, который накручивает дополнительную функциональность другим Spring бинам, помечается аннотацией @Aspect, но как потом этот бин используется для добавления дополнительной функциональности в поток исполнения?
В статье будет рассмотрен механизм проксирования объектов и его применение в Spring Framework.


Читать: https://habr.com/ru/articles/750894/?utm_campaign=750894
👍3
IntelliJ IDEA 2023.2. Language Server Protocol, AI Assistant, IntelliJ Profiler в редакторе, GitLab merge requests, ftw

Только что вышла IntelliJ IDEA 2023.2. В этом релизе в IDE появилась куча интересных фичей и важных улучшений.

Вы можете скачать последнюю сборку с официального сайта, или из бесплатного приложения Toolbox, или из snap-пакетов для Ubuntu.

Этот релиз IntelliJ IDEA 2023.2 представляет вам AI-ассистента, вооруженного набором инструментов машинного обучения. IntelliJ Profiler показывает подсказки в редакторе, делая профилирование более интуитивным и иформативным. Еще, в этом релизе появилась интеграция с GitLab.

В том посте мы пробежимся по всем основным фичам IntelliJ IDEA 2023.2. В отличие от официального анонса, вся европейская политкорректность выкинута на свалку, автор перевода не видит никакой ценности в соблюдении повесточки.

Кроме того, в этот четверг в Питере будет встреча Javawatch, посвященная Java 21. Я прочитаю мини-доклад минут на 30 о новых фичах, и потом мы сможем все вместе собраться и за кружкой пива это обсудить. Анонс события в телеге, обсуждение в чате. Я бывший PMM в JetBrains Big Data и тимлид в Remote Development/Projector, а сейчас работаю над российским дистрибутивом Java - Axiom JDK.
Волшебно. .

Читать: https://habr.com/ru/companies/bar/articles/751248/?utm_campaign=751248
👍1
What is Constructor in Java and How it works? [with Example]

In simple word, Constructor is a method like a block of code which is called by Java runtime during object creation using new() operator. Constructor are special in the sense that they have the same name as the Class they are part of. They are also special in a sense that they are called by JVM automatically when you create an object. Have you ever thought about Why do you need a constructor? What benefits it provide? One reason is to initialize your object with default or initial state since default values for primitives may not be what you are looking for. One more reason you create constructor is to inform the world about dependencies, a class needs to do its job. Anyone by looking at your constructors should be able to figure out, what he needs in order to use this class.  For example, following class OrderProcessor needs a Queue and Database to function properly.


Java Interview questions and tutorials

Read: http://www.java67.com/2014/09/Why-constructor-is-important-in-java-example.html
1
How to Check if a Given Point Lies Inside a Triangle in Java? [solved]

Hello guys, its been long time I shared a coding problem so I thought to share one today and its one of the interesting one, how to check if a give point is inside a triangle or not? Determining whether a point lies inside a triangle is a common problem in computational geometry. It finds applications in various fields, such as computer graphics, robotics, and image processing. In this article, we will delve into the mathematical concepts behind this problem and explore a practical Java implementation. We will examine the algorithm step-by-step and illustrate it with code examples. Additionally, we will provide unit tests to ensure the accuracy and reliability of our implementation.
Java Interview questions and tutorials

Read: http://www.java67.com/2023/07/how-to-check-if-given-point-lies-inside.html
1
Ивентная модель данных с использованием Kafka и Kafka Connect: Построение гибкой и распределенной архитектуры

Привет, Хабр! В наше время при постоянном росте объемов данных и необходимостью более быстрой и надежной обработки информации, мы сталкиваемся с требованием к эффективному обмену и синхронизации данных между различными системами. Отслеживание и обработка данных в реальном времени стало жизненно необходимым для современных приложений.

В этой статье мы рассмотрим, как Kafka Connect – мощный инструмент из экосистемы Apache Kafka – приходит на помощь при решении сложной задачи синхронизации данных между базами данных. Мы рассмотрим, как используя Kafka Connect, мы можем эффективно следить за изменениями в одной базе данных, обрабатывать их в нашем Java приложении и мгновенно записывать их в другую базу данных, обеспечивая надежность и безопасность данных.

Построим гибкую и масштабируемую архитектуру, которая позволит нам забыть о проблемах связанных с несогласованными данными и наслаждаться мгновенным доступом к актуальной информации для наших бизнес-процессов.


Читать: https://habr.com/ru/articles/751256/?utm_campaign=751256
👍3
Java News Roundup: Grails 6.0, PrimeFaces 13.0, JUnit 5.10, GraalVM, TornadoVM, New JEP Drafts

This week's Java roundup for July 24th, 2023 features news from OpenJDK, JDK 22, JDK 21, GraalVM Community Components 23.0.1, Spring Cloud 2022.0.4, Spring Security and Spring Shell point releases, Grails 6.0, TornadoVM 0.15.2, Liberica NIK 23.0.1, PrimeFaces 13.0, Quarkus 3.2.2, Hibernate Reactive 2.0.4, Micronaut 4.0.2, JBang 0.110, JHipster Lite 0.39, JUnit 5.10 and Gradle 8.3-RC2.
By Michael Redlich

Read: https://www.infoq.com/news/2023/07/java-news-roundup-jul24-2023/
Шпаргалка по структурам данных в Java

К каждому собеседованию важно готовиться и проще всего это делать, когда перед глазами есть готовый материал. В данной публикации я хочу поделиться с вами своей шпаргалкой, которую использую перед собеседованиями для повторения структур данных в Java.


Читать: https://habr.com/ru/articles/751648/?utm_campaign=751648
👍4
How to read CSV file in Java without using a third-party library? FileReader Example Tutorial

Hello guys, as you learn Java, one thing that comes up early and often is reading from/ writing to files, and doing something useful with that data. This is also one thing which you will keep doing and also forgetting very soon, if you are not then you have good memory as I always forget it and then I do google search to find my own articles. If you read this blog then you know that in the past, I have shared how to load CSV file using OpenCSV library as well how to load a CSV file with header using Jackson but a lot of you asked me how to do this without using any third party library like Jackson or OpenCSV. So, I thought to write about this article and I actually written but forgot to publish it for a long time. But I today I found it and publishing it now, it still works well.
Java Interview questions and tutorials

Read: http://www.java67.com/2023/08/how-to-read-csv-file-in-java-without.html
Разница между загрузкой и инициализацией классов в Java на любопытном примере

Привет, сегодняшняя статья будет о некоторых тонкостях загрузки и инициализации классов и немного о производительности (совсем чуть-чуть и в самом конце).
Поводом для написания статьи стал вопрос на StackOverflow. Откройте, но не торопитесь читать ответ ;)


Читать: https://habr.com/ru/articles/740156/?utm_campaign=740156
Одна из возможных версий переезда с MySQL на PostgreSQL

В этой статье я расскажу, какие подводные камни ждали команду разработки бэкенда служебных мобильных приложений одного банка, решившей мигрировать с MySQL на PostgreSQL.


Читать: https://habr.com/ru/articles/742552/?utm_campaign=742552
👍2
Ребят, ищем пишущего IT-редактора блогов в Tproger

Условия: удалёнка, фултайм

Что делать:
— искать темы, которые понравятся клиентам и заинтересуют читателей;
— вникать в эти темы настолько, чтобы говорить с экспертами примерно на одном языке;
— проводить интервью и собирать фактуру;
— превращать фактуру в статью, которую захочется читать и репостить;
— дорабатывать статью вместе с экспертами и менеджерами клиента.

Требования:
— пишете логично и ёмко, видите стилистические и речевые ошибки в тексте;
— быстро находите и проверяете информацию (в том числе в англоязычных источниках);
— любите общаться с экспертами и умеете их разговорить;
— спокойно реагируете на комментарии, но можете отстоять свою позицию, если правка неуместна;
— тактично вносите правки, чтобы автор не расстраивался, а был благодарен за помощь;
— знаете, что такое ключевое слово, мета-описание и зачем нужен Wordstat.

Чтобы откликнуться, заполняйте анкету.

#вакансии #работа
Как VMware создала проблему, а мы ее решили

Недавно в нашу компанию «Инфосистемы Джет» пришел заказчик с проблемой долгой реализации создаваемых портов на NSX-T (до 2 минут до момента запуска трафика). Основная боль заключалась в том, что новые поды K8s не всегда укладывались в timeout Health Check'a и процесс начинался опять.

Исходные данные у нас были такие. NSX использовался для построения микросегментированной сети в кластерах Kybernetes + Kyverno. Взаимодействие K8s и NSX было реализовано при помощи плагина VMware NCP. Несмотря на большое количество объектов, в интерфейсе все метрики по утилизации были в «зеленых» значениях, но ощущалось сильное замедление работы UI.


Читать: https://habr.com/ru/companies/jetinfosystems/articles/752234/?utm_campaign=752234
1
JavaDoc: добро или необходимое зло?

Привет! Меня зовут Андрей Костров, я старший разработчик в X5 Tech.

При создании проекта А мы вложили много сил в JavaDoc. Многим казалось это излишним. Затем проект А заморозили и начали новый – проект Б. При этом переиспользовали много кода из проекта А, вместе с JavaDoc. Рассказ о том, принёс ли JavaDoc пользу (спойлер: да). А также немного слов о том, где усилия по JavaDoc всё-таки были избыточны.


Читать: https://habr.com/ru/companies/X5Tech/articles/752338/?utm_campaign=752338
👍2👎1
Top 10 Courses to Learn System Design and Software Architecture in 2023 - Best of Lot

Software design or System design is one of the tricky concepts to master. You
can quickly learn a programming language like Java or Python, but creating software using that programming language is a totally
different thing. That's where software design and coding skills come to the
rescue. It's actually an art to structure your program, design your modules,
specify boundaries and interactions with other parts of the system so that
they are easier to read, maintain, and flexible to change. It's one of the
most essential skills for a software developer
but often gets ignored. If you look for an online course to learn Software
design and architecture, you won't find many, forget about good ones.


Java Interview questions and tutorials

Read: http://www.java67.com/2019/09/top-5-courses-to-learn-system-design.html
👍1
Чашечка Java
Photo
Differences between OAuth 2.0 and JWT (JSON Web Token)

Hello guys, both OAuth 2.0 and JWT (JSON Web Tokens) are two widely
used authentication and authorization protocols in modern web
applications. While both serve similar purposes, there are some key
differences between the two that are important to understand, which we will see in this article. This is also an important interview question and if you are preparing for Java and Microservices developer interviews, it's better to know how this two technology works and what are the key differences between then.  In short, OAuth 2.0 is primarily used for authorization, whereas JWT is primarily used for authentication. OAuth 2.0 uses access tokens, whereas JWT is a self-contained token. OAuth 2.0 has a complex authorization flow, whereas JWT has a simple flow. OAuth 2.0 provides better security as it reduces the risk of unauthorized access to protected resources, while JWT can be intercepted if not properly secured. OAuth 2.0 access tokens are short-lived and need to be refreshed periodically, whereas JWTs do not expire.

Java Interview questions and tutorials

Read: http://www.java67.com/2023/06/differences-between-oauth-20-and-jwt.html
👍3
Опыт Сдачи: Oracle Certified Professional: Java SE 11 Developer 1Z0-819

Всем Привет. Публикация для тех кто планирует сдавать OCP от Oracle. Подобных постов великое множество, как и материалов, но я решил написать пост о своем опыте сдачи этой сертификации.

Сдавал я сертификацию на Java SE 11 чуть более года назад. Тогда была уже доступен экзамен на Java SE 17, но насколько я помню отредактированных книг и мок тестов еще не было, поэтому я решил сдать именно на 11-ую Java.

Вообще насколько мне известно до сих пор доступен экзамен и на Java SE 8, но он по-прежнему состоит из OCA + OCP, хотя его значительно упростили с годами уменьшив количество вопросов.


Читать: https://habr.com/ru/articles/752350/?utm_campaign=752350
👍1
Разыскивается Senior/ Lead Java разработчик

Компания АО «Гринатом» ищет себе в команду крутого специалиста для работы над продуктом для HR-автоматизации на российском IT-рынке!

Стек проекта: Java 17, Spring, Kafka, GraphQL, PostgreSQL, Redis, Zeebe

Если вы хотите помочь сделать процесс найма сотрудников еще лучше и при этом получать хорошую заработную плату, разрабатывая продукт, которым в будущем будут пользоваться миллионы, то переходите по ссылке. Там подробности, условия и возможность оставить отклик.

#вакансия
👍2👎1
Top 10 Online Courses to Learn Data Structure and Algorithms in 2023 - Best of Lot

Hello guys, In the past, I have shared a lot of useful resources like books and tutorials to learn Data Structure and Algorithms for both beginners and experienced programmers. I have also shared a lot of Data Structure and Algorithmic interview questions like this and their solutions in Java. Still, I have got continuously queries about excellent online courses to learn Data Structure and Algorithms in Java. Even though the topics are completely independent with the programming language, Java developer definitely likes the online courses which teach Data Structure and Algorithms in Java, and that's why my recent post about best algorithms courses, which includes algorithms courses from JavaScript and Python didn't impress my readers.


Java Interview questions and tutorials

Read: http://www.java67.com/2019/07/top-10-online-courses-to-learn-data-structure-and-algorithms-in-java.html