Node jsworkshop

  • View
    113

  • Download
    2

Embed Size (px)

DESCRIPTION

Workshop auf den JavaScript-Days 2012 in Berlin.

Text of Node jsworkshop

  • 1. Friday, September 28, 12

2. WER BIN ICH? SebastianSpringer https://github.com/sspringer82 @basti_springer Teamlead @ MayowerFriday, September 28, 12 3. WER SEID IHR?Friday, September 28, 12 4. LETS GOFriday, September 28, 12 5. THEMEN Installation Dateisystem Kernkomponenten Datenbanken Beispiel Promises Module Child Processes EigenerCode Websockets Asynchronitt Debugger NPM TestingFriday, September 28, 12 6. INSTALLATIONFriday, September 28, 12 7. v0.8.11v0.8.10 NODE-V0.8.9Friday, September 28, 12 8. PAKETE Unixhttp://nodejs.org/dist/v0.8.9/node-v0.8.9-linux-x64.tar.gz Machttp://nodejs.org/dist/v0.8.9/node-v0.8.9.pkg Windowshttp://nodejs.org/dist/v0.8.9/x64/node-v0.8.9-x64.msiFriday, September 28, 12 9. HTTP://NODEJS.ORG/ DOWNLOAD/Friday, September 28, 12 10. SOURCEFriday, September 28, 12 11. HAT ES GEKLAPPT?Friday, September 28, 12 12. DIE KERNKOMPONENTENFriday, September 28, 12 13. V8 SchnellerZugriff auf Eigenschaften DynamischeErstellung von Maschinencode GarbageCollectionFriday, September 28, 12 14. V8 - FAST PROPERTY ACCESSFriday, September 28, 12 15. V8 - FAST PROPERTY ACCESSFriday, September 28, 12 16. V8 - FAST PROPERTY ACCESSFriday, September 28, 12 17. MASCHINENCODEFriday, September 28, 12 18. V8 - GARBAGE COLLECTION Programmausfhrung wird angehalten Eswird nur ein Teil des Object Heaps geprft V8 kennt alle Objekte und Pointer im SpeicherFriday, September 28, 12 19. LIBEV Full-featuredand high-performance event loop libeventals Basis Alles, auerder eigene Code ist parallel und asynchronFriday, September 28, 12 20. LIBEIO Eventbasierte Bibliothek fr asynchrone I/O Operationen Ergnzungzu libev Features: ffnen, Lesen, Schreiben, Lschen, etc. Modul: fsFriday, September 28, 12 21. C-ARES asynchrone DNS Ausung Modul: dnsFriday, September 28, 12 22. EVCOM Basiertauf libev Eventbasierte Library fr Stream Sockets Modul: netFriday, September 28, 12 23. EIN KLEINES BEISPIELFriday, September 28, 12 24. INTERAKTIVFriday, September 28, 12 25. WEBSERVERFriday, September 28, 12 26. WEBSERVERFriday, September 28, 12 27. WEBSERVERFriday, September 28, 12 28. MODULEFriday, September 28, 12 29. VERFGBARE MODULE Stream OS Events Debugger File System Cluster Net Util HTTP Buffer ChildProcesses UDPFriday, September 28, 12 30. HTTP://NODEJS.ORG/API/Friday, September 28, 12 31. STABILITTSINDEX0 - Deprecated1 - Experimental2 - Unstable3 - Stable4 - API Frozen5 - LockedFriday, September 28, 12 32. STABILITTSINDEXFriday, September 28, 12 33. MODULE VERWENDENFriday, September 28, 12 34. EIGENE KLASSEN DEFINIERENFriday, September 28, 12 35. ...IM BROWSERFriday, September 28, 12 36. ...IN NODE Human.jsFriday, September 28, 12 37. ...IN NODEserver.jsFriday, September 28, 12 38. ASYNCHRONE PROGRAMMIERUNGFriday, September 28, 12 39. DATEI LESEN node.js Betriebssystem LeseoperationFriday, September 28, 12 40. DATEI LESENFriday, September 28, 12 41. DATEI LESENFriday, September 28, 12 42. DATEI LESENFriday, September 28, 12 43. Friday, September 28, 12 44. NPM Node Package Manager Seitnode 0.6.3 Bundled Repo @ https://npmjs.org/Friday, September 28, 12 45. KOMMANDOS npm search npm install npm list npm update npm removeFriday, September 28, 12 46. NPM SEARCHFriday, September 28, 12 47. NPM INSTALLFriday, September 28, 12 48. NPM LISTFriday, September 28, 12 49. NPM UPDATEFriday, September 28, 12 50. NPM REMOVEFriday, September 28, 12 51. EIGENE NPM PAKETEFriday, September 28, 12 52. EIGENE NPM PAKETE npmadduser Username, Passwort, E-Mail npmpublish |Friday, September 28, 12 53. HTTPS://GITHUB.COM/JOYENT/NODE/WIKI/Friday, September 28, 12 54. DATEISYSTEMFriday, September 28, 12 55. DATEISYSTEM-FUNKTIONEN exists unlink readFile chmod writeFile chown appendFile ... watchFile renameFriday, September 28, 12 56. FILE EXISTSFriday, September 28, 12 57. FILE EXISTSFriday, September 28, 12 58. FILE EXISTSFriday, September 28, 12 59. APPEND FILEFriday, September 28, 12 60. APPEND FILEFriday, September 28, 12 61. APPEND FILEFriday, September 28, 12 62. WATCH FILEFriday, September 28, 12 63. WATCH FILEFriday, September 28, 12 64. WATCH FILEFriday, September 28, 12 65. WATCH FILEFriday, September 28, 12 66. FRAGEN?Friday, September 28, 12 67. DATENBANKENFriday, September 28, 12 68. Friday, September 28, 12 69. MySQLFriday, September 28, 12 70. MySQL CouchDBFriday, September 28, 12 71. MySQL CouchDB MS SQL ServerFriday, September 28, 12 72. MySQL CouchDBSQLite MS SQL ServerFriday, September 28, 12 73. MySQL CouchDB RedisSQLite MS SQL ServerFriday, September 28, 12 74. MySQL PostgreSQL CouchDBRedisSQLite MS SQL ServerFriday, September 28, 12 75. MySQL PostgreSQL CouchDBRedisSQLite MS SQL Server HiveFriday, September 28, 12 76. MySQL PostgreSQLMongo CouchDBRedisSQLite MS SQL Server HiveFriday, September 28, 12 77. MySQL PostgreSQLOracleMongo CouchDB RedisSQLite MS SQL Server HiveFriday, September 28, 12 78. MYSQL npm install mysql Implementierung des mysql ProtokollsFriday, September 28, 12 79. MYSQLFriday, September 28, 12 80. TEST-DATENBANKFriday, September 28, 12 81. MYSQLFriday, September 28, 12 82. MYSQLFriday, September 28, 12 83. PROMISESFriday, September 28, 12 84. PROMISES Ergebnis eines asynchronen Funktionsaufrufs Rckgabewert oder Exception Promisestatt Blocking CommonJSProposal bis0.2 Bestandteil von NodeFriday, September 28, 12 85. PYRAMID OF DOOMFriday, September 28, 12 86. PROMISESFriday, September 28, 12 87. PROMISE-LIBRARIES https://github.com/kriskowal/q https://github.com/kriszyp/promised-io https://github.com/kriszyp/node-promise ...Friday, September 28, 12 88. OHNE PROMISESFriday, September 28, 12 89. OHNE PROMISESFriday, September 28, 12 90. PROMISESFriday, September 28, 12 91. PROMISESFriday, September 28, 12 92. PROMISESFriday, September 28, 12 93. PROMISESFriday, September 28, 12 94. CHILD PROCESSESFriday, September 28, 12 95. CHILD PROCESSES spawn- Kommandoausfhrung exec- Kommandoausfhrung in Puffer execFile- Dateiausfhrung in Puffer fork- Node ProzessFriday, September 28, 12 96. ETWAS RECHENINTENSIVESFriday, September 28, 12 97. potenziellETWAS BLOCKIERENDESFriday, September 28, 12 98. ETWAS BLOCKIERENDESFriday, September 28, 12 99. ETWAS BLOCKIERENDESFriday, September 28, 12 100. DIE LSUNG: WIR FORKENFriday, September 28, 12 101. CHILD PROCESSESFriday, September 28, 12 102. CHILD PROCESSESFriday, September 28, 12 103. CHILD PROCESSESFriday, September 28, 12 104. WEBSOCKETSFriday, September 28, 12 105. WEBSOCKETS Protokoll auf TCP-Basis BidirektionaleClient-Server-Kommunikation Wird im Rahmen von HTML5 entwickelt Untersttzungdurch LibrariesFriday, September 28, 12 106. Friday, September 28, 12 107. SOCKET.IO - SERVERFriday, September 28, 12 108. SOCKET.IO - SERVERFriday, September 28, 12 109. SOCKET.IO - CLIENTFriday, September 28, 12 110. SOCKET.IO - CLIENTFriday, September 28, 12 111. SOCKET.IO - CLIENTFriday, September 28, 12 112. SOCKET.IO - SERVERFriday, September 28, 12 113. DEBUGGERFriday, September 28, 12 114. DEBUGGERFriday, September 28, 12 115. DEBUGGERFriday, September 28, 12 116. DEBUGGERFriday, September 28, 12 117. DEBUGGER - STEP next-n cont-c step -s out-oFriday, September 28, 12 118. DEBUGGER - WATCH watch(expression) unwatch(expression) watchersFriday, September 28, 12 119. DEBUGGER - WATCHFriday, September 28, 12 120. DEBUGGER - REPLFriday, September 28, 12 121. TESTINGFriday, September 28, 12 122. TEST FRAMEWORKS node-unit node assertion testing jasmine-nodeFriday, September 28, 12 123. JASMINE-NODEFriday, September 28, 12 124. JASMINE-NODEFriday, September 28, 12 125. JASMINE-NODE src/Calculator.jsFriday, September 28, 12 126. JASMINE-NODEspec/Calculator.spec.jsFriday, September 28, 12 127. JASMINE-NODEFriday, September 28, 12 128. JASMINE-NODEFriday, September 28, 12 129. FRAGEN?Friday, September 28, 12 130. KONTAKT Sebastian Springer sebastian.springer@mayflower.de Mayflower GmbH Mannhardtstr. 6 80538 Mnchen Deutschland @basti_springer https://github.com/sspringer82Friday, September 28, 12 131. SOCKETSFriday, September 28, 12 132. SOCKETS Kommunikationber Netzwerk-/Datei-Sockets Read-, Write-und Read-Write-Sockets net-ModulFriday, September 28, 12 133. SOCKETS Write-Socket- Daten Daten Read-Socket- Socket-ServerClientClientFriday, September 28, 12 134. SOCKETS - SERVERFriday, September 28, 12 135. SOCKETS - READFriday, September 28, 12 136. SOCKETS - WRITEFriday, September 28, 12 137. SOCKETS - SERVERFriday, September 28, 12 138. SOCKETS - SERVERFriday, September 28, 12 139. SOCKETS - SERVERFriday, September 28, 12 140. SOCKETS - SERVERFriday, September 28, 12