11 Web Geliştiricileri için Bağımlılık Yönetimi Araçları
Bağımlılıklar, modern web geliştirmenin temel taşıdır. Bunlar gerekli araçlar, eklentiler, kütüphaneler ve çerçevelerdir. üst düzey web uygulamaları oluşturmak için gerekli.
Çok sayıda bağımlılık son birkaç yılda fırladı. Zaman içinde geliştiriciler bağımlılık yönetim araçlarını benimsemişlerdir. Bağımlılıkların düzenli ve güncel tutulması stresini hafifletmek. Bu araçlar, geliştiriciler ve proje yöneticileri için optimize edilmiş bir iş akışına yol açar.
Hem yeni kurulan hem de yeni gelişen platformları içeren en iyi bağımlılık araçlarını burada katalogladım. Profesyonel web geliştirme sürekli öğrenme gerektirir ve bağımlılık yönetiminin öğrenmeye değer bir beceri seti olduğunu iddia ediyorum..
1. NPM
Düğüm Paket Yöneticisine kredi vermeden bu kılavuzu yazamam. Node.js üzerine kurulu bu sistem, muazzam bir veri havuzuna güç veriyor 100.000+ paket ve modül.
Her proje NPM aracılığıyla bir package.json dosya kurulumunu kullanabilir ve hatta Gulp ile yönetilebilir (Düğümde). Bağımlılıklar doğrudan terminalden güncellenebilir ve optimize edilebilir. Ayrıca, otomatik olarak paket.json dosyasından çekilen bağımlılık dosyalarına ve sürüm numaralarına sahip yeni projeler oluşturabilirsiniz..
NPM, bağımlılık yönetiminden daha fazlası için değerlidir ve pratik olarak modern web geliştirme için mutlaka bilinmesi gereken bir araçtır. Kafanız karıştıysa, lütfen yeni başlayanların açıklamaları için bu Reddit başlığını inceleyin..
2. Bower
Paket yönetim sistemi Bower, biraz gereksiz gibi görünen NPM üzerinde çalışıyor, ancak ikisi arasında bir fark var, özellikle de NPM, Bower’ın dosya boyutunda ve yükleme süresinde azalma ön bağımlılıklar için.
İnce farklar hakkında daha fazla bilgi edinmek için bu Stack sorusunu inceleyin.
Bazı geliştiriciler Bower'ın temelde eski olduğunu, çünkü Bower'ın yapabileceği her şeyi yapabilen bir hizmet olan NPM'de çalıştığını iddia ediyor. Genel olarak bu yanlış değil.
Fakat Devs, Bower'in yapabileceğini anlamalı. iş akışını özellikle ön uç bağımlılıklarıyla optimize etme. Her iki paket yönetim aracından da sunulan değer hakkında daha fazla bilgi edinmek için Ben McCormick'in "Bower Is Yararlı" makalesini öneririm..
3. RubyGems
RubyGems, web geliştiricileri arasında popülerliği yüksek olan bir Ruby paket yöneticisidir. Proje açık kaynak kodlu ve tüm ücretsiz Ruby mücevherlerini içeriyor.
Yeni başlayanlar hakkında kısa bir genel bakış vermek “taş” sadece bir kısmı Ruby ortamında çalışan kod. Bu, gem sürümlerini yöneten ve her şeyi güncel tutan Bundler gibi programlara yol açabilir.
Rails geliştiricileri bu özelliği sevecekler, peki ön paketler? Ruby açık kaynak olduğundan, geliştiriciler Bower for Rails gibi projeler yapabilirler. Bu, ön paket yönetimini Ruby platformuna küçük bir öğrenme eğrisi ile getiriyor.
4. Gerekli
RequireJS ile ilgili olarak bir JS araç takımı olduğu konusunda özel bir şey var. İçin kullanılabilir Düğüm modülleri dahil hızlı bir şekilde JS modüllerinin yüklenmesi.
RequireJS olabilir gerekli bağımlılıkları otomatik olarak algıla ne kullandığınıza bağlı olarak, bu, C / C ++ 'da klasik kütüphanelerin programlanmasına benzer olabilir;.
Bu konuda ilginç bir GitHub tartışması ve modern web geliştiricileri için sunduğu değeri bulacaksınız. Web paketi gibi diğer JS yönetim araçları açıldı, RequireJS hala üretim ortamlarında çalışıyor. Ve eğer senin için işe yarıyorsa, önemli olan bu.
5. Reçel
Tarayıcı tabanlı paket yönetimi JamJS ile yeni bir formda geliyor. Bu, RequireJS'e benzer bir otomatik yönetimi olan bir JavaScript paket yöneticisidir..
Bütün bağımlılıkların eklemek ve kaldırmak için tek bir JS dosyasına çekti öğeleri hızlıca Ayrıca bunlar, kullandığınız diğer araçlardan bağımsız olarak tarayıcıda güncellenebilir (RequireJS gibi).
Kütüphaneler, terminal üzerinden en son sürümlere göre güncellenir. Her proje olabilir optimize edilmiş bileşenlerle otomatik olarak oluşturulur dayalı ihtiyaçların. GitHub'da reçel ücretsizdir ve vaktiniz varsa göz atmaya değer.
6. Browserify
Çoğu geliştirici, tipik iş akışının bir parçası olmasa bile Browserify'ı bilir. Bu, gerekli modülleri ve kitaplıkları bir araya getirerek optimize eden başka bir bağımlılık yönetim aracıdır.
Bu paketler tarayıcıda desteklenir bu yapabileceğin anlamına gelir düz JavaScript içeren modülleri dahil etme ve birleştirme. İhtiyacınız olan tek şey başlamak için NPM ve ardından harekete geçmek için Browserify.
Düğümün doğrudan tarayıcıda nasıl yönetildiğini görmek için bu tanıtım kılavuzuna göz atın. GitHub'da ücretsiz olarak barındırılan uzun bir Browserify el kitabı da var. Fikir tüm bu Düğüm araçlarını tarayıcıya getirmek ve Browserify ile işlemi otomatize ederek zamandan tasarruf etmektir..
7. Mantri
Hala büyümenin erken aşamalarında, MantriJS orta ve üst düzey web uygulamaları için bir bağımlılık sistemidir. Bağımlılıklar ad alanları ile yönetilir ve Çarpışmaları önlemek ve karmaşayı önlemek için fonksiyonel olarak düzenlenmiştir.
Mantri şu anda v0.2.2'de yazı yazmaktadır. Tamamen açık kaynak ve Büyük bağımlılık demetleri gerektiren daha karmaşık web uygulamaları için üretildi. Mantri, modüler programlama uygulamalarını takip etmeyi amaçlar ve geliştiricileri aynı yolda teşvik etmeyi umuyor.
8. Volo
Proje yönetim aracı volo, projeler oluşturabilen, kütüphaneler ekleyebilen ve iş akışlarını otomatikleştirebilen açık kaynaklı bir NPM deposudur..
Volo Düğümün içinde çalışır ve proje yönetimi için JavaScript'i kullanır. GitHub'da kurulum işlemini ve genel kullanımı açıklayan kısa bir tanıtım kılavuzu bulunabilir. Örneğin, komutu çalıştırırsanız volo oluştur
HTML5 Kazan gibi herhangi bir kütüphaneyi ekleyebilirsiniz.
Ancak yeni projeler yaratmanın dışında eski projeler için kitaplık ekleme / güncelleme. Volo, ön uç gelişimi için ihtiyacınız olan her şeyi bağlar. Gerçek dünyadaki bir projede nasıl çalıştığını görmek için volo'nun tasarım hedeflerine göz atın.
9. Ender
Ender “kütüphane yok” ve çevrimiçi bulabileceğiniz en hafif paket yöneticilerinden biridir. Bu devs sağlar JS paketlerinde arama yapın ve onları komut satırından yükleyin / derleyin. Ender olarak düşünülür “NPM'nin küçük kız kardeşi” dev ekibi tarafından.
Doğal olarak tüm Ender çerçevesi GitHub'da ücretsiz olarak mevcut. Bu sadece yardımcı olmak için yüklediğiniz bir araçtır Yerel projeler için ön uç JavaScript çerçevelerinin tüketimini yönetme. Her şey, bir ön uç geliştiricinin iş akışında en yüksek potansiyele kolayca ulaşmak içindir.
Ana Ender web sitesinde kaliteli belgeler bulunur, eğer ilgileniyorsanız bir bakışta değer.
10. pip
Python bağımlılıklarını kurmak için önerilen yöntem pip'tir. Bu araç Python Ambalaj Otoritesi tarafından yaratılmıştır ve Python'un kendisi gibi tamamen açık bir kaynaktır..
Python geliştiricilerinin çoğu, Django ekibi de dahil olmak üzere bağımlılıklar için pip önermektedir. Python’a yeni başlamış olsanız da veya onu zaten arka uç geliştirme ile sürekli kullanıyorsanız, bu araç kutunuzda bulunmaktan memnuniyet duyacağınız bir paket yöneticisidir..
11. Besteci
Besteci, NPM'ye çok benzeyen bir paket yöneticisidir, ancak yalnızca PHP kitaplıklarına odaklanmıştır. Packagist'te Laravel gibi büyük PHP çerçevelerini içeren bir bağımlılık listesi bulabilirsiniz..
Eğer sen bir PHP geliştiricisin her türlü ciddiyetle besteci arıyorum. Onun başlamak kolay ama sığması zor iş akışınıza Ancak uygulama ile PHP dev projeleri için bir temel haline gelecektir.
Bu, zamanla daha da büyüyebilecek potansiyele sahip çok yönlü bir araçtır. Ayrıca NPM, tüm PHP / JS projeleriniz için bir ön uç + arka uç bağımlılık yönetim sistemi oluşturmak üzere Composer ile birlikte kullanılabilir..
Kaydırma
Bu bağımlılık yöneticilerinin birçoğunun benzer niteliklere sahip benzer özelliklere sahip olduğu açıktır. Bazı inşa edilmiştir alternatif problemleri çözebilir ve hatta birbirleriyle paralel olarak çalışabilirler (örneğin, Besteci ve NPM).
Bağımlılık yönetimi konusu yeni geliştiriciler için zor olabilir. Bu araçlardan birini seçmenizi ve olabildiğince fazla bilgi edinmek için derinlemesine araştırma yapmanızı öneririm. Küçük web uygulamaları oluşturmayı deneyin ve bağımlılık yönetiminin neden faydalı olduğunu öğrenin.
Bu araçları iş akışınıza nasıl uygulayacağınızı öğrendikten sonra asla geri dönmeyi düşünmeyeceksiniz.