Подписывайтесь на мой ютуб канал! На нём я стараюсь как можно чаще выкладывать обучающие ролики по Java
https://youtube.com/@evgenyorashkov?si=FCJo6JGBxWZ42Wdf
https://youtube.com/@evgenyorashkov?si=FCJo6JGBxWZ42Wdf
YouTube
Evgeny Orashkov
Канал о программировании
Java с Евгением Орашковым pinned «Подписывайтесь на мой ютуб канал! На нём я стараюсь как можно чаще выкладывать обучающие ролики по Java https://youtube.com/@evgenyorashkov?si=FCJo6JGBxWZ42Wdf»
Немного расскажу про мои мысли/идеи/переживания при создании курса по Java для начинающих:
Начну немного о себе: я активно практикующий бэкенд разработчик на Java, стараюсь также развиваться в этом направлении. Изучал Java преимущественно самостоятельно, по курсам/видосам и статьям в интернете. Еще у меня есть брат, который на тот момент уже был Java разработчиком и конечно он мне помогал и советовал, за что ему большое спасибо ☺
Мне всегда нравилось объяснять и помогать
окружающим с физикой и математикой в школе, или с программированием в универе. Потом, когда я смотрел обучающие уроки других, у меня было желание попробовать сделать свой курс. И вот недавно я решился 🫡
В процессе обучения у меня иногда возникали следующие претензии:
1. Слушаешь очень умного программиста, который наверное и во всех языках программирования разбирается и дзен уже постиг. И рассказ про java начинает он следующим образом "ключевой особенностью java является сборщик мусора..." В итоге ты мало что понимаешь, а этот сборщик мусора тебе пригодится через пару лет работы разработчиком, и то не факт. Или, казалось бы, простейшая тема - переменные. В начале вроде как все понятно, моргаешь глазами, и тут тебе уже начинают рассказывать про то сколько они весят, где хранятся, и на какой адрес в памяти ссылаются. Как говорится, начали за здравие, закончили за упокой.🥲 В итоге ты считаешь себя безнадёжно тупым, и вообще ничего у тебя не получится.
2. Если в объяснение встречается какой-то непонятный термин, хотелось бы чтобы этот термин был ниже и объяснён. Ну или вы его раньше проходили... Приведу пример определения интерфейса:
"Интерфейсы нужны для достижения абстракции" 🫣. Яснее после такого определения не стало, появился вопрос о том что такое абстракция, хорошо бы про неё далее узнать, но... к сожалению не всегда так происходит.
3. Бывает изучишь тему - вроде всё понятно. Но проходит время и ты быстро забываешь 🙈. Почему так происходит? А потому что не понял, к чему полученные знания и как их применять. Например, читаешь про ОПП, объекты и так далее. Ну, вроде на классах котика и собачки все понятно, а как это применять в реальных задачах, и какие вообще бывают эти реальные задачи - так и осталось загадкой. Более того, даже если ты и понял предназначение и высокий замысел, нужно хорошенько с этим попрактиковаться, порешать задачи. Ведь программирование - это прежде всего практика и написание кода (которое конечно рука об руку идёт с теорией). К сожалению, очень часто практике и домашним заданиям не уделяют должного внимания.
В своём курсе я постарался давать знания последовательно, чтобы не было пробелов и непонятных слов. Если потенциальный слушатель ещё не созрел для каких-то аспектов темы, лучше про них вообще не рассказывать и вернуться к этому позже. В сложных и абстрактных (и даже загадочных) темах я стараюсь объяснить в чем замысел, зачем нам это нужно вообще использовать. Также я стремлюсь уделять внимание практике и домашним заданиям - им посвящены отдельные видео, где я в начале даю задание, а далее решаю его вместе с вами, попутно объясняя и рассуждая, почему именно так. Надеюсь, у меня это получается 😅
Начну немного о себе: я активно практикующий бэкенд разработчик на Java, стараюсь также развиваться в этом направлении. Изучал Java преимущественно самостоятельно, по курсам/видосам и статьям в интернете. Еще у меня есть брат, который на тот момент уже был Java разработчиком и конечно он мне помогал и советовал, за что ему большое спасибо ☺
Мне всегда нравилось объяснять и помогать
окружающим с физикой и математикой в школе, или с программированием в универе. Потом, когда я смотрел обучающие уроки других, у меня было желание попробовать сделать свой курс. И вот недавно я решился 🫡
В процессе обучения у меня иногда возникали следующие претензии:
1. Слушаешь очень умного программиста, который наверное и во всех языках программирования разбирается и дзен уже постиг. И рассказ про java начинает он следующим образом "ключевой особенностью java является сборщик мусора..." В итоге ты мало что понимаешь, а этот сборщик мусора тебе пригодится через пару лет работы разработчиком, и то не факт. Или, казалось бы, простейшая тема - переменные. В начале вроде как все понятно, моргаешь глазами, и тут тебе уже начинают рассказывать про то сколько они весят, где хранятся, и на какой адрес в памяти ссылаются. Как говорится, начали за здравие, закончили за упокой.🥲 В итоге ты считаешь себя безнадёжно тупым, и вообще ничего у тебя не получится.
2. Если в объяснение встречается какой-то непонятный термин, хотелось бы чтобы этот термин был ниже и объяснён. Ну или вы его раньше проходили... Приведу пример определения интерфейса:
"Интерфейсы нужны для достижения абстракции" 🫣. Яснее после такого определения не стало, появился вопрос о том что такое абстракция, хорошо бы про неё далее узнать, но... к сожалению не всегда так происходит.
3. Бывает изучишь тему - вроде всё понятно. Но проходит время и ты быстро забываешь 🙈. Почему так происходит? А потому что не понял, к чему полученные знания и как их применять. Например, читаешь про ОПП, объекты и так далее. Ну, вроде на классах котика и собачки все понятно, а как это применять в реальных задачах, и какие вообще бывают эти реальные задачи - так и осталось загадкой. Более того, даже если ты и понял предназначение и высокий замысел, нужно хорошенько с этим попрактиковаться, порешать задачи. Ведь программирование - это прежде всего практика и написание кода (которое конечно рука об руку идёт с теорией). К сожалению, очень часто практике и домашним заданиям не уделяют должного внимания.
В своём курсе я постарался давать знания последовательно, чтобы не было пробелов и непонятных слов. Если потенциальный слушатель ещё не созрел для каких-то аспектов темы, лучше про них вообще не рассказывать и вернуться к этому позже. В сложных и абстрактных (и даже загадочных) темах я стараюсь объяснить в чем замысел, зачем нам это нужно вообще использовать. Также я стремлюсь уделять внимание практике и домашним заданиям - им посвящены отдельные видео, где я в начале даю задание, а далее решаю его вместе с вами, попутно объясняя и рассуждая, почему именно так. Надеюсь, у меня это получается 😅
Урок на очень важную тему "классы и объекты". Я постарался рассказать про них доступно:
https://youtu.be/PQDPRqhKyUs?si=BidQa4GXMerAhB4p
https://youtu.be/PQDPRqhKyUs?si=BidQa4GXMerAhB4p
YouTube
Java с нуля / #19 Классы и объекты. Поля класса
В этом видео мы начнём изучать важнейшую тему - объектно ориентированное программирование (ООП). Рассмотрим понятия Класс и Объект, так же разберемся что такое поле класса и зачем вообще всё это нужно.
⏰ Тайм-коды:
00:00 - Поле класса
04:52 - Класс и Объект…
⏰ Тайм-коды:
00:00 - Поле класса
04:52 - Класс и Объект…
Небольшая задача на оператор ИЛИ.
public class OperatorOr {
private static int res = 0;
public static void main(String[] args) {
for (int i = 1; i <= 3; i++) {
if (i % 2 == 0 || secondCondition(i)) {
res++;
}
}
System.out.println(res);
}
private static boolean secondCondition(int i) {
res++;
return i % 3 == 0;
}
}
Тернарный оператор в Java
Не самая важная и большая тема, но интересная и полезная!
Тернарный оператор - это конструкция похожая на конструкцию if-else. Он содержит внутри себя три выражения, поэтому и имеет такое название - тернарный (тройной).
Общий шаблон конструкции с тернарным оператором:
<условие> ? <выражение для true> : <выражение для false>
Где:
<условие> - условие, которое как и в if либо истинное, либо ложное. То есть возвращает либо true, либо false.
<выражение для true> - код, который сработает, если условие истинное.
<выражение для false> - код, который сработает, если условие ложное.
Приведу пример:
В зависимости от переменной хранящей температуру, строке присваивается значения "холодно" или "тепло"
Это условие реализованное с помощью if-else:
Тоже самое условие, но реализованное с использованием тернарного оператора:
Как мы можем видеть - код стал немного короче. А если привыкнуть к тернарному оператору, то и немного понятней.
Что же лучше использовать обычное условие if-else или тернарный оператор? С точки зрения производительности кода, то и не важно. Это может повлиять скорее на его читаемость. Как правило, если условие достаточно простое, то можно использовать тернарный оператор. Если же условие сложное и многоступенчатое, то лучше использовать классическое if-else. Согласитесь, приведенный ниже код выглядит уже не так очевидно 😵💫
Ещё один важный момент - <выражение для true> и <выражение для false> должны возвращать значения одинакового (либо совместимого) типа. Их тип также не может быть void, то есть провернуть что-то такое с тернарным оператором не получится:
На этом всё, спасибо за внимание 🙃
Не самая важная и большая тема, но интересная и полезная!
Тернарный оператор - это конструкция похожая на конструкцию if-else. Он содержит внутри себя три выражения, поэтому и имеет такое название - тернарный (тройной).
Общий шаблон конструкции с тернарным оператором:
<условие> ? <выражение для true> : <выражение для false>
Где:
<условие> - условие, которое как и в if либо истинное, либо ложное. То есть возвращает либо true, либо false.
<выражение для true> - код, который сработает, если условие истинное.
<выражение для false> - код, который сработает, если условие ложное.
Приведу пример:
В зависимости от переменной хранящей температуру, строке присваивается значения "холодно" или "тепло"
Это условие реализованное с помощью if-else:
if (temperature > 17) {
state = "тепло";
} else {
state = "холодно";
}
Тоже самое условие, но реализованное с использованием тернарного оператора:
state = temperature > 17 ? "тепло" : "холодно";
Как мы можем видеть - код стал немного короче. А если привыкнуть к тернарному оператору, то и немного понятней.
Что же лучше использовать обычное условие if-else или тернарный оператор? С точки зрения производительности кода, то и не важно. Это может повлиять скорее на его читаемость. Как правило, если условие достаточно простое, то можно использовать тернарный оператор. Если же условие сложное и многоступенчатое, то лучше использовать классическое if-else. Согласитесь, приведенный ниже код выглядит уже не так очевидно 😵💫
state = temperature > 23 ? "жарко"
: temperature > 17 ? "тепло" : "холодно";
Ещё один важный момент - <выражение для true> и <выражение для false> должны возвращать значения одинакового (либо совместимого) типа. Их тип также не может быть void, то есть провернуть что-то такое с тернарным оператором не получится:
temperature > 10 ? System.out.println("тепло") : System.out.println("холодно"); // ошибка
На этом всё, спасибо за внимание 🙃
Небольшая задача на тернарный оператор
public class TernaryOperator {
public static void main(String[] args) {
System.out.println(findSome(3, 2));
System.out.println(findSome(-1, 0));
System.out.println(findSome(12, 12));
}
private static int findSome(int a, int b) {
if (a > b) {
return a;
} else {
return (a == b) ? 0 : b;
}
}
}
Всем привет!
Небольшой соц опрос 🧐 Когда вы пишите код, и плотно погружены в этот процесс, есть ли у вас привычка бубнить себе под нос, проговаривая свои действия? Мне это вполне свойственно🥲, иногда замечаю что-то такое и за коллегами в офисе
Небольшой соц опрос 🧐 Когда вы пишите код, и плотно погружены в этот процесс, есть ли у вас привычка бубнить себе под нос, проговаривая свои действия? Мне это вполне свойственно🥲, иногда замечаю что-то такое и за коллегами в офисе
Anonymous Poll
89%
Да
11%
Нет...
0%
Обычно слушаю музыку
Всем привет!
В курсах на ютубе мы еще не проходили метод equals() (но обязательно скоро пройдём), поэтому вопрос для более опытных :)
Есть ли разница между этими двумя вариантами сравнения строк?
В курсах на ютубе мы еще не проходили метод equals() (но обязательно скоро пройдём), поэтому вопрос для более опытных :)
Есть ли разница между этими двумя вариантами сравнения строк?
"template".equals(string);
string.equals("template");
Включил комментарии, задавайте вопросы по предыдущим постам, если они есть)
Всем привет!
Небольшая задачка на конструкторы:
Есть родительский класс:
Есть дочерний класс, который от него наследуется:
Какое значение переменной num будет выведено на экран?
Небольшая задачка на конструкторы:
Есть родительский класс:
public class Parent {
public int num = 0;
public Parent() {
num++;
}
}
Есть дочерний класс, который от него наследуется:
public class Child extends Parent {
public Child() {
num = num * 2;
}
}
Какое значение переменной num будет выведено на экран?
public class ConstructorExercise {
public static void main(String[] args) {
Child child = new Child();
System.out.println(child.num);
}
}
#memes
Pov: Коллега, когда ты попросил его объяснить как работает код
Pov: Коллега, когда ты попросил его объяснить как работает код
#опросы
Всем привет!
Вопрос к тем, кто смотрит мои видео на YouTube. Самую важную информацию по теме я стараюсь вынести в презентацию, которую показываю и в самом видео. Отчасти я это делаю, чтобы подчеркнуть самое важное и вы могли бы это как-то законспектировать или сохранить. Делаете ли вы конспекты или какие-то заметки?
Всем привет!
Вопрос к тем, кто смотрит мои видео на YouTube. Самую важную информацию по теме я стараюсь вынести в презентацию, которую показываю и в самом видео. Отчасти я это делаю, чтобы подчеркнуть самое важное и вы могли бы это как-то законспектировать или сохранить. Делаете ли вы конспекты или какие-то заметки?