ทำความรู้จักกับ Laravel Framework กัน

Yodsawat Santhi
3 min readJul 27, 2017

--

https://cdn2.kode-blog.com/images/laravel/laravel_logo.jpg

สวัสดีครับ นี่เป็นบล๊อกแรกในชีวิตของผม ในบทความนี้จะเป็นการแนะนำและทำความรู้จัก Laravel Framework เบื้องต้นนะครับ ผิดพลาดประการใดต้องขออภัย ณ ที่นี้ด้วยนะขอรับ(รู้สึกเกร็ง ๆ กับบล๊อคแรก ><)

แนะนำตัวกันนิดหน่อยละกัน…

ผมเป็นนิสิตจบใหม่และทำงานในตำแหน่ง Back-End Developer มือใหม่ที่มีโอกาศได้ทำงานที่ 20Scoops CNX (ต้องขอขอบคุณเพื่อน ๆ และพี่ ๆ ทุกคนที่ให้โอกาสผมมา ณ ที่นี้ด้วยครับผม ^^) ผมศึกษาและทดลองเขียน Code ด้วย Laravel Framework ตั้งแต่สมัยเรียนจนถึงปัจจุบันรวมทั้งการใช้ Library เช่น Vue.js ร่วมกับตัว Framework เพื่อช่วยจัดการในส่วนของการแสดงผลของฝั่ง Fornt-End นั้นเอง อาจจะไม่ถึงขั้นลึกซึ้งแต่ก็พอใช้เป็นครับ หลังจากที่โม้กันมามากพอสมควรแล้วมาเริ่มกันเลยดีกว่า555+

Laravel Framework คือ ?

PHP Framework ตัวหนึ่งที่ใช้การออกแบบมาเพื่อพัฒนาเว็บแอพพลิเคชั่นในรูปแบบ MVC (Model Views Controller) ทำให้การเขียน Code ดูสะอาดสามารถอ่านและแก้ไขได้ง่าย แถมยังสามารถดาวน์โหลดมาใช้งานได้ฟรี ๆ โดยผู้พัฒนาคือ นาย Taylor Otwell ภายใต้ลิขสิทธิ์ของ MIT และ Source Code ได้ถูกเก็บไว้บน Host ของ Github

ในปัจจุบันมีการนำมาใช้งานอย่างแพร่หลายทำให้สามารถหาข้อมูลหรือตัวอย่างการใช้งานเกี่ยวกับเจ้า Laravel Framework เวลาติดปัญหาที่คิดไม่ตกได้อย่างไม่ยากเย็นนักและจาก Version 5.4 ที่พึ่งมีการอัพเดทไปนั้นทำให้มั่นใจได้ว่าเจ้า Laravel นั้นยังไม่หยุดการพัฒนานั้นเองครับผม…

การติดตั้งเบื่องต้น (Laravel 5.4)

  • ลง composer เพื่อใช้ติดตั้งตัว Laravel Framework วิธีติดตั้งสามารถดูได้จากในเว็บ composer
https://getcomposer.org/
  • เมื่อติดตั้ง composer เสร็จสิ้นให้ทำการเปิดหน้าต่าง Command ขึ้นมาเพื่อทำการติดตั้ง Laravel Framework ใน Folder นั้น โดยใช้คำสั่ง “composer create-project- -prefer-dist laravel/laravel [name project]” ดังภาพเป็นกรณีที่ติดตั้งจาก Windows นะคับ
  • รอจนกว่าหน้าต่าง Command จะแสดงผลเสร็จสิ้นดังภาพ
  • เปิดเข้าไปภายใน Folder และทำการ Start Project ด้วยการ Run คำสั่ง Command ดังภาพ
  • เปิด Browser แล้วพิม Url ดังนี้ http://localhost:8000/ เมื่อ Run ผ่านจะได้ผลตามรูปต่อไปนี้

โครงสร้างของ Laravel 5.4

laravel 5.4

