Please open Telegram to view this post
VIEW IN TELEGRAM
😁40👍7🔥2👏2💯1
🧐 Хочешь в Data Science, но не знаешь, с чего начать?
Пройди короткий тест по математике — бот покажет, насколько ты готов к переходу и что стоит подтянуть.
👉 Пройти тест
Пройди короткий тест по математике — бот покажет, насколько ты готов к переходу и что стоит подтянуть.
Всего пару минут — и ты поймёшь, куда двигаться дальше.
👉 Пройти тест
This media is not supported in your browser
VIEW IN TELEGRAM
🌐 Путешествие URL: что происходит, когда вы вводите адрес сайта
Каждый раз, когда вы набираете https://example.com в браузере — за кулисами запускается целая цепочка событий 👇
1️⃣ Разбор адреса
Браузер делит URL на части:
▪️ https — протокол
▪️ example.com — домен
▪️ /page — путь к ресурсу
2️⃣ Поиск IP
Если IP не сохранён в кеше, браузер спрашивает DNS-сервер: «Где живёт example.com?»
3️⃣ Установление соединения
Создаётся TCP-соединение с сервером по IP и порту (80 для HTTP, 443 для HTTPS).
4️⃣ Запрос ресурса
Браузер отправляет HTTP-запрос: GET /page HTTP/1.1
5️⃣ Ответ сервера
Сервер возвращает HTML, CSS, JS и статус-код (например, 200 OK или 404 Not Found).
6️⃣ Рендеринг страницы
Браузер обрабатывает HTML, применяет стили и выполняет JavaScript.
7️⃣ Шифрование
Если сайт работает по HTTPS, соединение шифруется через SSL/TLS.
8️⃣ Кеширование
Браузер сохраняет ресурсы, чтобы при следующем визите всё грузилось быстрее.
🐸 Библиотека джависта
#CoreJava
Каждый раз, когда вы набираете https://example.com в браузере — за кулисами запускается целая цепочка событий 👇
Браузер делит URL на части:
▪️ https — протокол
▪️ example.com — домен
▪️ /page — путь к ресурсу
Если IP не сохранён в кеше, браузер спрашивает DNS-сервер: «Где живёт example.com?»
Создаётся TCP-соединение с сервером по IP и порту (80 для HTTP, 443 для HTTPS).
Браузер отправляет HTTP-запрос: GET /page HTTP/1.1
Сервер возвращает HTML, CSS, JS и статус-код (например, 200 OK или 404 Not Found).
Браузер обрабатывает HTML, применяет стили и выполняет JavaScript.
Если сайт работает по HTTPS, соединение шифруется через SSL/TLS.
Браузер сохраняет ресурсы, чтобы при следующем визите всё грузилось быстрее.
#CoreJava
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍4🔥4
⚡️ Просто о сложном: как JIT делает код быстрее
Вы когда-нибудь задумывались, как JIT умеет так ловко оптимизировать код в реальном времени?
Сегодня разберём, какие именно суперспособности JIT даёт вашему коду.
🔹 Инлайнинг методов
Когда JIT обнаруживает, что какой-то метод выполняется слишком часто, он может инлайнить его. Это значит, что весь код метода не будет вызываться отдельно, а его инструкции будут вставляться прямо в место вызова.
Пример:
Стало:
🔹 Удаление мертвого кода
JIT всегда анализирует, выполняется ли тот или иной участок кода. Если метод или условие никогда не будет вызвано (например, условие, которое всегда ложно), JIT его удаляет.
🔹 Оптимизация циклов
Циклы — частая конструкция, и JIT всегда старается оптимизировать их выполнение. Например, если цикл выполняется много раз, JIT может переработать его для уменьшения количества операций.
🔹 Параллельная компиляция
Если ранее компиляция шла поэтапно, сейчас JIT может компилировать несколько частей программы одновременно. Это не только ускоряет работу компилятора, но и уменьшает задержки при запуске программы.
🔹 Использование final переменных
JIT предполагает, что final переменные не изменяются после инициализации. Это даёт компилятору возможность предсказать их значения и оптимизировать операции с ними.
🔹 Удаление лишних проверок
JIT понимает, какие проверки в коде избыточны. Например, если переменная была уже проверена на null, и это значение не изменяется, JIT может просто игнорировать повторные проверки.
🔹 Классификация горячих и холодных методов
JIT следит за тем, какие методы выполняются часто (горячие) и какие — нет (холодные). Он решает компилировать только те методы, которые чаще всего используются. Если горячий метод вдруг перестаёт быть горячим, JIT может освободить его от компиляции, освобождая ресурсы.
🔹 Слияние и удаление дубликатов
Если программа выполняет одинаковые операции несколько раз, JIT сливает их в одну или избавляется от дублирующихся вычислений.
Пример:
JIT может понять, что a + b одинаково для обеих операций, и просто использовать результат из первого вычисления во втором.
💬 Пишите в комменты, какие инструменты ещё разобрать.
🐸 Библиотека джависта
#CoreJava
Вы когда-нибудь задумывались, как JIT умеет так ловко оптимизировать код в реальном времени?
Сегодня разберём, какие именно суперспособности JIT даёт вашему коду.
🔹 Инлайнинг методов
Когда JIT обнаруживает, что какой-то метод выполняется слишком часто, он может инлайнить его. Это значит, что весь код метода не будет вызываться отдельно, а его инструкции будут вставляться прямо в место вызова.
Пример:
int sum(int a, int b) {
return a + b;
}
int result = sum(5, 10);
Стало:
int result = 5 + 10; // JIT инлайнит код метода sum
🔹 Удаление мертвого кода
JIT всегда анализирует, выполняется ли тот или иной участок кода. Если метод или условие никогда не будет вызвано (например, условие, которое всегда ложно), JIT его удаляет.
🔹 Оптимизация циклов
Циклы — частая конструкция, и JIT всегда старается оптимизировать их выполнение. Например, если цикл выполняется много раз, JIT может переработать его для уменьшения количества операций.
🔹 Параллельная компиляция
Если ранее компиляция шла поэтапно, сейчас JIT может компилировать несколько частей программы одновременно. Это не только ускоряет работу компилятора, но и уменьшает задержки при запуске программы.
🔹 Использование final переменных
JIT предполагает, что final переменные не изменяются после инициализации. Это даёт компилятору возможность предсказать их значения и оптимизировать операции с ними.
🔹 Удаление лишних проверок
JIT понимает, какие проверки в коде избыточны. Например, если переменная была уже проверена на null, и это значение не изменяется, JIT может просто игнорировать повторные проверки.
🔹 Классификация горячих и холодных методов
JIT следит за тем, какие методы выполняются часто (горячие) и какие — нет (холодные). Он решает компилировать только те методы, которые чаще всего используются. Если горячий метод вдруг перестаёт быть горячим, JIT может освободить его от компиляции, освобождая ресурсы.
🔹 Слияние и удаление дубликатов
Если программа выполняет одинаковые операции несколько раз, JIT сливает их в одну или избавляется от дублирующихся вычислений.
Пример:
int a = 5;
int b = 5;
int c = a + b;
int d = a + b; // Дублирование
JIT может понять, что a + b одинаково для обеих операций, и просто использовать результат из первого вычисления во втором.
#CoreJava
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤4🔥2
🚀 Java Roadmap 2025
В 2025 году Java продолжает развиваться, и вот на что стоит обратить внимание в учёбе. Роадмапа на картинке, ниже ключевые моменты.
1️⃣ Основы и ООП
Фокус на record классы (Java 16+), абстракция и полиформизм.
2️⃣ Коллекции и потоки
Основной тренд — использование Streams API (Java 8+) и неизменяемых коллекций (Java 9+).
3️⃣ Многозадачность
Project Loom и виртуальные потоки (Java 21) упростят многозадачность и повысит производительность.
4️⃣ Функциональное программирование
Расширение использования лямбда-выражений и функциональных интерфейсов.
5️⃣ Web и микросервисы
Активное использование Spring Boot, Spring Cloud, Swagger/OpenAPI для документации.
6️⃣ Тестирование и сборка
JUnit 5, Mockito, Testcontainers и инструменты сборки Maven и Gradle для автоматизации.
7️⃣ Базы данных и ORM
Знания JDBC, Hibernate, JPA для создания надежных и масштабируемых систем.
🐸 Библиотека джависта
#Enterprise
В 2025 году Java продолжает развиваться, и вот на что стоит обратить внимание в учёбе. Роадмапа на картинке, ниже ключевые моменты.
Фокус на record классы (Java 16+), абстракция и полиформизм.
Основной тренд — использование Streams API (Java 8+) и неизменяемых коллекций (Java 9+).
Project Loom и виртуальные потоки (Java 21) упростят многозадачность и повысит производительность.
Расширение использования лямбда-выражений и функциональных интерфейсов.
Активное использование Spring Boot, Spring Cloud, Swagger/OpenAPI для документации.
JUnit 5, Mockito, Testcontainers и инструменты сборки Maven и Gradle для автоматизации.
Знания JDBC, Hibernate, JPA для создания надежных и масштабируемых систем.
#Enterprise
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥5❤2🥱1
🎲 Мы не только учим, но и играем!
На экспресс-курсе «Математика для Data Science» — викторина с призом TG-Premium 🎁
Проверь знания, прокачай математику и забери приз.
‼️ Оплатишь до 19 октября — получишь базовый курс в подарок.
👉 Записаться на курс
На экспресс-курсе «Математика для Data Science» — викторина с призом TG-Premium 🎁
Проверь знания, прокачай математику и забери приз.
‼️ Оплатишь до 19 октября — получишь базовый курс в подарок.
👉 Записаться на курс
This media is not supported in your browser
VIEW IN TELEGRAM
Создавайте технологии, которые меняют мир
В команду Яндекса нужны бэкенд-разработчики с опытом от 3 лет на C++, Python, Java/Kotlin, Go — строить полезные сервисы для миллионов пользователей.
Как получить офер за неделю?
• До 12 ноября оставить заявку на участие и пройти предварительный этап.
• 15–16 ноября решить задачи на технических секциях.
• 17–21 ноября прийти на финальную встречу.
Присоединяйтесь к одной из команд Яндекса, чтобы усилить нашу инженерную культуру и строить новую технологическую реальность.
Читайте подробности и оставляйте заявку на сайте.
Реклама. ООО "Яндекс". ИНН 7736207543
В команду Яндекса нужны бэкенд-разработчики с опытом от 3 лет на C++, Python, Java/Kotlin, Go — строить полезные сервисы для миллионов пользователей.
Как получить офер за неделю?
• До 12 ноября оставить заявку на участие и пройти предварительный этап.
• 15–16 ноября решить задачи на технических секциях.
• 17–21 ноября прийти на финальную встречу.
Присоединяйтесь к одной из команд Яндекса, чтобы усилить нашу инженерную культуру и строить новую технологическую реальность.
Читайте подробности и оставляйте заявку на сайте.
Реклама. ООО "Яндекс". ИНН 7736207543
Please open Telegram to view this post
VIEW IN TELEGRAM
😁15👍5🔥4💯4
🛡 Circuit Breaker & Resilience4j
В микросервисах падение одного сервиса может уронить всю систему — эффект «домино». Circuit Breaker помогает изолировать сбои и держать SLA под контролем.
📝 Промпт:
💡 Расширения:
— Настройте TimeLimiter для защиты от зависаний.
— Интегрируйте с Spring Cloud Gateway для глобальных политик.
— Добавьте Grafana dashboards для визуализации отказоустойчивости.
🐸 Библиотека джависта
#Enterprise
В микросервисах падение одного сервиса может уронить всю систему — эффект «домино». Circuit Breaker помогает изолировать сбои и держать SLA под контролем.
📝 Промпт:
Generate a Spring Boot 3 configuration with Resilience4j Circuit Breaker.
— Configure Circuit Breaker around external HTTP calls (e.g. RestTemplate/WebClient).
— Add Retry policy with exponential backoff.
— Add Rate Limiter and Bulkhead isolation (thread pool separation).
— Provide fallback methods (graceful degradation).
— Enable metrics collection with Micrometer and Prometheus.
— Expose actuator endpoints for circuit state monitoring.
— Add chaos testing scenario: simulate latency and failures.
— Настройте TimeLimiter для защиты от зависаний.
— Интегрируйте с Spring Cloud Gateway для глобальных политик.
— Добавьте Grafana dashboards для визуализации отказоустойчивости.
#Enterprise
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤3🔥1
Недавно мы анонсировали старт нового курса «Математика для Data Science».
В ближайшие дни выйдет серия постов о том, что ждёт вас на курсе, а пока познакомим вас с его экспертами.
Спикеры курса:
👤 Ксения Кондаурова
Преподаватель и автор курсов для бакалавриата Центрального Университета (Т-Банк), спикер и методист для Edutoria (Сбербанк). Ксения расскажет, как линейная алгебра применяется для построения предсказательных моделей, и научит проверять гипотезы для бизнеса с помощью статистики.
👤 Диана Миронидис
Преподаватель НИУ ВШЭ, автор и методист Яндекс Практикума. Самый экстравагантный преподаватель из всех, с кем вы учились, — убедитесь, что математика может быть нескучной. Диана погрузит в математический анализ, научит исследовать функции и находить параметры, при которых ошибка модели минимальна.
👤 Маргарита Бурова
Академический руководитель образовательных программ по аналитике и анализу данных, Wildberries & Russ. Проведёт квиз с розыгрышем годовой подписки TG Premium. Маргарита — эксперт в дата-сайенс, ИИ и математических методах анализа данных, фанат развития ИТ-образования.
Вместе с экспертами за 8 недель вы не просто получите знания, а познакомитесь с математикой заново.
🎁 Только при оплате до 19 октября курс «Базовая математика» в подарок!
👉 Записаться на курс
В ближайшие дни выйдет серия постов о том, что ждёт вас на курсе, а пока познакомим вас с его экспертами.
Спикеры курса:
👤 Ксения Кондаурова
Преподаватель и автор курсов для бакалавриата Центрального Университета (Т-Банк), спикер и методист для Edutoria (Сбербанк). Ксения расскажет, как линейная алгебра применяется для построения предсказательных моделей, и научит проверять гипотезы для бизнеса с помощью статистики.
👤 Диана Миронидис
Преподаватель НИУ ВШЭ, автор и методист Яндекс Практикума. Самый экстравагантный преподаватель из всех, с кем вы учились, — убедитесь, что математика может быть нескучной. Диана погрузит в математический анализ, научит исследовать функции и находить параметры, при которых ошибка модели минимальна.
👤 Маргарита Бурова
Академический руководитель образовательных программ по аналитике и анализу данных, Wildberries & Russ. Проведёт квиз с розыгрышем годовой подписки TG Premium. Маргарита — эксперт в дата-сайенс, ИИ и математических методах анализа данных, фанат развития ИТ-образования.
Вместе с экспертами за 8 недель вы не просто получите знания, а познакомитесь с математикой заново.
🎁 Только при оплате до 19 октября курс «Базовая математика» в подарок!
👉 Записаться на курс
👍2❤1😁1
Топ-3 статьи о Java и смежных технологиях за неделю по версии нашего канала.
Разбор Factory, Builder, Singleton и др. с практическими примерами. Главная мысль — паттерны нужны там, где реально упрощают код, а не ради “красоты”.
Из монолита выделяли чат-сервис. Год миграции, дублирование логики, проблемы с транзакциями — но результатом стал независимый модуль и гибкость для дальнейшей разработки.
Поддержка Java 17+, новый JsonMapper, null-safety, совместимость со Spring Boot 4. Jackson 2 уходит в прошлое — пора проверять зависимости.
#News
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2👏1
Forwarded from Библиотека собеса по Java | вопросы с собеседований
Проверим, как вы дружите с многопоточностью 👇
У вас есть метод
doWork()
, который выполняет тяжёлую операцию (например, чтение и обработку файла).📦 Задание:
Нужно запустить ровно 5 потоков, каждый из которых вызывает
doWork()
, и дождаться завершения всех перед продолжением выполнение основного потока.Разрешено использовать любые инструменты.
Ставьте → 🔥, если нравится формат. Если нет → 🤔
#practise
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11❤2👍1
♾️ 17 формул, которые изменили мир
Математика в действии — как уравнения, придуманные века назад, сегодня управляют интернетом, медициной, космосом и вашими финансами.
📎 Читать статью
А если после статьи захотите разобраться, как эта математика работает в Data Science — вот экспресс-курс, который всё расставит по полочкам:
«Математика для Data Science»
🎓 За 2 месяца поймёте, как работают алгоритмы ML под капотом.
🗓️ Старт — 6 ноября
👉 Записаться на курс
Математика в действии — как уравнения, придуманные века назад, сегодня управляют интернетом, медициной, космосом и вашими финансами.
📎 Читать статью
А если после статьи захотите разобраться, как эта математика работает в Data Science — вот экспресс-курс, который всё расставит по полочкам:
«Математика для Data Science»
— практика и живые уроки
— разбор кода и проверка домашних
— поддержка в Telegram-чате
🎓 За 2 месяца поймёте, как работают алгоритмы ML под капотом.
🗓️ Старт — 6 ноября
👉 Записаться на курс
И снова воскресная рубрика. Делитесь как прошла рабочая неделя или как проходят ваши выходные.
А я сегодня утром наблюдал эту громадину. Рядом с ним даже автобус как игрушечный😅
Есть среди нас богатые белые люди, кто был на круизе?
Отправляйте фото в комментарии👇🏻
#DevLife
Please open Telegram to view this post
VIEW IN TELEGRAM