Skip to content

make1986/FunBoxTest

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 

Repository files navigation

Q1 Хорошее и плохое клиентское приложение с точки зрения:

  • Пользователь. Думаю, что для пользователя важно очень много аспектов. Первое, как это банально и избито бы не звучало - это скорость и отзывчивость приложения, второе - это, пожалуй, интуитивный интерфейс (пользователь не должен долго искать те или иные разделы или кнопки, все должно быть на привычных местах).

  • Менеджер проекта. Думаю, что менеджеру проекта важно, чтобы все было в соответствии с ТЗ, а верстка была Pixel Perfect.

  • Дизайнер. Дизайнеру важно увидеть тот результат, который будет на 100% идентичен его макету. Поэтому - Pixel Perfect.

  • Верстальщик. Хорошое приложение - это структурированное приложение.

Q2

Думаю, что приложение будет легче поддерживать и вносить в него изменения если:

  • Используется архитектура (Например MVC)
  • Присутствуют адекватные комментарии в коде
  • Все сущности названы осознанными именами

Q3

Если кратко, то Presentational - это компонент, который ничего не делает, кроме рендеринга, а Container имеет определенную логику.

Q4

Прототипное наследование в 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);

Q5

К сожалению никогда не писал тестов, так как не учавствовал в крупных проектах.

Q6

Я лучше уточню у менеджера проекта инструкцию по валидации полей. Не вижу смысла тратить время впустую на переделки, поэтому необходимо понять потребности заранее.

Q7

В процессе написания как-то пользовался Eslint'ом. Отладка console.log().

Q8

Стараюсь пользоваться официальной документацие, особенно при работе с фреймворками (уж быстро они обновляются и переводы не успевают за актуальной информацией). Помимо изучения программирования недавно начал учить английский язык, так как его сильно не зватает при чтении документации.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published