第十天html
起點:api
1. 手把手教你作關鍵詞匹配項目(搜索引擎)---- 第一天app
回顧:框架
9. 手把手教你作關鍵詞匹配項目(搜索引擎)---- 第九天this
小帥帥收到記錄Log的任務後,就安心去研究去了。。。搜索引擎
其實按照於老大的水平來講,看慣了開源框架,寫個普通的Logger是垂手可得,他爲何要小帥帥去作呢?spa
小帥帥當時其實也想不通,由於他沒有經歷過那個階段。調試
小帥帥的想法其實也挺簡單,就是完成於老大給的任務,成爲能夠勝任這項工做的好員工。code
小帥帥這個階段對需求不敏感,因此一接到任務他就去研究技術細節去了。 卻不知代碼已經寫好了。htm
小帥帥的初稿,就是嘗試用面向對象的思惟能力去寫這個記錄Log的任務, 初稿以下:
class Logger { public static function log($message){ $file = fopen('application.error.log', "a+"); fwrite($file, $message); fclose($file); } }
那麼TopClient的代碼以下:
class TopClient { ...... protected function logCommunicationError($apiName, $requestUrl, $errorCode, $responseTxt) { $localIp = isset($_SERVER["SERVER_ADDR"]) ? $_SERVER["SERVER_ADDR"] : "CLI"; $logData = "API_NAME:$apiName,APP_KEY:$this->appkey,CLIENT_IP:$localIp,SDK_VERSION:$this->sdkVersion,REQUEST_URL:$requestUrl,ERROR_CODE:$errorCode,ERROR_MSG:".str_replace("\n","",$responseTxt); Logger::log($logData); } ...... }
其實這是一個進步,小帥帥終於在慢慢轉變本身的思惟能力。
當小帥帥拿着這份代碼找到於老大時,於老大很高心,可是不是他想要的成果,因而於老大就對小帥帥說:
1. 若是你要記錄錯誤log,你指望怎麼去用,指望看到哪些信息。
2. 若是你要記錄警告log, 你指望怎麼去用,指望看到哪些信息。
3. 若是你要調試,想看看代碼的執行效率,你指望怎麼去用,指望看到哪些信息。
三個爲何把小帥帥給壓倒了,小帥帥一聽,有點氣喘不過來。
就這樣小帥帥去思索於老大說的話。
小帥帥有幸能聽懂其中含義的時候,所學的心法就更增強大,咱們期待小帥帥可以開竅。