-
Пользователь. Думаю, что для пользователя важно очень много аспектов. Первое, как это банально и избито бы не звучало - это скорость и отзывчивость приложения, второе - это, пожалуй, интуитивный интерфейс (пользователь не должен долго искать те или иные разделы или кнопки, все должно быть на привычных местах).
-
Менеджер проекта. Думаю, что менеджеру проекта важно, чтобы все было в соответствии с ТЗ, а верстка была Pixel Perfect.
-
Дизайнер. Дизайнеру важно увидеть тот результат, который будет на 100% идентичен его макету. Поэтому - Pixel Perfect.
-
Верстальщик. Хорошое приложение - это структурированное приложение.
Думаю, что приложение будет легче поддерживать и вносить в него изменения если:
- Используется архитектура (Например MVC)
- Присутствуют адекватные комментарии в коде
- Все сущности названы осознанными именами
Если кратко, то Presentational - это компонент, который ничего не делает, кроме рендеринга, а Container имеет определенную логику.
Прототипное наследование в JS складывается из вызова ссылки proto у объекта которой автоматиески присваивается ссылка prototype функции конструктора объекта.
То есть, если мы создадим конструктор: var Car = function(model) { this.model = model;
getModelCar () { return 'This is' + this.model; { };
После мы создадим объект на основе конструктора Car: var ferrari = new Car('Ferrari');
То произойдет следующее: Создается объект ferrari, который вызывает функцию Car() и прототипом этого объекта (proto) назначается свойство prototype конструктора Car. this - это контекст объекта, который был создан на основе конструтора.
Начиная с ES6 доступен синтаксис в стиле ООП: class Car { constructor(model) { this.model = model; }
getModelCar () {
return This is ${this.model}
;
}
}
Прототипам класса Sportcar доступны методы класса Car: var ferrari = new Car('Ferrari');
console.log(ferrari.getModelCar);
К сожалению никогда не писал тестов, так как не учавствовал в крупных проектах.
Я лучше уточню у менеджера проекта инструкцию по валидации полей. Не вижу смысла тратить время впустую на переделки, поэтому необходимо понять потребности заранее.
В процессе написания как-то пользовался Eslint'ом. Отладка console.log().
Стараюсь пользоваться официальной документацие, особенно при работе с фреймворками (уж быстро они обновляются и переводы не успевают за актуальной информацией). Помимо изучения программирования недавно начал учить английский язык, так как его сильно не зватает при чтении документации.