- 博客(50)
- 资源 (24)
- 收藏
- 关注
原创 在开发过程中如何运用UML 整理
若转载请注明出处,谢谢,链接地址:http://write.blog.csdn.net/postedit/8542968下面是我根据项目开发过程中,项目进行的一种GRAPPLE思想总结。请注意系统分析员是怎么将项目拆分成若干模块的。(我下面也会将所有参与到的角色特别标注出来。)1、系统分析员分析项目需求,将项目拆分成若干模块,并对每个模块书写模块说明书。2、程序员按照模块说明书的描
2013-01-25 17:25:13 2903
转载 架构师的职责都有哪些?
架构师这个角色在任何软件开发项目中都是最有挑战性的。1. 架构师的领导与决策能力首先,架构师是一位技术领导,这意味着架构师除了拥有专门的技能外,还必须拥有领导能力,领导能力也要能体现在组织中的职位上。从职位上来讲,架构师是项目中的技术领导,应该拥有进行技术决策的权威。不过,很多时候架构师和项目经理的职责很容易让人混淆,下面用电影行业的职位来打一个比方,帮助大家了解他们的不同:项
2013-01-25 11:07:17 934
转载 系统设计类面试题
1. 设计文件系统 2. 数据结构for spreadsheet 3. 一个app需要用cache,怎么实现thread safe 4. social network, billions id, every id has about 100 friends roughly, what ismax connections between any t
2013-01-25 11:06:13 4135 1
转载 可遇见框架技术之面试问题
本人虽然出来咋道不久,不过也可以写写自己的心得,在这里只谈软件有关的,因为软件工作室技术工作,不管是面试形式上,还是其他的都是有区别的,面试切忌:如果是刚毕业的,切忌大而全,谈吐自然。应届生,在面试官的眼中是觉得没什么技术的,但是并不是所有面试官都这么认为的,因为公司招人还是要招有点技术的,有点工作经验的,所以应届生有个比较麻烦的砍,就是工作经验,但是针对这一问题不是没的解决的办法,所以很多毕
2013-01-25 11:02:29 1278
转载 什么是非侵入式设计?
一个客户端的代码可能包含框架功能和客户端自己的功能。 侵入式设计,就是设计者将框架功能“推”给客户端,而非侵入式设计,则是设计者将客户端的功能“拿”到框架中用。 侵入式设计有时候表现为客户端需要继承框架中的类,而非侵入式设计则表现为客户端实现框架提供的接口。 侵入式设计带来的最大缺陷是,当你决定重构你的代码时,发现之前写过的代码只能扔掉。而非侵入式设计则不然,之前写过的代码
2013-01-25 11:00:54 2643
转载 软件系统的架构(ArchitECture)有两个要素是什么?
答:1) 它是一个软件系统从整体到部分的最高层次的划分。一个系统通常是由元件组成的,而这些元件如何形成、相互之间如何发生作用,则是关于这个系统本身结构的重要信息。详细地说,就是要包括架构元件(Architecture Component)、联结器(Connector)、任务流(TASk-flow)。所谓架构元素,也就是组成系统的核心”砖瓦”,而联结器则描述这些元件之间通讯的路径、通讯的
2013-01-25 10:59:06 1962
原创 什么是构架设计图 ?有哪些组成?
构架视图的图形描述称为构架设计图。对于以上描述的各种视图,设计图由以下统一建模语言图组成 [UML99]:逻辑视图:类图、状态机和对象图。进程视图:类图与对象图(包括任务 – 进程与线程)。实施视图:构件图。部署视图:部署图(在开过程的早期,要识别协作系统,即开发组要找出新建的系统要依赖哪些老系统,哪些老系统要依赖新建的系统。这个动作备受系统工程师关注,因为他要为准备新建的系统
2013-01-25 10:57:08 1405
转载 介绍一下海量数据的处理方法
1.Bloom filter 适用范围:可以用来实现数据字典,进行数据的判重,或者集合求交集 基本原理及要点:对 于原理来说很简单,位数组+k个独立hash函数。将hash函数对应的值的位数组置1,查找时如果发现所有hash函数对应位都是1说明存在,很明显这 个过程并不保证查找的结果是100%正确的。同时也不支持删除一个已经插入的关键字,因为该关键字对应的位会牵动到其他的关键字。所
2013-01-25 10:53:07 674
转载 软件架构师需要掌握哪些知识?
架构师首先必须具有丰富的开发经验,是个技术主管。因为他必须清楚什么是可以实现的,实现的方式有哪些,相应的难度怎么样,实现出来的系统面对需求变化的适应性等一系列指标。另外,需要对面向过程、面向对象、面向服务等设计理念有深刻的理解,可以快速的察觉出实现中的问题并提出相应的改进(重构)方案(也就是通常说的反模式)。这些都需要长期的开发实践才能真正的体会到,单从书本上很难领会到,就算当时理解了也不一定能融
2013-01-25 10:50:12 2066
转载 如何进行软件系统架构设计?
基于体系架构的软件设计模型把软件过程划分为体系架构需求、设计、文档化、复审、实现和演化6个子过程,现逐一简要概述如下。1、体系架构需求。即将用户对软件系统功能、性能、界面、设计约束等方面的期望(即“需求”)进行获取、分析、加工,并将每一个需求项目抽象定义为构件(类的集合)。2、体系架构设计。即采用迭代的方法首先选择一个合适的软件体系架构风格(如C/S、B/S、N层、管道过滤器风格、
2013-01-25 10:49:00 2330
转载 架构的目标是什么
要达到如下的目标:•可靠性(Reliable)。软件系统对于用户的商业经营和管理来说极为重要,因此软件系统必须非常可靠。•安全行(Secure)。软件系统所承担的交易的商业价值极高,系统的安全性非常重要。ccbdb62ec9©应届生求职网YingJieSheng.COM©1cf9f0fcd1•可扩展性(SCAlable)。软件必须能够在用户的使用率、用户的数目增加很快的情况下,保持合理
2013-01-25 10:48:25 1330
转载 工厂模式,简单工厂模式,抽象工厂模式三者有什么区别
工厂模式,也叫做说虚构造器,在简单工厂中间插入了一个具体产品工厂,这个工厂知道产品构造时候的具体细节,而简单工厂模式的产品具体构造细节是在一个个if/else分支,或者在switch/case分支里面的。工厂模式的好处就在于将工厂和产品之间的耦合降低,将具体产品的构造过程放在了具体工厂类里面。在以后扩展产品的时候方便很多,只需要添加一个工厂类,一个产品类,就能方便的添加产品,而不需要修改原有的代码
2013-01-25 10:47:35 900 1
转载 系统分析员到底做什么?
时下,系统架构师成了时髦的词语?每个菜鸟门都在幻想有一天能坐上这个位置。为什么需要架构师我就不多说了,大家都知道要开发一个正规软件,必须要有一个稳固的框架,就像盖楼房必须要有坚固的地基与框架,否则就容易成为豆腐渣工程。软件行业,也经常出现豆腐渣工程,临时几个程序员一折腾,你写一个模块我写一个模块,然后,咱们几个模块连在一起就是一个系统,交给客户拿钱了事。这等于打一枪换一个地方的做法,对于游击队可以
2013-01-25 10:36:05 1374
转载 系统分析员、系统架构师、项目经理的区别
上周从开发部转来一个刚毕业的小伙子,要我面试一下看看是否适合质量部的相关工作。交谈中,小伙子说大学里已经考过了系统分析员,于是我便问他:“系统分析员主要做什么?” 小伙子想了一会说道:“系统分析员主要就是组织、管理和规划系统”。于是我接着问道:“如果负责组织、管理、规划的话,那和项目经理的区别是什么?”小伙子想了半天,终于摇着头说:“不知道。”问这个问题倒不是为了为难小伙子,主要是希望他能够明白,
2013-01-25 10:34:13 1166
转载 究竟什么是GitHub
GitHub Control 即 版本库控制 GitHub发布了Windows版图形Git客户端GitHub 使用 git 分布式版本控制系统,而 git 最初是 Linus Torvalds 为帮助 Linux 开发而创造的,它针对的是 Linux 平台,因此 git 和 Windows 从来不是最好的朋友,因为它一点也不像 Linux。现在,GitHub 发布了GitHub for
2013-01-17 18:25:41 936
转载 使用git管理github项目
中文教程http://progit.org/book/zh/ Git是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理。在推出后,Git在其它项目中也取得了很大成功,尤其是在Ruby社区中。目前,包括Rubinius和Merb在内的很多知名项目都使用了Git。Git同样可以被诸如Capistrano和Vlad the Deploye
2013-01-17 18:21:20 2350
转载 Git/Github使用方法小记
今天把人间网的桌面客户端renjian-deck正式开源了,之前对javascript的了解其实非常的不够的,所以这一次的代码写的也是乱七八糟重用性及其低下,虽然我无数次的想把代码重新整理一下,不过还是糊里糊涂一时冲动的在他们还是乱七八糟的时候开源了。因为之前是基于github上的一个开源项目,所以硬着头皮也放到github上,虽然没有使用的经验,不过磨机磨机还是搞定了。以下是具体步骤,就当是
2013-01-17 18:20:18 610
转载 Git与Github的使用(ubuntu)
Git的简介Git是2005年Linus Torvalds 为了帮助管理 Linux(R) 内核开发而开发的一个开放源码的版本控制软件,正如所提供的文档中说的一样,”Git 是一个快速、可扩展的分布式版本控制系统,它具有极为丰富的命令集,对内部系统提供了高级操作和完全访问。”Git的安装与配置安装Gitubuntu 10.04源里有Git,直接用yum,apt-get安装即可。安装
2013-01-17 18:19:32 1477
转载 git/github 使用
1. git 版本控制系统相比CVS\SVN优势:- 支持离线开发,离线Repository- 强大的分支功能,适合多个独立开发者协作- 速度块ps:关于git的更详细的介绍于优点在此就不介绍了,教大家怎么用是关键。:)==============运行环境========系统:windowsgit : Git-1.7.3.1-preview20101002.rar
2013-01-17 18:18:42 590
转载 Git和Github初次使用
1. GIT相比CVS/SVN,Git 的优势:- 支持离线开发,离线Repository- 强大的分支功能,适合多个独立开发者协作- 速度块中文版Git使用指南 点击这里。2. GitHubGitHub是一个托管Git (开源或闭源)项目的网站,闭源收费,最低7$/月起,免费的300G空间。价格表如下: 使用GitHub步骤:1、申请GitHub帐户 xx
2013-01-17 18:16:27 2193 1
转载 一个成功的Git分支模型
能力所限,本文的翻译多处都很不地道,如果哪些地方难于理解,还烦请查看原文。—— Dbzhang800 20110921在本文中,我向大家介绍的是在大约一年前我为自己的项目(包括工作和私人项目)引入的且已被证实非常成功的一个开发模型(development model)。这段时间我一直想写点关于它的东西,但在此之前,我却从未能抽出充足的时间来完成这件事。我不会谈论项目的任何细节,只涉及分
2013-01-17 18:15:25 428
转载 git使用总结
Git 介绍最近的小项目想使用git来管理,应为git可以不需要服务器而在任意的Linux机器上管理代码,相对svn和cvs还是有它的优势的,所以我选用了git来管理我的小项目,以后在提供svn的管理。 在使用了一段时间后想写一点总结,可能也是和网络上其其它的git的文章差不多。但是作为我的使用总结还是很有必要的。git安lixnus的解释是--The stupid content tra
2013-01-17 18:13:19 431
转载 git使用说明
GitHub,git,SVN和tortoisesvn介绍git和svn,既是版本管理系统,也可以看作客户端的名称。github是托管平台,可以在上面建立你的git仓库。tortoisesvn是svn的客户端。 Linus为Linux Kernel Project发起的版本控制项目。 HEAD代表当前最新状态。 tag为某个状态的标签。 SHA1为每个提交日志的唯一标识。 i
2013-01-17 18:12:07 446
转载 游戏引擎 简介
游戏引擎是指一些已编写好的可编辑电脑游戏系统或者一些交互式实时图像应用程序的核心组件。这些系统为游戏设计者提供各种编写游戏所需的各种工具,其目的在于让游戏设计者能容易和快速地做出游戏程式而不用由零开始。大部分游戏引擎都支持多种操作平台,如Linux、Mac OS X、微软Windows。游戏引擎包含以下系统:渲染引擎(即“渲染器”,含二维图像引擎和三维图像引擎)、物理引擎、碰撞检测系统、音
2013-01-16 17:24:37 1831
转载 3DGS游戏引擎介绍和脚本教程
注:此教程系列在3DGS的中文官网www.xuduo.cn上已有翻译,不过进度较慢,因此我自己把它翻译出来了,估计比中文网上的要快一些吧^_^这里讲的是C-Script,而www.xuduo.cn上的是Lite-C,不过仅仅是名字和少许的教程细节不大一样(我手上拿到的英文教程叫C-Script,是6.22版的)。如果哪位大虾来到小站,请见谅本人蹩脚的翻译……此系列文章保证本人原创翻译,图片较多
2013-01-16 16:33:56 1193
转载 HGE教程翻译(7)
Tutorial 08 – 天气 这篇教程示范特效和灯光模拟。天空的渐变我们用精灵渲染天空而不用纹理。 hgeSprite *sky; sky=new hgeSprite(0, 0, 0, SCREEN_WIDTH, SKY_HEIGHT); 它的上下顶点上不同的颜色,平滑过渡。 hgeColor colSkyTop;hgeColor co
2013-01-16 16:17:20 897
转载 HGE教程翻译(6)
Tutorial 06 – 创建菜单 这个教程显示如何创建通用的GUI控制和菜单。创建通用控制首先我们定义控制类,从hgeGUIObject继承: class hgeGUIMenuItem : public hgeGUIObject{public: hgeGUIMenuItem(int id, hgeFont *fnt, HEFFECT snd,
2013-01-16 16:15:54 747
转载 HGE教程翻译(5)
Tutorial 05 – 使用曲面变换 在这个教程中我们学习如何使用曲面变形,一种可以创建水面、透镜、纸张甚至实时的变化。我们使用静态的纹理,但你可以渲染你的整个游戏场景到一个纹理,通过扭曲网格来达到一些很酷的实时特效。首先包含头文件和变量的声明。 #include #include #include HGE *hge = 0;HTEXTURE te
2013-01-16 16:14:43 700
转载 HGE教程翻译(4)
Tutorial 04 – 渲染纹理 首先我们声明渲染对象的句柄和配合使用的精灵。 hgeSprite* tar; HTARGET target; 在一些事件期间,如视频模式选择,渲染对象的纹理句柄可能改变。所以我们在获得新的渲染目标的纹理时写GfxRestoreFunc函数。 bool GfxRestoreFunc(){ if(
2013-01-16 16:13:43 880
转载 HGE教程翻译(3)
Tutorial 03 – 使用 helper classes 这次我们会学习使用HGE的一些帮助类。首先,包含所有需要的头文件并声明HGE全局指针,大多数帮助类都需要它。 #include #include #include #include HGE *hge=0; 现在声明HGE对象。 hgeSprite*
2013-01-16 16:12:41 775
转载 HGE教程翻译(2)
Tutorial 02 – 使用声音,输入和图象要渲染一些东西我们需要hgeQuad结构体。Quad是HGE的基本渲染元素。它包含4个顶点,顺时针0到3。同时我们需要声音效果的句柄。 hgeQuad quad; HEFFECT snd; 这里我们放些游戏需要的变量和常量。 float x=100.0f, y=100.0f;float dx=0.0f,
2013-01-16 16:11:09 780
转载 HGE教程翻译(1)
HGE 是一个硬件加速(Hardware accelerated)的 2D 游戏引擎(Game Engine),HGE 是一个富有特性的中间件,可以用于开发任何类型的 2D 游戏。它是一个完全免费的,并且开源的2D游戏引擎,底层采用Direct3D;HGE 封装性良好,以至于你仅仅需要关系游戏逻辑(Game Logic),而不需要在意 DirectX,Windows 消息循环等。H
2013-01-16 16:09:14 1123
转载 自己做Cpp Binding
英文原文在:http://lua-users.org/wiki/DoItYourselfCppBinding当制作自己的游戏引擎时,特别是结合lua,我考虑过很多绑定库,如SWIG, tolua,SimplerCppBinding,等等。没有一个非常适合我的需求:我想要更多精细控制对象在lua中的处理。 我不喜欢额外的间接指针。 我想尽可能的通过inline代码帮助编译器。
2013-01-16 16:03:55 748
转载 选择Linux还是WinCE
最近打算在开发中引入嵌入式操作系统,转向arm9平台。可控选择的定位在linux和wince两项中。对于选择确是痛苦,查了资料。说法不一,其实落到最后还得看自己的实际情况。看下面的 一篇文章:让我们逐条分析评价Linux和WinCE/Windows的优缺点。 1.支持多种硬件平台 由于嵌入式设备硬件平台的多样性,CPU芯片的快速更新,嵌入式操作系统要求支
2013-01-16 14:14:10 3600
转载 嵌入式操作系统
嵌入式系统(Embedded System),一般指非桌面计算机系统(即非PC、服务器、大中小型机等),有计算机功能且可以“嵌入”到专用设备并发挥专用功能的计算机设备或器材。它是以应用为中心,软硬件可裁减的,适应应用系统对功能、可靠性、成本、体积、功耗等综合性严格要求的专用计算机系统。简单地说,这种计算机通过和设备的电气连接,并通过在计算机上运行的专用程序对接口进行通讯和控制,使设备成为智能化的设
2013-01-16 13:56:19 1407
转载 Python与 Lua的对比
lua最著名的应用要数魔兽争霸了,但是具体怎那么用的却不知道,实在惭愧。相对于其他语言,它最大的特点可能就是嵌入式了。其次offical的网站说是所有脚本语言里最快的,但是这也是以简单为代价的,语言简单了自然就快了,但是要实现某些功能就要写更多的代码了。再就是诸如可移植之类的就没什么好说的了,大多数脚本语言都能跨平台。似乎lua不是linux标配,但是安装比较简单,make一下就行了。所有脚本
2013-01-16 10:52:41 27947 2
转载 SCSI_PASS_THROUGH结构的说明
typedef struct _SCSI_PASS_THROUGH { USHORT Length; UCHAR ScsiStatus; UCHAR PathId; UCHAR TargetId; UCHAR Lun; UCHAR CdbLength; UCHAR SenseInfoLength; UCHAR Dat
2013-01-09 14:09:52 8589 1
转载 DeviceIoControl实战二 获取软盘/硬盘/光盘的参数
实战DeviceIoControl 之二:获取软盘/硬盘/光盘的参数Q 在MSDN的那个demo中,将设备名换成“A:”取A盘参数,先用资源管理器读一下盘,再运行这个程序可以成功,但换一张盘后就失败;换成“CDROM0”取CDROM参数,无论如何都不行。这个问题如何解决呢?A 取软盘参数是从软盘上读取格式化后的信息,也就是必须执行读操作,这一点与硬盘不同。将CreateFile中的访问方式
2013-01-09 14:06:36 988
转载 DeviceIoControl实战一
问题1:在NT/2000/XP中,我想用VC编写应用程序访问硬件设备,如获取磁盘参数、读写绝对扇区数据、测试光驱实际速度等,该从哪里入手呢?解答:在NT/2000/XP中,应用程序可以通过API函数DeviceIoControl来实现对设备的访问—获取信息,发送命令,交换数据等。利用该接口函数向指定的设备驱动发送正确的控制码及数据,然后分析它的响应,就可以达到我们的目的。DeviceIoC
2013-01-09 14:04:49 870
转载 串行通讯的根本原理及用MFC实现串口通讯编程
在Windows运用程序的开发中,我们常常须要面临与外围数据源设备通讯的问题。打算机和单片机(如MCS-51)都具有串行通讯口,可以设计相应的串口通讯程序,完成二者之间的数据通讯义务。 实际工作中运用串口完成通讯义务的时候非常之多。已有一些文章介绍串口编程的文章在打算机杂志上发表。但总的感觉说来不太全面,特别是介绍32位下编程的更少,且很不详细。笔者在实际工作中积累了较多经验,联合硬件、
2013-01-09 13:59:34 1493
FileZilla配置手册
2014-04-09
配置库项目目录结构管理以及相关文档编写模板
2013-11-06
Linux的makefile语法规则
2013-09-27
uilib界面库(升级版)-R6
2013-09-25
一点duilib界面库编程经验
2013-09-25
DuiLib界面库编程总结
2013-09-25
Windows核心编程完整中文清晰版+SourceCode
2013-05-13
SVN使用手册,有图有说明
2013-03-01
VisualSVN_TortoiseSVN_AnkhSvn_软件配置管理说明
2013-02-01
VC6.0工程设置文档介绍
2012-12-11
C/C++的Lua快速入门
2012-11-12
Lua安装包和资源
2012-11-09
存储过程和触发器作用与实例
2012-10-29
JRTP库使用教程
2012-10-19
WINCE移植和裁剪
2012-10-18
用UML描述C++设计模式,且附带实现代码
2012-10-10
如何在cmd中查看端口
2012-02-11
什么是OOA与OOD
2011-07-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人