หลักการทำงานของ Composer

wave
มานพ กองอุ่น 9 เม.ย. 2016 14:09:03 8,943

Composer

Composer เป็นโปรแกรมสำหรับจัดการ Package ต่างๆ ของ PHP โดยสมัยก่อน การเขียนทำ Web Application ด้วยภาษา PHP นั้น จะมีการทำ Package แต่ล่ะคนไว้คนละที่กัน ใน Project หนึ่งอาจมีหลาย Package ดังนั้นเมื่อแต่ละ Package มีการ Update เราก็ตามไปดาวน์โหลด Package ในแต่ล่ะที่มา Update ใน Project เราใหม่ ทำให้ต้องเสียเวลาในการไปตรวจสอบว่ามี Package ไหน Update บ้าง

ดังนั้นจึงเกิด Composer ขึ้นมาเพื่อจัดการเรื่อง Package โดยเฉพาะ โดยจัดเก็บไว้ในเว็บไซต์ Packagist.org

Packagist.org

Packaagist.org เป็นเว็บไซต์ที่รวบรวม Package ต่างๆ ไว้เพื่อให้สามารถติดตั้งผ่านโปรแกรม Composer ได้ โดยเป็นการระบุเพียงว่า Package นั้นๆ มีการ update version ใหม่หรือยัง โดยที่ไม่ได้เก็บ source code ไว้แต่อย่างใด ในการตรวจสอบนั้นจะใช้การ Hook ไปยังแหล่งเก็บ source code ต่างๆ เช่น Github.com หรือ Bitbucket.org หรือแหล่งอื่นๆ

มาตรฐาน

ในแง่ของการนำ Package ไปใช้งานนั้น แน่ล่ะแต่ละคนก็คงต้องเขียน Style ของแต่ละ Programmer ดังนั้นในการเขียนควรจะต้องอิงจากมาตรฐานเดียวกันเพื่อให้การทำงานกับ Composer และการนำ Package ไปใช้งานได้อย่างมีประสิทธิภาพ โดยในที่นี้ควรศึกษาเรื่องมาตรฐานของภาษา PHP ได้ที่เว็บไซต์ http://www.php-fig.org/

composer.json

สำหรับการตั้งค่าหรือการติดตั้ง Package ต่างๆ ผ่าน Composer นั้นจะมีไฟล์เอาไว้สำหรับรวบรวม Package ต่างๆ พร้อม version ไว้ที่ไฟล์ที่มีชื่อว่า composer.json ใน root ของ Project ของเรา โดย Composer จะมาอ่าน ไฟล์นี้ ซึ่งหากมีการลบ Package หรือ เพิ่ม Package Composer ก็จะทำงานตามที่เราได้กำหนดไว้ ซึ่งก็ถือได้ว่ามีความสะดวกมากยิ่งขึ้น

Folder vendor

หลังจากการติดตั้ง Package ต่างๆ ของ PHP ผ่าน Composer แล้วนั้นจะสังเกตเห็นว่ามี folder vendor เกิดขึ้นใน project เรา นั้นคือ folder เก็บ package ต่างๆ ของ Project เราที่เราได้ติดตั้งนั้นเอง

การนำ Package  ต่างๆ ไปใช้งานนั้นทำได้ง่ายดายเพียงแค่ include 'vendor/autoload.php'; ก็สามารถ use PackageName; ได้แล้ว

สรุป

Composer เป็นโปรแกรมที่ช่วยให้เราไม่ต้องกังวลกับเรื่องของการ update Package ต่างๆ ที่เราใช้ใน Project ซึ่งช่วยให้เราทำงานได้อย่างมีประสิทธิภาพมากยิ่งขึ้น


ความคิดเห็น

หากบทเรียนรู้มีความผิดพลาดประการใด หรือมีข้อเสนอแนะกรุณาแจ้ง contact@programmerthailand.com

เขียนบทเรียนรู้ของคุณ

รายละเอียด
  • ดู 8,943
  • รักเลย 0
  • หมวดหมู่ Composer สำหรับ PHP Developer
  • เขียนเมื่อ
  • แก้ไขเมื่อ
  • Tags composer
ข้อมูลผู้เขียน
มานพ กองอุ่น

มานพ กองอุ่น

เป็นสมาชิกเมื่อ: 18 ธ.ค. 2009