Библиотека джависта | Java, Spring, Maven, Hibernate
24.9K subscribers
1.87K photos
38 videos
42 files
2.65K links
Все самое полезное для Java-разработчика в одном канале.

Список наших каналов: https://yangx.top/proglibrary/9197

Обратная связь: @proglibrary_feedback_bot

По рекламе: @proglib_adv

РКН: https://gosuslugi.ru/snet/67a5bbda1b17b35b6c1a55c4
加入频道
🤔 Очередной #дайджет для джавистов

🟤 Принципы и шаблоны чистого кода — руководство для специалиста по программному обеспечению

🟤 Рыночные данные в кармане — как получать их быстро и просто с помощью Java/Kotlin и Spring Boot + TinkoffApi

🟤 Подкаст Javaswag — о нагруженных сервисах и нестандартных практиках в процессах

🟤 Задача на миллиард строк — интересная задача и варианты ее решения

🟤 Разбираемся с MavenGate — новая атака на цепочку поставок для Java и Android-приложений
Класс Hashtable

Представляет собой структуру данных, которая используется для хранения и управления коллекциями пар «ключ-значение». Hashtable является одной из структур данных, предоставляемых Java Collections Framework, и работает по принципу хеш-таблицы. Он был представлен в ранних версиях Java и является устаревшим начиная с Java 5, так как более современные альтернативы, такие как HashMap, предпочтительнее.
📍📍 Tinkoff Java Meetup в Рязани

Доклады:

👉 как использование различных технологий для написания параллельного кода влияет на читаемость и производительность;
👉 почему команда Тинькофф выбрала Micronaut, а не Camunda
👉 что скрывается под маркетинговыми фразами о надежности, бесконечности и универсальности в object storage.

📆 13 февраля, пространство Svoboda

Регистрация тут
new vs valueOf

Старайтесь всегда использовать метод valueOf вместо конструктора в стандартных классах-оболочках примитивных типов, кроме тех случаев, когда вам нужно конкретно выделить память под новое значение.

Все оболочки, кроме чисел с плавающей точкой, от Byte до Long, имеют кэш. По умолчанию этот кэш содержит значения от -128 до 127. Следовательно, если ваше значение попадает в этот диапазон, то значение вернется из кэша. Значение из кэша достается в 3.5 раза быстрее, чем при использовании конструктора, плюс идёт экономия памяти.

Помимо этого, наиболее часто используемые значения могут также быть закэшированы компилятором и виртуальной машиной.
😈 Даркнет: как устроен теневой рынок труда

Рассказываем, как устроен теневой рынок даркнета, каких ИТ-специалистов там ищут и какую зарплату предлагают.

🔗 Читать статью
🔗 Зеркало
🤔 Где бесплатно учить Java в 2024 году

Изучения Java в 2024 году остается актуальным по нескольким причинам:

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

Карьерные возможности: Знание Java открывает широкий спектр карьерных возможностей. Работа с Java может предоставить вам возможность работать в таких областях, как разработка мобильных приложений, веб-разработка, разработка игр, аналитика данных и многое другое.

Android-разработка: Java является популярным языком программирования для разработки приложений под платформу Android. С учетом того, что Android продолжает быть одной из самых популярных мобильных операционных систем в мире, знание Java будет необходимым для разработки приложений для этой платформы.

Устоявшийся экосистема: Java имеет богатую экосистему инструментов и фреймворков, которые помогают разработчикам ускорить процесс разработки и повысить производительность. Знание Java позволит вам использовать все преимущества этой экосистемы и упростить свою работу.

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

Продолжение здесь

#почитать
EventListener

EventListener (слушатель событий) — это интерфейс, который позволяет объектам реагировать на события, происходящие в системе. Он используется для создания интерактивных приложений, где действия пользователя или изменения в системе должны вызывать определенные реакции.
This media is not supported in your browser
VIEW IN TELEGRAM
#memes

Когда начальник хвалит всех за выполненный проект, который делал только ты 😂😂
🤔 Очередной #дайджет для джавистов

🚩 DSL и конфигураторы контекста безопасности — Spring Security в деталях

🚩 Мероприятие — пишем качественный код

🚩 Framework для автоматизации тестирования на Java — путь к стабильности и качеству системы

🚩 Путеводитель в мире Java — бесплатные уроки для начинающих по Java

