Skończyłem więc oglądać znakomitą serię Douglasa Crockforda o Javascript, aw ostatnim odcinku (jak dotąd) pętla wyjaśnia, dlaczego Node.js jest niemal idealnym rozwiązaniem dla kodu po stronie serwera.
Mówi o utrzymywaniu stanu, nie w bazie danych, ale w domknięciach działających w Node.js, twierdzi również, że systemy szablonów (takie jak JSP, PHP i ASP) są kiepską abstrakcją dla bardziej skomplikowanych aplikacji internetowych i że node.js zapewnia rozwiązanie tego problemu.
Jestem gotowy na zakup, ale nie mogę znaleźć żadnych przykładów aplikacji internetowych korzystających z tego wzorca ani żadnych książek lub samouczków o tym, jak to zrobić. Nie mówię o prostej aplikacji , ale o czymś, co wykorzystywałoby wzorce, o których mówił Crockford w swoim wystąpieniu. Każdy wie, gdzie mogę znaleźć kilka samouczków / przykładów aplikacji internetowych napisanych w Node.js (i tak, wiem o Geddy i ExpressJs , ale nie wydają się one podążać za radykalnie różnymi wzorcami, o których mówił Crockford i bardziej przypominały zdobycie doświadczenia z Railsy na Node.js).
[Uwaga z 3 lat w przyszłości: Wygląda na to, że Express , Geddy , Sails , Kraken i inni są re-implementacjami frameworków Rails / Symfony / Spring z Ruby / PHP / Java. Podczas gdy rzeczy takie jak bluza z kapturem i Meteor są próbą zupełnie nowego paradygmatu. KOA wygląda interesująco, ale jest daleko od bycia użytecznym, ale wygląda na to, że opiera się na mocnych stronach javascript z historią aplikacji MVC z przeszłości. 3 lata później i nadal są to ekscytujące czasy dla Nodejs, nawet jeśli nie jest to już nowa gorączka. Przynajmniej jest teraz w użyciu wiele przykładów Node ze świata rzeczywistego ...
źródło
Odpowiedzi:
Sugeruję, abyś zapoznał się z różnymi samouczkami, które pojawiają się ostatnio. Moje obecne ulubione to:
http://nodetuts.com/
Mam nadzieję że to pomoże.
źródło
Konkurs Node Knockout niedawno się zakończył i wiele zgłoszeń jest dostępnych na github. Wygląda na to, że witryna konkursowa w tej chwili nie działa, ale jestem pewien, że możesz znaleźć kilka wpisów w Google, aby je sprawdzić.
źródło
DailyJS ma dobry samouczek (długa seria 24 postów), który przeprowadzi Cię przez wszystkie aspekty tworzenia aplikacji do notatnika (w tym wszystkie możliwe dodatki).
Oto przegląd samouczka: http://dailyjs.com/2010/11/01/node-tutorial/
A oto link do wszystkich postów: http://dailyjs.com/tags.html#nodepad
źródło
Aktualizacja
Dav Glass z Yahoo wygłosił wykład na YuiConf2010 w listopadzie, który jest teraz dostępny w Video z .
Pokazuje w dużym stopniu, jak można użyć YUI3 do renderowania widżetów po stronie serwera, aby działały z żądaniami GET, gdy JS jest wyłączony, lub po prostu sprawić, by działały normalnie, gdy jest aktywny.
Pokazuje również przykłady używania DOM po stronie serwera do stosowania arkuszy stylów przed renderowaniem i innych fajnych rzeczy.
Dema można znaleźć na jego koncie GitHub .
Częścią, której brakuje IMO, aby uczynić to naprawdę niesamowitym, jest rodzaj podstawowego przechowywania stanu widżetu. Aby można było odwiedzić stronę bez JavaScript i wszystko działa zgodnie z oczekiwaniami, następnie włączają JS i teraz widżet ma ten sam stan jak poprzednio, ale działa bez ponownego ładowania strony, a następnie wrzuca trochę zapisywania na serwer + WebSockets do synchronizacji między wieloma otwarta przeglądarka ... i narodziła się kolejna generacja dyskretnych i wdzięcznie degradujących ARIA.
Oryginalna odpowiedź
Śmiało, zbuduj to sam.
Poważnie, 90% wszystkich aplikacji WebApps działa dobrze z podejściem REST, oczywiście możesz robić magiczne rzeczy, takie jak lepsze śledzenie użytkowników, śledzenie pobrań w czasie rzeczywistym, sprawdzanie, które części filmów są oglądane itp.
Jednym z problemów jest skalowalność, gdy tylko masz więcej niż 1 proces węzłowy, wiele (ale nie wszystkie) korzyści z przechowywania danych między żądaniami znika, więc musisz upewnić się, że klienci zawsze przechodzą ten sam proces. I nawet wtedy większe rzeczy będą ponownie wymagały warstwy bazy danych.
Node.js nie jest rozwiązaniem na wszystko, jestem pewien, że ludzie będą budować naprawdę świetne rzeczy w przyszłości, ale to wymaga trochę czasu, w tej chwili wielu po prostu przenosi rzeczy do Node, aby wszystko działało.
To, co (IMHO) sprawia, że Node.js jest tak świetny, to fakt, że usprawnia proces programowania, musisz pisać mniej kodu, działa doskonale z JSON, tracisz całe przełączanie kontekstów.
Do tej pory eksperymentowałem głównie z grami, ale mogę z całą pewnością powiedzieć, że w przyszłości będzie wiele fajnych rzeczy dla wielu graczy (a nawet MMO), które wykorzystują zarówno HTML5, jak i Node.js.
Node.js wciąż zyskuje na popularności, nie jest nawet blisko RoR Hype kilka lat temu (wystarczy spojrzeć na tag Node.js tutaj w SO, prawie 4-5 pytań dziennie).
Rzym (lub RoR) nie został zbudowany w ciągu nocy, podobnie jak Node.js.
Node.js ma cały potencjał, jakiego potrzebuje, ale ludzie wciąż próbują różnych rzeczy, więc sugeruję, abyś do nich dołączył :)
źródło
Najbliższą rzeczą jest prawdopodobnie eksperymentalna praca Dav Glassa przy użyciu node.js, express i YUI3. Zasadniczo wyjaśnia, w jaki sposób YUI3 jest używany do renderowania znaczników po stronie serwera, a następnie wysyłany do klienta, gdzie występuje powiązanie ze zdarzeniem i danymi. Piękno polega na tym, że YUI3 jest używany tak, jak jest, zarówno na kliencie, jak i na serwerze. To ma dużo sensu. Jedynym dużym problemem jest to, że nie ma jeszcze gotowej do produkcji biblioteki DOM po stronie serwera.
screencast
źródło