设计模式
pstrunner
超越自我,没有做不到,只有想不到。
展开
-
设计模式简单说明
设计模式:一个设计模式描述了一个被证实可行的方案。这些方案非常普遍,是具有完整定义的最常用的模式。一般模式有4个基本要素:模式名称(pattern name)、问题(problem)、解决方案(solution)、效果(consequences)。 常见23种模式概述: 1) 抽象工厂模式(Abstract Factory):提供一个创建一系列相关或相互依赖对象的接口,而无需指定它原创 2009-06-26 11:06:00 · 725 阅读 · 0 评论 -
UML类图几种关系的总结
在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency) 1. 泛化(Generalization) 【泛化关系】:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特转载 2015-03-19 19:22:54 · 367 阅读 · 0 评论 -
代码重构实践之背景
从事代码重构已经很多年,特别是目前手头维护的几个软件,在开始接手时,面临着没有交接、代码基本没有注释、代码风格各种各样,接手该软件的人员也是已经换了2,3波了。总体来看,代码是没有开发经验的人员写的,虽然是用C++编写的代码,但是风格还是C风格。基本没有Class,更加没有面向对象的思想在具体代码中的应用。整个代码逻辑是面向过程的,99%都是结构体的数据结构。维护的人员,可能没有弄懂代码逻辑,...原创 2019-01-26 13:54:19 · 435 阅读 · 0 评论 -
代码重构实践之复用改造
怎样识别哪些地方需要重构代码?个人觉得应该有两个层次。第一个层次是直观感觉。例如当你看到很多相似的代码时,肯定是代码的复用没有做好,应该从加强代码复用;当你看到很多全局变量,应该是数据的隐蔽性没有做好,应该需要加强数据隐蔽性;当你看到没有使用类,而是结构体,应该需要加强类的使用频率,因为这样才会对于继承、数据保护、多态、设计模式等高阶的应用开发思想进行更大力度的重构。第二个层次是主观分析。...原创 2019-01-27 12:39:40 · 379 阅读 · 1 评论 -
代码重构实践之分层重要性
对于大型软件(有效代码量在10万以上)分层很重要。很多人也知道在软件开发中需要分层,但是因为每个人见识不同,差异很大。软件分层,到底依据什么进行分层最合适呢?根据业务逻辑?还是根据软件的功能点?还是根据对接外部的或者提供给外部的接口进行分层?其实这些都不是重点,我觉得最重要的是首先根据需求。如果一个软件离开了具体的需求,具体的应用场景,可能都是空谈,都是海市蜃楼。每种软件都会有其特定的应用场景...原创 2019-01-28 15:03:33 · 809 阅读 · 0 评论 -
Bug?!
作为程序员,遇到Bug是很稀松平常的:)Bug千奇百怪,分很多种,有平台相关的、有第三方工具相关的、有其它人开发的相关模块,当然也有自己的:)在遇到Bug时,不同的人解决办法也是千差万别的。有的人马上感觉很紧张,特别是在接收别人的代码进行维护时,出现了莫名其妙的错误,马上头大。当面临着时间压力时,更加慌不择路。经过几天的调查,例会上,也无法说明Bug的原因,此时人的心态就会发生变化。有的会...原创 2019-01-29 15:09:11 · 155 阅读 · 0 评论 -
Entity Framework优缺点及使用方法总结
Entity Framework是MS提供的一个ORM框架,它旨在为小型应用程序中数据层的快速开发提供便利。nuget上185W多的下载量,说明.Net开发人员还是比较喜欢用EF的。但是EF在提供了便利性的同时也有许多缺点,以下就是我认为不应该应用EF的场景:非SQL Server数据库且无该数据库的DataProvider 高性能要求。在进行一些复杂查询的情况下,EF的性能表现不太好,...转载 2019-05-14 10:35:09 · 3116 阅读 · 0 评论 -
Entity Framework 基础
一、什么是Entity Framework 微软官方提供的ORM工具,ORM让开发人员节省数据库访问的代码时间,将更多的时间放到业务逻辑层代码上。EF提供变更跟踪、唯一性约束、惰性加载、查询事物等。开发人员使用Linq语言,对数据库操作如同操作Object对象一样省事。 EF有三种使用场景,1. 从数据库生成Class,2.由实体类生成数据库表结构,3. 通过数据库可视化设计...转载 2019-05-14 10:51:14 · 2008 阅读 · 0 评论