Дмитрий: плохой код разным бывает. Я вот все еще грешу плохим и сложным кодом... правда стараюсь рефакторить потом. А плохой и простой код хорошо поддается рефакторингу.
Itvanya: почитайте на всякий случай подробнее про области видимости в JS и время жизни переменных (то есть когда JS считает что переменную можно удалять). event-loop просто механизм упрощающий работу с асинхронными вызовами и позволяющий не писать всякие там синхронизации и избавиться от конфликтов простым способом. Это самое пожалуй сложное - нужно что бы каждый кусочек JS (кадр) отрабатывал как можно быстрее. Для примера - в браузере помимо JS в ту же "очередь кадров" вклиниваются перерисовка страницы, пересчет стилей и т.д. Именно по этому люди частенько делают после изменения dom setTimeout(fn, 0) что бы на 100% быть уверенным что код отработает когда браузер все пересчитает и отрисует.
Посторонним В.: сочувствую... Это пустая трата времени, 2015-ый на дворе. В 2005-ом это было модно да.
Алексей Немиро: можно, хотя не знаю зачем. Я вот всюду пихаю Doctrine ORM и не могу без нее жить (во всяком случае пока она не становится узким местом приложения).
Алексей Немиро: если делать класс для работы с пользователем - придется делать классы для работы с базой и сессиями и т.д. И все в отдельных файлах. А вообще стоит брать готовые решения для этого, любой нормальный фреймворк имеет для этого готовые средства. Выйдет явно лучше чем писать с нуля.
Евгений Попов: по поводу порога вхождения - вы верно заметили, пропасть огромна... даже слишком. Есть еще кривая обучения и у PHP скажем эта кривая больше похожа на линию, а у JS на определенном этапе обучение будет происходить крайне медленно и только после определенной планки уже нормально. Большинство не доходят даже до понимания прототипной модели наследования, а уж говорить про каррирование или другие вещи вообще не выходит. В ES6 к примеру организовали оптимизации хвостовой рекурсии, как думаете, сколько людей научатся писать свои алгоритмы так, что бы интерпритатор разворачивал рекурсивные алгоритмы в циклы?
LB777: можно погуглить что-нибудь на тему phpstorm + sourcemaps но не знаю... я никогда не дебажил фронтэнд в IDE, только средствами разработчика браузера.
Mick Coder: Думаю можно, но не знаю как. Надо смотреть. В любом случае, просто взять доктрину не выйдет - лучше попробуйте с другим фреймворком где нет такого уровня связанности. И не на текущих проектах.
50 объектов - не так много. Все зависит от бизнес логики. Я бы расписание хранил как один объект.
Mick Coder: Ну тип того. Только будет RegularCleanings::generateRegularCleaning. Хотя сейчас подумал - по идее все же не стоит так делать. Эта логика больше относится Reservation.