Angular 2 Go/No-Go

ช่วง 2–3 เดือนที่ผ่านมา เวลาเลือก JavaScript stack เพื่อพัฒนาเว็บไซต์มักจะมีคำถามยอดนิยมโผล่มาในวงสนทนาเสมอว่า Angular 2 หรือ React ผมเองเคยใช้ทั้ง AngularJS 1 และลองทำตาม tutorial ของ React มาแล้ว แต่ปัญหามันอยู่ที่ Angular 2 เพราะมันยังเป็น release candidate แต่กระแสแรงมาก

ผมก็เลยลองตั้งเวลาตัวเอง 24 ชั่วโมงทดลอง Angular 2 ว่าพร้อมขนาดไหนแล้ว โดยลองทำตาม tutorial และตอบโจทย์พื้นฐานต่างๆที่เกี่ยวข้อง จนได้ข้อสรุปว่า

ณ วันนี้ยังไม่ควรใช้ Angular 2 กับงานจริงๆโดยผมเห็นว่า

  • Angular 2 การออกแบบดูโอเคแล้ว แต่ release candidate 3 ยังรวนอยู่ มีบั๊กงี่เง่าหลายตัวตกค้าง
  • Router ยังสับสน เพราะมีทั้ง router-deprecated ตัวเก่าและ router ตัวใหม่ที่รวนพอๆกัน แถม tutorial ให้ใช้ router-deprecated แต่ใน document กลับเป็น router ตัวใหม่แล้ว ที่ยังเป็น alpha version ทั้งนี้อาจจะต้องแวะไปดู 3rd party router ว่าเป็นยังไงกันบ้าง
  • Observable vs Promise อันที่จริงแล้ว Observable น่าสนใจมาก มีแนวคิดของ collection pipeline อยู่ในนั้นด้วย แต่ tutorial ให้ใช้ Promise ในขณะที่ใน document เองยังงงอยู่ว่าแนะนำตัวไหนกันแน่

สรุปคือ ณ วันที่เขียนเรื่องนี้ ผมเองคงยังไม่หันไปใช้ Angular 2 เพราะไม่มั่นใจว่าการออกแบบจะนิ่งเมื่อไร จะมีอะไรเปลี่ยนอีกไหม งานคงไม่เสร็จกันพอดี ตอนนี้คงกลับไปใช้ AngularJS 1.5 ไปพลางๆก่อน เพราะดูแล้วหลายๆอย่างไม่ต่างกันมาก

แล้วเจอกันอีกที