11 เครื่องมือการจัดการการพึ่งพาสำหรับนักพัฒนาเว็บ
การพึ่งพาเป็นรากฐานสำคัญของการพัฒนาเว็บไซต์ที่ทันสมัย เหล่านี้เป็นเครื่องมือที่จำเป็นปลั๊กอินไลบรารีและกรอบงาน จำเป็นต้องสร้างเว็บแอปพลิเคชั่นระดับสูง.
จำนวนของการอ้างอิงที่แท้จริงได้พุ่งสูงขึ้นในไม่กี่ปีที่ผ่านมา เมื่อเวลาผ่านไปนักพัฒนาได้ใช้เครื่องมือการจัดการการพึ่งพาซึ่ง บรรเทาความเครียดในการรักษาความเป็นระเบียบและเป็นปัจจุบัน. เครื่องมือเหล่านี้นำไปสู่กระบวนการทำงานที่ปรับให้เหมาะสมที่สุดสำหรับนักพัฒนาและผู้จัดการโครงการ.
ฉันได้จัดทำแคตตาล็อกเครื่องมือการพึ่งพาที่ดีที่สุดที่นี่รวมถึงทั้งแพลตฟอร์มที่ได้รับการยอมรับและเป็นที่รู้จัก การพัฒนาเว็บไซต์อย่างมืออาชีพต้องการการเรียนรู้อย่างต่อเนื่องและฉันขอยืนยันว่าการจัดการการพึ่งพาเป็นชุดทักษะการเรียนรู้ที่คุ้มค่า.
1. NPM
ฉันไม่สามารถเขียนคู่มือนี้โดยไม่ให้เครดิตกับ Node Package Manager สร้างขึ้นบน Node.js ระบบนี้ใช้พื้นที่เก็บข้อมูลมหาศาล แพ็คเกจและโมดูลกว่า 100,000 รายการ.

แต่ละโครงการสามารถใช้การตั้งค่าไฟล์ package.json ผ่าน NPM และจัดการด้วย Gulp (บนโหนด) สามารถอัพเดตและเพิ่มประสิทธิภาพการอ้างอิงได้จากเทอร์มินัล และคุณสามารถสร้างโครงการใหม่ด้วยไฟล์อ้างอิงและหมายเลขเวอร์ชันที่ดึงมาจากไฟล์ package.json โดยอัตโนมัติ.
NPM นั้นมีค่ามากกว่าการจัดการการพึ่งพาและเป็นเครื่องมือที่ต้องรู้สำหรับการพัฒนาเว็บไซต์ที่ทันสมัย หากคุณสับสนโปรดตรวจสอบ Reddit นี้ด้ายสำหรับคำอธิบายของการเริ่มต้น.
2. ซุ้มประตู
ระบบการจัดการแพคเกจ Bower ทำงานบน NPM ซึ่งดูเหมือนจะซ้ำซ้อนเล็กน้อย แต่มีความแตกต่างระหว่างทั้งสองโดยเฉพาะอย่างยิ่งที่ NPM มีคุณสมบัติเพิ่มเติมในขณะที่ Bower มีจุดมุ่งหมายเพื่อ การลดขนาดไฟล์และเวลาในการโหลด สำหรับการอ้างอิงส่วนหน้า.
ลองคำถามกองนี้เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับความแตกต่างที่ลึกซึ้ง.

