美文网首页
设计模式开篇

设计模式开篇

作者: 探索的影子 | 来源:发表于2019-01-19 10:46 被阅读0次

学过了java se,学过了java ee也学过了各种框架。在我们学的时候,很多时候我们都会听到设计模式这么一个概念。当然我们也只是了解听说而已。在自己的实际开发之中,还是会遇到很多设计问题,这是因为我们没有经验复用。实际上这些设计的问题,前人已经总结好了经验来等待我们的学习,它的名字叫设计模式.


这里我们使用一个简单的例子e-r图来源

1366340302_5774.jpg

用软件工程的思想和流程来指导我们开发的时候,我们经历了需求分析,概要设计,详细设计(简略的说)。但是在我们详细设计的时候,很多时候都是根据数据库的表来对应实体类,利用三层架构来创建我们的dao层,service层,以及controller层。但是后来我发现仅仅如此是不够的,虽然这样的架构能够解决我们很多简单的业务逻辑,但是比如说如果前端需要的数据如果来源于多个表,我们的返回类型就限制住了我们的功能实现,这时候我们就需要去修改我们的类型,重新设计我们的类。‘

在这里我们举一实际的例子。
最开始我们使用mybatis的时候,我们使用生成工具能够迅速的生成mapper层也就是我们的持久层。最开始的时候,它十分的好用增删改查单表十分方便。但是我们开始稍微复杂的逻辑的时候,比如我们需要查询某个同学的完整信息(包括个人信息、所属班级、选择的课程以及该课程对应的老师)我们的学生类,班级类,课程类以及老师类都不能够独立的完成这个功能,那么想想我们应该怎么做呢?
1.继承
我们可以创建一个新的类,继承。当然这个方法肯定是不行的。不符合我们oo的设计,班级和学生怎么可能是继承关系嘛~~。当然在有些时候继承确实可以,但是因为继承之后,就破坏了封装。所以我们能少用继承就不要用继承。

2.组合
我们可以创建一个新的类叫做StudentForm,在这个类里面包括了四个成员变量,分别是班级、学生、课程和教师。这样的话,我们在没有改变原来的代码的基础之上,我们扩展出了新的类,方便我们功能的实现。

当然上面说不上什么设计模式,如果说算的话,算策略模式?初学不能肯定归属哪一类。但是可以肯定的是符合设计模式里面的一个原则
少用继承,多用组合
我们肯定都是听过的,但是我们从来就没有真正的去理解。唯有在真正的设计之中运用到了,才能够体会到其中的精妙之处。
后面我会一天或者两天更新一个设计模式,啦啦~~~
让我们一起学习设计模式吧

相关文章

  • 2018-01-07

    大话设计模式——开篇 1、什么是设计模式? 设计模式(Design Pattern)...

  • 设计模式开篇

    设计模式与原则 设计模式原则是为了提高代码的可维护性,可复用性和可扩展性,设计模式是设计模式原则的具体体现。 设计...

  • 设计模式-开篇

    设计模式-开篇 独学而无友,则孤陋而寡闻。——《礼记·学记》 写在开篇,本篇是一个综合帖,里面可能会记录一些我的学...

  • 设计模式开篇

    目录 为什么要写设计模式系列 学设计模式之前,必学 UML 设计模式概览 创建型模式(Creational Pat...

  • 设计模式开篇

    设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。所学知识是从网络上学习总结、设计到自...

  • 设计模式开篇

    本来是打算撸一段时间源码的,奈何最近比较忙碌,恰巧参与了公司设计模式和算法的考试出题和讲课。准备先总结一遍设计模式...

  • 设计模式开篇

    设计模6大原则 单一原则 接口隔离原则 里氏替换原则 (子类可以扩展父类功能,但是不要改变父类) 依赖倒置(关联关...

  • 【设计模式】-- 开篇

    下面的话我是从“极客时间” 王争老师那里看到的: 1 即便是非常简单的需求,不同水平的人写出来的代码,差别可能会很...

  • 设计模式开篇

    学过了java se,学过了java ee也学过了各种框架。在我们学的时候,很多时候我们都会听到设计模式这么一个概...

  • 设计模式开篇

    什么是模式 字面理解,模,就是模型、模板;式,就是方式、方法。综合起来就是:可以作为模型或模板的方式或方法。 设计...

网友评论

      本文标题:设计模式开篇

      本文链接:https://www.haomeiwen.com/subject/pzuadqtx.html