С нуля до оффера
195 subscribers
91 photos
34 videos
15 files
30 links
Тут о превращении из омежки в сигму-программиста 🦾💻

По вопросам : @kottik111_dev
Download Telegram
05.02.2025

Ребятки, всем привет!
👋

Сегодня перешла к практике по Stream API 😺

В цеееелом, прям в целом… Ну, не то чтобы сложно, просто ощущение, что я овощ и часто путаюсь в том, когда и какие функции нужно использовать 🤡

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

Но вроде все идет плавненько

За сегодня выполнила:
⭕️16 задач по стримам
⭕️Затронута класс Optional и сделала пару задач по нему

На задачи чисто по стримам потратила сегодня больше времени, чем изначально планировала, поэтому Optional нормально пройти не успела
Так что завтра буду с ним заканчивать + продолжу практику по стримам с добавлением исключений


Программировала сегодня: 4,5 часа ⌨️

Всем большое спасибо, что подписываетесь и следите за моим продвижением! 🫶

#отчет
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13
🔠🔠🔠🔠🔠🔠🔠🔠🔠


Ребятки, всем привет! 👋

Вас прибавилось, и я хочу сделать краткий экскурсионный пост по полезной информации в моем канале со ссылками

🔗ПОСТ-ЗНАКОМСТВО

🔗Истории о неудачном менторстве
ЧАСТЬ 1
ЧАСТЬ 2

🔗Полезные ссылки и материалы #полезное_java

🔗Ежедневные отчеты об учебе #отчет

🔗Задачи от ментора #задачиОтМентора

🔗Немного мемов #мемасики

🔗Рассказы о личном #личное
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥16👍21
С нуля до оффера pinned «🔠🔠🔠🔠🔠🔠🔠🔠🔠 Ребятки, всем привет! 👋 Вас прибавилось, и я хочу сделать краткий экскурсионный пост по полезной информации в моем канале со ссылками 🔗ПОСТ-ЗНАКОМСТВО 🔗Истории о неудачном менторстве ЧАСТЬ 1 ЧАСТЬ 2 🔗Полезные ссылки и материалы #полезное_java…»
06.02.2025

Ребятки, всем привет!
👋

Продолжаю бороться со Stream API и Optional 🔫

Сегодня очень неплохо позанималась :
⭕️Выполнила 4 задачи на стримы + ООП
⭕️3 задачи на практику по Optional и разобрала 12 готовых задач (как обычно 1 из примеров пришлю ниже 👇)

Чувствую, что написание собственного кода идет куда проще, что очень радует 😃

Завтра планируется фактически заключительный этап по Stream API - буду выполнять одни из последних задач по стримам вместе с Optional
(в субботу закончу окончательно)

Программировала сегодня: 5 часов 💻

Всем большое спасибо, что подписываетесь и следите за моим продвижением! 🫶

#отчет
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11👍1
import java.util.HashMap;
import java.util.Map;
import java.util.Optional;
import java.util.Scanner;


class User {
private final int id;
private final String username;
private final String password;
private int loginAttempts;

public User(int id, String username, String password) {
this.id = id;
this.username = username;
this.password = password;
this.loginAttempts = 0;
}

public int getId() {
return id;
}

public String getUsername() {
return username;
}

public int getLoginAttempts() {
return loginAttempts;
}

public boolean validatePassword(String inputPassword) {
if (this.password.equals(inputPassword)) {
loginAttempts++;
return true;
}
return false;
}
}

class UserRepository {
private final Map<String, User> users = new HashMap<>();
private int nextId = 1;

public UserRepository() {

users.put("alice", new User(nextId++, "alice", "password123"));
users.put("bob", new User(nextId++, "bob", "secure456"));
}

public Optional<User> findByUsername(String username) {
return Optional.ofNullable(users.get(username));
}

public User createUser(String username, String password) {
User newUser = new User(nextId++, username, password);
users.put(username, newUser);
return newUser;
}
}

