Курсы по Java для новичков
677 subscribers
66 photos
1 video
4 files
73 links
Я Оксана Еськова - преподаватель Вуза с 20-летним стажем.
Научу писать код на Java c нуля.
Курсы c автоматической проверкой задач: https://stepik.org/users/23008752
Все вопросы сюда 👉 @aksana_yaskova
Download Telegram
🔥4
Что будет выведено на консоль?
Anonymous Quiz
23%
Static method in A
50%
Static method in B
23%
Ошибка компиляции
5%
Runtime Exception
👍3
Что будет выведено на консоль?
Anonymous Quiz
21%
Hello
10%
World
55%
Hello World
2%
null
12%
Ошибка компиляции
😱3
Сегодня последний день предновогодней распродажи на Степике!
Если Вы планировали, но откладывали, то поспешите! Скидка на все мои курсы 20%.
Тем более, что в конце года ожидается традиционное повышение цен 😱
Вот список ссылок для покупки моих курсов со скидкой 20% :
Объектно-ориентированное программирование на Java
Прокачай Java
Основы программирования на C/C++
Основы программирования на C/C++ Часть 2
Основы программирования на C/C++ Полная версия
👌3👍2
Мой курс включен в одну из номинаций Stepik Awards🥳🥳!
Да, это наконец, случилось: курс "Прокачай Java" включили в номинацию "Языки программирования" на Stepik Awards 2024!

Я пока не совсем понимаю: почему именно этот курс (он ведь совсем новый и еще не обкатан). И не очень надеюсь на победу ( в конкурентах там Андрей Сумин и Иосиф Дзеранов). Но!!! Сам факт участия в этой премии мне очень приятен.
Результаты огласят 12 декабря. Голосовать за него нельзя, выбор делает команда Степика. Но держим кулачки!
🔥52👍91😱1
С наступающим Новым годом и Рождеством! 🎄 🎄 🎄 ❄️🥂 🥂 🥂
Хочу поддержать в моих учениках праздничное настроение. Поэтому приняла два решения:
1) В этом году цены на курсы повышены не будут 😉 👏
2) Объявляю свою новогоднюю распродажу всех курсов со скидкой 15%. 🎁 🎁 🎁

И хочу напомнить, что на Степике можно приобрести курс в подарок! Если Вы хотите порадовать своих близких - подарите им возможность получить новые знания в комфортной обстановке! Ведь лучшие инвестиции – это инвестиции в себя! 😏 🧑‍🎓 😎

Распродажа продлиться до 7 января. Для покупки переходите по ссылкам:
Объектно-ориентированное программирование на Java
Прокачай Java
Основы программирования на C/C++
Основы программирования на C/C++ Часть 2
Основы программирования на C/C++ Полная версия
🔥116👍2🍾1
Курсы по Java для новичков pinned «С наступающим Новым годом и Рождеством! 🎄 🎄 🎄 ❄️🥂 🥂 🥂 Хочу поддержать в моих учениках праздничное настроение. Поэтому приняла два решения: 1) В этом году цены на курсы повышены не будут 😉 👏 2) Объявляю свою новогоднюю распродажу всех курсов со скидкой…»
С Новым годом, друзья! 🥂 🥂 🥂
Можно уже начинать отмечать! И в качестве праздничного сюрприза от меня: вот код, который переносит Вас на год вперед! Программа выводит: 2025-12-31
Объяснения завтра, когда этого бага уже не будет 🤣🤣🤣
26👍4🤩1
Всех с наступившим! 🧦🦌🎄
Раскрываю причину "броска в будущее"... Проблема кроется в формате года. Дело в том, что 'Y' - это год, основанный на номере недели. А неделя считается первой, когда на нее приходится минимум четыре дня нового года. И эта неделя именно такая! Поэтому для 29.12, 30.12 и 31.12 будет выводится 2025 год!
Исправить баг очень просто - использовать для года формат 'y'!
👍18🤔21
Минутка полезности. Добавила в курс "Основы языка Java" степ про новый лямбда-синтаксис оператора switch: https://stepik.org/lesson/1579951/step/9?unit=1601301
👍25👏4
Всех, кто отмечает Рождество, поздравляю с этим светлым праздником! 🔔🔔🔔Пусть Ваши планы реализуются, а новые знания приносят свои плоды (💸)!
И напоминаю, что завтра, 7 января, завершается праздничная распродажа курсов по C++ и Java 🫥 Чтобы вскочить в последний вагон, переходите по ссылкам:
Объектно-ориентированное программирование на Java
Прокачай Java
Основы программирования на C/C++
Основы программирования на C/C++ Часть 2
Основы программирования на C/C++ Полная версия
25
Какое регулярное выражение соответствует строке, содержащей только цифры и имеющей длину от 3 до 5 символов?
Anonymous Quiz
31%
^[0-9]{3,5}$
17%
^[\d][3,5]$
27%
\d{3,5}
8%
[^\d]{3,5}
17%
*[0-9]{3,5}
🤔14👍3
Функциональное программирование – что это за зверь? 😱
Вчера вопрос на эту тему появился в комментариях. Хочу “на пальцах” пояснить отличия процедурного (или императивного) программирования от функционального.

При процедурном программировании мы мыслим операторами. Т.е. пишем последовательность инструкций, которые будут выполняться одна за другой.
Например, программа для повара “Приготовление борща”:
1. Налить воды в кастрюлю.
2. Поставить кастрюлю с водой на огонь.
3. Добавить в кастрюлю с водой столько-то соли.
4. Если нужно приготовить 10 порций, взять одну свёклу. Если нужно приготовить 20 порций, взять две свёклы.
5. Почистить всю свёклу, которую вы взяли.
6. …
Здесь четкая последовательность действий: нельзя добавить соли раньше, чем Вы налили воды в кастрюлю. Каждый шаг зависит от состояния, которое изменяется с выполнением предыдущего шага (например, кастрюля уже наполнена водой).

