Я был введен в NodeJS несколько месяцев назад. Я хочу учиться достаточно, чтобы написать полезное приложение, которое может обрабатывать умеренную нагрузку. Я не тороплюсь, изучая электронные книги, веб-сайты и код. Мой фон - это случайное программирование на разных языках, включая PHP. Я изучал исходный код для различных пакетов Node, просто чтобы узнать и увидеть лучшие практики. В частности, существуют различные доступные пакеты websocket. Я заметил, что NodeJS авторы, как правило, используют метод объектно-ориентированное структурирование их коду, таким образом, что объекты инстанцированные динамически, например:Использование «New» в NodeJS
var wsRequest = new WebSocketRequest(someParams);
var wsConnection = new WebSocketConnection(someParams);
var wsFrame = new WebSocketFrame(someParams);
просит порождать соединения, соединение зачинать Frames.
Это логично для меня как преимущества ООП. Но в прошлом такие программы, которые я написал на других языках, имели примеры классов, созданных медленно; один раз или в темпе ввода пользователя. Здесь, однако, сложные объекты создаются гораздо быстрее, со скоростью, по меньшей мере, сотен или более в секунду в зависимости от загрузки веб-сайта. Кроме того, я предполагаю, что сборщик мусора должен усердно работать, чтобы очистить вещи. Мой вопрос в том, будет ли процедурный подход к написанию приложений Node более результативен, чем либеральное использование «новых» в обратных вызовах сервера, создавая сложные объекты «на лету»? или представляет собой любое преимущество, минус по сравнению с преимуществами ООП.
Знайте, что в JavaScript существует еще много способов создания объекта, чем 'new'. Существуют литералы массивов ('[]'), литералы объектов ('{}'), функции ('function() {}'), строки '' abc'' и четные числа ('123'). Я не удивлюсь, если ООП мало добавит к общим ассигнованиям. –