Node.js คือ runtime environment ที่ execute ตัวโค้ด javascript นอก web browser
ในปัจจุบัน Node.js จัดว่าเป็น framework ที่สำคัญยิ่งของฝั่ง back-end หรือว่าฝั่ง server-side เพราะเป็นสิ่งที่รวมการพัฒนา web application ให้อยู่ในภาษาเดียวนั่นคือ JavaScript ไม่ว่าจะเป็น server-side scripts หรือ client-side scripts ก็ตาม
ดังนั้น Node.js จึงเป็นเครื่องมือที่ขาดไม่ได้ของการพัฒนาเว็บไซต์ยุคปัจจุบัน ทั้งนี้คุณสามารถดาวน์โหลดตัว source code หรือว่า pre-built installer ได้จากลิงค์ของเว็บไซต์ Node.js โดยตรงครับ
ทุกวันนี้มีบริษัทเทคโนโลยีจำนวนมากที่ใช้ Node.js software อย่างเช่น Netflix, Microsoft, IBM ฯลฯ ดังนั้นการใช้งาน Node.js ได้อย่างเชี่ยวชาญจึงเป็นทักษะที่สำคัญที่คุณต้องมี ถ้าคุณปรารถนาจะเป็น Full Stack Developer หรือว่า Back-end developer ครับ
ทุกวันนี้การเรียน Node.js ให้ชำนาญสามารถทำได้ทางออนไลน์ ดังนั้นในโพสนี้ ผมจะมาแนะนำว่าคอร์สสอน Node.js ออนไลน์ที่น่าสนใจมีอะไรบ้างครับ
ข้อควรทราบ:
- ราคาและเงื่อนไขต่างๆ ของคอร์สสอน Node.js อาจจะเปลี่ยนแปลงไปได้ โปรดตรวจสอบกับทางเว็บไซต์อีกครั้งหนึ่งเพื่อความชัดเจน
- นอกจากนี้การเรียน Node.js ทุกคอร์ส คุณจะต้องมีความรู้ภาษา JavaScript อย่างน้อยในระดับเบี้องต้น นั่นคือเข้าใจ variables, functions, objects, arrays, if ฯลฯ นอกจากนี้ยังควรใช้ Command Line Terminal ได้อย่างคล่องแคล่วเช่นกัน
แพลตฟอร์มที่ใช้เรียนการใช้งาน Node.js
คอร์สต่างๆ ที่ผมจะแนะนำส่วนใหญ่จะอยู่ใน Udemy, Coursera และ Edureka ถ้าคุณยังไม่เข้าใจว่าโครงสร้างของแพลตฟอร์ม ตลอดจนรูปแบบการเรียนเป็นอย่างไร ลองอ่านได้ที่บทความแพลตฟอร์มเรียนออนไลน์น่าสมัครครับ
สำหรับ Linux Foundation และ PluralSight นั้นรายละเอียดอยู่ในโพสนี้แล้วครับ
The Linux Foundation
คอร์สที่ 1-3 คือคอร์สของ The Linux Foundation
The Linux Foundation เป็นองค์กรไม่แสวงหาผลกำไรที่ดูแลการพัฒนาและการใช้งาน Linux โดยตรง ซึ่งทางองค์กรก็มีคอร์ส Node.js ที่น่าสนใจให้เรียนอยู่หลายคอร์สด้วยกัน
ทั้งนี้เราสามารถเรียนได้ตั้งแต่ระดับเริ่มต้นไปจนถึงระดับสูงเลยครับ ถ้าคุณกำลังหาคอร์ส Node.js ที่ใช้ได้จริง ผมมองว่า Linux Foundation เป็นตัวเลือกอันดับต้นๆที่มีอยู่เลยครับ
อย่างไรก็ดีบทเรียนของ The Linux Foundation จะไม่ใช่เป็นแบบวีดิโออย่างที่คอร์สออนไลน์ทั่วไปนิยมใช้ แต่จะเน้นไปที่การอ่านและลงมือทำจริงแบบล้วนๆ ครับ ผมมองว่าการเรียนแบบนี้ไม่ได้เหมาะกับผู้เรียนทุกคน ในส่วนนี้ก็แล้วแต่ผู้เรียนว่าชอบสไตล์ไหน ผมแนะนำให้ลองเรียนคอร์สแรกที่เรียนฟรีก่อนเพื่อดูว่าบทเรียนแบบนี้เหมาะกับคุณรึเปล่าครับ
เราไปดูกันดีกว่ามีคอร์สไหนบ้าง
1. Introduction to Node.js (คอร์สเรียนฟรี)
คอร์สเรียนระดับเริ่มต้นที่จะสอนผู้ใช้งานภาษา JavaScript ให้เข้าใจพื้นฐานของ Node.js และการประยุกต์ใช้ต่างๆ ภายในคอร์ศคุณจะได้เรียนเนื้อหาต่อไปนี้
- ความรู้เบื้องต้นเกี่ยวกับ Ecosystem ของ Node.js
- การติดตั้ง Node.js
- Service Mocking (RESTful JSON APIs)
- การสร้าง CLI Tools
- การ prototype ในส่วนของ real-time services
การเรียนทุกอย่างในคอร์สนี้จะฟรี (ลงทะเบียนแล้วเริ่มเรียนได้เลย) โดยจะใช้เวลาเฉลี่ยประมาณ 7 สัปดาห์ในการเรียนให้จบ (แต่จะเร็วกว่านั้นก็ได้เช่นกัน) อย่างไรก็ดีถ้าคุณต้องการสอบวัดผลเพื่อได้รับประกาศนียบัตร คุณจะต้องจ่ายค่าคอร์สเป็นราคา $149 ครับ แต่ในส่วนนี้ผมมองว่าไม่จำเป็นครับ
2. Node.js Application Development
สำหรับคอร์สที่ 2 จะเป็นคอร์สที่ต่อยอดจากคอร์สแรก เนื้อหาต่างๆ จะมีรายละเอียดที่ซับซ้อนขึ้น ทั้งนี้ตัวคอร์สจะเน้นไปที่การสร้าง Node.js app ในรูปแบบต่างๆ ครับ ในส่วนของรายละเอียดจะมีดังต่อไปนี้
- The Node Binary
- Debugging และ Diagnostics
- ทบทวน JavaScript
- ระบบ Module และ Event ของ Node.js
- การจัดการ Error
- การใช้ Buffer และ Streams
- การจัดการ File System
- การเขียน Unit Tests
- และอื่นๆ อีกมากมาย
ตัวคอร์สจะใช้เวลาประมาณ 16-20 ชั่วโมงในการเรียนให้จบ โดยคุณจะมีเวลาเรียนและทบทวนทั้งสิ้น 1 ปีด้วยกันครับ เพราะฉะนั้นแน่นอนว่าก็ต้องรีบเรียนในระดับหนึ่ง
สำหรับค่าใช้จ่ายจะอยู่ที่ $299 หรือประมาณ 8,970 บาท แต่ถ้าคุณจะสมัครสอบ Application Developer Certification ของ OpenJS (ผู้ดูแลการพัฒนา Node.js) ไปด้วยเลย ราคาจะอยู่ที่ $499 หรือประมาณ 14,970 บาทครับ ซึ่งราคานี้จะได้รับส่วนลด $100 เพราะว่าค่าสอบอยู่ที่ $300 นั่นเอง
3. Node.js Services Development (ระดับสูง)
คอร์สที่ 3 ที่จะสอน Node.js ที่ลึกลงไปจาก 2 คอร์สแรก โดยจะเน้นไปที่การใช้ Node.js ระดับสูง ซึ่งจะเหมาะกับนักพัฒนาที่มีประสบการณ์มาบ้างแล้ว ทั้งนี้เนื้อหาภายในคอร์สจะเน้นไปที่ Services และ Security ของ Node.js ครับ
หัวใจหลักของคอร์สนี้คือคุณจะได้เข้าใจโครงสร้างว่า HTTP ทำงานอย่างไรในระดับ Node Core API, การสร้าง Web Servers และอะไรบ้างที่จะต้องใช้งานในการใช้ RESTful Services
ด้านล่างคือเนื้อหาต่างๆ ที่คุณจะได้เรียนในคอร์สครับ
- การสร้าง Web Server
- การสร้าง RESTful JSON Services
- การจัดการข้อมูล
- Consuming/Aggregating Services
- การ Proxy HTTP Requests
- เจาะลึกในส่วนของ Web Security
โดยรวมแล้วถือว่าเป็นคอร์สเรียน Node.js ที่น่าสนใจมากๆ สำหรับนักพัฒนาที่มีประสบการณ์มาบ้างแล้ว คอร์สนี้จะใช้เวลาในการเรียน 20-24 ชั่วโมงครับ
ในส่วนของค่าใช้จ่ายจะอยู่ที่ $299 หรือประมาณ 8,970 บาทเช่นเดียวกับคอร์สที่ 2 อย่างไรก็ดีถ้าคุณต้องการจะสอบ Services Developer Certification ด้วย ราคาจะอยู่ที่ $499 หรือประมาณ 14,970 บาทครับ
Udemy
คอร์สที่ 4-7 อยู่ในแพลตฟอร์มของ Udemy
Udemy เป็นแพลตฟอร์มเรียนออนไลน์ที่ดีที่สุดสำหรับการเรียน Node.js แบบวิดีโออย่างประหยัด ราคาคอร์สจะอยู่ที่ไม่กี่ร้อยบาทเท่านั้นถ้าคุณซื้อในช่วงลดราคา ดังนั้นเกิดว่าคุณกดลิงค์ไปแล้ว ราคาคอร์สอยู่ที่ราคาเต็ม ผมแนะนำให้รอ 2-5 วันแล้วค่อยกลับเข้าไปดูใหม่ครับ
คอร์สสอน Node.js ใน Udemy ที่ผมมองว่าน่าสนใจได้แก่
ข้อควรทราบ
คอร์สของ Udemy หลายคอร์สนั้นไม่ได้รับการอัพเดต ทำให้ล้าสมัยไปแล้วสำหรับปี 2024 ถ้าเป็นไปได้โปรดเลือกคอร์สที่ได้รับการอัพเดตในครั้งล่าสุดภายในเวลาไม่เกิน 6 เดือนถึง 1 ปีครับ
4. Node.js, Express, MongoDB & More: The Complete Bootcamp 2024
คอร์สนี้เป็นคอร์สแบบ All-in-one ครับ เหมาะกับใครที่อยากเรียนทุกอย่างของ Backend Development ในคอร์สเดียว ตัวคอร์สสอนโดย Jonas Schmedtmann นักพัฒนาเว็บที่เป็นหนึ่งในครูผู้สอนที่ได้รับความนิยมที่สุดของ Udemy (สอนแค่ 5 คอร์สแต่มีนักเรียนกว่า 920,000 คน)
ในการเรียนคอร์สนี้ คุณจะเห็นว่ามีการใช้ MongoDB แต่คุณไม่ต้องเรียนมาก่อนแต่อย่างใด เพราะในคอร์สจะมีสอน MongoDB อย่างละเอียดพอสมควร (12 ชั่วโมง) ครับ
สิ่งที่คุณจะได้เรียนในคอร์สนี้ได้แก่
- พื้นฐานของ Node.js และ NPM อย่างเช่น Asynchronous Nature, การสร้าง API, HTML Templating ฯลฯ
- การทำงานเบื้องหลังของ Node.js อาทิเช่น Event Loop, Streams ฯลฯ
- ทบทวน Asynchronous JavaScript (ข้ามได้ถ้าคุณแม่นอยู่แล้ว)
- แนะนำ Express.js
- RESTful API Design พร้อมกับฟีเจอร์ชั้นสูงอย่าง Pagination, Aliasing, Sorting ฯลฯ
- สอนพื้นฐานของ MongoDB และการใช้ MongoDB กับ Mongoose
- การจัดการ Error ของ Express
- การจัดการในส่วนของ Authentication, Authorization และ Security ของ Web Apps
- Data Modeling และ Advanced Mongoose
- การทำ Server-Side Rendering กับ Pug Templates
- การใส่ฟีเจอร์เพิ่มเติมอย่างเช่น Email, File Uploads และการชำระเงินลงไปใน Web Apps
- จัดการในส่วนของ Git และ Github และการ deploy web app ของคุณ
- และอื่นๆอีกมากมาย
ในการเรียนคอร์สนี้ ผู้สอนจะสอนทุกอย่างผ่านการทำโปรเจคขนาดใหญ่ นั่นก็คือ Web Apps ที่สมบูรณ์พร้อมที่จะใช้งานได้ทันที การสอนจะดำเนินไปตามลำดับ ซึ่งจะทำให้คุณไม่งงครับ
สิ่งที่ผมชอบในคอร์สนี้อีกอย่างหนึ่งคือ ผู้สอนได้ทำ Subtitle ภาษาอังกฤษคุณภาพเยี่ยมใส่ไว้ในแต่ละคลิปด้วย ซึ่งจะมีคุณภาพมากกว่าแบบที่ Auto-generated โดยทาง Udemy เอง ในส่วนนี้จะทำให้คุณไม่มีปัญหาในเรื่องภาษาและความเข้าใจเลยครับ
โดยรวมแล้วคุณจะได้เรียนเนื้อหากว่า 42 ชั่วโมง ส่วนคะแนนรีวิวได้ไปสูงถึง 4.7/5.0 จากนักเรียนกว่า 30,600 คน
5. The Complete Node.js Developer Course (3rd Edition)
คอร์สสอน Node.js ที่จัดทำโดยผู้สอนสองคนได้แก่ Andrew Mead นักพัฒนาแบบ full-stack developer ที่เชี่ยวชาญการใช้ Node.js, React และ JavaScript เป็นพิเศษ และ Rob Percival เจ้าของโรงเรียนสอน coding ใกล้กับ Cambridge University มหาวิทยาลัยที่เขาจบการศึกษามาครับ
คอร์สนี้เป็นหนึ่งในคอร์สสอน Node.js ที่เนื้อหามากที่สุดใน Udemy เพราะมีเนื้อหาแบบวีดิโอให้เรียนถึง 35 ชั่วโมงด้วยกัน โดยจะครอบคลุมความรู้ Node.js ในส่วนต่างๆ อาทิเช่น
- การ install และโครงสร้างของ Node.js เบี้องต้น และคำอธิบายสำหรับมือใหม่ว่า Node.js คืออะไร?
- Node.js Module System: สอนความรู้เบื้องต้นเกี่ยวกับการใช้งาน Built-in core modules, สร้าง HTTP requests, สร้าง web servers ฯลฯ
- File System and Command Line Args: Argument Parsing, Storing Data with JSON, Add/Remove Note ฯลฯ
- Debugging Node.js
- Asynchronous Node.js – เจาะลึกการสร้างและจัดการ HTTP Request, Callback รวมไปถึงการจัดการ error ต่างๆ ที่อาจจะเกิดขึ้นได้
- Web Servers – เจาะลึกการสร้าง Web Servers เพื่อเก็บข้อมูลของเว็บไซต์ไม่ว่าจะเป็น HTML, JSON, Static Assets, CSS, JS ฯลฯ
- Accessing API – เข้าถึง API จาก Browser, สร้าง JSON HTTP Endpoint ฯลฯ
- Application Deployment – สอนวิธีการ Deploy application ของคุณเพื่อให้ทุกคนใน Internet เข้าถึง Node.js app ของคุณได้ และเรียนรู้การใช้งาน Git, Github และ Heroku
- MongoDB and Promises – ความรู้การใช้งาน MongoDB เบื้องต้น
- และอื่นๆ อีกมากมาย
สรุปแล้วในคอร์ส คุณจะได้สร้าง ทดสอบ รวมไปถึงเริ่มใช้งาน Node Apps จริง, ใช้งาน ES6/ES7 Javascript , เก็บข้อมูลด้วย MongoDB และ Mongoose, สร้าง web apps โดยใช้ SocketIO และยังมีโปรเจคที่คุณจะได้ทำอีก 4 ชิ้น นั่นคือ
- app ทั่วไปที่ใช้สำหรับการจดงานต่างๆ
- app พยากรณ์อากาศที่เชื่อมต่อกับ MapBox และ Dark Sky API
- Task Manager Rest API
- app แชทแบบ real-time
การทำโปรเจคจะไปอย่างช้าๆ ตามสื่อการสอนของครูผู้สอนครับ เนื่องจากวีดิโอละเอียดมาก ทำให้การเรียนดำเนินไปด้วยความเร็วที่เหมาะสม คุณจึงไม่ต้องกังวลว่าจะทำไม่ทันครับ แต่ถ้าไม่ทันก็ไม่ต้องกังวล เพราะคุณย้อนกลับไปดูได้อยู่แล้วครับ
คอร์สนี้ได้คะแนนรีวิวสูงถึง 4.7/5.0 โดยมีนักเรียนมากกว่า 197,000 คน และเป็นตัวเลือกที่ดีที่สุดตัวหนึ่งในการเรียน Node.js เลยครับ
6. Learn and Understand NodeJS
คอร์สนี้เป็นคอร์สสอน Node.js สำหรับใครที่ต้องการเรียนแบบรวบรัด โดยเนื้อหาจะสั้นกว่าคอร์สแรก แต่คุณจะได้ลองสัมผัสและทดลองการใช้งาน Node.js ที่ผู้เชี่ยวชาญใช้อยู่ในทุกวันนี้ครับ ครูผู้สอนคือ Anthony Alicea นักพัฒนาของ Microsoft ที่มีประสบการณ์การสร้าง web apps หลายสิบปีครับ
สิ่งที่คุณจะได้เรียนจากคอร์สนี้คือ
- การ Set up และอธิบายการทำงานของ V8 JavaScript Engine ซึ่งเขียนขึ้นโดยใช้ C++
- พื้นฐานของ Node.js
- Modules, Exports and Require
- Events และ Node Event Emitter
- Asynchronous Code, The Event Loop, Streams, Pipes
- เรียนรู้เกี่ยวกับ HTTP และการสร้าง Web Server ใน Node.js
- การใช้งาน NPM (Node Package Manager)
- อธิบาย Express.js ซึ่งเป็น Web Application Framework ของ Node.js
- สร้าง App ภายใน 1 ชั่วโมง โดยใช้ MEAN Stack (MongoDB, Express, Angular และ Node)
โดยรวมแล้วคอร์สนี้มีเนื้อหาประมาณ 13 ชั่วโมง และมีตัวอย่างมากมายให้คุณได้ลองศึกษา ตัวคอร์สจะเน้นไปที่ความรู้ความเข้าใจโครงสร้างของ Node.js, วิธีการเลี่ยงปัญหาที่เกิดขึ้นบ่อยๆ รวมไปถึงการทำ Debug ซึ่งแน่นอนว่าเป็นประโยชน์ในการต่อยอดต่อไปอย่างแน่นอน
คะแนนรีวิวคอร์สนี้ได้ไป 4.6/5.0 จากนักเรียนกว่า 105,000 คนครับ
7. Node JS: Advanced Concepts
คอร์สสอน Node.js ที่จัดทำโดย Stephen Grider หนึ่งใน Software Engineer ของบริษัทชั้นนำแห่งหนึ่งในย่าน Bay Area ของเมืองซานฟรานซิสโก ในคอร์สนี้เขาจะนำความรู้ในการใช้งาน Node.js ของเขามาสอนแบบหมดเปลือกให้กับผู้สนใจ
เนื้อหาในคอร์สนี้นั้นจะเป็น Node.js ระดับสูง ต่างจากคอร์สแรกที่เป็นคอร์สระดับเบื้องต้น ดังนั้นคุณจะต้องมีความรู้ Node.js, Express และ MongoDB ในระดับเบื้องต้น และความเข้าใจ Javascript ในระดับสูงครับ
สิ่งที่เขาจะสอนในคอร์สนี้คือ
- โครงสร้างภายในของ Node อาทิเช่น Node.js Event Loop, Threadpools, OS Operations อย่างละเอียดมาก
- การเพิ่มประสิทธิภาพของ Node.js อย่างเช่น Clustering, Worker Threads, การใช้ process manager อย่าง PM2
- Data Caching โดยใช้ Redis เพื่อเพิ่มความเร็วของ database queries
- เพิ่ม Automated Headless Browser Testing ใน Node server ของคุณ (ใช้ Jest และ Puppeteer)
- Continuous Integration Testing และทำ continuous integration กับแพลตฟอร์มอย่าง Travis CI
- ใช้ AWS S3 ในการจัดการ image และ file upload ใน app ของคุณ
- และอื่นๆ อีกมากมาย
คอร์สนี้น่าสนใจมากสำหรับใครที่กำลังจะไปสมัครงานที่ใช้ Node.js เพราะจะช่วยคุณตอบคำถามในการสัมภาษณ์หินๆ อย่างเช่น “ช่วยอธิบาย Event Loop ของ Node” ได้เป็นอย่างดี ซึ่งถ้าคุณตอบได้นั่นแปลว่าคุณเข้าใจโครงสร้างภายในของ Node.js นั่นเองครับ และเพิ่มโอกาสที่คุณจะทำให้ผู้สัมภาษณ์รู้สึกประทับใจ
รวมแล้วเนื้อหาในคอร์สมีทั้งหมด 16 ชั่วโมง และได้คะแนนรีวิวสูงถึง 4.7/5.0 จากนักเรียนเกือบ 31,000 คนครับ
อย่างไรก็ดี ถ้าสองคอร์สนี้ยังไม่ตอบโจทย์ของคุณ ผมแนะนำให้ลองหาคอร์สอื่นๆ ได้ที่ Node.js courses ใน Udemy โดยผมแนะนำว่าคุณควรเลือกคอร์สที่มีอัพเดตอยู่เรื่อยๆ ครับ (ดูได้ที่หน้าคอร์สจะมีคำว่า “Last updated”)
สาเหตุคือการเรียนในสาขา IT ไม่ว่าจะเป็น Node.js, Python หรือแม้กระทั่งซอฟต์แวร์อย่างเช่น Qlikview ต้องการเนื้อหาที่สดใหม่อยู่เสมอเพื่อที่ให้ทันต่อเทคโนโลยีที่เปลี่ยนแปลงนั่นเองครับ
Edureka
คอร์สที่ 8 อยู่ในแพลตฟอร์มของ Edureka
8. Node.js Certification Training
สำหรับคอร์สสอน Node.js ของ Edureka จะมีอยู่ 1 คอร์ส นั่นคือ Node.js Certification Training ครับ ความยาวของคอร์สจะอยู่ที่ 30 ชั่วโมงเต็ม
เนื้อหาในคอร์สนี้จะประกอบด้วย
- Introduction to Node.js – แนะนำคุณให้รู้จักกับ Node.js, อะไรที่ทำให้ Node.js เป็นที่นิยม, เรียนการใช้งาน Node Package Manager (NPM) และ Nodemon
- File System Module and Express.js – เรียนวิธีการใช้ File System เพื่อเก็บข้อมูล และได้มาซึ่ง user inputs ด้วยการใช้ Command Line Arguments รวมไปถึงสร้าง applications โดยใช้ Express.js แล้วเริ่มปรับใช้ด้วย PM2 และ Nginx
- Asynchronous Programming – เรียนการใช้ Call Stack, Callback queue และ Event Loop ในการพัฒนา Asynchronous Node.js applications และการจัดการ HTTP request ต่างๆ
- Integration with MongoDB and Email Servers – เรียนการใช้ Node.js กับ MongoDB และลองส่งอีเมล์โดยใช้ Node.js application ของคุณ
- REST API and GraphQL – ใช้ Node.js applications ในการ run queries, เรียนรู้ REST API และลองใช้งาน Mongoose และ GraphQL
- สร้าง Node.js applications โดยใช้ ES6 Javascript
- User Authentication and Application Security – ใช้ API Authentication และ JSON Web Tokens เพื่อดูแลเรื่องความปลอดภัยของ application
- Dynamic Client-Server Interaction Using Socket.io – ใช้ Socket.io ในการสร้าง Chat application
- สร้าง Node.js applications โดยใช้ Microservices architecture และปรับใช้ apps ของคุณใน Docker Containers
นอกจากการเรียนทั่วไปแล้ว คุณจะยังได้การประเมินผลรวมไปถึงทำโปรเจคอีกมากมายกับครูผู้สอนของ Edureka ด้วยครับ
สำหรับการเรียน ผมแนะนำให้คุณทดลองเรียนจากคลิปด้านล่าง (กด play ได้เลยครับ) เพราะมีผู้เรียนบางคนเคยแจ้งว่าฟังภาษาอังกฤษสำเนียงอินเดียไม่เข้าใจ ดังนั้นผมมองว่าลองเรียนก่อนสมัครจะดีที่สุดครับ
ในการเรียนการสอนแบบสด ถ้าคุณเกิดพลาดคลาสใดคลาสหนึ่งขึ้นมาจะไม่ใช่ปัญหาเลยครับ เพราะคุณสามารถเข้าเรียนในรอบต่อไปได้ หรือว่าเรียนย้อนหลังแบบวีดิโอก็ได้เช่นกัน นอกจากนี้คอร์สเรียนออนไลน์ของ Edureka จะแบบซื้อขาดตลอดชีพด้วย คุณกลับมาเรียนเมื่อใดก็ได้ครับ
สำหรับเรื่องราคาจะอยู่ที่ $329 หรือประมาณ 9,900 บาทครับ ถ้าเรียนแล้วไม่พอใจสามารถคืนเงินได้ แต่ต้องรีบตัดสินใจครับ เพราะ Edureka ให้คืนเงินได้ภายใน 3 วันเท่านั้น
Coursera
คอร์สที่ 9 อยู่ในแพลตฟอร์มของ Coursera
9. Server-Side Development with NodeJS, Express and MongoDB
สำหรับคอร์สสอน Node.js ที่มีให้เรียนใน Coursera นั้นมีอยู่ไม่มากนัก โดยคอร์สที่ครบถ้วนที่สุดคือคอร์ส Server-Side Development with NodeJS, Express and MongoDB ที่จัดทำโดย The Hong Kong University of Science and Technology ครับ
จริงๆแล้วคอร์สนี้คือคอร์สจัดการทุกอย่างของ Server-side หรือพูดง่ายๆ คือ All-in-one ครับ ตัวคอร์สประกอบด้วย 4 ส่วนได้แก่ (สังเกตว่าชื่อของแต่ละส่วน ดูไม่เป็น computer science เลยแม้แต่น้อย 55)
- Introduction to Server-side Development – เรียนรู้ Node.js ตั้งแต่เริ่มแรก รวมไปถึง Node modules, Node HTTP server, Express framework และการ set up REST API โดยใช้ Express
- Data, Data Where art Thou Data – เริ่มการใช้งานการจัดเก็บข้อมูลโดยใช้ MongoDB, การเชื่อมต่อ Node application กับ MongoDB รวมไปถึงการใช้งาน Moogoose ODM ด้วยเช่นกัน
- Halt! Who goes there? – สร้าง REST API server อย่างสมบูรณ์ด้วยการใช้ Express, MongoDB และ Mongoose และเริ่มการทำ user authentication ใน application
- Backend as a Service – เรียนการทำ Mongoose population, เรียนรู้การทำ secure communication โดยใช้ HTTPS ฯลฯ
เนื้อหาที่เป็นวีดิโอจะอยู่ที่ 25 ชั่วโมง แต่คอร์สของ Coursera จะมีการประเมินผล และเอกสารมากมายให้อ่านด้วย ซึ่งทางแพลตฟอร์มแนะนำว่าถ้าจะเรียนให้จบครบถ้วนสมบูรณ์จะใช้เวลาประมาณ 55 ชั่วโมงครับ
ส่วนค่าเรียนจะใช้ระบบสมาชิก โดยค่าเรียนจะอยู่ที่ $49 หรือประมาณ 1,470 บาทต่อเดือน แต่คุณจะเรียนคอร์สอื่นๆ ในหลักสูตร Full-Stack Development With React Specialization ได้ด้วยครับ
PluralSight
คอร์สที่ 10 อยู่ในแพลตฟอร์มของ PluralSight
PluralSight เป็นอีกทางเลือกที่น่าสนใจในการเรียน Node.js เพราะเป็นแพลตฟอร์มออนไลน์ที่ทุ่มเทกับการสอนทักษะเทคโนโลยีต่างๆ โดยเฉพาะ แถมยังมีทรัพยากรให้เรียนและใช้ทำโปรเจคจำนวนมากมายมหาศาลอีกด้วย
10. คอร์สของ PluralSight
ในการเรียนกับ PluralSight คุณสามารถเรียนตั้งแต่ระดับเบี้องต้นที่คุณยังไม่รู้จักเลยว่า Node.js คืออะไรไปจนระดับสูง โดยคุณจะได้เรียนเนื้อหาต่อไปนี้ครับ
- กลยุทธ์ในการเขียน Asynchronous code
- ใช้งาน Express.js
- การเข้าถึงข้อมูลใน Node.js
- EventEmitters and Streams
- Real-time integration กับ Socket.IO
- สร้าง API ด้วย Node.js
- Modular Javascript
- Testing ต่างๆ
- การพัฒนาประสิทธิภาพของ Node.js application
- และอื่นๆ อีกมากมาย
รวมแล้วคอร์สสอน Node.js ใน PluralSight มีเนื้อหาทั้งหมด 37 ชั่วโมงด้วยกัน ซึ่งถือว่าละเอียดมากที่สุดคอร์สหนึ่งในโลกออนไลน์เลยครับ ครูผู้สอนของ PluralSight เองก็เป็นผู้เชี่ยวชาญที่มีประสบการณ์สูงมาก ดังนั้นแทบจะการันตีคุณภาพได้เลยครับ
สำหรับเรื่องราคา PluralSight จะใช้ระบบสมัครสมาชิก โดยแบ่งออกเป็นรายเดือนและรายปี รายเดือนจะอยู่ที่ $19 หรือ 570 บาทต่อเดือน ส่วนรายปีจะอยู่ที่ $105 หรือเฉลี่ยแล้ว $8.75 หรือประมาณ 260 บาทต่อเดือน แต่สิ่งที่คุณได้จะครอบคลุมทุกอย่าง นั่นคือคอร์สเรียนของ PluralSight กว่า 7,500 คอร์สครับ
นอกจากนี้ PluralSight ยังมีสมาชิกแบบพรีเมียมด้วย ซึ่งจะคิดราคาที่ $159 ต่อปี หรือเฉลี่ยแล้ว $13.25 หรือประมาณ 400 บาทต่อเดือน โดยแบบพรีเมียมจะได้ข้อสอบ practice exams ต่างๆ สำหรับการสอบ Certification ในสายงาน IT ทั้งหลายครับ ถ้าคุณสนใจแค่ Node.js อย่างเดียว ผมมองว่าส่วนนี้อาจจะไม่จำเป็นครับ
PluralSight ให้คุณใช้ฟรีได้ 7 วันครับ ถ้าสนใจคลิกสมัครได้เลยตามด้านล่าง
เลือกคอร์สสอน Node.js ออนไลน์ไหนดี?
สำหรับใครที่สนใจคอร์สสอน Node.js ราคาประหยัด ผมมองว่า Udemy ดีที่สุด เพราะราคาถูกและเป็นแบบซื้อขาดด้วย เหมาะแต่การนำมาทบทวนความรู้ในอนาคตด้วยครับ เนื้อหาที่ก็ลงลึกและละเอียดมากๆ
แต่ถ้าใครชอบการเรียนแบบมหาวิทยาลัย Coursera น่าจะเป็นตัวเลือกที่ยอดเยี่ยมที่สุดอย่างเป็นเอกฉันท์ ส่วน PluralSight จะเหมาะกับใครที่อยากเรียนหลายอย่าง เพราะมีความสนใจมากครับ ส่วน Edureka ที่ราคาสูงที่สุดจะเหมาะสำหรับคนที่ชอบเรียนแบบสอนสด และอยากโต้ตอบกับครูครับ
สุดท้ายถ้าใครอยากเรียนแบบนักพัฒนาระดับสูง และมีความเป็นระเบียบแบบแผน และเชื่อถือได้ก็ต้องเป็น The Linux Foundation ครับ
คอร์สต่อยอดที่น่าสนใจ
11. Just Express (with a bunch of node and http). In detail
โดยทั่วไปแล้วในคอร์สสอน Node.js ส่วนใหญ่ที่ผมแนะนำไปจะพ่วง Express ให้คุณเรียนไปด้วยอยู่แล้ว แต่ในกรณีที่คุณรู้สึกว่ายังไม่เข้าใจดีพอ คุณสามารถเพิ่มคอร์สนี้เข้าไปได้ครับ โดยคอร์สนี้จะสอนเจาะลึกในส่วนของ Express ซึ่งเป็น framework ของ Node.js อีกทีหนึ่ง ซึ่งจะมีประโยชน์เป็นพิเศษสำหรับใครที่อยากเป็น Full Stack Developer สาย MEAN หรือ MERN Stack ด้วยครับ
ตัวคอร์สสอนโดย Robert Bunch นักพัฒนาที่มีประสบการณ์สร้าง Web Apps ระดับสูงให้กับบริษัท Startup และบริษัทใหญ่ๆ มาเกือบ 20 ปีครับ สิ่งที่เขาจะสอนในคอร์สมีดังต่อไปนี้
- อธิบายพื้นฐานของ Networking อย่างเช่นการทำงานของ Internet (TCP, UDP, HTTP Request)
- พื้นฐานของ Express และการสร้าง Web Server
- การทำ Server Side Rendering
- Router, Express Generator, การดึงข้อมูลจาก request objects, query string และ params
- ลองสร้าง Web App และ API โดยใช้ Express
- และอื่นๆ อีกมากมาย
ในการเรียนคอร์สนี้ คุณจะต้องมีพื้นฐาน Node.js มาก่อนครับ แต่ไม่จำเป็นต้องเทพแต่ประการใด โดยรวมในคอร์สนี้มีเนื้อหาทั้งหมด 12.5 ชั่วโมง และจะเจาะลึกทุกซอกทุกมุมของ Express.js ครับ
คะแนนรีวิวของคอร์สนี้อยู่ที่ 4.7/5.0 จากนักเรียนกว่า 5,100 คนครับ
12. NestJS Zero to Hero – Modern TypeScript Back-end Development
Nest.js คือ framework อีกตัวหนึ่งที่สำคัญของ Node.js และมีประสิทธิภาพอย่างมากในการสร้าง server-side applications ที่มีประสิทธิภาพและมีสามารถ scale ได้ง่ายครับ ในระยะหลัง Nest.js เองก็ได้รับความนิยมสูงขึ้นมาก ทำให้เป็นอีกคอร์สต่อยอดที่ผมมองว่าน่าสนใจในการเรียนสำหรับนักพัฒนา Backend ครับ
เนื่องจาก Nest.js ใช้ TypeScript ถ้าคุณต้องการใช้ TypeScript ใน Backend คอร์สนี้จึงเป็นทางเลือกที่น่าพิจารณาเช่นเดียวกันครับ ผู้สอนคือ Ariel Weinberger วิศวกรซอฟต์แวร์ที่เคยทำงานในบริษัทสตาร์ทอัพมามากมายหลายแห่ง และมีทักษะทั้ง Front End และ Back End ครับ
ก่อนที่คุณจะเรียนและสมัครคอร์สนี้ คุณควรจะมีความรู้ในส่วนของ Node.js มาก่อน เช่นเดียวกับ TypeScript ครับ
ภายในคอร์สประกอบด้วยเนื้อหาต่อไปนี้ให้เรียนครับ
- แนะนำพื้นฐานของ NestJS และ install software ทุกตัวที่ต้องใช้งาน
- ลองสร้าง Task Management Application (CRUD) โดยใช้ Nest.js
- การทำ Validation และจัดการ Error
- Data Persistence โดยใช้ PostgreSQL และ TypeORM
- การทำ Authentication และ Authorization
- การทำ Testing สำหรับ Nest.js apps
- Deploy App ของคุณโดยใช้ AWS
- การใช้ GraphQL และ MongoDB กับ Nest.js
- และอื่นๆ อีกมากมาย
สรุปแล้วภายในคอร์ส ผู้สอนจะสอนให้คุณเข้าใจถึงการวางแผน การพัฒนา และการ deploy ในส่วนของ backend apps โดยใช้ Nest.js ผ่านการทำโปรเจคครับ เนื้อหาในคอร์สจะมีทั้งหมด 8.5 ชั่วโมง โดยคะแนนรีวิวอยู่ที่ 4.7/5.0 จากนักเรียนกว่า 62,500 คนครับ