Welcome 微信登录

首页 / 软件开发 / 数据结构与算法

项目总结(一) 项目的七宗罪

项目总结(一) 项目的七宗罪

项目总结(一) 项目的七宗罪2016-02-02大半夜来这一份总结,心中夹杂着各种各样的心情,酸甜苦辣都有,今天为止,整个项目终于完结了,对于这样一个本可以正而八经吃吃薯片,看看毛片就可以完成项目,最后演变成一个一月之内连续加班105个小时的项目,有自己经验的不足,也有能力不足,写下这样的一份总结,让自己沉下心来反思在一下自己的足与不足,也希望大家可以借鉴和探讨 。一,项目背景:我一年工作经验小菜鸟,同事四年工作经验,入驻客户办公室三个月开发周期........
项目总结(二) 常用的工具浅谈

项目总结(二) 常用的工具浅谈

项目总结(二) 常用的工具浅谈2016-02-02程序员是否应该沉迷于一个编程的世界,为了磨砺自己的编程技能而两耳不闻窗外事,一心只为写代码;还是说要做到各有涉猎,全而不精。关于这点每个人心中都有一套自己的工作体系和方法体系。我一直认为,程序员你首先要摘掉自己给自己带的“程序员”的帽子,以一种”求知者“的身份不停的去学习一些新的东西,不停的去接触一些新的事物,这样,才可以获得成长与技能上的提高,而不是一心埋头...
浅谈现代企业中性能分析的反模式

浅谈现代企业中性能分析的反模式

浅谈现代企业中性能分析的反模式2016-02-02 infoq 译:胡海生什么是性能分析“性能分析”一词有许多种定义,但在我看来最有用的一个是:一种由测量驱动的方法,用以了解一个应用程序在负载下的行为。这个定义的好处是,它提醒您注意测量是整个过程的关键点。并通过简单的延伸,也提醒您统计和数据分析可能是性能工程师的重要工具。进一步讲,它使我们更相信应把性能分析看作是一项基础的实证研究活动,是它把输入和输出粘合在一起组成实验科学。这样,...
AX ERP:一个真正的自动批处理

AX ERP:一个真正的自动批处理

AX ERP:一个真正的自动批处理2016-02-04AX real batch job- AX ERP 真正的批处理在AX3标准功能中,自动化任务是利用Batch来进行自动化处理任务,标准功能的局限是无法真正做到无人值守。比如服务器重启,必须手动去开一个Client,然后手动去执行Batch Job。 如何可以真正做到自动化,就需要利用到AX的本身机制和windows的服务机制,也就是说需要2方面的设置。AX的配置启动主要利用AX的客户端配置工具,使用s...
通过一组RESTful API暴露CQRS系统功能

通过一组RESTful API暴露CQRS系统功能

通过一组RESTful API暴露CQRS系统功能2016-02-04 infoq 译:邵思华命令和查询责任分离(CQRS)是由Greg Young提出的一种将系统的读(查询)、写(命令)操作分离为两种独立子系统的架构模式。命令通常是异步执行的,并存储在一个事务型数据库中,而读操作则通常是最终一致的,并且数据来自于解正规化的视图。本文在此提出并为读者展示一种为CQRS系统创建一套RESTful API的方式。这种方式结合了HTTP的语义、REST API基...
持续集成windows下jenkins的常见问题

持续集成windows下jenkins的常见问题

持续集成windows下jenkins的常见问题2016-02-04所谓主从,主要应用的场景例如多种环境(windows/linux,.net/java/php)需要不同的构建基础,而我们又不想都将一系列的步骤和环境混杂在一台构建服务器上,所以类似于go中的代理,jenkins也提供了slave节点的概念,大家可以把不同类别的项目的构建部署在分类的节点服务器上。节点服务器不需要安装完整的jenkins包,构建事件的分发由master端来执行。这里需要注意的...
UML学习:用例图

UML学习:用例图

UML学习:用例图2016-02-04龙是中国古代的神兽之首,传说龙有九个孩子,他们有着各自独有的性情,各司其职,造福百姓。一如我们的UML一样,她的九个孩子也有着各自独特的本领,首先,今天我们一起来学习一下,用例图--九个孩子中的核心,她的主要功能就是用来描述用户的需求,从用户的角度描述系统的功能,指出各个功能的执行者。除此之外,系统、子系统、系统行为之间的可视化表示也是通过用例图进行展示,这样更加便于我们理解这些元素的作用。从我们前面学习软件工程,编写...
传统设计模式(一)策略模式

传统设计模式(一)策略模式

