“软件设计”文章列表
本文首先简单介绍了单件模式是什么东西,也称Singleton模式,实现单一实例的功能。
闲话REST(一) 记得有一位朋友曾经问过我这样一个问题:是不是无论传递什么东西都靠URI参数来做,就一定是符合REST风格的。我当时没有完全理解他的意思,便给了他一个现在看来不甚满意的回复。后来当我理解他的意思后,仔细考虑了产生这个问题的原因,觉得这是由于对在REST中URL所承担职责的一些...
系列博客
1. 改善代码设计 —— 优化函数的构成(Composing Methods)
2. 改善代码设计 —— 优化物件之间的特性(Moving Features Betw......
假设我们身边的一切都是用制造材料加以描述的:“空调”不是“空调”,而是“由金属和塑料做成的物体”;“书”不是“书”,而是“由纤维和墨做成的物体”。沟通时我们也不用“空调”和“书”这样的词汇,而是“金属和塑料做成的物体”和“纤维和墨做成的物体”。 可以想象大脑在面对这些信息时会让我们觉得多么的痛...
适配(转换)的概念无处不在
适配,即在不改变原有实现的基础上,将原先不兼容的接口转换为兼容的接口。
动机(Motivation)
在软件系统中,由于应用环境......
英文原文:I give the orders around here! 自从 9 岁那年得到第一台 Commodore 64 家用电脑起,我就开始编程。然而,当面对如何写出好的代码时,我仍然感觉自己还有很多要学的。 在探索如何提高自己的过程中,我学了很多种语言。大多数是以面向对象为主的(OO...
文/Todd Wei 需求又变了,怎么办? 先上一个轻松的段子:程序员 XX 遭遇车祸成植物人,医生说活下来的希望只有万分之一,唤醒更为渺茫。可他的 Lead 和亲人没有放弃,他们根据 XX 工作如命的作风,每天都在他身边念:“XX,需求又改了,该干活了,你快来呀!”,奇迹终于发生了,XX ...
英文原文:The Seven Information Smells of Domain Modelling 领域建模(Domain modelling )作为一项强大的技术,常备于很多IT专业人士的工具箱之中。令人遗憾的是,在过去的几年间,因为领域建模的几个问题导致人们对其大失所望,尤其是在敏...
英文原文:Non-functional Requirements in Architectural Decision Making 本文由《IEEE Software》杂志首发,现在由InfoQ和IEEE Computer Society联合向您呈现。 在软件工程中,非功能性需求(nonfu...
英文原文:You Already Know How To Use It 译者:泽维尔 在iPad的第一部电视广告中,旁白这样说道,“它是如此的强大,如此的神奇。你早已经知道该怎么使用它。”这是一个非常有力的陈述。这是一款最新的,具有市场变革意义的,革命性的产品,不同于我们曾见过的任何产品,而...
英文原文:The Elusive Dependency 我猜你一定了解以下这种感觉:你马上要准备在某个项目审查会议中发言,而你已知道自己陷入了麻烦中。看看这个仅有5页的幻灯片,你深切地感觉到这个会议注定不会进行得很顺利。即使经过连续三个晚上的通宵奋战,将原本16页的演讲精简为4页的模板,你也无...
一、上篇回顾
通过上篇的讲述,我们知道装饰模式,特别适合对某个类型的对象,动态的增加新的职责,应用程序就像使用原来的对象一样使用对象新增的装饰后的功能,......
我这里的实现方案是传统的cookie方案。希望此文对需要的朋友有用,也希望不足之处大家能够提出。
关于事件流处理,在不同的场景中有不同的概念。有人称之为流处理,有人称之为事件溯源或CQRS,还有人称之为“复杂事件处理(Complex Event Processing)”。不管名称是什么,它们的基本原则都是一样的。Martin Kleppmann是Apache Samza的贡献者。在本文中,我...
重构最大的敌人不是技巧与能力,而是懒惰,或者说是态度。许多细小的重构看似无足轻重,例如方法重命名、提取方法。即使重构了,似乎对代码的结构也没有太大的影响,于是就决定淡然处之,心里想“事情还未到不可挽回的地步,实现功能要紧,至于重构,还是以后再做吧!”这样一想,于是就会滋生得过且过的想法,等到代码...
一、上篇回顾
上篇我们主要讲述了创建型模式中的最后一个模式-原型模式,我们主要讲述了原型模式的几类实现方案,和原型模式的应用的场景和特点,原型模式适合......
任何概念从产生到付诸实施似乎都要经历一个同样冗长的过程,从被提出,误解,诠释,再认识,到应用,好像没有几个技术观点能够跳过这些,现在的RESTful架构似乎也正处在这个过程的中段。互联网上关于REST的介绍性文章可谓铺天盖地,园子里的帖子也有不少,但是其中大多数都是一个对REST这一概念的精辟概...
在我们刚开始学习架构的时候,首先会想到分层的概念,分层架构比较经典的是三层架构,那么,什么是三层架构呢?它包括表现层,业务层,数据访问层;而对于一个新手来说......