JavaRush /Java блог /Random UA /Оформлення коду
Joysi
41 рівень

Оформлення коду

Стаття з групи Random UA
Одне із завдань (яке було вирішено і прийнято сервером) я реалізував як коду (забив * і X-ми щоб спойлерить). /* xxx 1. Считывать строки(параметры) с консоли, пока пользователь не введет пустую строку(Enter). 2. Каждый параметр соответствует имени ***. Для каждого параметра: 3. Создать об'єкт *** класса ***, который дорівнює *** из getX(String параметр). 4. Вывести на экран toString(). */ public class Solution { public static void main(String[] args) throws Exception { //Add your code here List al= new ArrayList<>(); BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); String str; while(!"".equals(str = reader.readLine())) al.add(str); for (int i = 0; i Зашедший в гости полузнакомый раскритиковал, что так не пишут (это тебе не C и т.п.). Не подскажете в чем я не прав (есть якие нормы и общепринятые стандарты) ? Или использование в одной строчке нескольких конструкций (оно вообще, без промежуточных присваиваний временным переменным, может привести в яких-либо ситуациях к яким-либо возможным последствиям?) - дурной тон? Основные переменные (al, reader, str) объявлены до их использования (pascal-стиль), так як мне удобнее, всегда знаешь где можешь найти описание переменной с возможным комментарием. Вспомогательные переменные объявлены в нужной зоне видимости (як переменная цикла i). Idea не ругается, правда предлагает 2 опции: Split into declaration and assigment (таки разделить объявление и присваивание) и заключить некоторые участки в блок try. Как бы Вы правильнее написали код? Що не так? Для такой задачи не стоит комментировать каждую строчку.
Коментарі
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