JavaRocks
5.63K subscribers
103 photos
14 videos
207 links
Базовый канал для изучения языка Java.

Наш сайт: javarocks.ru

Все необходимые туториалы и материалы.

Тесты для проверки знаний. Лучшие практики и паттерны проектирования.
加入频道
🔍 Что такое MVC?

MVC (Model-View-Controller) — это популярный архитектурный паттерн, который разделяет приложение на три компонента:

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

View — представляет собой интерфейс пользователя. Он отвечает за отображение данных и взаимодействие с пользователем, но не содержит бизнес-логики.

Controller — посредник между Model и View. Он получает запросы от пользователя, передает их Model и возвращает результаты во View.

💡 MVC позволяет четко разделить обязанности между компонентами, облегчая поддержку и масштабирование кода.

👉 Java Rocks | #java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍41
Что такое NaN в Java?

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

🔗 Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
2
🔥 Наследование в Java

Java — это объектно-ориентированный язык программирования. Это означает, что все в Java состоит из классов и объектов и следует принципам ООП (объектно-ориентированного программирования). Одним из этих принципов является наследование.

Подробнее
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1👌1
👩‍💻 Подборка фреймворков и библиотек для разработки на Java

Spring – это гибкий фреймворк для Java, который очень удобен для веб-разработчиков. Он помогает создавать производительные программы, используя стандартные Java-объекты, и облегчает работу с инфраструктурой. Spring популярен, поскольку стал альтернативой тяжеловесным моделям, таким как Enterprise JavaBeans, и обеспечивает большую гибкость в разработке.

Hibernate – надёжный ORM-фреймворк для Java позволяет работать с большинством реляционных баз данных. Hibernate способен взаимодействовать с любой БД, поэтому его активно применяют в проектах, работающих с несколькими базами.

Struts – полезный Open Source Software MVC-фреймворк для написания масштабируемых веб-приложений Java. В отличие от некоторых современных фреймворков, которые акцентируют внимание на принципе «Соглашение превыше конфигурации», Struts фокусируется на более детальных и явных изменениях.

Google Web Toolkit – открытый Java-фреймворк. GWT используют для разработки AJAX-приложений. Его фишка — наличие компилятора из Java в JavaScript. Благодаря ему разработчики пишут только на Java, а перед тестированием генерируют код на JavaScript, HTML и CSS.

Grails – динамический полнотекстовый Java-фреймворк, основанный на шаблоне проектирования MVC. Он прост в освоении и отлично подходит новичкам. Grails — объектно ориентированный фреймворк, повышающий производительность разработчиков. Хотя он написан на Groovy, можно работать и с Java, поскольку оба языка имеют совместимый и понятный синтаксис.

Play – нацелен на повышение производительности разработчиков и готового продукта. В основе фреймворка лежит концепция договорённости перед конфигурацией. Кроме того, программисты получают функции горячей перегрузки кода и отображения ошибок прямо в браузере.

Dropwizard – предлагает мониторинг нагрузки с помощью библиотеки Metrics. Dropwizard имеет API HIbernate Validator, умеет работать с Logback и SLF4J для создания веб-журнала и упаковывает код в JAR-файлы, а не WAR.

Vaadin – фреймворк, который подойдёт как для простых задач с небольшим бюджетом или ограниченным сроком выполнения, так и для крупных корпоративных проектов. Vaadin имеет встроенные средства для настройки безопасности и коллекцию с 45+ компонентами UI, что значительно упрощает деятельность.

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

Apache Wicket – имеет встроенные средства для предотвращения инцидентов и позволяет защитить веб-продукты с помощью настройки политики безопасности контента. Она стала распространённым стандартом, который позволяет сервисам объявлять утверждённое происхождение информации до того, как её получит пользователь.
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍2😁2👌1
🖥 ОГРОМНАЯ обучающая база по Java на русском языке — настоящая золотая жила для тех, кто хочет освоить один из самых востребованных языков в IT.

Это не просто курс — это полноценный путь от абсолютного нуля до уровня, пригодного для поиска работы.

Вы пройдёте всё: от основ языка и ООП до современных фреймворков, паттернов проектирования и реальных практик разработки.

🔹 Что внутри:

