Java Ready | Программирование
8.9K subscribers
1.22K photos
60 videos
1 file
597 links
Авторский канал по разработке на Java.
Ресурсы, гайды, задачи, шпаргалки.
Информация ежедневно пополняется!

Автор: @energy_it

Реклама на бирже: https://telega.in/c/java_ready
Download Telegram
👩‍💻 Разбираем Signature — криптографическое доказательство подлинности данных!

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

Приложение перестаёт полагаться на контекст и начинает опираться на математику, что делает систему устойчивее к подменам, атакам и ошибкам интеграции.


👉 Java Ready | #шпора
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥139👍5
📂 Напоминалка по базовым сетевым сервисам и портам!

Например, DNS переводит домены в IP-адреса, HTTPS отвечает за безопасное соединение с сайтами и API, а SSH позволяет безопасно подключаться к серверам.

На картинке — сетевые сервисы, их протоколы и стандартные порты, которые постоянно встречаются в backend, DevOps и инфраструктурной работе.

Сохрани, чтобы не забыть!

👉 Java Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍7🔥7
Получаем локацию по IP!

Иногда нужно понять, откуда пришёл пользователь: страна, город, регион. Это удобно для логов, аналитики, ограничений доступа и диагностики.

Задаём IP-адрес:
String ip = "8.8.8.8";


Делаем запрос к GeoIP API:
URL url = new URL("https://ip-api.com/json/" + ip);


Читаем ответ сервиса:
BufferedReader br = new BufferedReader(
new InputStreamReader(url.openStream())
);
String response = br.readLine();


Из ответа берём нужные поля:
System.out.println(response);


🔥 Такой подход позволяет быстро получить геолокацию
без сложных библиотек и локальных баз.

👉 Java Ready | #совет
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍7🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
💅 ProProProgs — ресурс для программистов на русском!

На этом сайте собраны учебники и статьи по Java, Python, JavaScript, C/C++ и даже по искусственному интеллекту. Если хочешь учиться результативно, разобраться с языком или модулем — можно открыть нужную тему и идти шаг за шагом.

📌 Оставляю ссылочку: proproprogs.ru

👉 Java Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍86🔥6🤝1
😎 На Хабре нашлась крутая статья о тестировании Android-приложений!

В этой статье:
• Что такое Robolectric и как он работает
• Как использовать Robolectric для тестирования без эмулятора и устройства
• Модификация байткода и использование ASM и кастомных ClassLoader'ов


🔊 Продолжай читать на Habr!


👉 Java Ready | #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍3🔥3
👩‍💻 Проверяем целостность JAR-файла по подписи!

Подписанный JAR позволяет убедиться, что файл не изменяли после сборки. Это важно, когда приложение скачивает плагины, обновления или модули.

В этом посте:
Запускаем проверку подписи;

Считываем вывод команды;

Проверяем результат.


Такой приём помогает повысить безопасность обновлений и модульных систем.

👉 Java Ready | #гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥105👍5
👩‍💻 Случайные числа, это основа для программирования!

Даже самые простые приложения часто требуют случайности. Стандартная Java позволяет сделать это быстро и просто.

Понимание диапазонов и типов возвращаемых значений помогает избежать типичных ошибок и делает код предсказуемым.


👉 Java Ready | #шпора
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥28👍74🤝4
This media is not supported in your browser
VIEW IN TELEGRAM
✍️ AlgoTree — понятные объяснения алгоритмов, деревьев и графов!

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

📌 Оставляю ссылочку: algotree.org

👉 Java Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍126🔥5🤝3
Защита от повторного запуска!

Иногда приложение нельзя запускать дважды, второй экземпляр создаёт конфликты и ошибки. Решение создать lock-файл, первый запуск ставит блокировку, второй сразу выходит.

Создаём lock-файл:
Path lockPath = Path.of("app.lock");


Открываем и пытаемся заблокировать:
FileChannel ch = FileChannel.open(lockPath,
StandardOpenOption.CREATE, StandardOpenOption.WRITE);

FileLock lock = ch.tryLock();


Если блокировка не получена — второй запуск запрещён:
if (lock == null) {
System.out.println("Экземпляр уже запущен");
System.exit(1);
}


Если всё ок, то приложение работает:
System.out.println("Запуск разрешён ");


👉 Java Ready | #совет
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍6🔥3