09 มกราคม, 2558

[แปล] ภาษาและเฟรมเวิร์คไหนบ้างที่ Developer ควรจะศึกษาประจำปี 2015


พอดีไปอ่าน The Languages And Frameworks That You Should Learn In 2015มาก็เลยเอามาแปลและเรียบเรียงใหม่ อาจจะไม่เหมือนต้นฉบับมากนักนะ

Language / Platforms 

สำหรับภาษาโปรแกรมปีนี้น่าจะเป็นปีของ Node.js ที่มาแรงมากจนทิ้งห่างจาก php ที่เป็นอันดับ2ไปเลย JavaScript ก็ยังคงอยู่ในลำดับต้นๆ แต่มี Swift เพิ่มเข้ามาในอันดับต่อไป

Framework

Laravel ยังคงอยู่แต่มี Ruby on Rails แซงไปพร้อมกับการที่กูเกิลเปิดตัว(นานแล้ว)และโปรโมท Angular JS ทำให้มันเป็นสิ่งที่น่าจับตามองนะ

มาดูตัวสำคัญๆ กัน

JavaScript

ตอนนี้เราสามารถพบเห็น JS ได้เกือบทุกที่จากสมัยก่อนที่มันทำงานอยู่แค่เบราเซอร์ฝั่ง client แต่หลังจากที่ Node.js เปิดตัวมามันก็แสดงให้เห็นว่า JS เอาไปเขียนในฝั่ง Serverได้ด้วยนะ
ข้อดีของ JS คือมันเป็นภาษาที่เขียนได้ง่ายทำให้เรียนรู้ได้เร็ว แต่ข้อเสียคือมันเขียนได้ง่ายเกินไป บางครั้งก็ทำให้กลายเป็นเรื่องยุ่งยากได้ และการที่มันยังไม่มีคำสั่งในการสร้าง Class แบบจริงจังก็ทำให้มันเขียน OOP ได้ไม่ค่อนถนัดเท่าไหร่นัก ... แต่อย่างว่า มันกระจายตัวไปทุกที่แล้วดังนั้นก็เป็นตัวเลือกที่ควรจะเรียนรู้ไว้

AngularJS

JS Framework (เห็นมั้ยว่าเป็น JS อีกแล้ว)  เอาไว้ทำ interactive website ซึ่งทำและสนับสนุนโดย Google ล่าสุดทำคอร์สติวเตอร์ให้ด้วย เข้าไปดูได้ทาง shaping up with angular.js
จุดเด่นของ Angular คือเน้นความสนใจไปที่ข้อมูลContentในหน้าก่อนจะไปสนใจ DOM ถ้าใครเคยเขียน jQuery หรือแม้แต่ JS แบบดั้งเดิม การเขียนแบบนั้นจะเป็นการเขียนในลักษณะของ "How!" คือวางDOMให้เสร็จแล้วค่อยบอกว่าจะให้มันทำอะไรยังไง
แต่ถ้าเป็น Angular ละก็จะใช้วิธีวางข้อมูลก่อน แล้วค่อยจัดการ DOM ข้อดีคือเราไม่ต้องไปบอกว่าจะให้ทำอะไรยังไงละเอียดเท่าพวก jQuery ดูเป็น Framework มากกว่า แต่ต้องจำคำสั่งและ config ให้ถูกด้วยนะ
แล้วถามว่ามันดีกว่า jQuery มั้ย? อันนี้ก็ต้องบอกว่าแล้วแต่ชอบ แต่ Angular น่าจะให้งานได้เร็วกว่า jQuery เพราะมันแทบจะไม่ต้องเขียนโปรแกรมส่วนที่เป็น logicเลย ตัว Frameworkจ ัดการให้หมดแล้ว เราแค่เซ็ตค่าคำสั่งให้ถูกก็พอ แต่ข้อเสียคือถ้าเป็นโปรแกรมที่ซับซ้อน jQuery น่าจะยังได้เปรียบกว่า

React

เป็น JS Library อีกตัวที่น่าสนใจสำหรับสร้าง user interface โดย Facebook + Instagram ถ้ารูปจักโครงสร้างแบบ MVC แล้วละก็ การอธิบายว่า React คือ V น่าจะเข้าใจได้ง่ายกว่า
การเขียน React จะเขียนอยู่ใน <script type="text/jsx"> ซึ่งแน่นอนว่ามันไม่ใช่ JS เพียวๆ แต่เป็น JS ที่เราสามารถใส่ view (ในรูปของ XML + HTML เข้าไปได้เลย)
ลองไปดูตัวอย่างได้ที่ React

Node.js

สร้าง network server application ด้วย JS ซึ่งตอนนี้มี framework ออกมาให้ใช้เยอะมากตั้งแต่ Express, websocket การลงโมดูลใหม่ก็ทำได้ง่ายผ่านการใช้งาน npm
Node.js ใช้ JS ดังนั้นมันเลยทำงานแบบ asyncronous ซึ่งทำให้เวลาได้รับ request มาแต่ละตัวจะไม่จำเป็นต้องรอกัน

NoSQL Database

ฐานข้อมูลแบบ Relational แบบเดิมที่เดิมข้อมูลเป็นตารางอาจจะไม่ตอบโจทย์รูปแบบข้อมูลตอนนี้ได้แล้ว Not Only SQL จึงเกิดขึ้นมารองรับแทน และเสริมด้วยการที่พวกมันทำ Scalable ได้ด้วย
ตัวที่เด่นๆ ก็มี mongoDB (document) กับ redis (key-value)

Less / Sass / Stylus

ฝั่ง script มีการพัฒนากันไปไกลแล้ว ด้านฝั่ง css เลยทำบ้าง (ทำมานานแล้วแหละนะ) เพื่อทำให้เขียน css ได้ง่ายและสั้นขึ้น อีกทั้งยังใช้พวกตัวแปรได้ด้วย แต่ส่วนใหญ่เวลาเอาไปใช้จริงจะ compile ออกมาเป็นไฟล์ css อยู่ดีนะ

Classic Full-Stack Framework

เฟรมเวิร์คระดับคลาสสิกที่ก็ยังใช้ได้อยู่ ไม่ได้ล้าสมัยแต่อย่างใด เช่นพวก Laravel (php), Ruby on Rails (Ruby), ASP.NET


แล้วก็อย่าลืมพวก php, Wordpress, jQuery ด้วยนะ พวกนี้เป็นวิธีที่ค่อนข้าง perfect ในการสร้างเว็บไซท์

โดยเฉพาะ Wordpress ที่โตอย่างรวดเร็วมากในช่วงที่ผ่านมา

ไม่มีความคิดเห็น:

แสดงความคิดเห็น