Size: a a a

2020 November 10

N🌌

Nazarii 🌌 in learn.java
ns ...
Приветствую всех!
Ребята, я вот изучил циклы, условные операторы, и немного про методы и их параметры.
Для себя придумал небольшую задачку:
Есть 3 собаки разного возраста. Задача: если собаке меньше 5 лет- она говорит: тяф тяф, если же старше 5 лет, но меньше 10 лет, то - гав гав, если же старше 10 лет то вуф вуф.
И плюс дополнительно щенок должен тяфкать 5 раз, взрослая собака 3 раза, а старый пёс - 1 раз.
Написал код, согласно задаче
Кому не трудно, можете оценить качество моего кода? И на сколько написанный код соответствует знаниям будущего джуна в перспективе?
Еще, если дадите мне рекомендации по улучшению кода, согласно этой задаче, буду весьма признателен.
И еще подскажите плз, я так и не смог понять как решить 2 проблемы:
1) как сделать так, чтобы вывод в консоль, гавканья каждой собаки, было все в одной строке, но другой собаки уже с новой строки.
2) И вторая проблема, как сделать так, чтобы java сама определяла, какая собака гавкает. Имеется ввиду, чтобы вывод в консоль было например так: Tuzik bork:   тяф тяф!   тяф тяф!
Предполагаю примерно так sout (object + "тяф тяф!"). Но как реализовать - не доходит...
Спасибо.
Для имени собаки: в dog добавьте поле String name, и добавьте геттер и сеттер. При вызове сможете сделать getName + "нужное гавканье"
источник

n.

ns ... in learn.java
Dmitriy Shilnikov
Я тебе рекомендую книжки по джаве читать. И / или на hyperskill заниматься. А то ты какой-то ерундой занимаешься.
да, завтра уже приступаю к HS. Спс.
источник

N🌌

Nazarii 🌌 in learn.java
Ну или без сеттера, через конструктор, чтобы имя было final
источник

DS

Dmitriy Shilnikov in learn.java
Nazarii 🌌
Ну или без сеттера, через конструктор, чтобы имя было final
А если тузик состарится? )
источник

DS

Dmitriy Shilnikov in learn.java
Имена переменных с маленькой буквы принято писать. Метод bark должен быть public. Желательно геттер добавить для age.
источник

N🌌

Nazarii 🌌 in learn.java
Dmitriy Shilnikov
А если тузик состарится? )
Для этого имя и вечное!
источник

DS

Dmitriy Shilnikov in learn.java
Nazarii 🌌
Для этого имя и вечное!
Так там возраст в поле, а не имя )
источник

DS

Dmitriy Shilnikov in learn.java
Тут собаки анонимные )
источник

N🌌

Nazarii 🌌 in learn.java
Dmitriy Shilnikov
Тут собаки анонимные )
Вххааха, ну я и предлагаю поле новое добавить. Как иначе имена давать-то :)
источник

N🌌

Nazarii 🌌 in learn.java
А вообще, да. Hyperskill!
источник

DC

Denis Chikanov in learn.java
Некритично (и даже скорее в таком коде логично оставить, как есть), но на будущее: в реальном коде, а не учебном, прятать собственно вывод в консоль и любые другие подобные сайд-эффекты в метод доменного объекта с бизнес-логикой точно не надо. Там уместнее будет, например, вернуть List<String> из bark(), и этот лист отдать на вывод где-нибудь на другом уровне абстракции.
Но ещё раз, это на будущее, а не изъян здесь и сейчас.
источник

n.

ns ... in learn.java
Dmitriy Shilnikov
Имена переменных с маленькой буквы принято писать. Метод bark должен быть public. Желательно геттер добавить для age.
точно, забыл что имена ссылок на объекты - тоже маленькие.
Геттеры - сеттеры - пока что не до конца разобрал. Еще в процессе обучения.
Спс.
источник

D

Dima in learn.java
ns ...
Приветствую всех!
Ребята, я вот изучил циклы, условные операторы, и немного про методы и их параметры.
Для себя придумал небольшую задачку:
Есть 3 собаки разного возраста. Задача: если собаке меньше 5 лет- она говорит: тяф тяф, если же старше 5 лет, но меньше 10 лет, то - гав гав, если же старше 10 лет то вуф вуф.
И плюс дополнительно щенок должен тяфкать 5 раз, взрослая собака 3 раза, а старый пёс - 1 раз.
Написал код, согласно задаче
Кому не трудно, можете оценить качество моего кода? И на сколько написанный код соответствует знаниям будущего джуна в перспективе?
Еще, если дадите мне рекомендации по улучшению кода, согласно этой задаче, буду весьма признателен.
И еще подскажите плз, я так и не смог понять как решить 2 проблемы:
1) как сделать так, чтобы вывод в консоль, гавканья каждой собаки, было все в одной строке, но другой собаки уже с новой строки.
2) И вторая проблема, как сделать так, чтобы java сама определяла, какая собака гавкает. Имеется ввиду, чтобы вывод в консоль было например так: Tuzik bork:   тяф тяф!   тяф тяф!
Предполагаю примерно так sout (object + "тяф тяф!"). Но как реализовать - не доходит...
Спасибо.
>Кому не трудно, можете оценить качество моего кода? И на сколько написанный код соответствует знаниям будущего джуна в перспективе?

код - плохой, человека, который совсем недавно начал программировать /программировать на Java

читай книжки, чтобы знать базовые конструкции, синтаксис и стиль кода

что касается джуна - тебе вообще рано об этом думать
источник

D

Dima in learn.java
это вопрос 1-2 лет с текущими знаниями
источник

n.

ns ... in learn.java
Denis Chikanov
Некритично (и даже скорее в таком коде логично оставить, как есть), но на будущее: в реальном коде, а не учебном, прятать собственно вывод в консоль и любые другие подобные сайд-эффекты в метод доменного объекта с бизнес-логикой точно не надо. Там уместнее будет, например, вернуть List<String> из bark(), и этот лист отдать на вывод где-нибудь на другом уровне абстракции.
Но ещё раз, это на будущее, а не изъян здесь и сейчас.
ок. Спс.
источник

n.

ns ... in learn.java
Dima
это вопрос 1-2 лет с текущими знаниями
ясно. Ну так в процессе обучения и нахожусь. До джуна до лета след года планировал вырасти. При усиленном обучении.
Это не реально что-ли? 😕
источник

А

Александр in learn.java
ns ...
ясно. Ну так в процессе обучения и нахожусь. До джуна до лета след года планировал вырасти. При усиленном обучении.
Это не реально что-ли? 😕
Реально всё, главное желание :)
источник

DS

Dmitriy Shilnikov in learn.java
ns ...
ясно. Ну так в процессе обучения и нахожусь. До джуна до лета след года планировал вырасти. При усиленном обучении.
Это не реально что-ли? 😕
До лета 6.5 месяцев. Тебе придётся ну очень сильно стараться.
источник

D

Dima in learn.java
ns ...
ясно. Ну так в процессе обучения и нахожусь. До джуна до лета след года планировал вырасти. При усиленном обучении.
Это не реально что-ли? 😕
нет конечно
источник

n.

ns ... in learn.java
Nazarii 🌌
Для имени собаки: в dog добавьте поле String name, и добавьте геттер и сеттер. При вызове сможете сделать getName + "нужное гавканье"
ок. понял. спс.
источник