第十一天
起點:
1. 手把手教你做關鍵詞匹配項目(搜索引擎)---- 第一天
回顧:
10. 手把手教你做關鍵詞匹配項目(搜索引擎)---- 第十天
話說又到周末了,小帥帥又得寫總結報告了,小帥帥有點不太喜歡做總結,他覺得寫代碼都比寫總結好。
但是是於老大安排的任務,他不得不去完成它。
1. 面向對象編程思維能力的培養
2. TopClient的使用與重構
3. ExtendedCurl深度使用
4. Logger的創建與應用
小帥帥一寫到這兒,於老大問的三個問題,至今還在想,就算他把代碼寫出來了,他還是想不通為啥於老大會未卜先知。
小帥帥的代碼如下:
class Logger { const LEVEL_TRACE='trace'; const LEVEL_WARNING='warning'; const LEVEL_ERROR='error'; public static function error($message){ self::log($message,self::LEVEL_ERROR); } public static function warning($message){ self::log($message,self::LEVEL_WARNING); } public static function trace($message){ if(DEBUG) self::log($message,self::LEVEL_TRACE); } public static function log($message,$level = self::LEVEL_TRACE){ $file = fopen('application.error.log', "a+"); fwrite($file, $message."\t".$level."\t".microtime(true)); fclose($file); } }
小帥帥想不通的問題,就是喜歡問,他只好又去找於老大。
於老大說道:你們做功能都是滿足提需求的人,你們有沒有想過,其實你們也是提需求的人。了解測試驅動開發嗎?
測試驅動開發:英文全稱Test-Driven Development,簡稱TDD,是一種不同於傳統軟件開發流程的新型的開發方法。它要求在編寫某個功能的代碼之前先編寫測試代碼,然後只編寫使測試通過的功能代碼,通過測試來推動整個開發的進行。這有助於編寫簡潔可用和高質量的代碼,並加速開發過程。[來自百度詞庫]
測試驅動開發,很好的描述了用戶的輸入以及結果。
把自己也當作提需求的人、站在需求者的角度看待問題。
其實小帥帥在寫這份代碼的時候也在納悶, 使用下面語句,不就可以記錄所有的問題.
Logger::log($message,'error'); Logger::log($message,'warning'); Logger::log($message,'trace');
於老大為什麼還要單獨提出來:
Logger::error($message); Logger::warning($message); Logger::trace($message);
於老大就對他說了一句話:上面兩種的用法你更加喜歡用哪一種。
需求者都是喜歡簡單的功能
( 其實充分體現了他們的懶惰行為,正因為如此才有現在的文明 )
小帥帥看完這些後,深深的震撼了,從所未有的感受到理論知識和心態的重要性。
小帥帥第一次感覺到要學習的東西好多丫.....
小帥帥也不著急,還是任務要緊,他堅信,只要多完成一些項目,就能成為牛人。
他只好又匆匆忙忙的找於老大,去請教關鍵詞如何應用,技術如何實現。
但是於老大不願意多說了,要小帥帥自己去想了。
這可苦了小帥帥。
小帥帥這是要站起來的節奏....
關鍵詞應用需求:
通過淘寶API取到的寶貝標題以及寶貝屬性,匹配出適合該寶貝的關鍵詞.
初期考慮以下因素:
適合人群的匹配 :男裝 (匹配出來的關鍵詞不能有女) 女裝(匹配出來的關鍵詞不能有男) 情侶裝(男女適用) 童裝(?)