Road to Full Stack Developer
- TTFS01
- Classroom
- Fundamental
- Thai | 0
เริ่มก้าวแรกของการเป็น Full Stack Developer แบบครบ จบ ในหลักสูตรเดียว หลักสูตรนี้เป็นตัวช่วยที่จะทำให้คุณมีพื้นฐานทั้งด้านภาษาโปรแกรมมิ่ง , เครื่องมือที่จำเป็นต้องใช้ และการจัดการโครงสร้างระบบ ทั้งส่วนของ Backend และ Frontend
Course description
Time
Instructor
Venue
Road to Full Stack Developer
Full Stack เป็น stack ยอดนิยมที่นักพัฒนาทั่วโลกใช้กันอย่างแพร่หลายในการพัฒนาซอฟต์แวร์ โดยเฉพาะ Software ระบบสำหรับใช้ภายในองค์กร (Enterprise Software) ในหลักสูตรนี้จะเน้นไปที่การเชื่อมโยงกันของแต่ละ Stack อันได้แก่
M = MongoDB, MySQL
E = Express
A = Angular, R = React
N = NodeJS, NestJS
โดยในหลักสูตรนี้จะพาทำ workshop ที่ประกอบรวมกันที่ 4 ส่วนให้เป็นชิ้นงานที่สามารถนำไปพัฒนาต่อยอดเพื่อใช้งานต่อไปได้
ในหลักสูตรนี้จะทำการสร้างระบบ Backend ด้วย NodeJS และสามารถให้ผู้เรียนเลือกได้ว่าจะใช้ตัวไหนเป็น Frontend อันได้แก่ Angular, React ซึ่งตัว NodeJS นั้นเป็นภาษาที่ง่ายต่อการเรียนรู้ สะดวกในการต่อยอด อีกทั้งยังมี community ขนาดใหญ่รองรับในการใช้งาน จึงเป็นภาษาที่เหมาะสมในการเรียนรู้สำหรับนำไปต่อยอดพัฒนา Application ได้หลายหลายรูปแบบ เช่น PWA, Mobile Application, Web Application เป็นต้น
Angular เป็น Web Framework ตัวนึงที่พัฒนาโดยบริษัท Google ที่ได้รับความนิยมเป็นอย่างสูง เหมาะสำหรับพัฒนา Web Application โดยเฉพาะระบบ Enterprise Software เนื่องจากเป็น Framework ที่มีความครบถ้วนในตัวเอง เป็น Framework ที่เหมาะสำหรับพัฒนาระบบงานใหญ่ ๆ
ReactJS เป็น Java Script Library ตัวนึงที่ได้รับความสนใจเป็นอย่างมากในขณะนี้ เนื่องด้วยเป็น Library ที่มีจุดเด่นสำคัญคือ Virtual DOM ทำให้ทำงานได้เร็วมากเมื่อเทียบกับ Framework อื่น ๆ ทั่วไป อีกทั้งเป็น Library ที่สามารถนำมาพัฒนาต่อยอดได้อย่างง่ายดาย มีประสิทธิภาพสูง เป็นที่ยอมรับในหมู่นักพัฒนา web application อีกทั้งยังสามารถพัฒนาต่อยอดไปทำ mobile application ได้ด้วย (React Native)
TypeScript เป็น Super Script ของ Java Script เพื่อช่วยให้การพัฒนาโปรแกรมด้วยภาษา Java Script มีความยืดหยุ่นสูงขึ้น มีความเป็น OOP, ทำให้สามารถ scale ขนาด Project ได้อย่างง่ายดายและมีประสิทธิภาพ
เพื่อให้ผู้เรียนได้เรียนรู้ถึงวิธีการพัฒนาซอฟต์แวร์ ในรูปแบบ Full Stack โดยจะใช้ NodeJs ร่วมกับ Framework NestJS ในการทำ REST API และใช้ Angular, React ในส่วนของการทำ UI โดยในหลักสูตรนี้จะแสดงให้เห็นถึงการเชื่อมโยงกันระหว่าง NodeJs กับ Angular, React ว่ามีการสื่อสารกันอย่างไร ในคอร์สเน้นไปที่การทำ Workshop เพื่อให้ได้เรียนรู้และเข้าใจการทำงานแบบ Full stack
หลักสูตรนี้เหมาะกับใคร
- นักพัฒนาระบบ
- นักเรียนนักศึกษา
- อาจารย์
- ผู้ที่สนใจ
ความรู้พื้นฐาน :
- มีความเข้าใจในการพัฒนาระบบงานไอทีเป็นอย่างดี
- มีความรู้ด้านการเขียนโปรแกรม ภาษาใด ภาษานึง เช่น C#, Java, Python
- มีพื้นฐานในการใช้ภาษา Html, CSS, Java script เบื้องต้น
- มีความรู้ ความเข้าใจ ในการทำงานของ web application เป็นอย่างดี
- เรียนรู้ภาษา NodeJS และสามารถนำไปประยุกต์ในการทำงานได้
- เรียนรู้ภาษา JavaScript แบบลึกเพื่อนำไปใช้ร่วมกัน Framework
- เรียนรู้วิธีการเขียนโปแกรมภาษา JavaScript แบบ TypeScript
- เรียนรู้การใช้งาน Angular Frame work, React
- เข้าใจหลักการพัฒนา REST API ด้วย NodeJS
- เข้าใจหลักการพัฒนา Front-end ด้วย Angular, React
- เรียนรู้วิธีการเชื่อมโยงกันระหว่าง NodeJS และ Angular, React
Backend Development
Day 1 Basic Node.js
พื้นฐานการพัฒนาโปรแกรมด้วย JavaScript
- Code structure
- Variables
- Data types
- Basic operators, math
- Comparisons
- Conditional branching
- Logical operators
- Loops: while and for
- The switch statements
- Functions
- Arrow functions
ความรู้เบื้องต้นเกี่ยวกับ Node.js
- ประวัติ ความเป็นมา สถานการณ์ที่เหมาะแก่การใช้งาน
- การติดตั้ง (Installation)
Node.js การใช้งาน Core APIs
- การติดตั้งและเรียกใช้ Modules
- การประมวลผลข้อมูลแบบชนิดต่างๆ (Data Manipulation) เช่น ข้อมูลแบบ Text, Binary, และ JSON เป็นต้น
Typescript เบื้องต้น
- การพัฒนาโปรแกรมด้วย Typescript
- การ compile Typescript ให้เป็น Javascript
การบริหารการประมวลผลแบบ Asynchronous (Asynchronous Control Flow)
- แบบแผนการทำงาน (Asynchronous Pattern)
- การใช้งาน Asynchronous Control Flow Module
Day 2 การสร้าง web application ด้วย Nest.Js Framework
Nest.Js framework
- การติดตั้ง และการเตรียมการ
- การใช้งาน Web Template
- การใช้งาน URL Routing
- การใช้งาน Simple Route Middleware
- การใช้งาน JWT ร่วมกับ Nest.js
การต่อเข้าหา Database MongoDB และ MySQL ด้วย TypeORM
- การติดตั้ง และการเตรียมการ
- การเขียน node ติดต่อ mysql ด้วย TypeORM
Automate Unit Test
- การติดตั้ง jest framework
- การเขียน unit test ด้วย jest
Day 3 พัฒนา REST API ด้วย NodeJS
- วิธีการพัฒนา REST API ด้วย NodeJS ร่วมกัน Framework NestJS
- วิธีการเชื่อมต่อฐานข้อมูล My SQL ด้วย NodeJS
- วิธีการพัฒนา CRUD, Pagination, Filter ด้วย NodeJS
- มาทำความรู้จักกับ CORS และแนวทางการแก้ปัญหาใน NodeJS
- ทำ Workshop พัฒนา REST API จัดการข้อมูล
Day 4 Docker
- Get Started with Docker Technologies
- Comparing Containers and Virtual Machines
- Containers and Virtual Machines Together
- Docker engine
- Docker Architecture
- Docker command
- Docker Network
- How to create own docker image with Dockerfile
- Docker compose
- Continuous Integration and Continuous Deployment
- Source code repository with GIT
- DevOps Gitlab
- Getting started with Gitlab
- Continuous Integration with Gitlab
- Continuous Inspection with Gitlab
- Continuous Delivery with Gitlab
- Distributed Builds
Frontend Development
Angular
Day 5 Angular Framework
Module 1 : Architecture Overview
- Basics of Typescript
- Components, Bootstrap, and the DOM
- Directives and pipes
- Data binding
Module 2 : Components
- Component metadata
- The component selector
- The component template
- Property binding
- Getting data to the component with input
- Subscribing to component events with output
Module 3 : Directives and Pipes
- Structural directives – nglf
- Structural directives – ngFor
Module 4 : Directives and Pipes
- Using directive values
- Working with events in directives
- Angular pipes – built in
- Angular pipes – custom
Module 5 : Form
- Angular Form
- Template – driven forms
- Model – driven forms
- Validation – built in
- Error handing
Day 6 Angular Framework #2
Module 6 : Dependency Injection and Services
- How Angular does dependency injection
- Services in Angular
- Class constructor injection
- Building a service
Module 7 : HTTP
- The Angular 6 HTTP bundle
- Using HTTP for GET calls
- Using HTTP for POST, PUT, and DELETE calls
Module 8 : Routing
- The Angular 6 routing bundle
- Route configuration
- Router outlets
- Router links
Day 7 พัฒนา Web Application ด้วย Angular
เรียนรู้วิธีการดึงข้อมูลจาก NodeJS ผ่าน HttpClient
เรียนรู้วิธีกานำข้อมูลที่ได้จาก API มาใช้งาน
เรียนรู้วิธีการส่งข้อมูลจาก Angular ไปยัง NodeJS
ทำ Workshop พัฒนาโปรแกรมเพื่อเชื่อมโยงข้อมูลกับ NodeJS ผ่าน API
เรียนรู้วิธีการ Deploy โปรแกรมที่พัฒนาเสร็จแล้วด้วยวิธีการต่าง ๆ อันได้แก่
- Deploy ด้วย Docker
- Deploy ด้วย pm2
React
Day 8
- โครงสร้าง ReactJS Project แบบ Type Script
- การใช้งาน ReactJS Language (ES7 and JSX) เบื้องต้น
- การใช้งาน React Component (Class and Functional) และ UI เบื้องต้น
- การสร้าง Sub Component
- เครื่องมือแปลง HTML ให้เป็น JSX
- การใช้งาน Data Binding (Props and State)
- การดัก Event ที่เกิดขึ้นกับ UI Components แต่ละตัวเช่น การ click ที่ Button, Input
Day 9
- การติดตั้ง Material UI Framework เพื่อใช้งานร่วมกับ ReactJS
- การใช้งาน Material UI Framework สร้างหน้าแสดงผลข้อมูล
- การใช้งาน Material UI Framework สร้าง Form สำหรับจัดการข้อมูล
- การใช้งาน Redux (Unidirectional Data Flow)
- การใช้งาน React Router
- การส่งและรับค่าระหว่าง Pages
Day 10
- การใช้งาน Redirect React Routing Page
- การใช้งาน Secured React Routing Page
- การใช้งาน Redux for Page Navigation
Payment can be made by:
- Cash or Credit Card or Bank Cheque payable to
สำนักงานพัฒนาวิทยาศาสตร์และเทคโนโลยีแห่งชาติ or National Science and Technology Development Agency
(a post-dated cheque is not accepted) on the first day of the service or within the last day of the service. - Account transfer and send the proof of the payment (the deposit slip) via email xxx@swpark.or.th
- ธนาคารกรุงเทพ สาขาอุทยานวิทยาศาสตร์
Saving Account Number: 080-0-00001-0
Account Name: สำนักงานพัฒนาวิทยาศาสตร์และเทคโนโลยีแห่งชาติ - ธนาคารกรุงไทย สาขาตลาดไท
Saving Account Number: 152-1-32668-1
Account Name: สำนักงานพัฒนาวิทยาศาสตร์และเทคโนโลยีแห่งชาติ
- ธนาคารกรุงเทพ สาขาอุทยานวิทยาศาสตร์
Notes:
- Withholding tax (3%) is exempt.
- Should you need to withdraw, you must send the notice of the withdrawal in writing no later than 7 working days before the commencement date. The cancellation less than 7 days will be subject to a fine of 40% of the fee.
- Software Park Thailand reserves the rights to cancel courses due to unforeseen circumstances.
Contact Person
For more information, contact our course coordinator on:
Tel: +66-2583-9992 Ext. 81422
Email: patsorn@swpark.or.th
You are encouraged to use the course schedule as a guide to plan your training.
The schedule is accessible at www.swpark.or.th for more information.
32,000 THB .
สำคัญ!!! กรุณารอการยืนยันเปิดการอบรมจากเจ้าหน้าที่ก่อนการชำระค่าลงทะเบียน