美文网首页
TW学习总结(三)

TW学习总结(三)

作者: 小旎子_8327 | 来源:发表于2017-09-23 11:02 被阅读0次

    9月21日依旧是个充实的一天,上午程序猿老师让童鞋们限时完成三道代码。讲道理,当我完成第三道题时,我是还剩些时间的,于是乎,我沉浸在智商占领高地的喜悦之中无法自拔。然而,等袁老师来了,我才发现,我漏做了第一题,我诡异的手速于是就有了合情合理的解释,刹那间,我不禁老脸一红。

    由于是限时编程,命名规范就没那么在意了,代码也没有认真的去想怎么重构。袁老师给我们总结了一些code small,下午给我们讲了三层架构和mvc。下面呈上干货。

    Code review

    1、Test setup
    我们写的三个测试,都在new同一个对象,足足new了三次。显然,这违背了消除重复的原则。我们可以把创建对象的这段代码提取出来,放在测试运行之前,让三段测试共用一个对象,而不是每次new一个新的。

    2、移动方法到正确的类中
    有一个方法与其他两个方法功能有明显不同,但是他们都放在同一个类里,应该把他们分开存在对应的类中。

    3、类名是名词方法名是动词

    4、重构一次运行测试
    如果重构完了没跑测试,那怎么知道自己的这次重构对不对。万一代码挂了,自己的升职加薪走上人生巅峰之路又多了一块小小的绊脚石了。所以,这个强迫症要养起来。

    5、消除重复

    6、分离职责
    一坨代码不要写太多功能,如果有,它不好懂,也不好维护。请拆分它。

    7、去除不必要的临时变量

    补充:记得小步提交自己的代码

    三层架构和MVC

    三层架构

    解释
    UI(表现层):主要是指与用户交互的界面。用于接收用户输入的数据和显示处理后用户需要的数据。

    BLL:(业务逻辑层):UI层和DAL层之间的桥梁。实现业务逻辑。业务逻辑具体包含:验证、计算、业务规则等等。

    DAL:(数据访问层):与数据库打交道。对数据库进行增删改查操作。

    MVC

    解释
    Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。

    View(视图)是应用程序中处理数据显示的部分。
    通常视图是依据模型数据创建的。

    Controller(控制器)是应用程序中处理用户交互的部分。

    view将指令发送给controller,controller完成业务逻辑后,通知model改变状态,model再将数据传给view。这个模型属于单向通信。

    image.png
    区别

    MVC主要用于表现层,3层主要用于体系架构,3层一般是表现层、中间层、数据层,其中表现层又可以分成M、V、C,(ModelView Controller)模型-视图-控制器。

    MVC是表现层的架构,MVC的Model实际上是ViewModel,即供View进行展示的数据。ViewModel不包含业务逻辑,也不包含数据读取。

    相关文章

      网友评论

          本文标题:TW学习总结(三)

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