Именно так. Но дело не в том, что «во фронте распространен», а в том, что «в интернете распространен». Попробуйте найти курс, который учит фронту не с «первым делом установим реакт...» а с «давайте разберемся, как браузер строит DOM-дерево и как этим можно управлять»… Как итог — почти все и начинают изучение не с того конца. Да, это работает, но непродуктивно, о чем и пытался сказать в статье.
Тайпскрипт это замечательная обертка над JS, которая добавляет то, чего здорово не хватает «ванильному» javascript. Но это всего лишь обертка, сам код все равно остается кодом JS. Как и код в любом фреймворке. И вся статья по сути о том, что писать код надо, понимая логику и структуру языка, а не оберток над ним. И изучение JS вовсе не отменяет изучения фреймворков. Вопрос в том, что первоначально, что вторично. Иначе потом начинаются такие чудеса в коде…
Главная проблема глобальной переменной — ее может переписать кто угодно, не уведомив «остальных потребителей». Синглтон переписать невозможно. Именно поэтому он и используется как хранилище (!) глобальных переменных. Это сейф для тех данных, которые нужны всем, но должны быть защищены от несанкционированной перезаписи.
Пример паттерна — схематичный, для описания принципа создания. Увидеть его реализацию можно, если залезть «под капот», например, Apollo или TypeORM. А «снаружи» да, просто подключение через DI.
В том и суть — мы часто пользуемся паттернами, зная о них, но воспринимая поведение как должное. Машина ездит и хорошо, красная такая. А сколько колец на клапане обжимных — современный водитель не в курсе)
Вопрос не глупый, а очень даже интересный. В теории, предложенный вариант будет работать, пока забывчивый разработчик не воткнет private dataBase = new dataBase
Чтобы этого не случилось — и закрывают конструктор.
Именно так. Но дело не в том, что «во фронте распространен», а в том, что «в интернете распространен». Попробуйте найти курс, который учит фронту не с «первым делом установим реакт...» а с «давайте разберемся, как браузер строит DOM-дерево и как этим можно управлять»… Как итог — почти все и начинают изучение не с того конца. Да, это работает, но непродуктивно, о чем и пытался сказать в статье.
Тайпскрипт это замечательная обертка над JS, которая добавляет то, чего здорово не хватает «ванильному» javascript. Но это всего лишь обертка, сам код все равно остается кодом JS. Как и код в любом фреймворке. И вся статья по сути о том, что писать код надо, понимая логику и структуру языка, а не оберток над ним. И изучение JS вовсе не отменяет изучения фреймворков. Вопрос в том, что первоначально, что вторично. Иначе потом начинаются такие чудеса в коде…
В том и суть — мы часто пользуемся паттернами, зная о них, но воспринимая поведение как должное. Машина ездит и хорошо, красная такая. А сколько колец на клапане обжимных — современный водитель не в курсе)
Чтобы этого не случилось — и закрывают конструктор.