zoukankan      html  css  js  c++  java
  • 手把手教你做关键词匹配项目(搜索引擎)---- 第十一天

    第十一天

    起点:

    1. 手把手教你做关键词匹配项目(搜索引擎)---- 第一天

    回顾:

    10. 手把手教你做关键词匹配项目(搜索引擎)---- 第十天

    话说又到周末了,小帅帅又得写总结报告了,小帅帅有点不太喜欢做总结,他觉得写代码都比写总结好。

    但是是于老大安排的任务,他不得不去完成它。

    1. 面向对象编程思维能力的培养

    2. TopClient的使用与重构

    3. ExtendedCurl深度使用

    4. Logger的创建与应用

    小帅帅一写到这儿,于老大问的三个问题,至今还在想,就算他把代码写出来了,他还是想不通为啥于老大会未卜先知。

    小帅帅的代码如下:

    <?php
    define('DEBUG',true);
    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." ".$level." ".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取到的宝贝标题以及宝贝属性,匹配出适合该宝贝的关键词.

    初期考虑以下因素:

    适合人群的匹配 :男装 (匹配出来的关键词不能有女)  女装(匹配出来的关键词不能有男) 情侣装(男女适用)  童装(?)

  • 相关阅读:
    Knockoutjs 实践入门 (2) 绑定事件
    HTTP If-Modified-Since引发的浏览器缓存汇总
    net.sf.json和 com.fasterxml.jackson中对象转json的区别
    JPA EntityManager详解
    Spring JPA中OneToOne和OneToMany用法
    Spring Data JPA中CrudRepository与JpaRepository的不同
    Git提交撤销
    Tomcat启动报StackOverflowError
    Git分支合并冲突解决(续)
    Git分支合并冲突解决
  • 原文地址:https://www.cnblogs.com/oshine/p/3914198.html
Copyright © 2011-2022 走看看