🚩 Mobile PeerLab — митап для мобильных разработчиков по трем трекам: iOS, Android, Flutter
🧑‍🎓🧑‍🎓 Анализ и оценка перспективы использования LSMW для автоматизации подготовки тестовых данных в SAP

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

Миграция данных является неотъемлемой частью жизнедеятельности любой ИС. Объектами миграции данных являются:

👉 все необходимые справочные данные (НСИ), имеющиеся в исторических системах;
👉 все необходимые персональные данные, имеющиеся в исторических системах.

Продолжение тут

#почитать
Интерфейс Supplier

Интерфейс Supplier — это функциональный интерфейс в языке программирования Java, определенный в пакете java.util.function. Он представляет собой интерфейс, который может использоваться для предоставления значений, но не принимает аргументов. В этом интерфейсе есть один метод, который не принимает аргументов и возвращает значение.

Метод Supplier:
T get();

Где T — это тип возвращаемого значения.

Supplier может быть полезным, когда вам нужно получить значение, но не требуется передавать какие-либо аргументы для его получения. Этот интерфейс часто используется, например, в лямбда-выражениях и стримах для предоставления значений.
Метод compareTo()

Используется для сравнения двух объектов. Обычно он применяется к объектам, реализующим интерфейс Comparable, чтобы определить их относительный порядок. Вот как обычно выглядит сигнатура метода compareTo():

int compareTo(T obj)

где T — это тип объектов, с которыми сравнивается текущий объект. Метод возвращает отрицательное целое число, ноль или положительное целое число в зависимости от того, как текущий объект сравнивается с переданным объектом obj.

Отрицательное число указывает на то, что текущий объект меньше, чем объект obj.
Ноль указывает на то, что текущий объект равен объекту obj.
Положительное число указывает на то, что текущий объект больше, чем объект obj.
🏔 Эпикфейл: карьера катится к чертям

🤦‍♂️ У всех нас случались провалы в карьере, о которых не хочется распространяться. Неловкий момент на собеседовании, провал проекта из-за глупой ошибки, конфликт с начальством — такие ситуации хочется поскорее забыть. Однако часто именно они дают нам самые ценные уроки и закаляют как профессионалов.

📝 Поделитесь своей историей карьерного провала в нашем новом опросе и расскажите, к чему он привел в итоге. Быть может, эта ошибка позволила вам пересмотреть свой путь и выбрать более подходящую профессию? А может, вы сделали правильные выводы и сейчас добились успеха?

👉 Поделиться историей
♦️ Книга «Clean Code Principles and Patterns: A Software Practitioner’s Handbook» — в книге собраны принципы и паттерны, которые помогут разработчикам, от новичков до экспертов, писать более чистый код

♦️ Полезные и неизвестные библиотеки Java — несколько очень интересных библиотек, которые могут пригодиться везде

♦️ MyBatis «на минималках» — курс молодого бойца по работе с MyBatis, который не реализует JPA спеки, а является альтернативой JPA

♦️ Релиз CheerpJ 3.0 — полноценная виртуальная машина Java на основе WebAssembly для запуска приложений Java внутри браузеров

♦️ Backend разработчик и зарплаты в 400+ — выпуск подкаста по Java для разработчиков и увлеченных
🗄️ Базовые запросы SQL: получение записей из БД

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

🔗 Читать статью
🔗 Зеркало
Можно ли в конструкторе использовать return?

Можно, но без возвращаемого значения справа от return. То есть можно использовать return как вспомогательную конструкцию при вычислениях в конструкторе, чтобы срочно закончить (прервать) выполнение дальнейшего кода и завершить инициализацию объекта.

Например, у нас есть класс Cat, и если Cat бездомный — isHomeless = true, нам нужно закончить инициализацию и не заполнять другие поля (ведь они нам неизвестны, так как котик бездомный).

Но если говорить о конкретных значениях, конструктор не может использовать return для возврата какого-то значения, потому что:

⏺️ При объявлении конструктора у вас не будет ничего похожего на возвращаемый тип;

⏺️ Как правило, конструктор неявно вызывается во время создания экземпляра;

⏺️ Конструктор — это не метод: это отдельный механизм, единственная цель которого — инициализировать переменные экземпляра.
🥇 Спортивная мотивация и мотивация в IT, что общего?

Рассказываем, как использовать психологические инструменты из спорта, чтобы увеличить внутреннюю мотивацию и повысить продуктивность.

👉 Читать статью
👉 Зеркало