代碼在??github? 上,請教大家了!**********************************************************************************gitty不能全部滿足我們的需求gitty是git的管理模塊,有好多功能可以借用。 而我們的 chihuahua 腳本在gitlab/gerrit等git管理服務(wù)器上運(yùn)行,這這些設(shè)備上,每個(gè)倉庫只存放了 XXX.git 目錄,因此是不包含work directory的。 gitty 模塊里面的 'lib/repository' 其中定義的 Repository 類,它的構(gòu)造函數(shù)要求檢查路徑的合法性,這個(gè)檢查要求在帶有work directory的路徑下使用。 因此,我們需要借用 Repository 這個(gè)類的實(shí)例方法,但卻要改造它的構(gòu)造函數(shù)。設(shè)計(jì)現(xiàn)在能想到的方法是使用 prototype 繼承:var WithWorkpathRepository = require('gitty');?Repository.prototype = new WithWorkpathRepository('../data');?我們定義的 Repository,其 prototype 是來自 gitty 模塊的創(chuàng)建的對象,為了使new不報(bào)錯,只好創(chuàng)建了一個(gè)data文件夾,并在里面創(chuàng)建了 .git 文件夾。 這樣也能工作,但代碼卻有點(diǎn)惡心。請教:除了構(gòu)造函數(shù)不同,其他實(shí)例方法基本能公用的兩個(gè)類,該怎么設(shè)計(jì)?
除了構(gòu)造函數(shù)不同,其他實(shí)例方法基本能公用的兩個(gè)類,該怎么設(shè)計(jì)?
lisa2moon
2016-08-02 11:06:13