我正在寫一點自制ORM(學術興趣)。我試圖堅持TDD概念作爲培訓練習,並且作爲該練習的一部分,我正在爲API開發文檔,以便開發課程。PHP OOP:每個參數類型的唯一方法?
案例 - 我正在研究一個經典的「getCollection」類型的映射類。我希望它能夠爲特定用戶檢索資產X的集合(比方說博客文章),還可以基於任意數值數組獲取集合。所以 - 你可能喜歡這些
$User = $UserMapper->load(1);
$ArticleCollection = $ArticleMapper->getCollection(range(10,20));
$ArticleCollection = $ArticleMapper->getCollection($User);
$ArticleCollection = $ArticleMapper->getCollection($User->getId());
因此,任何一個的方法,以書面形式對getCollection方法的文檔 - 我要聲明的文檔塊的@param變量。對每個參數類型有一個唯一的方法會更好嗎?還是有一種方法可以根據參數類型委託給正確的內部方法/類?
感謝,我很欣賞這個答案,並且非常接近我最初的實現。我很想知道的是,從面向對象的最佳實踐角度來看,使用獨特的方法re:責任更好嗎? – sunwukung 2010-05-07 15:03:00
嗯,好點:http://php.net/manual/en/language.oop5.typehinting.php我會從我的答案中刪除錯誤'int'。 – artlung 2010-05-07 15:20:43