Read More… ทำการ deploy Function บน Google Cloud Platform เพิ่งเห็นว่า Google Cloud Platform นั้นมี feature ใหม่ชื่อว่า Cloud Function ทำให้เราสามารถ deploy Function ที่พัฒนาด้วย นั่นคือเราสามารถพัฒนาระบบงานด้วยภาษา Javascript ที่สำคัญเราไม่ต้องสนใจเรื่อง server ที่สำคัญเราไม่ต้องสนใจเรื่องการขยายระบบเพื่อรองรับจำนวนผู้ใช้งานที่มากขึ้น เนื่องจาก Google Cloud Platform จัดการให้ (BaaS => Backend-as-a-Service) ดังนั้นเรามาลอง deploy Function ที่พัฒนาด้วย กันดู นี่มัน Function-as-a-Service (FaaS) ชัด ๆ Read More…
get ( '/', function ( req, res) { res. send ( 'Hello World');}); app. listen ( 3000); ลองทำการรัน Node ด้วยคำสั่ง และเปิดเว็บ Browser localhost:3000 ก็จะเห็น Hello World นั่นเอง อธิบายเพิ่มเติมเกี่ยวกับการทำงานของ ตัว () จะมีรูปแบบการใช้งานแบบด้านล่างครับ app. get ( path, fn); path: กำหนด path ของเว็บ ตัวอย่าง / คือ root ครับ fn: เป็น function ที่มี request และ response ครับ ซึ่งเราใช้ req และ res เป็นชื่อ parameter (จริงๆ ตั้งเป็นอะไรก็ได้ครับ การตั้งชื่อตัวแปรธรรมดา แต่ใช้ req, res เพราะมัน common และสื่่อเข้าใจง่าย) (): response ส่ง string Hello World เพื่อแสดงผล เวลามี request เข้ามาครับ ทดลองเพิ่มอีก path นึงครับ เช่น /ahoy จะต้องแสดงผล Ahoy! ที่หน้าจอ app. get ( '/ahoy', ( req, res) => { res. send ( 'Ahoy!
Core Core เป็นอีกหนึ่ง Open Source และถูกจัดการ Cross-Platform Computer Software โดย Microsoft มันเป็นหนึ่งในตัวที่สร้างขึ้นต่อจาก Framework โดย Core Framework เป็นที่นิยมใช้ในการสร้าง Applications ประเภทต่าง ๆ ตั้งแต่ Mobile, Web, Desktop, IoT, Machine Learning, Microservices, Cloud ฯลฯ Framework ถูกเขียนขึ้นใหม่ตั้งแต่ต้นเพื่อให้รวดเร็ว น้ำหนักเบา และมี Modular Architecture โดยใช้ NuGet Packages นอกจากนี้ Core ยังเป็นที่ชื่นชอบของ Developers ในแง่ของประสิทธิภาพ ความเร็ว และมีการใช้หน่วยความจำที่ลดลง ซึ่งช่วยทำให้ Application ง่ายต่อการMaintenance 3. Express Express เป็น Framework ที่เรียบง่ายแต่รวดเร็ว Express Framework ถูกใช้เพื่อสร้าง Web Services ที่มีประสิทธิภาพด้วยความช่วยเหลือของ HTTP Utility Methods และ Middleware ต่าง ๆ Framework ถูกออกแบบมาเพื่อสร้าง Web Applications และ APIs ที่มีน้ำหนักเบา มันช่วยอำนวยความสะดวกในการพัฒนา Dynamic Web Pages อย่างรวดเร็วโดยอนุญาตให้ HTML Pages แสดงผลตามการส่งผ่าน Arguments ไปยัง Templates 4. Django Django เป็น Framework ที่ใช้ในการสร้าง Web Application ในฝั่งของ Backend ที่พัฒนาขึ้นด้วยภาษา Python ซึ่งได้รับความนิยมอย่างมากอย่างรวดเร็ว มันเป็น Open Source Framework ที่ใช้ใน Project ต่าง ๆ กว่า 10, 000 Projects ในปัจจุบัน โดย Framework นี้จะช่วยในเรื่องการทำงานร่วมกันได้อย่างราบรื่นกับ Relational Databases อีกทั้งมี Features มากมายที่ถูก Customize เพื่อความสามารถในเรื่อง Scalability ที่สูงขึ้น Django ถูกใช้อย่างแพร่หลายสำหรับ Projects ขนาดใหญ่ซึ่งอาจจะเหมาะสมอย่างยิ่งสำหรับ Projects ขนาดเล็กที่ไม่ต้องการใช้ Features มากมายอะไร 5.
ปัจจุบันมี Framework ออกมาให้ใช้งานกันเรื่อย ๆ หากคุณเลือกที่จะ Focus อย่างน้อยสักหนึ่ง Framework ที่สนใจสำหรับภาษา Programming ที่คุณใช้งาน ก็จะช่วยให้คุณพัฒนา Backend ได้อย่างมีประสิทธิภาพ โดยในบทความนี้เป็น 9 Backend ที่แนะนำให้คุณเรียนรู้และใช้งานให้เชี่ยวชาญ (ไม่จำเป็นต้องเรียนรู้ทุก Framework) การเลือก Framework ก่อนอื่นเรามาดูกันก่อยว่า Framework ใดที่เหมาะสมกับคุณ แต่มันก็ขึ้นอยู่กับความต้องการ ความถนัด หรือสไตล์ส่วนตัวของคุณ ซึ่งในบทความนี้จะขอแบ่งเห็น 3 เกณฑ์หลัก ๆ คือ ระดับความรู้ (ของผู้ใช้งานที่สามารถเริ่มต้นเรียนรู้ได้), จุดแข็งและจุดด้อย ของแต่ละ Framework 1. PHP ~ Laravel ระดับความรู้: Beginner จุดแข็ง: Modern Programming, Flexible, Strict, Well Documented จุดด้อย: Performance, มีการ Update บ่อย (อาจทำให้ 3 rd Party Packages ใช้งานไม่ได้) สำหรับคนที่ใช้งาน PHP เชื่อว่าคงจะรู้จัก Laravel กันมาแล้ว โดย Laravel ถือเป็น MVC Framework (Model, View, Controller) ที่ใหญ่ที่สุดสำหรับ PHP อีกทั้งยังมี Packages ที่ยอดเยี่ยมมากมายที่จะช่วยทำให้ชีวิตของคุณง่ายขึ้น Resource ที่ดีที่สุดในการเรียนรู้ Laravel (Paid) Resource ที่ดีที่สุดในการเรียนรู้ Laravel (Free) 2.
Laravel Laravel เป็นหนึ่งใน PHP Framework ที่ได้รับความนิยมอย่างมากในช่วงไม่กี่ปีที่ผ่านมา มันเป็นที่รู้จักเป็นอย่างดีในการสร้าง Web Services ที่มีประสิทธิภาพและ Dynamic Applications โดย Laravel เป็น Open Source Framework ที่เป็นไปตามรูปแบบของ MVC มันเต็มไปด้วย Components ที่มีประโยชน์ที่จำเป็นต่อการพัฒนา Backend และด้วย Interface ที่ใช้งานง่าย นั่นเป็นเพราะ PHP Framework มี Command-Line Tools ที่มีประสิทธิภาพ, Database Migration, Blade Template Engine, CLI, และ Functions อื่น ๆ ที่มีประโยชน์อีกมากมาย 6. Spring Spring เป็น Java Framework ยอดนิยมซึ่งช่วยให้ Developers สามารถสร้าง Backend Programs ที่มีประสิทธิภาพ มันมีจุดมุ่งหมายเพื่อช่วยเพิ่มในเรื่อง Natural Search และ Dependencies เพิ่มเติมที่จำเป็นสำหรับแต่ละ Projects สำหรับ App ที่ถูกสร้างขึ้นด้วย Spring Framework นั้นจะมีความรวดเร็วและมีประสิทธิภาพ อีกทั้งใช้งานง่ายและจัดเตรียม Stand-Alone Application ที่มาพร้อมความช่วยเหลือของ 3rd Party Libraries ที่มี Ecosystem ที่ครอบคลุม 7. Ruby on Rails Rails เป็น Framework ที่ถูกเขียนขึ้นจากภาษา Ruby มันเป็น Server-Side MVC Framework ที่สามารถใช้สร้าง Database Structures และ Web Services ที่มี Features มากมาย โดยใน Rails นั้น Data จะถูก Transfer โดยใช้ JSON และ XML Format ในขณะที่ Front End Pages นั้น Data จะถูก Transfer โดยใช้ HTML, CSS และ JavaScript สำหรับ Framework นี้มีชุดของ Tools ที่หลากหลาย รวมทั้งสามารถ Integrate ได้กับ Plugins หลายตัว และ Test Environment อีกด้วย 8.
เลยกลายเป็น Nodemon ขึ้นมาครับ เราทำการติดตั้ง Nodemon ด้วยคำสั่ง -g เป็นการบอกว่าติดตั้ง module แบบ global ครับ ปกติ npm install จะถูกติดตั้งลง node_modules ของโฟลเดอร์ แต่ถ้า -g มันจะถูกติดตั้งไว้ที่เดียวกับ node ที่เป็น global ครับ หลังจากติดตั้ง เราสามารถใช้คำสั่ง nodemon ได้เหมือน node เลยครับ เปลี่ยนจาก node เป็น จะเห็นข้อความประมาณนี้ [ nodemon] 2. 0. 2 [ nodemon] to restart at any time, enter ` rs ` [ nodemon] watching dir ( s): *. * [ nodemon] watching extensions: js, mjs, json [ nodemon] starting ` node ` ทีนี้ เวลาเราแก้ไขไฟล์ ตัว Server มันก็จะ refersh และ restart ใหม่ให้เอง โดยไม่ต้อง stop / start เองครับ Request Params & Query String ต่อมา เราสามารถทำ Dynamic page ได้ครับ ข้อดีคือ เราไม่ต้องมานั่งกำหนด path ทุกๆ path เช่น เรามีหน้า ที่แสดงผล user แต่ละคน เช่น user 1 -100 ถ้าเราต้องมากำหนดแบบนี้ app. get ( '/users/1', fn); app. get ( '/users/2', fn); app. get ( '/users/3', fn);... app. get ( '/users/100', fn); ก็คงไม่ดีแน่ เราสามารถ ทำ Dynamic หรือ group path ที่มันมี pattern เหมือนๆกัน ได้ครับ ตัวอย่างเช่น app.
Python ~ Flask จุดแข็ง: Flexible และ Test ได้ง่าย จุดด้อย: Strict, Scalable Python Resource ที่ยอดเยี่ยมอีก 1 ตัวก็คือ Flask มันเป็น MVC Micro-Framework, ทำความเข้าใจได้ง่าย และ ปลอดภัย มันใช้ Python import เพื่อรับลักษณะบางอย่างเช่น Database Module Resource ที่ดีที่สุดในการเรียนรู้ Flask (Paid) Resource ที่ดีที่สุดในการเรียนรู้ Flask (Free) 7. Ruby ~ Ruby on Rails จุดแข็ง: มี Standard สูง, Develop โดยใช้ Command ได้อย่างรวดเร็ว จุดด้อย: Speed, Flexible, ยากเมื่อทำการเปลี่ยนแปลงในภายหลัง อีกหนึ่ง MVC Framework ที่ยอดเยี่ยมก็คือ Ruby on Rails มันถูกสร้างขึ้นจาก Ruby และยังคงได้รับความนิยมในช่วงหลายปีที่ผ่านมา มันเป็น Framework ที่สมบูรณ์แบบ ดังนั้น แน่นอนว่ามันมีทุกสิ่งทุกอย่างที่คุณต้องการ Resource ที่ดีที่สุดในการเรียนรู้ Ruby on Rails (Paid) Resource ที่ดีที่สุดในการเรียนรู้ Ruby on Rails (Free) Reader suggestion (Joe) 8. Java ~ Spring Boot ระดับความรู้: Advance จุดแข็ง: Testing, ใช้งานได้ดีกว่า Database ที่หลากหลาย, Integrate กับ CLI ได้ง่าย จุดด้อย: Customize ได้ยาก, ยากในการทำความเข้าใจ หากคุณใช้งาน Java เชื่อว่า Spring Boot น่าจะเป็นหนึ่งใน Framework ที่คุณรู้จักอย่างแน่นอน มันใช้งานไม่ยากและช่วยให้คุณสามารถสร้าง API ได้อย่างง่ายดาย อีกทั้งคุณยังสามารถใช้มันสำหรับ Standalone Applications และ Web Applications Resource ที่ดีที่สุดในการเรียนรู้ Spring Boot (Paid) Resource ที่ดีที่สุดในการเรียนรู้ Spring Boot (Free) 9.