ผู้พัฒนาบางคนยืนยันว่า Bower นั้นล้าสมัยไปแล้วเนื่องจากมันทำงานบน NPM ซึ่งเป็นบริการที่สามารถทำทุกอย่างที่ Bower ทำได้ โดยทั่วไปการพูดแบบนี้ไม่ผิด.
แต่นักพัฒนาควรตระหนักถึงความสามารถของ Bower เพิ่มประสิทธิภาพเวิร์กโฟลว์โดยเฉพาะกับการอ้างอิงส่วนหน้า. ฉันขอแนะนำบทความของ Ben McCormick ว่ามีประโยชน์ในการเรียนรู้เพิ่มเติมเกี่ยวกับคุณค่าที่ได้รับจากเครื่องมือการจัดการแพ็คเกจ.
3. RubyGems
RubyGems เป็นผู้จัดการแพ็คเกจสำหรับ Ruby ที่ได้รับความนิยมสูงในหมู่นักพัฒนาเว็บ โครงการเป็นโอเพนซอร์ซและรวมอัญมณีทับทิมฟรีทั้งหมด.
เพื่อให้ภาพรวมโดยย่อสำหรับผู้เริ่มต้น “อัญมณี” เป็นเพียงบางส่วน รหัสที่ทำงานบนสภาพแวดล้อมทับทิม. สิ่งนี้สามารถนำไปสู่โปรแกรมต่างๆเช่น Bundler ซึ่งจัดการเวอร์ชั่นอัญมณีและอัพเดททุกอย่าง.

ผู้พัฒนา Rails จะชื่นชอบฟีเจอร์นี้ แต่แพ็คเกจ frontend ล่ะ? เนื่องจาก Ruby เป็นโอเพ่นซอร์สผู้พัฒนาสามารถสร้างโครงการเช่น Bower for Rails สิ่งนี้นำการจัดการแพ็คเกจส่วนหน้ามาสู่แพลตฟอร์ม Ruby พร้อมกับช่วงการเรียนรู้ขนาดเล็ก.
4. RequireJS
มีบางอย่างที่พิเศษเกี่ยวกับ RequireJS เนื่องจากเป็นชุดเครื่องมือ JS เป็นหลัก มันสามารถใช้สำหรับ การโหลดโมดูล JS อย่างรวดเร็วรวมถึงโมดูลโหนด.
RequireJS สามารถ ตรวจจับการพึ่งพาที่จำเป็นโดยอัตโนมัติ ขึ้นอยู่กับสิ่งที่คุณกำลังใช้งานซึ่งอาจคล้ายกับการเขียนโปรแกรมซอฟต์แวร์แบบคลาสสิกใน C / C ++ ที่มีไลบรารีรวมอยู่ในไลบรารีเพิ่มเติม.

คุณจะพบกับการสนทนา GitHub ที่น่าสนใจในหัวข้อนี้และความคุ้มค่าที่นำเสนอนักพัฒนาเว็บสมัยใหม่ ได้รับเครื่องมือการจัดการ JS อื่น ๆ เช่น webpack ได้ผุดขึ้น RequireJS ยังคงทำงานในสภาพแวดล้อมการผลิต และถ้ามันเหมาะกับคุณนั่นคือทั้งหมดที่สำคัญ.
5. แยม
การจัดการแพ็คเกจที่ใช้เบราว์เซอร์มาในรูปแบบใหม่ด้วย JamJS นี่คือตัวจัดการแพคเกจ JavaScript ที่มีการจัดการอัตโนมัติคล้ายกับ RequireJS.
ทุกการพึ่งพาของคุณคือ ดึงลงในไฟล์ JS เดียวซึ่งให้คุณเพิ่มและลบ รายการได้อย่างรวดเร็ว นอกจากนี้ยังสามารถอัปเดตสิ่งเหล่านี้ได้ในเบราว์เซอร์โดยไม่คำนึงถึงเครื่องมืออื่น ๆ ที่คุณใช้ (เช่น RequireJS).