А в функциональном программировании мы пишем программу как набор функций (или правил) обработки данных. Эти функции независимы друг от друга и применяются по мере необходимости, не обязательно последовательно. Функции не имеют побочных эффектов и не изменяют свои параметры. Функция выдает новый результат, который зависит только от значений параметров.
Например, программа для повара в функциональном стиле могла бы выглядеть так:
public class FunctionalCooking {
public static String добавитьСоль(String вода, String соль) {
return вода + " и " + соль;
}

public static List<String> очиститьИнгредиенты(List<String> ингредиенты) {
return ингредиенты.stream()
.map(ингредиент -> "Очищенный " + ингредиент)
.collect(Collectors.toList());
}

public static String приготовитьБорщ(List<String> ингредиенты) {
List<String> очищенные = очиститьИнгредиенты(ингредиенты);
return "Сваренный борщ из: " + String.join(", ", очищенные);
}

public static void main(String[] args) {
List<String> ингредиенты = List.of("свёкла", "капуста", "картофель");
String борщ = приготовитьБорщ(ингредиенты);
System.out.println(борщ);
}
}

Главное отличие: В процедурном программировании основное внимание уделяется последовательности действий и изменению состояния программы. В функциональном программировании фокус смещается на обработку данных через функции, которые не изменяют внешнее состояние и всегда возвращают предсказуемый результат.
👍104
👍2
Сегодня вопрос для начинающих!
👍2
Что будет в результате запуска программы?
Anonymous Quiz
41%
Ошибка компилятора
6%
Runtime Exception
23%
0
24%
null
6%
number
😭8👍3
Друзья! А зачем Вы изучаете программирование?
Учиться всегда трудно, а учиться онлайн еще труднее! Поэтому мне интересно: а какая у Вас супер-мотивация? Выберите свой вариант (варианты). Либо напишите свой ответ в комментариях!
Anonymous Poll
69%
Получить новую высокооплачиваемую работу в IT
10%
Успешно закончить ВУЗ
35%
Получать удовольствие от решения задач, развить логику и потренировать мозг
13%
Улучшить свои скиллы программиста за счет изучения второго/третьего/пятого ЯП
16%
Воплотить свои идеи в жизнь, создать свой стартап
1%
Участвовать в олимпиадах по программированию
Куда расти Java-разработчику? 🚀
Изучать Java все мы начинаем с основ языка (Java Core). Именно об этом все мои курсы. Но студенты часто спрашивают: “А что дальше? Что еще нужно знать программисту на Java?”. Ответ на этот вопрос зависит от задач, в которых Вы собираетесь применять свои знания. Вот ключевые направления, где сегодня особенно нужны джависты:
🔹 Веб-разработка (Backend) — создание серверной логики и API с Spring Boot, Hibernate, PostgreSQL. Востребовано в финтехе, e-commerce, enterprise-системах.
🔹 Микросервисы и облака — разработка масштабируемых сервисов, работа с Kubernetes, Docker, облаками (AWS, Yandex Cloud).
🔹 Big Data & Data Engineering — обработка больших данных с Apache Spark, Kafka, Flink. Нужны в банках, телекомах и аналитике.
🔹 Разработка для Android — создание мобильных приложений на Kotlin/Java, Android SDK и Jetpack Compose.
И это еще не все. Делитесь в комментариях, какое направление Вам ближе! 👇 И тогда попробуем разобраться, что еще нужно знать после Java Core!
🔥161🙏1
Что нужно знать для Web-разработки на Java, кроме Java Core? 😳
Судя по комментариям, многих интересует именно это направление.
Но сначала разберёмся с тем, что полезно знать каждому, независимо от направления:
👉 Работа с базами данных: SQL, системы управления БД (лучше PostgreSQL), JDBC – инструмент для подключения Java-программ к БД.
👉 JUnit – это инструмент автоматического тестирования программ на Java. Ускоряет отладку сложных программ.
👉 Git – система контроля версий, которая помогает отслеживать изменения в коде и делиться им с другими.
👉 Maven/Gradle – инструменты сборки, которые упрощают подключение библиотек и фреймворков.
👉 Английский язык – для чтения документации и литературы, общения с заказчиками и вообще для лучших перспектив в жизни 😊
Если говорить о серверной части Web-приложений, то необходимо знать:
👉 Основы работы с сетью:
✔️ HTTP/HTTPS – протоколы передачи данных;
✔️ REST – архитектурный стиль взаимодействия в сети;
✔️ WebSockets – технология двусторонней связи между клиентом и сервером;
✔️ JSON – текстовый формат обмена данными.
👉 Hibernate – это фреймворк на Java, который упрощает работу с реляционными базами данных с точки зрения ООП.
👉 Spring Framework и его составные части:
✔️ Spring Core (инъекция зависимостей, контейнеры)
✔️ Spring Boot (создание REST API, автоматическая настройка)
✔️ Spring MVC (разработка Web-приложений)
✔️ Spring Data JPA (упрощает работу с БД)
✔️ Spring Security (аутентификация, авторизация)
Очевидно, что всё это невозможно освоить сразу. Поэтому после изучения Java Core начните с простых шагов:
1. Разберитесь с базами данных и JDBC.
2. Начните изучать Spring Boot (лучше всего с простого REST API).
3. Сделайте пару pet–проектов и разместите их на GitHub.
Все остальное можно изучать уже после трудоустройства, ориентируясь на потребности компании.
21👍7