2
我正在創建一個圖形庫寶石。如何創建一個寶石模塊?
當創建一個gem時,似乎重要的是要確保與其他gem或其他代碼沒有衝突。
例如,擴展名(monkeypatch)方法從我的寶石代碼中調用。
class Array
def sum
inject(0.0) { |result, el| result + el }
end
因此,該解決方案似乎是一個模塊。
如何創建一個模塊,並確保在下載和使用其他代碼時與其他代碼沒有衝突?
無論如何,創建一個模塊不會幫助你,如果你只是將它混合到核心類。你應該避免修補核心類。期。 – d11wtq
好的,那麼實現Array#sum功能的更好方法是什麼? –
子類數組並使用您的子類代替。我認爲你做了比#sum更復雜的事情,但是,因爲那只是'arr.reduce(:+)'。 – d11wtq