🟡 Полный путь обучения языку: синтаксис, концепции, архитектура, best practices
🟡 Ключевые алгоритмы и паттерны решения задач — с примерами и объяснениями
🟡 Множество видеоразборов сложных тем и реальных кейсов
🟡 Практика на каждом шагу: упражнения разного уровня сложности после каждой лекции
🟡 Проект живёт с 2018 года и постоянно обновляется — вместе с новыми версиями Java, Spring, инструментами и подходами

Здесь вы не просто выучите Java — вы станете настоящим базированным разработчиком.

🚀 Становимся гуру Java здесь
Please open Telegram to view this post
VIEW IN TELEGRAM
💘1
Вакансии для Java-разработчиков за последние 14 дней:

Middle AQA Engineer (Java) Удалённо, от 150 т.р.

QA Automation Engineer (Java) Удалённо, 180 т.р.

AQA Java Engineer Удалённо (Москва), до 260 т.р.

AQA Java Удалённо (РФ), 265 т.р.

Java Разработчик Удалённо (РФ), от 3000 USD

QA Auto Java Удалённо (РФ), от 360 до 460 т.р.

Java-разработчик Удалённо, 380–450 т.р.

Java developer Удалённо, от 280 до 340 т.р.

QA Auto Java Удалённо (РФ), от 360 до 460 т.р.

#подборка #java
👍2
Сохраняй себе годноту : сотни бесплатных PDF-книг по языкам и технологиям.

Здесь есть буквально всё: гайды по Bash и основам Linux, книги по всем актуальным языкам программирования (включая Python, JS, Swift и другие), материалы по SQL, Docker, алгоритмам и не только. База регулярно обновляется и полностью бесплатна.

🆖 https://goalkicker.com/
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥2
🔥 Вакансии по Java за последнюю неделю:

☕️ QA Engineer Java. Удалённо (РФ / РБ), 210-250 т.р.

☕️ AQA Java Engineer. Удалённо (Москва), до 260 т.р.

☕️ Java-разработчик. Удалённо (РФ), от $3000

☕️ QA full stack Java. Удалённо (РФ), до 310 т.р.

☕️ Java Engineer. Удалённо, 6000 - 10000 USDT
Please open Telegram to view this post
VIEW IN TELEGRAM
👌1
Вопрос с собеседования

Можно ли в одном конструкторе вызвать и this(), и super()?

Ответ: Нет. В Java в конструкторе можно вызвать только один из них — либо this(), либо super(), и обязательно на первой строке.

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


tags: #собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
🖥 Тематическая подборка статей о классах в Java

1️⃣ Классы и объекты в Java. Эта статья познакомит вас с основами объектно-ориентированного программирования – классами и объектами. Вы узнаете, что они из себя представляют, чем отличаются друг от друга и как использовать те и другие.

2️⃣ Класс Scanner в Java. Проработав материал этой статьи, вы создадите собственный сканер! Он не сможет работать с бумажными документами, но с текстом справится без проблем!

3️⃣ Абстрактные классы и методы в Java. Абстрактные методы — мощный инструмент в Java, который расширяет возможности ООП, особенно в плане полиморфизма. Предлагаем познакомиться с ними поближе.

4️⃣ Ввод-вывод данных: классы FileInputStream, FileOutputStream. Эта статья познакомит вас с потоками ввода-вывода в Java, а также с особенностями классов FileInputStream, FileOutputStream и BufferedInputStream и их применением.

5️⃣ Класс PrintStream в Java. Основное назначение класса PrintStream – отправлять информацию в какой-либо поток. В этой статье на примерах разобрано, как это работает.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
⭐️ Полезные статьи по теме объектно-ориентированного программирования на Java

1️⃣ Принципы ООП в Java. В этой статье на примерах разобрано, что такое классы и объекты, а также как встраивать в код базовые принципы ООП: абстракцию, наследование, полиморфизм и инкапсуляцию.

2️⃣ Инкапсуляция в Java. Из этой статьи вы узнаете, что такое инкапсуляция в принципе и как она используется в программировании на Java.

3️⃣ Полиморфизм в Java. В этой статье на примерах рассмотрен один из принципов ООП – полиморфизм. Особый упор сделан на темы, которые часто затрагиваются во время собеседований.