class UserService {
private final UserRepository userRepository;

public UserService(UserRepository repo) {
this.userRepository = repo;
}

public Optional<User> login(String username, String password) {
return userRepository.findByUsername(username)
.filter(user -> user.validatePassword(password));
}

public Optional<User> register(String username, String password) {
if (userRepository.findByUsername(username).isPresent()) {
return Optional.empty();
}
User newUser = userRepository.createUser(username, password);

newUser.validatePassword(password);
return Optional.of(newUser);
}


public String getLoginInfo(String username) {
return userRepository.findByUsername(username)
.map(user -> "Количество успешных входов: " + user.getLoginAttempts())
.orElse("Пользователь не найден.");
}
}
🔥8👍1
public class InteractiveLoginApp {
public static void main(String[] args) {
UserRepository userRepository = new UserRepository();
UserService userService = new UserService(userRepository);
Scanner scanner = new Scanner(System.in);

System.out.println("Выберите действие: ");
System.out.println("1. Вход");
System.out.println("2. Регистрация");
System.out.print("Ваш выбор (1 или 2): ");
String choice = scanner.nextLine().trim();

if ("1".equals(choice)) {
System.out.print("Введите имя пользователя: ");
String username = scanner.nextLine().trim();

System.out.print("Введите пароль: ");
String password = scanner.nextLine().trim();


Optional<User> userOpt = userService.login(username, password);
if (userOpt.isPresent()) {
System.out.println("Вход выполнен успешно! Добро пожаловать, " + username + ".");
System.out.println(userService.getLoginInfo(username));
} else {
System.out.println("Неверное имя пользователя или пароль.");
}
} else if ("2".equals(choice)) {
System.out.print("Введите желаемое имя пользователя: ");
String username = scanner.nextLine().trim();

System.out.print("Введите пароль: ");
String password = scanner.nextLine().trim();

Optional<User> userOpt = userService.register(username, password);
if (userOpt.isPresent()) {
System.out.println("Регистрация прошла успешно! Добро пожаловать, " + username + ".");
System.out.println(userService.getLoginInfo(username));
} else {
System.out.println("Пользователь с именем " + username + " уже существует. Попробуйте войти.");
}
} else {
System.out.println("Некорректный выбор.");
}

scanner.close();
}
}


#задачиОтМентора
🔥8👍1
+ Задача Анатолия не покидала меня весь день
public static void main(String[] args) {
Stream<Integer> stream = Stream.of(1,2,3)
.peek(System.out::println)
.filter(it -> it != 2);

Stream.of(4,5,6)
.peek(System.out::println)
.filter(it -> it != 5)
.peek(System.out::println)
.forEach(System.out::println);
stream
.peek(System.out::println)
.forEach(System.out::println);
}


Я немного посидела над ней, но пока что к верному решению не пришла 🙁
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍1
07.02.2025

Ребятки, всем
👋

Ну че, я практически добила Stream API и Optional 😎

Как и планировала вчера, сегодня доделала по этим темам заключительные задачки - выполнила 7 штук

Осталась выполнить всего 3 задачи, 🔹🔹 теперь я их буду выполнять не как обычно, а уже с использованием Maven и Lombok

Данные технологии я еще ни разу не затрагивала ❗️
Так что будет очень интересно погрузиться и поработать с ними


Завтра планируем созвониться с ментором - он проведет краткий экскурс, даст нужные материалы, и, как говориться «дальше в путь»

Программировала сегодня: 4 часа 💻

Выходного в субботу не будет
Планирую последнюю «свободную» субботу потратить на учебу

Всем большое спасибо, что подписываетесь и следите за моим продвижением! 🫶

#отчет
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👍2
Тк завтра выходного нет, я решила сегодня устроить себе мини-выходной
Всем хорошего вечера пятницы и отличных выходных 🥂
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14👍1
08.02.2025

Ребятки, всем привет!
👋

В плане учебы день сегодня прошел 50/50

