我是Rails的新手,我對gems &插件的概念感到困惑。任何人都可以爲我解釋嗎?寶石和插件有什麼區別?
11
A
回答
1
插件的使用越來越少,所以堅持使用寶石。寶石和插件可以做同樣的事情,所以這就是爲什麼他們混淆。然而,區別在於它們是如何組織的,最重要的是如何管理寶石,例如bundler
或config.gem
。管理寶石及其版本要容易得多。插件必須安裝在vendor
文件夾中,其中gems
也可以安裝在該文件夾中,如果它們需要自定義或只要導軌能夠理解該目錄所在的位置就可以將其安裝在gem目錄中。當rails開始時,大多數人使用插件來增加功能,但開發人員很快意識到,gem提供了更好的方式來打包和更新庫,所以大多數插件已經遷移到寶石和更少的插件正在構建。
8
插件只是從特定目錄加載的庫,寶石通過Bundler或RubyGems直接加載。
這確實是一個區別的維護和管理。當你需要最新最好的authlogic插件時會發生什麼,以及你需要更新目錄中的文件。當它是一個插件時聽起來並不是那麼糟糕,但是對於不斷更新的內容呢?現在有一個代碼打包和分發系統(RubyGems),它有助於管理這些事情。
再次考慮authlogic示例,如果新版本現在需要其他一些依賴關係,會發生什麼情況?通過RubyGems,gem文件明確定義了這種關係,插件系統不會這樣,而且這樣的定義將會是多餘的。
隨着rails 3.x中Bundler的出現,管理和分發項目使用的寶石變得非常容易。
TL; DR:插件基本上是沒有包裝信息的寶石。
-1
寶石和插件
寶石被存儲在LIB文件
寶石是使用由RubyGems的定義的包裝系統的封裝Ruby應用。
插件被存儲在銷售商/插件
甲Rails插件是擴展核心Rails框架封裝的Ruby應用程序。
相關問題
- 1. 寶石和插件有什麼區別?
- 2. 硒和硒寶石有什麼區別?
- 3. 插件和Ruby寶石的區別?
- 4. 什麼是「json的」寶石和‘json_pure’寶石的區別?
- 5. 耙路軌之間有什麼區別:凍結:寶石和耙寶石:解壓?
- 6. 「排序」和「排序!」有什麼區別?方法在紅寶石?
- 7. 'aws-s3'和'霧'寶石之間有什麼區別?
- 8. 設計寶石:config.remember_for和config.timeout_in有什麼區別?
- 9. 本地和遠程寶石有什麼區別?
- 10. 退出和退出有什麼區別!在紅寶石?
- 11. 鏈輪 - 導軌和鏈輪寶石之間有什麼區別?
- 12. 紅寶石和釀造配方有什麼區別?
- 13. 插件和庫有什麼區別?
- 14. PhoneGap插件和addJavascriptInterface有什麼區別?
- 15. 紅寶石:區別&=和&& =
- 16. 什麼是紅寶石的區別發送和紅寶石public_send方法?
- 17. 什麼區別,紅寶石HTTParty和角$ HTTP
- 18. where'require'的外觀和'Gem.available?'的區別是什麼?尋找寶石?
- 19. 紅寶石中%Q和%{}的區別是什麼?
- 20. Rails 3:引擎與寶石有什麼區別?
- 21. 插座和襪子有什麼區別?
- 22. 管道和插座有什麼區別?
- 23. UIView插座和ChildViewController有什麼區別?
- 24. 'mandrill-api'寶石和'mandrill_mailer'寶石之間的區別
- 25. ..和...之間的區別紅寶石
- 26. Maven發佈和Maven組件插件有什麼區別?
- 27. Java中的模塊,插件和組件有什麼區別?
- 28. 有什麼區別`和$(Bash中有什麼區別?
- 29. 寶石沒有什麼
- 30. 有什麼區別? :和||
[在Ruby on Rails中,將某些東西安裝爲gem還是作爲插件有什麼區別?](http://stackoverflow.com/questions/3629919/in-ruby-on-rails-whats-該差 - 安裝 - 東西 - 作爲一種寶石或間) – 2010-11-23 13:46:40