Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Веб-программирование > JavaScript / HTML

JavaScript / HTML Создание динамической разметки страниц

Ответ
 
Опции темы
Старый 10.04.2013, 12:27   #1
DarkInside
Разработчик
 
Аватар для DarkInside
 
Регистрация: 08.08.2011
Сообщений: 505
Написано 191 полезных сообщений
(для 369 пользователей)
Node.js для новичка

Приветствую, булчане
Понадобилось мне для своего проекта(система управления освещением с использованием цифрового протокола передачи данных) написать браузерное приложение для диагностики и управления осветительными сетями.
Начал копать и наткнулся вдруг на node.js, все вокруг кричат и слюнями брызжут, что это технология будущего, мол php на кол, php+ajax проигрывает по скорости в 70-90 раз тому же node.js, движок V8 и бла бла бла...

Ok
Повёлся, начал копать в сторону node.js, надо сказать, достаточно интересный экземпляр, судя по описанию на форумах, видео на ютубах, и даже квадрокоптеры могут программироваться на том же самом node.js, что тоже весьма интересно.
Nodecopter — управление квадрокоптерами на Javascript
Ok
В состоянии аффекта пошёл читать форумы...
Сразу скажу, что опыта клиент-серверного программирования у меня 0.
Т.е. я представляю, как это всё устроено в теории, но никогда руки не дотягивались до создания клиент-серверного приложения.
Также стоит отметить, что опыта работы с JavaScript или подобными языками у меня тоже 0.
ООП я тоже особо никогда не щупал, писал я только на Blitz3D, AutoIt, немного PureBasic, ну и html знаю. Соответственно, ни в одном из этих языков и речи не шло про нормальный ООП, Блиц со своими типами только нарушил моё представление, я всегда думал, что это и есть простейшая реализация ООП, а вот теперь понимаю, что каша в голове.

Ok
Посмотрел код на форумах, ничерта не понял, пошел искать учебник из серии "node.js для чайников".
Нашёл.
http://nodebeginner.ru
Дошел до середины и понял, что немного запутался в понятиях ООП, да и вообще не мешало бы подучить основы JS.

НО
Как известно, JavaScript JavaScript'у рознь и мне нужен правильный "продвинутый" JavaScript, который используется в Node.js

В связи с этим:

1) Кто уже щупал Node.js и представляет о чем там речь, посоветуйте литературу, написанную понятным языком про основы "правильного" JS.
2) Также неплохо было бы твёрдо освоить принципы ООП, которые используется в "правильном = node.js" JavaScript. Может посоветуете какую-нибудь статью или мануал?
3) Да и вообще неплохо было бы почитать о клиент-серверном программировании, про запросы, блокирующие/неблокирующие операции и т.д.

Заранее спасибо!
(Offline)
 
Ответить с цитированием
Старый 10.04.2013, 14:14   #2
Alex7Kom
AnyKey`щик
 
Регистрация: 10.04.2013
Сообщений: 1
Написано одно полезное сообщение
Ответ: Node.js для новичка

1) http://learn.javascript.ru/ Не обращайте внимания, что это про клиентский JS, так как разницы на уровне самого языка нет.
2) node.js не обязывает использовать ООП, но про ООП в JS там же, по ссылке из п.1
3) Здесь можно вернуться к упомянутому nodebeginner.ru, про блокирующие/неблокирующие операции и асинхронность node.js есть замечательная статья http://habrahabr.ru/post/150788/ (там же на хабре по тегу Node.js много статей). Про клиент-сервер важно понимать концепт веб-сервера, но тут увы, ничего конкретного посоветовать не могу, можете попробовать начать со статьи в википедии, проясняя для себя непонятные места.

Удачи
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
DarkInside (10.04.2013)
Старый 10.04.2013, 14:56   #3
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Node.js для новичка

Пишу на node.js уже более года. Ходил на gamehack'и, и делал мультиплеер html5 игры за менее чем 24 часа.
По работе используем в текущем проекте node.js + mongodb как основные серверные технологии. Кодить в кайф.

Но важно понимать, что node.js весьма молодой, и как любая технология имеет технологический энтузиазм в виде эйфории публики, что чаще всего сопровождается упадком к нормальному восприятию технологии. Крч, не нужно ожидать от node.js убийцы всего. Это отдельного типа технология, и имеет свою нишу. Конечно она делает кучу разных задач в разы проще, но со многими она не справляется, как и любая другая технология.

Для web API или WebSockets - это конечно один из самых популярных выборов сейчас (тех кто не завязан на ограничениях тормозящего бизнеса).

JavaScript - это скрипт. И такого сильного OOP в нём нету как в том же C#. Основное что сбивает столку это то что function - это и функция и объект, и класс. Зависит от использования и применения.

Самое же главное про server-side JS это не OOP а event-driven парадигма.
Node.js работает в одном потоке - также как и Blitz3D. Но важное отличие в том что там очередь позади этого главного потока. В эту очередь скидываются все асинхронные вызовы функций, таймеров, интервалов и т.п.
Например можно сказать: "через 100мс с текущего момента, вызови 'эту' функцию".
Или: "когда пришло сообщение, вызови 'эту' функцию".
Они будут вызваны асинхронно, в одном и том же потоке, но потом, ты не знаешь когда точно.

Далее важно понимать суть closures - это бракетов. И как переменные доступны внутри них (типо локальные), и вне их. Например создавая новую функцию ты имеешь доступ к переменным которые объявлены в теле блока где эта функция создаётся, и так выше и выше по цепочке вызовов до глобального блока видимости.

Сперва тебе нужно разобраться с примитивами самого JS, переменные, массивы, объекты, функции. И немного .prototype - это методы для классов.
Тогда уже можешь двигаться писать смело на node.js, можешь и сразу писать, сперва без веб частей, а тупо JS.
Для web'а, проще заюзать express.js. Там всё примитивно и просто.

Литература? Ну книг я бы не читал по этому топику. Лучше мелкие статейки или конкретная инфа по модулям или функциям - так ты мыслить будешь динамично в области языка и технологии, а не по шаблонам.
Тем более я не встречал хорошей общей литературы по этим технологиям чтобы дать хорошее знание. Ты верно сказал: JS, JS'у рознь.

Крч, начинай кодить, поставь node, заюзай npm пару раз (там всё просто), и начинай кодить.
Будут вопросы - задавай, поможем.
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо moka за это полезное сообщение:
DarkInside (10.04.2013), pax (31.08.2013), St_AnGer (10.04.2013)
Старый 10.04.2013, 17:41   #4
DarkInside
Разработчик
 
Аватар для DarkInside
 
Регистрация: 08.08.2011
Сообщений: 505
Написано 191 полезных сообщений
(для 369 пользователей)
Ответ: Node.js для новичка

Спасибо, буду пробовать
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 07:19.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com