PEAR, bir PHP yazılım paketi yüklemek için kullanılır ve aynı şey için Composer kullanılır. Composer'ın bağımlılıkları daha iyi ele aldığına inanıyorum ama tek fark bu mu? Bu iki paket yöneticisi arasındaki farkı anlatabilir ve ne zaman kullanacağımı söyler misiniz?PEAR ve Besteci arasındaki fark nedir?
cevap
PEAR'ı kullanımdan kaldırılmış olarak kabul etmek biraz zaman alabilir, ancak bunun daha uzun süreceğine inanmıyorum. Besteci, birçok paket ve aktif gelişim ile gelişmekte ve olgunlaşmaktadır. Bu nedenle Composer'ı PHP'de the standard for package yönetim aracı olarak kullanmak daha iyi olabilir.
PEAR kullanımı, ambalaj koruyucular için daha kullanışlıdır. Bu nedenle, PEAR'ın bir çok kodu güncel değil. Bir geliştiricinin, PEAR'da yayınlanmadan önce "PEAR tarafından incelenen" paketlerini alması gerekiyor. Bu nedenle, available in Composer paketlerinin sayısına kıyasla az sayıda paket kullanılabilir. Ayrıca, tek bir proje için PEAR'a bir paket kurmanın hiçbir yolu yoktur. Tüm paketler dünya çapında kurulmuştur. Composer ile, paketleri global olarak veya numaralı projelere yükleyebilirsiniz. Öyleyse PEAR'da bağımlılık yönetimi eksikliği var, bu da bir paket yöneticisinin iyi yaptığı bir şey olmalı.
One PEAR ile yapabilir ve Composer ile değil PECL extensions yüklüyor. Composer kullanan ve composer.json
dosyanızdaki yerel PHP uzantıları bağımlılıklarını tanımlamanıza olanak sağlayan pickle vardır. Turşu projesi anlık olarak biraz gelişme geçiriyor ve henüz olgun kabul edilmemelidir. Fabien Potencier tarafından biraz düşünülmüş olabilir ama bence oldukça doğru. Eğer bir seçeneğiniz varsa, Besteci seçin, böylece PEAR barış içinde ölebilir. Hatta ask the PEAR maintainers en çok size, Composer'ın ileriye doğru yol olduğunu söylese bile, bazıları hala Pyrus için ümitlerine sahip olabilir. (Bu PEAR geliştirildi, ancak Composer'ın patlayan popülaritesi altında gömülü oldu.)
Bu arada, PEAR paketlerini de yüklemek için Composer'ı da kullanabilirsiniz, bkz. the Composer documentation.
Ayrıca bakınız:
[1] Informative slide deck about PHP package management
- 1. Python'da {} ve [] arasındaki fark nedir?
- 2. UNIX'teki $ @ ve $ * arasındaki fark nedir?
- 3. $ arasındaki fark nedir? ve PowerShell
- 4. Fark() arasındaki fark nedir mustache.js
- 5. arasındaki fark nedir?
- 6. Java arasındaki fark nedir
- 7. arasındaki fark nedir?
- 8. arasındaki fark nedir?
- 9. app.doScript ve $ .evalFile arasındaki fark nedir?
- 10. gVim ve gVim arasındaki fark nedir?
- 11. isAlpha ve isLetter arasındaki fark nedir?
- 12. Control.Enter ve Control.GotFocus olayları arasındaki fark nedir?
- 13. .got ve .got.plt bölümü arasındaki fark nedir?
- 14. AutomationProperties.AutomationID ve AutomationProperties.Name arasındaki fark nedir?
- 15. Android'de getDir ve getFilesDir arasındaki fark nedir?
- 16. R içinde `=` ve `<-` arasındaki fark nedir?
- 17. uint ve System.UInt32 arasındaki fark nedir?
- 18. PropertyChangeListener ve VetoableChangeListener arasındaki fark nedir?
- 19. XSS'de IDREF ve IDREFS arasındaki fark nedir?
- 20. Cacerts ve keystore arasındaki fark nedir?
- 21. GPLv2 ve GPLv3 arasındaki fark nedir?
- 22. VarIsEmpty ve VarIsEmptyParam işlevleri arasındaki fark nedir
- 23. ActiveSupport'ta mattr_accessor ve cattr_accessor arasındaki fark nedir?
- 24. Hashtable ve Dictionary arasındaki fark nedir?
- 25. RoutedCommand ve RoutedUICommand arasındaki fark nedir?
- 26. MySQL'deki boolean ve bool arasındaki fark nedir?
- 27. Task.Factory.FromAsync ve BeginX/EndX arasındaki fark nedir?
- 28. WideChar ve AnsiChar arasındaki fark nedir?
- 29. PHP'de 'stripcslashes' ve 'stripslashes' arasındaki fark nedir?
- 30. AxInterop ve Interop arasındaki fark nedir?
bu soru kapalı olduğunu bir utanç. – Adam