ไลบรารี่ได้รับการอัพเดตตามเวอร์ชั่นล่าสุดผ่านทางเทอร์มินัล แต่ละโครงการสามารถ สร้างโดยอัตโนมัติด้วยส่วนประกอบที่ปรับให้เหมาะสม ขึ้นอยู่กับ ความต้องการของคุณ. แจมฟรีบน GitHub และควรลองดูถ้าคุณมีเวลา.
6. Browserify
นักพัฒนาส่วนใหญ่รู้จัก Browserify แม้ว่าจะไม่ได้เป็นส่วนหนึ่งของเวิร์กโฟลว์ทั่วไป นี่เป็นอีกเครื่องมือการจัดการการพึ่งพาซึ่งปรับโมดูลและไลบรารีที่เหมาะสมโดยการรวมเข้าด้วยกัน.
การรวมกลุ่มเหล่านี้นั้น รองรับในเบราว์เซอร์ ซึ่งหมายความว่าคุณสามารถ รวมและรวมโมดูลด้วย JavaScript ธรรมดา. สิ่งที่คุณต้องมีคือ NPM เพื่อเริ่มต้นจากนั้นเบราว์เซอร์เพื่อเคลื่อนย้าย.

ลองดูบทแนะนำบทนำนี้เพื่อดูว่าโหนดสามารถจัดการได้อย่างไรในเบราว์เซอร์ นอกจากนี้ยังมีคู่มือ Browserify ที่มีความยาวซึ่งโฮสต์บน GitHub ฟรี แนวคิดก็คือการนำเครื่องมือ Node เหล่านี้มาไว้ในเบราว์เซอร์และประหยัดเวลาด้วยกระบวนการอัตโนมัติด้วย Browserify.
7. Mantri
ยังอยู่ในช่วงเริ่มต้นของการเติบโต MantriJS เป็นระบบการพึ่งพาสำหรับแอปพลิเคชันเว็บระดับกลางถึงสูง การอ้างอิงได้รับการจัดการผ่านเนมสเปซและ จัดระเบียบหน้าที่เพื่อหลีกเลี่ยงการชนและลดความยุ่งเหยิง.

Mantri ปัจจุบันอยู่ที่ v0.2.2 ในขณะที่เขียน มันสมบูรณ์ โอเพ่นซอร์ส และ สร้างขึ้นสำหรับเว็บแอปพลิเคชันที่ซับซ้อนมากขึ้นซึ่งต้องการการรวมกลุ่มขนาดใหญ่. Mantri มุ่งมั่นที่จะปฏิบัติตามแนวทางการเขียนโปรแกรมแบบแยกส่วนและหวังที่จะสนับสนุนให้นักพัฒนาเข้าสู่เส้นทางเดียวกัน.
8. โวโล
เครื่องมือการจัดการโครงการ volo เป็น repo โอเพ่นซอร์ส NPM ที่สามารถสร้างโครงการเพิ่มไลบรารีและเวิร์กโฟลว์อัตโนมัติ.
Volo ทำงานภายในโหนดและอาศัย JavaScript สำหรับการจัดการโครงการ. คู่มือแนะนำสั้น ๆ สามารถพบได้ใน GitHub อธิบายกระบวนการติดตั้งและการใช้งานทั่วไป ตัวอย่างเช่นถ้าคุณเรียกใช้คำสั่ง โวโลสร้าง
คุณสามารถติดห้องสมุดใด ๆ เช่น HTML5 Boilerplate.

แต่นอกเหนือจากการสร้างโครงการใหม่คุณยังสามารถ เพิ่ม / อัปเดตไลบรารีสำหรับโครงการที่เก่ากว่า. Volo เชื่อมโยงกับทุกสิ่งที่คุณต้องการสำหรับการพัฒนาส่วนหน้า ตรวจสอบเป้าหมายการออกแบบของ volo เพื่อดูว่ามันทำงานอย่างไรในโครงการจริง.
9. พลิก
พลิกเป็น “ไม่มีห้องสมุด” และเป็นหนึ่งในผู้จัดการแพ็คเกจที่เบาที่สุดที่คุณจะพบทางออนไลน์ จะช่วยให้ devs ไป ค้นหาผ่านแพ็กเกจ JS และติดตั้ง / คอมไพล์ได้จากบรรทัดคำสั่ง. เอนเดอร์คิดว่าเป็น “น้องสาวของ NPM” โดยทีมงาน dev.