4️⃣ Использование extends в Java: примеры и пояснения. Ключевое слово extends в Java используется для реализации наследования: один класс (дочерний) наследует свойства и поведение другого (родительского). Подробности вы найдете в этой статье.

5️⃣ Наследование в Java. Java — это объектно-ориентированный язык программирования. А одним из принципов ООП является наследование. В этой статье разбираем его на примерах.

6️⃣ Абстрактные классы в Java на конкретных примерах. Из этой статьи вы узнаете, что собой представляют абстрактные классы, а также каковы особенности наследования классов в Java.

7️⃣ Отношения между классами: наследование, композиция и агрегация в Java. В этой статье рассмотрен один из принципов ООП — наследование. Также вы познакомитесь и с другими видами связей между классами: композицией и агрегацией.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥 Добавление и удаление элементов в ArrayList

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

Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
1
🤔 В чём разница между написанием String в двойных кавычках " и вызовом new String(...)?

- Когда ты пишешь строку в двойных кавычках, она помещается в String Pool — специальную область для хранения строк.
- При вызове new String("...") — создаётся новый объект в куче, даже если такая же строка уже есть в пуле. Это избыточно и неэффективно, если тебе не нужен отдельный объект.
Итог: "abc" — это ссылка на уже существующую строку из пула, а new String("abc") — новый экземпляр в памяти.


Ставь 👍 если знал ответ, 🔥 если нет
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥6
📌 Статьи о программировании на Java для начинающих

1️⃣ Ключевое слово final в Java. В этой статье рассмотрены такие темы, как final и переменные, повышение производительности и улучшение безопасности с помощью final, инициализация переменных с модификатором final, нетранзитность final-ссылок.

2️⃣ Модификаторы доступа в Java. Из этой статьи вы узнаете, что такое модификаторы доступа в Java, а также познакомитесь с их работой на примерах.

3️⃣ Тернарный оператор в Java. В статье вы найдете синтаксис тернарного оператора, а также примеры его использования.

4️⃣ Сортировка вставками в Java. Сортировка массивов – это одна из самых распространенных операций, которую должен уметь выполнять начинающий Java-разработчик. Из этой статьи вы узнаете, что такое сортировка вставками.

5️⃣ 8 типичных ошибок начинающих Java-разработчиков. Подборка ошибок, которые часто допускают начинающие джависты (с примерами кода).
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Вакансии по Java за последнюю неделю:

☕️ Java-разработчик. Удалённо, 120-150 т.р.

☕️ Java Developer. Удалённо, до 200 т.р.

☕️ Java Developer. Удалённо, 280-300 т.р.

☕️ Auto QA Engineer Java. Удалённо (Казахстан), от 3000 евро

☕️ Java Developer. Удалённо, $5400-6700
Please open Telegram to view this post
VIEW IN TELEGRAM
📌 Классы и объекты в Java

В основе объектно-ориентированного программирования (ООП) лежат такие понятия, как классы и объекты. Эта статья познакомит вас с ними поближе.

📥 Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
1
✉️ Дайджест полезных материалов по Java, вышедших с 11 по 17 августа 2025 г.

🖥 Почитать:

🚩 На javarocks.ru:

🚩 Статические вложенные классы
🚩 Сложность алгоритмов
🚩 Как вывести массив в консоль в Java

🚩 Другие платформы:

🚩 Когда Structure Block уже не справляется: Продвинутая генерация огромных строений в Minecraft
🚩 Что я знаю про онлайн редактирование
🚩 Jakarta Data. Что это означает для Java-сообщества
🚩 Binary Heap на примере PriorityQueue в JAVA
🚩 Android обновление API SDK до 35 версии в сжатые сроки, в большом легаси-проекте
🚩 Пользовательские аннотации PVS-Studio теперь и в Java
🚩 Как мы монолит пилили
🚩 Maven Central ограничивает пропускную способность: что важно знать в 2025 году
🚩 Безопасность приложений: инструменты и практики для Java-разработчиков

👀 Посмотреть:

🚩 Java Architects Answer Your Questions
🚩 Auto-Vectorization in HotSpot
🚩 From Final to Immutable: The not-so-final word on `final`

Хорошего дня!

#дайджест
Please open Telegram to view this post
VIEW IN TELEGRAM