• 唐二毛
    2019-12-30
    我有个疑惑,面试给出这样简单的答案,恐怕是过不了关吧? 希望老师爆点真正的干货出来!
     3
     5
  • Zend
    2019-12-30
    什么是框架
    框架式对某一类架构方案可复用设计与实现
    Tomcat是框架,它完成了Web应用请求响应的主体流程。
    框架应用满足依赖倒置原则

    Web容器中的设计模式
    1.策略模式
    策略接口:J2EE规范定义的Servlet接口
    策略实现:我们看开发的Servlet具体类
    Client程序:Tomcat
    2.模板方法模式
    2.1 父类中抽象方法定义计算的骨架和过程,抽象方法的实现留在子类。
    2.2 HttpServlet extends GenericServlet implements Servlert
    2.3 HttpServlet中的service方法 针对不同的HTTP请求类型调用相应的方法,
    service方法就是一个模板方法。

    JUnit中的设计模式
    1.模板方法模式 测试用例的方法执行顺序固定在模板方法TestCase.runBare
    2.测试套件TestSuite 采用组合模式
    2.1 TestSuite.addTest(TestCase test)
    2.1 TestSuite.addTest(TestSuite test)
    展开
    
     3
  • Paul Shan
    2020-01-06
    框架和工具:应用框架是在做完形填空,应用工具是在做选择填空题。框架把问题已经简化了,把大部分都填上了,只留有一些无法预填写的的地方以接口或者类的形式暴露出来,让开发者填上。工具提供了具体函数,让开发者调用,工具的自由度体现在函数参数上。C语言写的hello world程序,使用main函数是应用框架,这个由系统调用,打印hello world,则是应用工具,具体就是输出函数和参数。
    框架和工具主要是应用场景不同,一般而言,工具相对点,能解决问题,调用方便的工具就是好工具。框架要考虑方方面面,一方面要有足够的自由度,这样的框架功能才强大,框架还要简单易用,这样才体现框架的价值,这两项推到极致一定会矛盾,到时候如何取舍确是一个难题。
    
     1
  • 美美
    2020-01-03
    service里方法不停的if/else 不违反 开闭原则?

    作者回复: 好问题,显然是违反开闭原则的。但是这里如果用策略模式消除这些if else,可能会导致开发者需要继承不同的类处理不同的HTTP请求,提高开发者的学习和使用成本。

    是否要遵循原则,要看具体场景进行权衡。HTTP协议中的请求方法诞生以来都没有被修改过,所以写死也是一个办法。

     1
     1
  • Keep-Moving
    2019-12-30
    不写代码的架构师不是好司机
    
     1
我们在线,来聊聊吧