С одной стороны я выполнила намеченный план:
⭕️Созвонилась с ментором и начала изучение новых технологий - Maven и Lombok
⭕️Закончила последние 3 задачи по стримам и Optional, применяя изученный материал

С другой стороны, после выполнения всего выше перечисленного у меня осталось свободное время, которое, в идеале, можно было бы потратить опять на учебу
НО❗️ У меня капец как разболелся зуб ☠️ , и я экстренно начала поиски стоматологии, которая принимает на ночь глядя
В итоге под вечер все пошло насмарку 😾

Сегодня вечером я бы могла приступить к изучение основ многопоточки, но… не судьба 😩

Более детально погружаться в мейвен и ломбок я буду параллельно с изучением нового материала

Завтра по плану - разбор этой несчастной многопоточки
Буду изучать теорию вместе с ботом от ментора и, думаю, поделаю минимальную практику

Программировала сегодня: 3,5 часа ⌨️

Всем большое спасибо, что подписываетесь и следите за моим продвижением! 🫶

#отчет
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11👍6
09.02.2025

Ребятки, всем привет!
👋

День сегодня прошел отлично 👍

Я успела позаниматься, разобрала основы многопоточки вместе с ботом от ментора и поделала пару довольно легких практических задач

Многопоточность - это когда программа вместо того, чтобы выполнять все задачи по очереди(однопоточно), может выполнять несколько задач одновременно, используя потоки(threads)
Однако многопоточность может приводить к сложным проблемам, например:

⚠️Race condition (гонка потоков) это когда несколько потоков одновременно обращаются к одной и той же переменной и изменяют ее, что приводит к непредсказуемым результатам

⚠️Deadlock (взаимная блокировка)это ситуация, когда два или более потока навсегда зависают, потому что ждут друг друга, удерживая ресурсы

Соответственно, программы работают быстрее, лучше и эффективнее, разделяя задачи между потоками, но важно учитывать возможные проблемы многопоточности


Конечно, прошлась по самым верхам, но какую-то основу концепции я поняла, и на данном этапе этого уже вполне достаточно

Более глубоко погружаться планирую только на этапе подготовки к собесам - и то, просто более детально заучивать теорию
На собеседованиях редко спрашивают что-то очень сложное по многопоточности , поэтому лучше я лишнее время потрачу на изучение других тем

На завтра по учебе у меня запланировано кое-что очень интересное, но об этом вы узнаете уже завтра 😈

Программировала сегодня: 3,5 часа ⌨️

Всем большое спасибо, что подписываетесь и следите за моим продвижением! 🫶

#отчет
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥93👍1
На это сообщение хочу ответить отдельным постом ⬇️
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Рафаэль 🖤
Приветик. Я тоже изучаю жабу, но совсем недавно, где-то месяц. Использую курс алишева, дошел до колекций. Не так давно начал читать твой блог, поэтому многие старые посты просто напросто пропустил. В связи с чем у меня есть несколько вопросов:
1) Что у тебя за ментор и сколько стоят его услуги?
2) Какой у тебя роадмап?
3) Как ментор относится к javarush и каково твоё личное ощущение?
4) Сколько в целом уже учишь джаву?
Курс алишева неплох, есть интересные задачки, но всё равно ощущение, что прохожусь по некоторым верхам. Хотел взять dmdeva, но я пират. А для пиратов там домашки не предусмотрены)
👍2
Я начала интересоваться джавой в ноябре 2023 года
К февралю, в неспешном темпе, дошла до азов ООП, но затем на полгода забросила обучение

Вернулась только осенью: с середины сентября постепенно входила в режим, а с октября занимаюсь уже регулярно

Сейчас учусь с ментором, которого нашла в таблице менторов в Оме
Так как он только начинал менторство, первый месяц мы занимались бесплатно, а теперь его занятия стоят 10к/месяц
Для новых учеников там уже другие расценки

Изначально я предполагала, что придется дополнительно отдать 50% от первого оффера, но мы остались на текущих условиях