传统设计模式(一)策略模式2016-02-06 未知 虫子以前在一家电商公司 会员的模块在这里分类很明确不同的会员所具有的权限和行为不同,大多程序员会使用标准的oo技术,设计一个会员超类SuperUser,并让各种商家会员继承此超类到这里无可厚非,但是在下面个过程中你可以就慢慢体会策略模式与你在代码里不停写逻辑判断所带来的区别有多大所有的会员都具有下列行为购物,评价,发布商品public abstract class SuperUser{public Su...
传统设计模式(三)装饰者模式

传统设计模式(三)装饰者模式

传统设计模式(三)装饰者模式2016-02-09说到这个模式的项目实例 虫子也满头疼的 所谓装饰者模式说白了动态将职责附加到对象上。如果你在项目某个场景中需要功能扩展根据基类衍生出非常多的子类,那么装饰者模式无疑是很好的。不过其实在实际的项目中,往往大家不直接衍生子类,而是通过组合的方式,根据逻辑讲各种扩展叠加来,对外公布的只是一个标签一个壳而已。所以这个章节,虫子就虚构一个实例了。还拿电商来说、点券赠品系统。背景:1.所有点券、优惠券、赠品券、积分继承同...
传统设计模式(四)工厂模式(简单工厂、普通工厂、抽象工厂)

传统设计模式(四)工厂模式(简单工厂、普通工厂、抽象工厂)

传统设计模式(四)工厂模式(简单工厂、普通工厂、抽象工厂)2016-02-09关于工厂模式和单例模式 大部分项目这2种模式都很常见例如在orm框架中 工厂模式常用来封装数据库的创建 我们分3种case来看 简单工厂模式 普通工厂模式 抽象工厂模式抽象一点的说 工厂模式提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。直接看实例一般惯性思维 我们遇到分支判断时会这样public class NormalCase{private DBInst...
传统设计模式(六)命令模式

传统设计模式(六)命令模式

传统设计模式(六)命令模式2016-02-11命令模式将请求封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象。命令模式也支持可撤销的操作。用户程序在使用的时候,只与该命令对象打交道,而不用与一类对象打交道,降低了耦合性,提高了程序设计的灵活性。我们还是那数据库操作为例public class DBInstance{public void ExecuteNonQuery(){}public void ExecuteDataset(){} }pub...
传统设计模式(七)适配器模式(附外观模式)

传统设计模式(七)适配器模式(附外观模式)

传统设计模式(七)适配器模式(附外观模式)2016-02-11记得以前章节谈过的装饰者模式,我们将对象包装起来,赋予他们新的职责。而现在则是以不同目的,包装某些对象:让他们的接口看起来不像自己而像是别的东西。这样就可以在设计中,将类的接口转换成想要的接口,以便实现不同的接口。在项目中,适配器模式一般扮演者协调者的作用。1.客户通过目标接口调用适配器的方法对适配器发出请求2.适配器使用被适配者接口把请求转换成被适配者的一个或多个调用接口3.客户接受到调用的结...
传统设计模式(八)模板方法模式

传统设计模式(八)模板方法模式

传统设计模式(八)模板方法模式2016-02-11模板方法定义了一个算法的步骤,并允许子类为一个或多个步骤提供实现。普通的设计算法由实现类直接控制,在很多功能类似的对象中存在重复。并且由于类的组织方式不具有弹性,所以往往新加入新的相似模块时需要作大量冗余的步骤。我们还是那电商的订单提交来说事 ~ ~/// <summary>/// 模板类/// </summary>public abstract class OrderSubmit{...
传统设计模式(九)迭代器模式

传统设计模式(九)迭代器模式

传统设计模式(九)迭代器模式2016-02-11关于迭代器模式,我们所需要知道的第一件事情就是它依赖于一个名为迭代器的接口。一旦我们有了这个接口,就可以为各种那个对象集合实现迭代器:数组、列表、散列表。项目实例我们就拿用户角色模块来举例背景1.某用户作为应用管理员获取一组关于管理角色的arraylist权限组2.该用户作为应用开发者获取一组关于开发角色的数组形式的权限组.../// <summary>/// 迭代器接口/// </summ...
传统设计模式(十)状态模式

传统设计模式(十)状态模式

传统设计模式(十)状态模式2016-02-13谈到状态模式我们在这里所谈论的是一个通用的技巧:如何对对象内的状态建模----通过创建一个实例变量来持有状态值,并在方法内书写条件代码来处理不同状态。我们要把一个状态的所有行为放在一个类中。这么一来我们将行为局部化了,并使得事情更容易改变和理解。虫子还是拿订单系统来说事了/// <summary>/// 状态接口/// </summary>public interface SimpleS...
传统设计模式(十一)代理模式

传统设计模式(十一)代理模式

传统设计模式(十一)代理模式2016-02-13所谓的代理,就是代表某个真实的对象。在这个设计模式中,代理可以假装自己是远程对象,但其实只是一个中间角色。客户对象所作的就像是在做远程方法调用,但其实只是调用本地资源中得“代理”对象上得方法,再由代理处理所有网络通信的底层细节。其实其实项目实例神马的 根本就没必要了 看一下Web Service的调用方式大家也许就明白了,它会在客户端生成一个代理类 - - 已经很完美的诠释了代理模式这...
UML类图学习

UML类图学习

UML类图学习2016-02-13类图,英文明曰:Class diagram,那么类是经过怎样神奇的蜕变,变成了类图呢?大家都知道,类是具有相似结构、行为和关系的一组对象的描述符,类是面向对象系统中最重要的构造块,类图显示了一组类、接口、协作以及他们之间的关系。在UML中问题域最终要被逐步转化,通过类来建模,通过编程语言构件这些类从而实现系统,类加上他们之间的关系就构成了类图,类图中还可以包括接口、包等元素,也可以包含对象等实例。现在我们一起来学习一下类图...
UML包图学习

UML包图学习

UML包图学习2016-02-13包图是UML中用类似于文件夹的符号表示的模型元素的组合,系统中的每个元素都只能为一个包所有,一个包可嵌套在另一个包中,使用包图可将相关元素归入一个系统,一个包中包含附属包、图表或单个元素。简单的来说,我们可以直接将包理解为命名空间,文件夹,是用来组织图形的封装,包图可以用来表述功能组命名空间的组织层次那么为什么会出现“包”这个概念呢?我们知道,在面向对象软件开发的视角中,类显然是构件整个系统的基本构...
<< 171 172 173 174 175 176 177 178 179 180 >>