หน้าที่ของโฟลเดอร์และไฟล์ที่มือใหม่ควรรู้

  • app เป็นโฟลเดอร์ที่ใช้เก็บไฟล์จำพวก Model หรือ Controller ที่ใช้ในการประมวลผลและติดต่อกับฐานข้อมูล
  • database เป็นโฟลเดอร์ที่ใช้เก็บไฟล์จำพวก Migrations และ Seeding เพื่อใช้ในการสร้าง Table หรือใส่ข้อมูลในฐานข้อมูลผ่านคำสั่ง “artisan” ของ laravel
  • public ใช้เก็บพวก Javascript, CSS รวมไปถึง File index และ .htaccess ทุกส่วนสามารถเข้าถึงได้เป็นตัวจัดการไฟล์แบบสาธารณะนั้นเอง
  • resources ใช้เก็บโฟลเดอร์ที่ใช้ในส่วนของการแสดงผลต่าง ๆ (Views และส่วนที่เกี่ยวข้อง ฯ)
  • routes เป็นส่วนที่ใช้เก็บไฟล์ในการกำหนด Url ของ web (File routes)
  • storage เป็นส่วนของคลังพื้นที่จัดเก็บข้อมูลตระกูล Session, caches หรือไฟล์ที่ถูกทาง blade engine ทำการ compiled มาแล้ว
  • tests เป็นส่วนที่ใช้จัดการพวก automated tests เช่น unit test
  • ไฟล์ .env เป็นไฟล์ที่ใช้ config laravel กับ ฐานข้อมูล

จุดเด่นหลัก ๆ ของ Laravel Framework คือ ?

  • ส่วนขยายของ Laravel ที่ชื่อว่า Bundle ซึ่งช่วยให้ประหยัดเวลาในการเขียน Code ลงเป็นอย่างมากโดยใช้คำสั่งผ่าน Command Line ในการติดตั้งผ่านคำสั่ง “php artisan” แทน
  • การเรียกใช้งานคลาสต่าง ๆ ที่ง่ายขึ้นเพราะ Laravel เรียกใช้งานคลาสโดย Name Space โดยคำสั่งที่สั้นและเข้าใจง่าย
  • Unit testing สามารถสร้าง Unit test ขึ้นมาเพื่อทดสอบงานของตัวเองได้ โดยสร้างผ่านชุดคำสั่ง “artisan” สามารถดูคำสั่งได้จาก Testing: Getting Started
  • Eloquent ORM ชุดคำสั่งหรือเครื่องมือในการ Query ข้อมูลต่าง ๆ ในฐานข้อมูลสามารถดูคำสั่งได้จาก DatabasesQuery
  • Routing สามารถกำหนดชื่อของ Url เพื่อชี้ไปยังส่วนต่าง ๆ เช่น View หรือ Controller ตามที่ต้องการได้คำสั่งอ่านและเข้าใจง่ายมากสามารถดูตัวอย่างการใช้งานได้จาก Routing
  • Restful Controller สามารถกรองชนิดการส่งคำร้องขอจากฟอร์มทั้งแบบ Post, Get, Put/Patch, Delete
  • View Composer ส่วนของ Code HTML ที่นำมาเรียงติดต่อกัน และจะทำงาน หลังจากประกอบกันเสร็จเรียบร้อยแล้ว เช่นเราแบ่งส่วน header, container, footer และนำมาเรียกใช้ต่อกันภายหลังเป็นต้น

จุดด้อยคือ ?

  • ผู้เริ่มต้นใหม่อาจจะต้องใช้เวลาในการทำความเข้าใจพอสมควรเนื่องจากตัว Laravel Framework นั้นมีเครื่องมือมากพอควร
  • ในเรื่องความเร็ว (Performance) นั้นตัว Larave Framework นั้นอาจไม่ใช่ PHP Framework ที่เร็วที่สุดผู้ใช้จะต้องมีความรู้ในการปรับแต่งระบบเพื่อเพิ่มประสิทธิภาพด้วยตนเอง

สรุป

จากที่กล่าวมาข้างต้นก็พอจะมองเห็นว่าเจ้าตัว Laravel Framework ก็เป็น Framework ทางเลือกหนึ่งสำหรับมือใหม่ เพราะสามารถขึ้นโครงสร้างได้ง่าย สุดท้ายนี้การเลือกใช้ Framework นั้นก็ขึ้นอยู่กับตัวบุคคล องค์กร หรือความเหมาะสมของงานนั่นเอง

--

--