Библиотека Java разработчика
10.8K subscribers
1.14K photos
564 videos
58 files
1.44K links
📚 Лайфхаки, приёмы и лучшие практики для Java-разработчиков. Всё, что ускорит код и прокачает навыки. Java, Spring, Maven, Hibernate.


По всем вопросам @evgenycarter

РКН clck.ru/3KoGeP
Download Telegram
Проблема квадрата/прямоугольника, объяснение и решение

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

https://www.youtube.com/watch?v=AILeiAJY_78


👉@BookJava
👍2
Что такое пакет? Перечислите различные преимущества пакетов.

Пакеты — это набор связанных классов и интерфейсов, которые связаны вместе. Используя пакеты, разработчики могут легко модулировать код и оптимизировать его повторное использование. Кроме того, код внутри пакетов может быть импортирован другими классами и использован повторно. Несколько его преимуществ:
• Пакеты на Java помогают избежать конфликтов имен.
• Они обеспечивают более легкий контроль доступа к коду.
• Пакеты также могут содержать скрытые классы, которые не видны внешним классам и используются только внутри пакета..
• Создает правильную иерархическую структуру, которая упрощает поиск связанных классов.

👉@BookJava
👍4
Шпаргалка по паттернам проектирования

👉@BookJava
👍112
План подготовки к собеседованию на позицию Java разработчика

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

И я намеренно не пишу, для кого предназначен этот план подготовки: для senior, middle или junior разработчика — все зависит от конкретной вакансии и от требований работодателя. Поэтому опирайтесь на этот план, но фильтруйте и в то же время не воспринимайте его как исчерпывающее руководство.

https://habr.com/ru/articles/473872/

👉@BookJava
👍6
Коллеги, приглашаем вас на вебинар, где Валерий Харисов расскажет о том, как искать и находить неочевидные утечки исходного кода и содержащихся в них секретов.
🕚 29 июня в 15:00 (МСК)

Leak-Search — сервис сканирования публичных репозиториев на наличие утечек исходного кода, конфигураций и конфиденциальных данных компании.
Разработан и поддерживается командой по ИБ группы компаний QIWI

👨‍💻На вебинаре рассмотрим:

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

Все на реальных кейсах крупнейших российских и зарубежных компаний, утечки которых были найдены с помощью Leak-Search, либо известны публично.

Для участия на вебинаре зарегистрируйтесь по ссылке
https://link.webinar.fm/register/55392181/7xyczjsv

🕚Ждем вас 29 июня в 15:00 (МСК)

❗️На вебинаре вы получите доступ к пробному периоду❗️
🔥2👌1
Java (Средний уровень)

Урок 1 - Обучение Java (средний уровень). Урок 1 - Строковые операторы
Урок 2 - Строковые операторы в Java (часть 2)
Урок 3 - Рекурсия в Java
Урок 4 - Введение в коллекции в Java. ArrayList
Урок 5 - Коллекции ArrayList и iterator в Java
Урок 6 - Коллекции LinkedList в Java
Урок 7 - Коллекции LinkedList в Java
Урок 8 - Коллекции в Java. Конвертация списка в массив
Урок 9 - Коллекции в Java. Сортировка списка
Урок 10 - Коллекции в Java. Метод для вывода списка в консоль

Все видео доступны на youtube

👉@BookJava
👍61
Spring Profiles

В этом руководстве мы сосредоточимся на представлении профилей в Spring.
Профили являются основной особенностью фреймворка, позволяя нам сопоставлять наши beans с различными профилями - например, dev, test и prod.
Затем мы можем активировать разные профили в разных окружениях, чтобы загружать только те модули, которые нам нужны.

https://www.baeldung.com/spring-profiles

👉@BookJava
👍3
Погрузиться в мир Javа и написать свою первую программу? Уже через 14 дней подготовительного курса!

Приходите с любым бэкграундом: нам не важны возраст, пол, образование и текущая профессия. Всего 990 ₽ и ваше жгучее желание начать.

Вас ждет 62 урока теории и практики прямо в браузере, вебинары, лайвкодинг и первая собственная программа на Java, написанная под руководством опытного наставника и сертификат по окончании.

Начало уже 4 июля!
👍5🤔1
Как прочитать криптографический ключ?

Для чтения криптографического ключа необходимо использовать классы Java Cryptography Architecture (JCA). Пример кода для чтения криптографического ключа из файла вида PKCS#8 с помощью этих классов может выглядеть следующим образом:

// Загружаем публичный ключ из файла
FileInputStream fis = new FileInputStream("public.pem");
BufferedInputStream bis = new BufferedInputStream(fis);
DataInputStream dis = new DataInputStream(bis);
byte[] keyBytes = new byte[dis.available()];
dis.readFully(keyBytes);
dis.close();

// Преобразуем байты в объект PublicKey
X509EncodedKeySpec spec = new X509EncodedKeySpec(keyBytes);
KeyFactory kf = KeyFactory.getInstance("RSA");
PublicKey publicKey = kf.generatePublic(spec);


// Используем ключ для выполнения криптографических операций

👉@BookJava
👍5
Сжатие указателей в Java

В статье речь пойдет о реализации сжатия указателей в Java Virtual Machine 64-bit, которое контролируется опцией UseCompressedOops и включено по-умолчанию для 64 битных систем начиная с Java SE 6u23.

https://habr.com/ru/articles/440166/

👉@BookJava
👍3