453 subscribers
69 photos
25 files
83 links
Пишу иногда интересно, а иногда не очень. Предложения, сотрудничество @Javacoding_bot
加入频道
Объемная шпаргалка по коллекциям в Java, где коллекции сравниваются по параметрам:

🔹 на чем основана;
🔹 дубли;
🔹 null;
🔹 синхронизированность;
🔹 потокобезопасность;
🔹 тип итератора.

Помогает уложить в голове систему, ну или просто в случаях, когда нужно быстро определиться с выбором. В конце еще и типы итераторов подробно описаны (прикрепляю на картинке).
Какие данные будут значением аргумента с индексом [1] метода main() при запуске программы MyProgramme.java инструкцией: java MyProgramme Some additional argues.
Anonymous Quiz
8%
java MyProgramme
8%
java
30%
MyProgramme
20%
Some
35%
additional
Недавно спрашивали, какие ресурсы я могу посоветовать по SQL, так что вот вам парочка неплохих:

📝 SQL Academy (на русском): есть теоретическая справка и большая база задач, приближенных к реальным рабочим ситуациям. Подойдет как как начинающим, так и опытным разрабам.

📝 SQL-Tutorial и SQL-Ex (на русском): онлайн-учебник, где есть теория и разбор задач с типичными ошибками, и коллекция задач по базам данных.

📝 HackerRank (на английском): нет теоретической справки, зато задачи делятся по сложности и темам, можно зарабатывать баллы и соревноваться с другими пользователями. Новичкам может быть сложновато, так что рассчитывайте свои силы.
И уж тем более, когда меня спрашивают про код, который я писал три месяца назад.
Для микросервисных приложений: Platform V Functions и DataSpace SDK

🔸 Platform V Functions – FaaS-решение для создания безопасных Serverless-приложений на Java, Python, Golang, NodeJS. С его помощью можно загружать исходный код сервиса в виде функции в OpenShift/k8s, не создавая при этом docker-образов и не тратя время на настройку окружения.

🔸 DataSpace SDK представляет собой инструмент взаимодействия с DataSpace по протоколу JSON-RPC. Про фичи, которые пригодятся Java-разработчикам, можно подробно прочитать в статье.
IntelliJ IDEA + удаленный Podman

Полгода назад в одном проекте столкнулся с использованием в качестве системы контейнеризации Podman. Ничего особенного в этом нет, тем более, что разработчики podman, понимая распространенность docker, позаботились о том, чтобы в консоли мы чувствовали себя как дома, добавив алиасы для команд docker.

Изюминка заключалась в том, что разработка ведется не на той же машине, где podman. Я заглянул в IntelliJ IDEA, чтобы разобраться, как подключиться к удаленной машине. Для удаленной работы с docker есть этот плагин, а в нем несколько вариантов. Обойдя ограничения по безопасности, я столкнулся с тем, что система сетует, что мы работаем не с docker. Как результат – ничего толкового не получилось.

Но вот теперь, вернувшись к этому проекту, я снова повторил попытку подключиться из idea к удаленному podman – работает. Я всегда стараюсь использовать инструменты с длительным временем поддержки, чтобы оказавшись в ситуации, когда функционала не хватает или обнаруживается ошибка, быть уверенным, что через некоторое время функционал появится, а ошибка будет исправлена. Для меня это важно. Ставлю в уме еще один плюсик разработчикам этих инструментов. Кстати, и свою работу я тоже стараюсь делать сопровождаемой, документированной и понятной.

Вот мои шаги, чтобы тема заработала:

🔺 на хосте с podman: podman system service --time=0 tcp:0.0.0.0:2979
🔺 в IntelliJ IDEA: идем в настройки ->Build, Execution, Deployment -> Docker.
🔺 добавляем docker-конфигурацию с очевидным названием podman,
🔺 и заполняем в TCP socket поле Engine API URL: tcp://localhost:12979
🔺 для проверки применяем, в этот раз у меня сразу высветилось Connection successful.

Ссылка на help плагина с более детальной информацией.
Какой из перечисленных методов и операций не может быть использован для объединения строк String или StringBuffer в Java-программах?
Anonymous Quiz
19%
append()
57%
toString()
13%
+
12%
concat()
Java Meetup

🗓 сегодня с 18:30
💸 бесплатно

Онлайн-митап для Java-разработчиков. Среди спикеров, кстати, техлид «Сбера» и старший разработчик «Тинькофф», да и доклады обещают быть интересными:

18:30 «Фичатоглы: Коварство иллюзорной простоты».

19:40 «Распределенная очередь задач на PostgreSQL».

20:20 «Spring Data JPA. Антипаттерны тестирования».

Прекрасный вариант, чтобы провести вечер с пользой.
Регистрация по ссылке.
Когда просят объяснить, что ты имел в виду, а ты даже не помнишь, как давно написал этот код.
Самостоятельно разбираться в использование Kafka с Java и Spring – дело непростое и долгое. Нашел перевод отличного гайда по асинхронному взаимодействию Spring-микросервисов при помощи Kafka. В качестве примера приведена довольно простая реализация, но она помогает понять, как можно осуществить более сложные решения для вашего проекта.
Granville Barnett, Luca Del Tongo, “Data Structures and Algorithms”
Dsa.pdf
1 MB
Это издание ценю за простые, но точные формулировки и объяснения. Для такой сложной темы, как алгоритмы, это крайне важно.

📌 информация по всем наиболее распространенным алгоритмам;

📌 диаграммы к каждому из них;

📌 примеры с псевдокодом, но он отлично переводится на Java.
Каждый раз 😞
Какой из перечисленных заголовков класса допустим?
Anonymous Quiz
14%
class A extends B, C {
8%
abstract final class A {
5%
abstract final class A implements B {
73%
class A implements B, C {
Javassist: библиотека для манипуляций с байт-кодом

Это инструмент, которым, как и великой магией, не стоит пользоваться без необходимости – с Javassist основной код становится менее понятным, так как у вас появляется новое полноценное приложение. Но при должной внимательности Javassist служит отличным средством трансформации байт-кода.

Подробности в статье.
Подписчики канала, прочитав разную литературу по теме
Популярные подходы к взаимодействию с СУБД

Для продуктов с РСУБД Oracle, где большая часть логики содержится внутри в виде хранимых процедур, существует легкий способ работать с этими хранимыми процедурами — библиотека Jooq. Все подробности — в статье.
Работая в облаке, важно продумывать не только старт, но и заботиться об аккуратной обработке завершения процессов. Не все об этом задумываются, но graceful shutdown способен положительно отразиться на поведении облачного приложения.

В статье автор на примере Kubernetes и Spring Boot рассказывает, какие ошибки могут возникнуть из-за невнимания к процессу завершения и как graceful shutdown способен их устранить. Милый комикс прилагается.
Какой из приведенных списков содержит наиболее полный перечень спецификаторов, управляющих доступом к методам класса?
Anonymous Quiz
2%
public, private, static
26%
public, static, protected, private и доступ по умолчанию
3%
public, private, protected
7%
public, static, final, protected
62%
public, private, protected и доступ по умолчанию
Годная видеолекция по Spring в двух частях

Для всех, кто хочет досконально разобраться, как устроен Spring: лекция покрывает такие аспекты, как жизненный цикл Spring-приложения, а также производительность, устройство ApplicationContext и множество интересных подробностей, которые не придется выискивать по разномастным источникам. Рекомендую.