จากการสำรวจเรื่อง The State of JavaScript 2016 นั้น
โดยมีผู้ทำแบบสำรวจมากกว่า 9,000 คน
ได้ผลลัพธ์ออกมาแล้ว
น่าจะทำให้เห็นว่า Ecosystem ของ JavaScript ในปัจจุบันเป็นอย่างไรบ้าง ?
น่าจะตอบคำถามได้มากพอควร เช่น
- สถานะของ JavaScript เป็นอย่างไร ?
- React vs Angular ?
- ใช้ Redux ไหม ?
- ใช้ Vue ไหม ?
- ใช้ Elm ไหม ?
- ใช้ Webpack ไหม ?
- จัดการกับ CSS ยังไงดี ?
ดังนั้นมาดูผลจากแบบสำรวจในครั้งนี้กันนิดหน่อย
หัวข้อแรกคือ JavaScript Flavors
ผลที่ออกมาก็คือ ES6 เป็นมาตรฐานใหม่ที่ได้รับความนิยมสูงมาก ๆ
ซึ่งสูงมากพอ ๆ กับ Plain JavaScript เลย
ส่วนที่ตามมาห่าง ๆ คือ TypeScript และ CoffeeScript
ส่วน Elm และ ClojureScript ก็มีบ้างนิดหน่อย
สิ่งที่น่าสังเกตุคือ CoffeeScript เคยได้รับความนิยมสูง
แต่ปัจจุบันกลับมีการใช้งานลดลง
เนื่องจากมี ES6, TypeScript และ Elm เข้ามาแทนที่
เมื่อดูความสัมพันธ์กับเทคโนโลยีหรือ framework อื่น ๆ พบว่า
ES6 นั้นจะสัมพันธ์กับ React, Redux, Webpack, Mocha, Enzyme อย่างแนบแน่น และ ES6 บ้าง
แสดงดังรูป
ส่วน TypeScript จะมีความสัมพันธ์กับ Angular/Angular2, Jasmine, MEAN stack และ ES6 บ้าง
แสดงดังรูป
หัวข้อสองคือ Front-end framework ที่ได้รับความนิยม
React นำมาเป็นอันดับ 1
ติดตามมาด้วย Plain JavaScript ซึ่งไม่ใช้ framework ใด ๆ เลย
จากนั้นก็ Angular, Angular 2, Vue, Backbone และ Ember
ที่แรงมาคือ Vue นั่นเอง เพราะว่า มีจำนวนการใช้งาน
และผู้ที่กำลังเรียนรู้เยอะพอ ๆ กับ React และ Angular 2 เลย
ถ้าดูในส่วนการเลิกใช้งานจะพบว่า
การไม่ใช้ framework ใด ๆ มีจำนวนเยอะมาก
เนื่องจากเริ่มมี framework ดี ๆ เข้ามาช่วยเยอะขึ้น
พอ ๆ กันกับ Angular ซึ่งน่าจะเป็นเพราะ Angular 2
เช่นเดียวกับ Backbone ที่จำนวนเลิกใช้งานเยอะเหมือนกัน
แสดงดังรูป
หัวข้อสามคือ เรื่องการจัดการ State
ไม่ใช่เรื่องหลักหรือสิ่งที่จำเป็นเท่าไรนัก
บางระบบอาจจะใช้หรือไม่ใช้ก็ได้
หัวข้อนี้หนีไม่พ้น Redux แน่นอน
ตามมาด้วย Relay และ Mobx
ซึ่งถ้าใช้ Relay ก็ต้องมาคู่กับ GraphQL นะ
หัวข้อสี่คือ API Layer
แน่นอนว่ายังคงเป็น REST API ที่ได้รับความนิยมสูงสุด
โดยมี Firebase, GraphQL ตามมาห่าง ๆ
แต่ตัวที่กำลังได้รับความสนใจมาก ๆ คือ GraphQL
ซึ่งต้องดูกันต่อไปว่าจะเป็นอย่างไร
หัวข้อห้าคือ Testing framework
เป็นสิ่งที่ขาดไม่ได้เลยในปัจจุบัน
โดยสิ่งที่ได้รับความนิยมสูง ๆ คือ Mocha และ Jasmine
ส่วนที่ตามมาห่าง ๆ คือ Enzyme, Jest, Cucumber และ Ava
แสดงดังรูป
หัวข้อหกคือ Build tool
เป็นสิ่งที่ขาดไม่ได้เลยสำหรับ JavaScipt
สิ่งที่ได้รับความนิยมคือ Webpack และ Gulp
ส่วนที่ตามมาคือ Grunt และ Browserify
จะสังเกตุได้ว่าสิ่งที่ได้รับความนิยมจะสัมพันธ์กันคือ
- Webpack จะถูกใช้จากระบบที่พัฒนาด้วย React + ES6
- Gulp จะถูกใช้งานจากระบบที่พัฒนาด้วย Angular/Angular 2
แสดงดังรูป
ปิดท้ายด้วยคำถามต่าง ๆ ที่น่าสนใจ
ปัจจุบันการสร้างระบบด้วย JavaScript นั้นมีความซับซ้อนเกินไปหรือไม่ ?
ส่วนใหญ่ตอบว่าใช่
ซึ่งมันอาจจะเป็นปัญหาในอนาคตได้
Ecosystem ของ JavaScript มันเปลี่ยนเร็วมากหรือไม่ ?
ส่วนใหญ่ตอบว่าใช่
บางครั้งเร็วมันก็ดี
แต่บางครั้งก็ช้าบ้างก็ได้นะ
แล้วคิดว่า JavaScript มันมีทิศทางที่ถูกต้องหรือไม่ ?
ส่วนใหญ่ตอบว่าถูกต้อง
สนุกกับการพัฒนาระบบด้วย JavaScript หรือไม่ ?
ส่วนใหญ่ตอบว่ามาก
สุดท้ายคิดอย่างไรกับแบบสำรวจครั้งนี้
ตอบเลยว่า แม่งยาวมาก ๆ
สามารถอ่านบทสรุปแบบละเอียดได้ที่ The State of JavaScript 2016