JavaRush — неплохая база для старта, но с какого-то момента лекции там становятся слишком путаными и непоследовательными
Часто приходилось искать дополнительные источники, чтобы лучше разобраться в теме
К тому же, общение с GPT очень помогало понять сложные моменты

Когда материал дается особенно тяжело, я люблю просить у GPT объяснение в стиле: «Объясни (тема) так, как будто бы объясняешь пятилетнему ребенку»
Такой подход часто делает сложные вещи более понятными

Ментор относится к JavaRush неплохо, считает, что для начала платформа более чем подходит, но дальше лучше учиться по другим материалам, используя ее лишь как вспомогательный ресурс

#личное
👍10🔥2🥰2
Насчет роадмапа — завтра подробно распишу
С ментором у нас немного экспериментальный подход к порядку изучения тем
🔥10👌2👍1
11.02.2025

Ребятки, всем привет!
👋

Если я пропала - значит, опять что-то произошло 😅

В общем, я тут вечером в воскресенье траванулась рыбой и меня жестко полоскало 🤢
Сегодня наконец-то стало получше, поэтому вновь приступила к проге
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥63👍1
Ну а я тем временем дошла до изучения очень интересных тем

Сегодня разбиралась с основами HTTP и познакомилась с базовым обзором фреймворка Spring 👩‍💻

Для начала просто почитала статьи и немного побеседовала с GPT, чтобы лучше понять с чем мне придется работать

Может показаться , что переход от Stream API к Spring немного неожидан, но в этом и заключается наш с ментором «Экспериментальный подход» про который расскажу ниже 👇

Программировала сегодня: 2 часа 😔

Всем большое спасибо, что подписываетесь и следите за моим продвижением!
🫶

#отчет
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍1
Наш «экспериментальный подход» строится на том, чтобы как можно быстрее получить первую работу
Для этого мы решили учить только то, что реально нужно на собеседованиях и в работе

❗️Мы отказались от изучения ненужной базы на практикенапример, JDBC или даже чистого Hibernate

❗️После Java Core сразу переходим к основам веба и Spring MVC

❗️Затем изучаем базы данных через Spring Data, далее Docker, Spring Security и другие важные инструменты

❗️Позже разберем микросервисы, включая Kafka

📌В течение всего изучения Spring мы будем постепенно разрабатывать одно приложение, которое в итоге станет полноценным микросервисным проектом

Алгоритмы и другие вещи, которые не требуются на старте карьеры, мы пропускаем и не будем зазубривать

Так что приглашаю всех следить за экспериментом и смотреть, что из этого выйдет! 😉

Если есть вопросы — пишите в комменты!
💬
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14🥴2👍1🤔1
12.02.2025

Ребятки, всем привет!
👋

Не буду врать, сегодня честно очень мало занималась

В последнее время я чет так устала, что сейчас выжимаю из себя последние силы, чтобы учиться

У меня то зуб этот, то отравление…
Я прям чувствую, что буквально через палку себя заставляю
В основном просто организм истощился, так что нужно больше спать и надеюсь все будет ок

Благо это последняя учебная неделя, потом будет отдых где я буду делать что-то минимальное по проге, но в основном постараюсь просто расслабиться и отдохнуть 🛌

Ну а сегодня я немного почитала статьи по спрингу, которые скинул ментор

Программировала сегодня: 1 час 👌

Всем большое спасибо, что подписываетесь и следите за моим продвижением!
🫶

#отчет
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11👍42
Forwarded from Бэкдор
⚡️ Айтишников ЗАСТАВЯТ подтверждать знания КАЖДЫЙ ГОД — государство включает систему оценки компетенций уже ЗАВТРА.

Суть: 31 мая заработает специальная платформа, где надо будет подтверждать навыки. Уже известны экзамены по Java, Python и Git. Если прошел успешно — получаешь отметку на Госуслугах.

😶😶😶😶😶 😶😶😶😶😶😶😶

Сертификат действителен лишь ГОД — дальше ты снова становишься дурачком.

Открываем конспекты.

👍 Бэкдор
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯5👍1👎1🤔1