您的位置:知识库 » 软件设计

“软件设计”文章列表

两周前因为公司一次裁人,好几个人的活都被按在了我头上,这其中的一大部分是一系列REST API,撰写者号称基本完成,我测试了一下,发现尽管从功能的角度来说,这些API实现了spec的显式要求,但是从实际使用的角度,欠缺的东西太多(各种各样的隐式需求)。REST API是一个系统的backend和...
作者: programmer_life   2015-06-27 14:27:29 阅读:16258 标签:REST API
曾经参与过系统维护或是在现有系统中进行迭代开发的软件工程师们,你们是否有过这样的痛苦经历:当需要修改一个Bug的时候,面对一个类中成百上千行的代码,没有注释,千奇百怪的方法和变量名字,层层嵌套的方法调用,混乱不堪的结构,不要说准确找到Bug所在的位置,就是要清晰知道一段代码究竟是做了什么也非常困...
作者: Johnny.Liang   2015-05-29 22:41:17 阅读:15733 标签:DDD 领域驱动设计
美国计算机科学家,LaTex的作者Leslie Lamport说:“分布式系统就是这样一个系统,系统中一个你甚至都不知道的计算机出了故障,却可能导致你自己的计算机不可用。”一语道破了开发分布式系统的玄机,那就是它的复杂与不可控。所以Martin Fowler强调:分布式调用的第一原则就是不要分布...
作者: 张逸   2014-12-08 20:58:09 阅读:15524 标签:架构设计
1. 架构概述 领域驱动设计(Domain Driven Design)有一个官方的sample工程,名为DDDSample,官网:http://dddsample.sourceforge.net/,该工程给出了一种实践领域驱动设计的参考架构,本文将对此该架构进行简单介绍,并就一些重要问题进行...
作者: bluishglc   2012-10-23 16:02:25 阅读:15182 标签:领域驱动设计 DDD
原文发布于2013年12月6日 工作地点转换成家中后,最近都没什么心情写博客了(好吧我承认是我懒)。之前的几篇都比较水,今天来个(对于我来说)难度略高的内容吧。 这次想讨论的话题是有关领域驱动设计,和领域驱动设计中使用贫血、失血or充血模型的。在这之前我想讨论下当前很多应用的问题,想起这个话...
作者: Kaedei   2015-05-11 15:03:57 阅读:14956 标签:DDD
大体层次划分 Facebook的架构可以从不同角度来换分层次。 一种是: 一边是PHP整的经典的LAMP stack;另外一边是非PHP整的各种service。 Facebook的......
作者: yanghehong   2011-06-16 22:19:49 阅读:14423 标签:Facebook 架构设计
一、 面向对象,这个对象到底是什么? 这个对象不是C#中的实例,C#中我们把一个类的实例也叫做对象,这种对象严格的说应该是面向对象的编程实现(OOP)中的对象,面向对象编程,也不是面向类的实例编程。对象的定义是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体...
作者: 赵学智   2015-04-13 18:09:26 阅读:14404 标签:面向对象 OOP
英文原文:The Google File System,编译:ImportNew-储晓颖 新浪微博:@疯狂编码中的xiaoY 【译者预读】 GFS这三个字母无需过多修饰,《Google File System》的论文也早有译版。但是这不妨碍我们加点批注、重温经典,并结合上篇Haystack的...
2013-03-26 08:39:47 阅读:13860 标签:GFS
前言 至少30年以前,一些软件设计人员就已经意识到领域建模和设计的重要性,并形成一种思潮,Eric Evans将其定义为领域驱动设计(Domain-Driven Design,简称DDD)。在互联网开发“小步快跑,迭代试错”的大环境下,DDD似乎是一种比较“古老而缓慢”的思想。然而,由于互联...
作者: 文彬 子维   2018-01-18 21:06:06 阅读:13377 标签:DDD 架构设计
这篇文章谈下编码中的一些细节问题,在谈之前首先还是要继续推荐下《代码大全》这本书,该书在很多公司都会被推荐为新人入职后的必读书,即使在互联网和敏捷开发环境下,该书对于新人仍然有仔细阅读和体会的必要,要明白架构和设计思维的基础仍然是编码思维,面向对象思维的基础仍然是代码本身的逻辑和结构,如果不能写...
作者: 人月神话   2015-10-30 09:24:57 阅读:12528
前言 此文译自CodeProject上<How I explained OOD to my wife>一文,该文章在Top Articles上排名第3,读了之后觉得非常好,就翻译出来,供不想读英文的同学参......
作者: 倪大虾   2011-01-29 10:13:14 阅读:12490 标签:OOD
作者: 蓝色游骑兵   2008-12-24 16:18:44 阅读:12326 标签:权限设计
今天这堂培训课讲什么呢?我既不讲Spring,也不讲Hibernate,更不讲Ext,我不讲任何一个具体的技术。我们抛开任何具体的技术,来谈谈如何提高代码质量。如何提高代码质量,相信不仅是在座所有人苦恼的事情,也是所有软件项目苦恼的事情。如何提高代码质量呢,我认为我们首先要理解什么是高质量的代码...
作者: fangang   2012-10-31 16:53:35 阅读:12305 标签:代码质量
简介 几乎所有企业都有多个应用程序作为其关键数据的记录系统,而且还拥有它们赖以创业的业务功能。因此,一些组织想要不断向其企业内外更广泛的受众揭示这些操作系统中的宝贵资产,我们对此已司空见惯。但是,这需要时间。在本教程中,我们将介绍这项评估的关键阶段,帮助您评估您的企业在此旅程中的位置,分析您可...
作者: Kim J. Clark   2015-05-25 18:25:07 阅读:12190 标签:架构 架构设计
目录背景知识用例图类图序列图状态图活动图组件图部署图结束语 英文原文:UML basics: An introduction to the Unified Modeling Language 到了21世纪——准确地说是2003年,UML已经获得了业界的认同。在我所见过的专业人员的简历中,75%都...
作者: Donald Bell   2012-01-21 14:51:45 阅读:11938 标签:UML
序言 新浪微博在2014年3月公布的月活跃用户(MAU)已经达到1.43亿,2014年新年第一分钟发送的微博达808298条,如此巨大的用户规模和业务量,需要高可用(HA)、高并发访问、低延时的强大后台系统支撑。 微博平台第一代架构为LAMP架构,数据库使用的是MyIsam,后台用的是php...
作者: 卫向军   2015-01-21 16:34:10 阅读:11654 标签:架构 网站架构
大约在60年前,美国军方的软件开发开始遵循一个原则,叫KISS原则。他们希望武器系统中所用的每个指令都是极其简单和傻瓜式的。这个原则后来在编程领域中被广泛采用,如今好多著名的开源框架都是遵循这一原则来开发,并最终取得了巨大的成功。 在上一文中《Apache的架构师们遵循的30条设计原则》,第...
作者: 贺卓凡   2020-01-23 19:52:25 阅读:11523 标签:编程原则 框架
登录? 两个输入框加一个按钮?还能怎么做? 那就先来看看为什么而做? 就数据而言,网站的流量仍是大量的匿名用户带来的。我们无法根据请求的任何方面(ip地址,用户代理等)准确识别来自同一人的连续请求。 不能识别,自然无法对其分类进而转化挖掘,获取网站所需的价值。 互联网服务于人,要开发一...
作者: 艳艳   2013-08-23 17:55:46 阅读:11427 标签:交互设计
为了补大家的遗憾,在此总结下ROBBIN的领域模型的一些观点和大家的补充,在网站和演讲中,robbin将领域模型初步分为4大类: 1,失血模型 2,贫血模型 3,充血模型 4,胀血模型 那么让我们看看究竟有这些领域模型的具体内容,以及他们的优缺点: 一、失血模型 失血模型简单来说,...
2015-05-11 14:56:17 阅读:11325 标签:DDD
OSGi正在成为一种趋势,越来越多的项目采用了OSGi,越来越多的中间件都开始采取了OSGi的标准,它致力于提供给Java项目一个模块化的底层环境,以及一系列通用的服务(Service)。
作者: 浪客Dandy   2010-10-01 00:10:27 阅读:11275 标签:OSGi Java