Добро пожаловать на Виртуальную Стажировку Java
https://stepik.org/course/210937/promo
Это уникальный проект в котором вас ждет мир коммерческой разработки на Java. Вы под руководством опытного ментора реализуете проект от начала до деплоя на прод. В процессе работы над проектом вы познакомитесь и изучите современные технологии и библиотеки, применяемые для создания современных Java Backend приложений.
Технологии и инструменты, используемые в проекте:
- VCS, Git, GitHub
- Build Tool Gradle
- Spring Framework, Spring Boot
- Design patterns: IoC, Builder, DTO, Factory, Strategy, etc.
- HTTP, REST, WEB MVC
- SQL, MySQL, H2, JDBC, ORM, JPA, Hibernate, Liquibase
- JUnit, Mockito
- Lombok, Immutable Objects
- Logging, metrics
- JAR, WAR, Java Web Server, Apache Tomcat
- JSON, XML
- Containers, Docker
- Message Broker, RabbitMQ
- и многое другое.
Главной целью этого проекта является прививание инженерного мышления. Мы хотим, чтобы вы стали не просто кодерами, а настоящими инженерами, способными с помощью IT-технологий эффективно решать реальные задачи бизнеса.
Основные темы проекта:
- Архитектура приложения
- Дизайн паттерны
- Работа с требованиями
- Надёжность
- Тестирование
- Развертывание
- Observability (логи, метрики)
- Domain Driven Design (DDD)
- Clean code, refactoring
- Работа с базой данных
- Интеграция приложений
- и многое другое.
Завершив работу над этим проектом, вы получите опыт коммерческой разработки, знания, подкрепленные практикой, и уникальный кейс в свое портфолио.
По всем вопросам пишите автору и ментору проекта:
- Телеграмм (@javagurulv)
- Email ([email protected])
Телеграмм группа проекта Виртуальная Стажировка Java:
https://www.tg-me.com/+mvRhG9YECTlkZjQ0
https://stepik.org/course/210937/promo
Это уникальный проект в котором вас ждет мир коммерческой разработки на Java. Вы под руководством опытного ментора реализуете проект от начала до деплоя на прод. В процессе работы над проектом вы познакомитесь и изучите современные технологии и библиотеки, применяемые для создания современных Java Backend приложений.
Технологии и инструменты, используемые в проекте:
- VCS, Git, GitHub
- Build Tool Gradle
- Spring Framework, Spring Boot
- Design patterns: IoC, Builder, DTO, Factory, Strategy, etc.
- HTTP, REST, WEB MVC
- SQL, MySQL, H2, JDBC, ORM, JPA, Hibernate, Liquibase
- JUnit, Mockito
- Lombok, Immutable Objects
- Logging, metrics
- JAR, WAR, Java Web Server, Apache Tomcat
- JSON, XML
- Containers, Docker
- Message Broker, RabbitMQ
- и многое другое.
Главной целью этого проекта является прививание инженерного мышления. Мы хотим, чтобы вы стали не просто кодерами, а настоящими инженерами, способными с помощью IT-технологий эффективно решать реальные задачи бизнеса.
Основные темы проекта:
- Архитектура приложения
- Дизайн паттерны
- Работа с требованиями
- Надёжность
- Тестирование
- Развертывание
- Observability (логи, метрики)
- Domain Driven Design (DDD)
- Clean code, refactoring
- Работа с базой данных
- Интеграция приложений
- и многое другое.
Завершив работу над этим проектом, вы получите опыт коммерческой разработки, знания, подкрепленные практикой, и уникальный кейс в свое портфолио.
По всем вопросам пишите автору и ментору проекта:
- Телеграмм (@javagurulv)
- Email ([email protected])
Телеграмм группа проекта Виртуальная Стажировка Java:
https://www.tg-me.com/+mvRhG9YECTlkZjQ0
❤1👍1
При передаче параметров по значению (pass-by-value) в метод передается копия переменной, а оригинальное значение остается неизменным.
При передаче параметров по ссылке (pass-by-reference) передается сам адрес объекта в памяти, а не его копия. Это позволяет изменять объект внутри метода.
Однако в Java все параметры передаются по значению (pass-by-value), но важно понимать разницу для примитивов и объектов:
▪️ Для примитивных типов передается копия значения, и изменения внутри метода не влияют на оригинальную переменную.
▪️ Для объектов передается копия ссылки на объект, но сама ссылка неизменяема. Это значит, что можно изменить состояние объекта внутри метода, но нельзя заменить сам объект.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🔥5🎉2
Композиция и агрегация — это
🔹 Композиция —
Пример:
🔹 Агрегация —
Пример:
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10🤔5👍1
Проверьте свои знания, ответив на 8 вопросов – https://proglib.io/w/5f150300
🧐 Кому подойдет?
Разработчикам, которые знают любой объектно-ориентированный язык программирования и хотят углубиться в архитектурные паттерны.
🎮 Как проходит обучение?
В течение всего интенсива вы будете создавать игру «Звездные войны» и применять ключевые архитектурные паттерны. В процессе изучите:
– Как строить гибкую архитектуру, которая не замедляет разработку
– Как применять IoC-контейнеры и писать модульные тесты
– Как использовать SOLID за пределами ООП
– Как внедрять CI/CD и снижать технический долг
👉 Подробная программа обучения
А по промокоду
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2❤1
Переопределение метода (Method Overriding) — это
🔹 Основные правила
— Метод в подклассе должен иметь
— Должен быть такой же или более широкий уровень
— В подклассе можно
— Если метод в родительском классе объявлен как final, static или private,
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🎉2🔥1
Совет на 2025-й — будьте осторожнее с выбором работы.
IT-рынок штормит: массовые сокращения, заморозка найма, снижение зарплат. В такое время особенно важно отличать стоящие офферы от проходных.
Знакомо? Открываешь вакансию, а там: «Ищем middle-разработчика с опытом 10 лет, знанием 15 языков и готовностью работать за печеньки. Офис в Челябинске, релокация за ваш счет» 🤦♂️
Чтобы не тратить время на сотни сомнительных предложений, подпишитесь на IT Job Hub. Там мы отфильтровываем весь мусор и публикуем только избранные вакансии в стабильных компаниях:
— Зарплаты на уровне рынка, а не на уровне голодного студента
— Никаких «мы молодая и дружная семья» — только адекватные условия
— Проверенные работодатели, а не стартапы из сомнительных сфер
Вакансии удобно разбиты по тегам: #python #java #go #data #devops и по другим направлениям. Без воды и лишнего спама — только проверенные вакансии в знакомых компаниях.
Подписывайтесь, если не хотите упустить работу мечты → @proglib_jobs
IT-рынок штормит: массовые сокращения, заморозка найма, снижение зарплат. В такое время особенно важно отличать стоящие офферы от проходных.
Знакомо? Открываешь вакансию, а там: «Ищем middle-разработчика с опытом 10 лет, знанием 15 языков и готовностью работать за печеньки. Офис в Челябинске, релокация за ваш счет» 🤦♂️
Чтобы не тратить время на сотни сомнительных предложений, подпишитесь на IT Job Hub. Там мы отфильтровываем весь мусор и публикуем только избранные вакансии в стабильных компаниях:
— Зарплаты на уровне рынка, а не на уровне голодного студента
— Никаких «мы молодая и дружная семья» — только адекватные условия
— Проверенные работодатели, а не стартапы из сомнительных сфер
Вакансии удобно разбиты по тегам: #python #java #go #data #devops и по другим направлениям. Без воды и лишнего спама — только проверенные вакансии в знакомых компаниях.
Подписывайтесь, если не хотите упустить работу мечты → @proglib_jobs
👍2😁2🔥1
Друзья, запускаем важное исследование рынка труда в IT!
Нам очень важно понять:
• Как изменились зарплаты
• Что происходит с наймом
• Есть ли сокращения или рост
Ваши ответы помогут составить реальную картину происходящего в индустрии.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍1😁1
Forwarded from Библиотека C/C++ разработчика | cpp, boost, qt
Документация PostgreSQL — лучший источник знаний о СУБД. Но она отличается огромным объемом: не каждый разработчик осилит 3024 страницы формата А4.
Опытный бэкендер составил список самых важных сведений, которые ему самому хотелось бы знать перед началом работы с PostgreSQL. Эта подборка сэкономит вам несколько недель изучения документации, и скорее всего, пригодится для работы с другими СУБД.
👉 Список самого важного
Опытный бэкендер составил список самых важных сведений, которые ему самому хотелось бы знать перед началом работы с PostgreSQL. Эта подборка сэкономит вам несколько недель изучения документации, и скорее всего, пригодится для работы с другими СУБД.
👉 Список самого важного
😁8👍5🔥3
Оба метода используются для трансформации данных в Stream, но с ключевыми отличиями:
▪️ map(Function<T, R>) применяет функцию к каждому элементу потока и возвращает поток с преобразованными элементами (Stream<R>).
▪️ flatMap(Function<T, Stream<R>>) делает то же самое, но ожидает, что функция вернет Stream<R>, а затем "выпрямляет" вложенные потоки в один Stream<R>.
List<String> words = List.of("Hello", "World");
// map(): превращает каждое слово в список символов
List<List<Character>> mapped = words.stream()
.map(word -> word.chars()
.mapToObj(c -> (char) c)
.toList())
.toList();
// flatMap(): превращает каждое слово в поток символов и "сплющивает" их в один поток
List<Character> flatMapped = words.stream()
.flatMap(word -> word.chars()
.mapToObj(c -> (char) c))
.toList();
System.out.println(mapped); // [[H, e, l, l, o], [W, o, r, l, d]]
System.out.println(flatMapped); // [H, e, l, l, o, W, o, r, l, d]
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥3❤1👏1
База данных (БД) — это
🔹 Основные виды БД
▪️
▪️
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥1😢1
Forwarded from Библиотека джависта | Java, Spring, Maven, Hibernate
Найти работу теперь так же просто, как заказать такси 🚗
Представь, что поиск работы стал таким же удобным, как вызов такси.
1️⃣ Регистрируешься за 2 минуты
2️⃣ Проходишь AI-интервью в любое время
3️⃣ Получаешь персональные вакансии и пре-офер от Сбера
💡 Без стресса, без ожидания, без звонков "через недельку" – просто бери и делай!
🔗 Попробуй прямо сейчас! 👉 https://clc.to/GkOTTA
Реклама. ПАО СБЕРБАНК, ИНН 7707083893. Erid 2VtzqxUqFAv
Представь, что поиск работы стал таким же удобным, как вызов такси.
1️⃣ Регистрируешься за 2 минуты
2️⃣ Проходишь AI-интервью в любое время
3️⃣ Получаешь персональные вакансии и пре-офер от Сбера
💡 Без стресса, без ожидания, без звонков "через недельку" – просто бери и делай!
🔗 Попробуй прямо сейчас! 👉 https://clc.to/GkOTTA
Реклама. ПАО СБЕРБАНК, ИНН 7707083893. Erid 2VtzqxUqFAv
👍2🔥1😁1
Docker — это
▪️ Позволяет запускать приложение
▪️ Облегчает
▪️ Упрощает
▪️ Образ (Image) —
▪️ Контейнер (Container) —
▪️ Dockerfile —
▪️ Docker Compose —
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥3😁1🌚1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤3🔥2🤔1
🤔 Основы математики в Machine Learning / Deep Learning
🗓 6 марта приглашаем вас на прямой эфир, где мы подробно разберем ряд Тейлора, собственные векторы и другие ключевые понятия в ML.
(ссылка)
🌟 Спикер: *Мария Горденко* – Старший преподаватель ФКН НИУ ВШЭ, НИТУ МИСИС, аспирант департамента анализа данных и искусственного интеллекта ФКН НИУ ВШЭ, а также преподаватель на курсе Алгоритмы и структуры данных в proglib academy.
Место работы: Инженер-программист, ведущий эксперт НИУ ВШЭ, цифровой ассистент и цифровой консультант НИУ ВШЭ.
😮 На вебинаре вы узнаете:
🔵 Теорию вероятностей: обсудим случайные величины, вероятность, математическое ожидание и дисперсию.
🔵 Линейную алгебру: изучим векторы, матрицы, собственные векторы и собственные значения.
🔵 Математический анализ: разберем производные и разложение функций в ряд Тейлора.
🔵 Практику: применим полученные знания на реальных кейсах из области Machine Learning и Deep Learning.
🎯 Почему это важно?
Понимание математических основ помогает глубже разобраться в работающих под капотом алгоритмах ML/DL и эффективно применять их на практике.
👉 Присоединяйтесь к нам и совершенствуйте свои навыки в машинном обучении!
📌 Регистрация по ссылке: https://proglib.io/w/38262362
🗓 6 марта приглашаем вас на прямой эфир, где мы подробно разберем ряд Тейлора, собственные векторы и другие ключевые понятия в ML.
(ссылка)
🌟 Спикер: *Мария Горденко* – Старший преподаватель ФКН НИУ ВШЭ, НИТУ МИСИС, аспирант департамента анализа данных и искусственного интеллекта ФКН НИУ ВШЭ, а также преподаватель на курсе Алгоритмы и структуры данных в proglib academy.
Место работы: Инженер-программист, ведущий эксперт НИУ ВШЭ, цифровой ассистент и цифровой консультант НИУ ВШЭ.
😮 На вебинаре вы узнаете:
🔵 Теорию вероятностей: обсудим случайные величины, вероятность, математическое ожидание и дисперсию.
🔵 Линейную алгебру: изучим векторы, матрицы, собственные векторы и собственные значения.
🔵 Математический анализ: разберем производные и разложение функций в ряд Тейлора.
🔵 Практику: применим полученные знания на реальных кейсах из области Machine Learning и Deep Learning.
🎯 Почему это важно?
Понимание математических основ помогает глубже разобраться в работающих под капотом алгоритмах ML/DL и эффективно применять их на практике.
👉 Присоединяйтесь к нам и совершенствуйте свои навыки в машинном обучении!
📌 Регистрация по ссылке: https://proglib.io/w/38262362
👍1🔥1😁1
Media is too big
VIEW IN TELEGRAM
Proglib рассказывает базу в формате рилса
Please open Telegram to view this post
VIEW IN TELEGRAM
😁7👍4👏3
ArrayList — это динамический массив, а LinkedList — двусвязный список.
🔹 Структура данных
— ArrayList хранит элементы в
— LinkedList хранит
🔹 Операции вставки и удаления
— В ArrayList вставка/удаление в середине
— В LinkedList вставка/удаление
🔹 Использование памяти
— ArrayList хранит
— LinkedList требует
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥1🎉1
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
👍2🔥1😢1
Какое ощущение вызывают посты последний месяц?
😁 — Вопросы скучные и слишком простые
👍🏼 — Вопросы нормальные
🔥 — Много нового и интересного
Please open Telegram to view this post
VIEW IN TELEGRAM
👍35😁26🔥9
В компании возникла необходимость повысить производительность системы за счёт внедрения распределённого кеша. Ваша задача — спроектировать и реализовать высоконагруженный сервис кеширования, обеспечивающий быструю и надёжную работу в условиях интенсивного использования.
▪️ Условия:
1. Высокая доступность: сервис должен быть устойчив к сбоям и обеспечивать непрерывную работу.
2. Масштабируемость: возможность горизонтального масштабирования для обработки увеличивающегося объёма данных.
3. Консистентность данных: обеспечение согласованности данных между узлами кеша.
4. Управление устареванием: реализация механизма автоматического удаления устаревших данных из кеша.
— Выбор технологии: определение подходящего решения для распределённого кеширования (например, Redis, Memcached или собственная реализация).
— Репликация и шардирование: обеспечение надёжности и производительности через распределение данных и их дублирование.
— Алгоритмы замещения: выбор и реализация стратегий удаления устаревших или редко используемых данных (например, LRU, LFU).
Реализация на картинке 👆🏻
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥3😁3🎉3