linux 和windows系统下同时可用的UML建模工具(umbrello),超强
摘要:原文地址:linux 和windows系统下同时可用的UML建模工具(umbrello),超强 作者:zhangjiakouzfOPEN SOURCE 的 UML建模工具 -- umbrello如果你的开发小组既有windows系统下的开发人员(比如客户端软件),又有linux或其他*nix系统下的...
阅读全文
posted @
2014-05-05 21:29
bitbit
阅读(1888)
推荐(0) 编辑
Rational Rose 2003 逆向工程转换C++源代码成UML类图
摘要:主要介绍用户如何使用Rose的逆向工程生成UML模型,并用来进行C++代码的结构分析。Rational Rose可以支持标准C++和Visual C++的模型到代码的转换以及逆向工程。下面将详细地说明这两种C++ project的逆向工程的步骤和具体操作。1 ANSI C++(标准C++)逆向工程(Reverse Engineer)使用标准C++逆向工程,需要在组件图(component view)中创建一个组件(component),设置好需要进行转换的组件的信息,也就是该组件的语言、所包含的文件、文件所在的路径、文件后缀等等信息,然后Reverse Engineer就可以根据给定的信息将代
阅读全文
posted @
2014-04-07 11:07
bitbit
阅读(349)
推荐(0) 编辑
MVC设计模式
摘要:MVC设计模式即MVC框架。MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑和数据显式分离的方法组织代码,将业务逻辑被聚集到一个部件里面,在界面和用户围绕数据的交互能被改进和个性化定制的同时而不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。外文名MVC框架全名Model View Controller产生时间1982年架构内容视图,模型,控制器类别软件构件模式目录1简介2MVC 编程模式3框架内容▪ 视图▪ 模
阅读全文
posted @
2014-04-06 09:35
bitbit
阅读(11742)
推荐(0) 编辑
软件系统架构师必修内容是什么?
摘要:对于任何一个软件开发人员来说,架构师都是一个令人向往的角色。就连世界首富比尔盖茨在2000年卸任公司CEO的同时,也担任了微软公司的荣誉角色“首席软件架构师”,可见“架构师”这一称谓的吸引力。架构师是公司的“金领”,有着非常高的收入,很少需要考虑生存的问题,从而有更多的精力思考关键技术问题,形成“强者愈强”的良性循环。部分优秀的开发人员在工作了一定时间后,就要开始考虑自己的未来到底向哪个方向发展。如果开发人员的沟通能力强过技术能力,在补充一定的项目管理知识后,可以向技术管理的方向转型。如果其对技术一直很感兴趣,而沟通能力也不弱,则可以试着进一步加强技术修养,以期向架构师的方向发展,最终“修成正
阅读全文
posted @
2014-04-06 09:21
bitbit
阅读(469)
推荐(0) 编辑
UML关系(泛化,实现,依赖,关联(聚合,组合))
摘要:UML的构造快包含3种:(1) 事物(4种):结构事物,行为事物,分组事物,注释事物(2) 关系(4种):泛化关系,实现关系,依赖关系,关联关系(3) 图(10种):用例图,类图,对象图,包图,组件图,部署图,状态图,活动图,序列图,协作图事物是对模型中最具代表性的成分的抽象;关系把事物结合在一起;图聚集了相关的事物。(2) 关系(4种)UML中类与类,类与接口,接口与接口这间的关系有:泛化(generalization)关系,关联(association)关系(关联,聚合,合成),依赖(dependency)关系,实现(realization)关系.泛化(generalization)关系是
阅读全文
posted @
2014-03-24 16:51
bitbit
阅读(527)
推荐(0) 编辑
模块化设计,面向接口开发。不断重构设计和代码,一个大幅提高开发效率的好方法:不断重构既有代码和设计,为复用准备。同时也是优化。
摘要:1 模块化设计,面向接口开发。把握设计原则。2 不断重构设计和代码,一个大幅提高开发效率的好方法:不断重构既有代码和设计,为复用准备。同时也是优化。
阅读全文
posted @
2014-02-26 16:41
bitbit
阅读(241)
推荐(0) 编辑
Rational Rose 2003 逆向工程转换C++源代码成UML类图
摘要:Rational Rose 2003 逆向工程转换C++源代码成UML类图1.ANSI C标准C逆向工程Reverse Engineer网上的关于从C++代码到UML类图生成过程的东西不少,找了个能用的,现在转下,以备不时之需。转来稍微调整了下内容,只关心使用。原出处http://siulyn.blog.163.com/blog/static/6245583620087252539344Rational Rose 2003逆向工程生成UML模型图这一节主要介绍用户如何使用Rose的逆向工程生成UML模型,并用来进行C++代码的结构分析。Rational Rose可以支持标准C++和Visual
阅读全文
posted @
2014-02-26 15:35
bitbit
阅读(693)
推荐(0) 编辑
再谈简单工厂模式,工厂方法模式,抽象工厂模式
摘要:简单工厂模式基本简介 从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。 实现方式(附图) 简单工厂模式的UML类图(见右图) 简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类(这些产品类继承自一个父类或接口)的实例。 该模式中包含的角色及其职责 工厂(Creator)角色 简单工厂模式的核心,它负责实现...
阅读全文
posted @
2012-11-21 10:55
bitbit
阅读(357)
推荐(0) 编辑
OO原则 - 面向对象的设计原则
摘要:封装变化多用组合,少用继承针对接口编程,不针对实现编程为交互对象之间的松耦合设计而努力类应该对扩展开放,对修改关闭依耐抽象,不要依耐具体类只和朋友交谈别找我,我会找你类应该只有一个改变的理由
阅读全文
posted @
2012-11-20 19:53
bitbit
阅读(307)
推荐(0) 编辑
不要写完代码就束之高阁,适当地优化代码结构,能够为以后的开发带来许多方便,这《重构:改善既有代码的设计》就向你介绍了这方面的技巧,说得非常详细。
摘要:“不要写完代码就束之高阁,适当地优化代码结构,能够为以后的开发带来许多方便,这《重构:改善既有代码的设计》就向你介绍了这方面的技巧,说得非常详细。” “程序几乎离不开重构,但如何更加迅速有效地重构却一直没有系统性的指导。《重构:改善既有代码的设计》就是这样的经典巨著,有了它,重构不再烦琐!”软件开发的不朽经典,生动阐述重构原理和具体做法,普通程序员进阶到编程高手必须修炼的秘笈。重构,一言以蔽之,就是在不改变外部行为的前提下,有条不紊地改善代码。多年前,正是《重构:改善既有代码的设计》原版的出版,使重构终于从编程高手们的小圈子走出,成为众多普通程序员日常开发工作中不可或缺的一部分。《重构:改善既
阅读全文
posted @
2012-11-20 14:35
bitbit
阅读(873)
推荐(0) 编辑
设计模式之实现---适配器模式
摘要:/*****************************************CSlot.h****************************************/#include using namespace std;//两相的插头基类class CTwoSlotsPlug{public:virtual void plugIn2Slots() = 0;};//一个实插头类:红色的二相插头class CRed2SlotsPlug : public CTwoSlotsPlug{public:void plugIn2Slots(){coutplugIn2Slots();}};//
阅读全文
posted @
2012-11-06 11:19
bitbit
阅读(309)
推荐(0) 编辑
设计模式之实现---模版方法模式
摘要:/*****************************************baseobject.h******************************************//*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@我这里写一个非常实用的例子,是我的一个项目的对象基类构造函数的超级简化版本.这个对象的基类构造函数会调用一个initailize函数来初始化一个对象.该initailize中有很多步骤,每一个都由其子类来决定如何初始化@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
阅读全文
posted @
2012-11-06 11:06
bitbit
阅读(250)
推荐(0) 编辑
设计模式之实现---单件模式
摘要:/*************************************CSingleton.h**************************************/#pragma once#include #include using namespace std;class CSingleton{private:CSingleton(){coutusing namespace std;class testSingleton{public:testSingleton(){CSingleton::getSingleton();cout#include "CSingleton
阅读全文
posted @
2012-11-06 11:02
bitbit
阅读(181)
推荐(0) 编辑
设计模式之实现迭代器模式
摘要:/***********************************baseobject.h***********************************/#pragma once#include #include #include #include "CIterator.h"#define MAX_ARRAY_SIZE 100using namespace std;//前置定义class CIteratorInterface;class CElectricIterator;////////////////////////////////////////////
阅读全文
posted @
2012-11-06 10:58
bitbit
阅读(302)
推荐(0) 编辑
设计模式之实现---状态模式
摘要:/************************************************************CStatePattern.h************************************************************/#pragma once#include using namespace std;class CState;class CSoldState;class CSoldOutState;class CNoQuarterState;class CHasQuarterState;//游戏机class CGumballMachine{
阅读全文
posted @
2012-11-06 10:52
bitbit
阅读(247)
推荐(0) 编辑
设计模式之实现---策略模式
摘要:/****************************************************************CCharactor.h****************************************************************/#pragma once#include "CWeapon.h"////////////////////////////////////////////////////////这是人物类的纯虚基类class CCharactor{protected://多用组合,少用继承。 //这里使用策略模式
阅读全文
posted @
2012-11-06 10:43
bitbit
阅读(246)
推荐(0) 编辑
设计模式之实现---命令模式
摘要:/**********************************************************************CCommand.h**********************************************************************/#pragma once#include "Objects.h"#include using namespace std;//命令对象类的基类class CCommand{public:virtual void execute() = 0;};//空命令对象,什么都不做。只实
阅读全文
posted @
2012-11-06 10:40
bitbit
阅读(275)
推荐(0) 编辑
设计模式之实现---装饰者模式
摘要:/*****************************************************component.h****************************************************/#pragma once#include #include using namespace std;///////////////////////////////组件类的基类//1. 所有组件全都派生自这个组件//2. 装饰都类的纯虚基类也派生自这个组件class CBaverage{protected:string m_description;float m_
阅读全文
posted @
2012-11-06 10:36
bitbit
阅读(292)
推荐(0) 编辑
设计模式之实现---组合模式
摘要:/******************************************************baseobject.h******************************************************/#pragma once#include #include #include #include "CIterator.h"#define MAX_ARRAY_SIZE 100using namespace std;//前置定义class CIteratorInterface;class CElectricIterator;//////
阅读全文
posted @
2012-11-06 10:30
bitbit
阅读(461)
推荐(0) 编辑
设计模式之实现---外观模式
摘要:有些时候,我们需要把一大堆复杂的接口简化后呈现给用户。/****************************************************CEquipments.h****************************************************//*电视、空调、电脑、DVD机、音箱等设备*/#pragma once#include using namespace std;class CTV{public:void start(){coutstart(); m_Aircondition->start(); m_pc->start(); m
阅读全文
posted @
2012-11-06 10:23
bitbit
阅读(322)
推荐(0) 编辑