Size: a a a

2020 November 23

DC

Denis Chikanov in learn.java
Yuriy
вот тут я создаю Обїект CrewMember с кучей случайніх полей.
В качестве заданных полей - даты ASD и AED. В конструкторе дефолтном - все то же самое но даты AED ASD задаются случайно.
Я бі хотел сделать нечто вида такого - из кастомного конструктора вызываю дефолтный и потом  внутри кастомного сеттерами ему делаю нужные поля.
1) Повыносить общую логику в приватный метод, вызываемый в конструкторе, возможно, параметризуемый или случайными, или переданными в конструктор данными
2) Более джава-идиоматично - вызывать из более специфичного конструктора более общий, образовав этакое "дерево" конструкторов, притом скорее всего тот конструктор, в который будет передаваться всё-всё-всё, должен будет быть приватным
источник

DC

Denis Chikanov in learn.java
Yuriy
вот тут я создаю Обїект CrewMember с кучей случайніх полей.
В качестве заданных полей - даты ASD и AED. В конструкторе дефолтном - все то же самое но даты AED ASD задаются случайно.
Я бі хотел сделать нечто вида такого - из кастомного конструктора вызываю дефолтный и потом  внутри кастомного сеттерами ему делаю нужные поля.
Ещё в этом коде очень грустно смотрится создание каждый раз нового инстанса new CommonOperations() и new Random().
источник

Y

Yuriy in learn.java
Насколько я понимаю - Этот пример не решает мою задачу.
источник

DC

Denis Chikanov in learn.java
Yuriy
вот тут я создаю Обїект CrewMember с кучей случайніх полей.
В качестве заданных полей - даты ASD и AED. В конструкторе дефолтном - все то же самое но даты AED ASD задаются случайно.
Я бі хотел сделать нечто вида такого - из кастомного конструктора вызываю дефолтный и потом  внутри кастомного сеттерами ему делаю нужные поля.
А ещё - венгерскую нотацию в именовании переменных и полей вы сами решили использовать, или вам кто-то сказал это делать? В джаве это вообще ни фига не принято
источник

Y

Yuriy in learn.java
Denis Chikanov
А ещё - венгерскую нотацию в именовании переменных и полей вы сами решили использовать, или вам кто-то сказал это делать? В джаве это вообще ни фига не принято
Та вроде Гугл именно так рекомендует делать.
источник

DC

Denis Chikanov in learn.java
Yuriy
Та вроде Гугл именно так рекомендует делать.
источник

DC

Denis Chikanov in learn.java
Кроем того, я не знаю, о каком гугле речь, но даже Google Java Style Guide не говорит таких ужасов
источник

Y

Yuriy in learn.java
https://www.oracle.com/java/technologies/javase/codeconventions-codeexamples.html#182
вот тут - пример класса джавы - все так как у меня на первый взгляд
источник

NG

Nikita Gryzlov in learn.java
емнип, в андроиде широко используется венгерская нотация. была даже статья от человека, который ее привнес в андроид, что он ооочень об этом сожалеет
источник

DC

Denis Chikanov in learn.java
Yuriy
https://www.oracle.com/java/technologies/javase/codeconventions-codeexamples.html#182
вот тут - пример класса джавы - все так как у меня на первый взгляд
Нет, не так, дурацких префиксов i, s, ld нет.
источник

Y

Yuriy in learn.java
эти префиксы - это просто обозначение типа переменной.
источник

NG

Nikita Gryzlov in learn.java
Yuriy
эти префиксы - это просто обозначение типа переменной.
это и есть "венгерская нотация"
источник

Y

Yuriy in learn.java
s - String
источник

DC

Denis Chikanov in learn.java
Yuriy
эти префиксы - это просто обозначение типа переменной.
Да, это и есть венгерская нотация, и это архаизм.
источник

DC

Denis Chikanov in learn.java
Это не соответствует общепринятым конвенциям наименования переменнях и полей в джаве
источник

Y

Yuriy in learn.java
Denis Chikanov
Это не соответствует общепринятым конвенциям наименования переменнях и полей в джаве
Разве єти общепринятые конвенции не должны быть описаны ?
Я не видел - как минимум когда https://google.github.io/styleguide/javaguide.html
читал - не видел такого
источник

NG

Nikita Gryzlov in learn.java
Yuriy
Разве єти общепринятые конвенции не должны быть описаны ?
Я не видел - как минимум когда https://google.github.io/styleguide/javaguide.html
читал - не видел такого
даже вот в этом же гайде указано, что венгерская нотация не применяется
https://google.github.io/styleguide/javaguide.html#s5.1-identifier-names
источник

NG

Nikita Gryzlov in learn.java
но основной стайлгайд все же вот этот
источник

DC

Denis Chikanov in learn.java
Yuriy
Разве єти общепринятые конвенции не должны быть описаны ?
Я не видел - как минимум когда https://google.github.io/styleguide/javaguide.html
читал - не видел такого
В общепринятых конвенциях не написано "используйте префиксы для указания типа переменной" - и в данном случае именно отсутствие этой фразы, наряду с всеми примерами и в гугловом стайлгайде, и в оракловых конвенциях, где явственно видно, что, например protected int instanceVar2; не называется iInstanceVar2, указывает, что так делать не надо.
источник

V

Viktor in learn.java
источник