Workshop: RESTful API for Mobile App from Zero to Hero


ด้วยเหตุผลหลายข้อ Node.js เป็นเทคโนโลยีที่เหมาะสมจะทำ API อย่างมาก

หากคุณกำลังหัดสร้าง API ต้องการทราบหลักการและการออกแบบ API ที่ดี และเลือก เทคโนโลยีที่เหมาะสม คอร์สนี้เป็นจุดเริ่มต้นที่ดีของคุณ

ถ้าพูดในฐานะ user เราคุ้นเคยการเข้าถึงบริการหนึ่งๆ จากหลายช่องทางกันเป็นอย่างดี Website, Mobile App รวมถึงช่องทางอื่นๆ เช่น Chatbot

การออกแบบระบบ ให้เข้าถึงบริการได้จากหลายช่องทาง จำเป็นจะต้องสร้างเป็น API ขึ้นมา และที่นิยมอย่างมากในปัจจุบันคือ RESTful API นั่นก็เพราะ Restful API มีความง่าย แต่การออกแบบ RESTful API ให้เหมาะสมและปลอดภัยนั้น เป็นเรื่องที่ซับซ้อน

ทำไมต้องเป็น RESTful API for Mobile:


Mobile App เป็นตัวอย่างที่ดี ของระบบ ที่ไม่ใช่เบราเซอร์

โดยปราศจาก ฟีเจอร์ ที่ติดมากับเบราเซอร์เอง เช่น Cookie ตัว Mobile App เอง มีความแตกต่างบางอย่าง

 

การออกแบบ RESTful API สำหรับ Mobile App นั้น จึงใกล้เคียงกับ การออกแบบ API สำหรับ ช่องทางอื่นๆ ที่ไม่ใช่เบราเซอร์เป็นอย่างมาก

 

แต่ถึงอย่างไร เว็บไซต์ในปัจจุบัน ที่สร้างจาก Vue.js, React, Angular ก็มีรูปแบบการเรียกใช้ API ที่เหมือนกันกับ Mobile App จึงยังสามารถทำงานบน API เดียวกันนี้ได้อีกด้วย

Objective:


  • เข้าใจหลักการออกแบบ RESTful API
  • สร้าง RESTful API ด้วย Node.js
  • วิธีการทำงานร่วมกับ Mobile Developer ให้ทำงานไปพร้อมกันได้
  • Oauth2 และการเก็บ password ให้ปลอดภัย
  • การ Deploy บน Server จริงด้วย Docker

สิ่งที่ผู้อบรมจะได้เรียนรู้:


  • การเขียน และออกแบบ API อย่างถูกต้อง
  • การเขีียน Unit Test
  • การทำงานร่วมกับทีม ด้วย API Document ที่ดี
  • ความปลอดภัย ในการออกแบบ API
  • การ Deploy API ด้วย Docker เบื้องต้น

พื้นฐานของผู้เรียน:


  • พื้นฐานการเขียนโปรแกรม ภาษาใดก็ได้

คอร์สนี้เหมาะกับใคร:


  • Mobile Developer ที่ต้องการเป็น Full Stack Mobile Developer
  • Developer ที่ต้องการเริ่มเขียน API ให้กับองค์กร
  • Developer ที่เริ่มต้นเขียน API สำหรับ Mobile App และต้องการเริ่มต้นอย่างถูกวิธี

สิ่งที่ต้องใช้:


  • Laptop ส่วนตัว

Prerequisite:


  • Windows (64 bit) / Mac / Linux (64 bit)machine (ubuntu / alpine prefer)
  • 1 email address (For register “hub.docker.com”) / hub.docker.com account
  • Tool for editor (vscode etc)
  • Tool for shell (putty / terminal etc)
  • Basic text editor skill (vim prefer) and linux structure

Software ที่ใช้งาน:


  • Node.js 10.15.3
  • Docker
  • Postman

Workshop date:


  • SAT 22 Jun | 9.00 - 17.30 น.
  • SUN 23 Jun | 9.00 - 17.30 น.

Outline


Day1

9.00 - 09.30 : Registration

09.30 - 17.30 | Workshop session

  • Introduction
  • HTTP protocol (header, cookie, method)
  • Setup Node.js typescript express MariaDB Docker
  • Response Format (JSON, XML)
  • Curl & Postman
  • Design a good API
  • Route
  • API Documents & Mock API
  • Test first dev later ( Unit testing )

Day2

09.30 - 17.30 | Workshop session                                       

  • Deploy your API to server using docker image
  • Connect to database
  • Post, Update, Delete
  • Upload Files
  • API Security
  • Password store
  • Middle ware
  • Oauth2 & token

วิทยากร:


 Narongrit Kanhanoi | ณรงค์ฤทธิ์ กัณหาน้อย (อาจารย์ฮาร์ท)

Work Experience : Seminar Experience:
  • Co-Founder & Mobile Technology Director of 3DS Interactive Co.,Ltd.
  • Seminar"Sharing Vision&Experiences that Inspire&Motivate people"(2019) โดยCPRAM
  • Digital Thailand Big Bang (2018) โดย สำนักงานส่งเสริมเศรษฐกิจดิจิทัล (depa)
  • 3 เทคโนโลยีเปลี่ยนโลก IOT.| Big Data | Blockchain (2017) โดย สมาคมโปรแกรมเมอร์ไทย