โดยธรรมชาติแล้ว Ender framework ทั้งหมดนั้นสามารถใช้ได้ฟรีที่ GitHub เป็นเพียงเครื่องมือที่คุณติดตั้งเพื่อช่วย จัดการการใช้เฟรมเวิร์ก JavaScript ส่วนหน้าสำหรับโครงการในท้องถิ่น. ทุกอย่างตั้งใจที่จะทำงานได้อย่างง่ายดายจนถึงศักยภาพสูงสุดสำหรับเวิร์กโฟลว์ของนักพัฒนาส่วนหน้า.
เว็บไซต์ Ender หลักมีเอกสารที่มีคุณภาพดังนั้นจึงน่าสนใจหากคุณสนใจ.
10. pip
วิธีการที่แนะนำสำหรับการติดตั้ง Python dependencies คือผ่าน pip เครื่องมือนี้สร้างโดย Python Packaging Authority และเป็นโอเพ่นซอร์สแบบสมบูรณ์เหมือนกับ Python.

นักพัฒนา Python ส่วนใหญ่แนะนำให้ใช้ pip สำหรับการพึ่งพารวมถึงทีม Django ไม่ว่าคุณจะเพิ่งเริ่มต้นใช้งาน Python หรือใช้งานอย่างต่อเนื่องกับการพัฒนาแบ็คเอนด์นี่คือผู้จัดการแพ็คเกจที่คุณยินดีที่มีในกล่องเครื่องมือของคุณ.
11. นักแต่งเพลง
นักแต่งเพลงเป็นผู้จัดการแพคเกจคล้ายกับ NPM แต่มันมุ่งเน้นไปที่ห้องสมุด PHP เท่านั้น คุณสามารถค้นหารายการของการพึ่งพาบน Packagist ซึ่งรวมถึงเฟรมเวิร์ก PHP ขนาดใหญ่เช่น Laravel.
ถ้า คุณเป็นนักพัฒนา PHP ฉันขอแนะนำให้มองนักแต่งเพลงอย่างจริงจัง มัน ง่ายต่อการเริ่มต้น แต่ยากที่จะพอดี เข้าสู่เวิร์กโฟลว์ของคุณ อย่างไรก็ตามด้วยการฝึกฝนมันจะกลายเป็นวัตถุดิบสำหรับโครงการ PHP dev.

นี่เป็นเครื่องมืออเนกประสงค์ที่มีศักยภาพที่จะเติบโตได้มากขึ้นในเวลา บวก NPM สามารถผสมกับนักแต่งเพลงเพื่อสร้างระบบการจัดการส่วนหน้า + แบ็กเอนด์การพึ่งพาสำหรับโครงการ PHP / JS ทั้งหมดของคุณ.
ห่อ
เป็นที่ชัดเจนว่าผู้จัดการการพึ่งพาเหล่านี้จำนวนมากมีคุณลักษณะที่คล้ายกันซึ่งมีคุณสมบัติคล้ายกัน บางแห่งสร้างขึ้นเพื่อ แก้ปัญหาอื่น และสามารถทำงานควบคู่กันได้ (เช่นนักแต่งเพลงและ NPM).
เรื่องของการจัดการการพึ่งพาอาจเป็นเรื่องยากสำหรับนักพัฒนาใหม่ ฉันขอแนะนำให้เลือกหนึ่งในเครื่องมือเหล่านี้และค้นคว้าอย่างละเอียดเพื่อเรียนรู้ให้มากที่สุด ลองสร้าง webapps ขนาดเล็กและเรียนรู้ว่าทำไมการจัดการการพึ่งพานั้นมีประโยชน์.
เมื่อคุณเรียนรู้วิธีการใช้เครื่องมือเหล่านี้กับเวิร์กโฟลว์ของคุณคุณจะไม่ต้องพิจารณากลับไปใช้อีก.