软件系统开发中的数据交换协议
在很多地方都有“数据交换”这个概念,本文所说的“数据交换” 是指在计算机网络中,一个系统把数据传递给另外一个系统。这非常类似于一个人要告诉另外一个人一件事情。 当一个人要把一...
在很多地方都有“数据交换”这个概念,本文所说的“数据交换” 是指在计算机网络中,一个系统把数据传递给另外一个系统。这非常类似于一个人要告诉另外一个人一件事情。 当一个人要把一...
近一年没有更新博客了,说起来有些惭愧,年龄大了,事情多了,人也变的懒惰了,加之儿子每天总跟班更是无心顾及,似乎每天都在忙,还有就是新浪微博闹的。自从去年开博,看微博的时间多了,自然静下心来写和技术相关的东西少...
其实这篇文章早就该写了,但是每当打开博客准备着手去写的时候,便开始回忆,记忆渐渐的回到了过去,一幕幕的放映着。但是手指却是僵硬的,不知为何连敲键盘的力气都没有,那段经历是我一生当中都永远不会忘记的。我是...
写这一篇内容的原因是MySQL5.6.2突然推出了memcached的功能。NoSQL to InnoDB with Memcached 的出现,可以看出NoSQL对关系数据库的确产生了巨大的影响,我觉得这是一个非常大的进步,可以让开发人员更加方便的使...
约定:本文只考虑 Linux 系统,文中涉及的“服务程序”是以 C++ 或 Java 编写,编译成二进制可执行文件(binary 或 jar),程序启动的时候一般会读取配置文件(或者以其他方式获得配置信息),同一个程序每个服务进...
从入行以来,听到来自于行内和行外对程序员这个职位的争议从来就没有停止过,有对这个行业尤其在中国的前景的担忧,有外界对程序员的看法,有业内的自讽。 故而生出了很多程序员的代名词,"张江男"、"IT民工"、"码...
本文是从 Complexity is the enemy 这篇文章翻译而来。 差不多在Google工作有7个年头了(!)。我在这学到了很多东西,写都写不完。然而不管怎样,我至少要向你们分享一条只有在我有了更多经验后才得到的东西。...
文 / 姚冬 本文介绍了集统一软件开发和敏捷开发方法优点于一体的新型软件开发方法——模型驱动开发。 当今是一个快速发展的时代,软件的功能更强大,应用更广泛,系统架构更复杂。与此同时,软件开...
一:什么是领域模型(Domain Model) 1,Entities 2,Value Objects 3,Relations 二:只谈验证(Validation)——三种常见的做法 1,Constructor/Method based Validation...
需求如下:需要从数据库的Cargo表中取出商品名称为“钉子”的货物。可以这样做:
public class CargoRepository
{
public List SelectByPartName(string partName){}
}...
在我们刚开始学习架构的时候,首先会想到分层的概念,分层架构比较经典的是三层架构,那么,什么是三层架构呢?它包括表现层,业务层,数据访问层;而对于一个新手来说,从抽象意义上的三层架构,逻辑上就划分为三个层。 这...
系列博客 1. 改善代码设计 —— 优化函数的构成(Composing Methods) 2. 改善代码设计 —— 优化物件之间的特性(Moving Features Between Objects) 3. 改善代码设计 &md...
本文是从 Hackers vs. Coders 这篇文章翻译而来。 优秀的计算机爱好者具有一种无价的技能。可作为一名程序员会跟计算机爱好者一样吗?难道程序员跟那些不知道如何编码的计算机爱好者们相比,会在创造性上处...
引言 服务层是在交互的两个层中间又定义了另外一个层,典型的是在表现层和业务逻辑层之间。这个中间层只是实现应用的用例的类集合。 服务和面向服务的出现,使得整个解决方案更有价值、更加成功。与表现...
本文是从 You are NOT a Software Engineer! 这篇文章翻译而来。
你不是软件工程师。你不是在建摩天大楼。你不是在建公路桥梁。 你是在从事园艺,培育花草。 你是一个软件园丁。 你是否会在种下...
本文是从 What is Domain Driven Design? 这篇文章翻译而来。 ”…在很多领域,专家的作用体现在他们的专业知识上而不是智力上。“ -- Don Reinertsen 领域驱动设计(Domain Driven...
在学术界和从业界只有很少一些关于“人格类型对敏捷团队之影响”的研究。大量的评论人士针对“是否存在敏捷人格类型”这一疑问提出了不同的问题。最常见的答案似乎是“依情况而定...
前言 高效,是一个很难定出标准的事情,在今天这个浮躁的HTML行业里,很难被客观的定义。多数时候,只要制作人员能在项目规定的时间内完成制作需求,并交付程序开发相关的程序应用,这个HTML前端工程师就算是一个合...
列表视图(ListView)是Android平台下用于显示不定数量的数据最有用的视图控件之一。在这个教程中,我们将向你展示如何使用ListView来浏览文章列表。 在之前的文章中,你看到了许多关于不同布局控件的教程。在今...
InnoDB和MyISAM是在使用MySQL最常用的两个表类型,各有优缺点,视具体应用而定。基本的差别为:MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是...
上一篇:数据库设计 Step by Step (3) 泛化(Generalization):超类型与子类型 原始的ER模型已经能描述基本的数据和关系,但泛化(Generalization)概念的引入能方便多个概念数据模型的集成。 泛化关系是指抽取...
Computers are useless. They can only give you answers. – Picasso
计算机没有什么作用。他们只能告诉你答案。——毕加索 很多人(包括我岳母)认为计算机变得如此智能,所以在不久的未来将不再...
从07年中初次接触Scrum的概念到其中几年项目中逐渐实践CI、TDD,到亲自掌握项目实践Scrum近一年,最终我们放弃了Scrum这个框架和所谓的“自组织”。原因为何? 1. 成员放弃了Scrum所“赋予&rdq...
本文是从 Cleaning up code smells: Venkat Subramaniam @ Chennai 这篇文章翻译而来。 今天,Venkat Subramaniam 就关于清除代码异味的话题给我们做了一个非常有趣的演讲。下面就是我记录的一些...
一些有趣的观点出现在我所关注的邮件列表中。下面是其中的一些。原始评论将以蓝色字体显示,下面是我的回应。这不是对相关问题的彻底看法,只是我所想到的一些相关的回应。注:我已加以编辑,以改善流程(flow),并加以...