(翻译)软件架构样式

转载 2012年03月27日 23:35:32

软件架构样式

Kalyan Bandarupalli著,hystar翻译

架构样式是一套原则,你可以使用其来构建一个特定领域的典型的系统架构样式。实现软件架构样式依赖于你的组织实现架构样式的能力及基础性约束。这边文章解释了基于一种需求应该选择怎样的架构样式。

 

介绍

架构样式是一套原则,你可以使用其来构建一个特定领域的典型的系统架构样式。实现软件架构样式依赖于你的组织实现架构样式的能力及基础性约束。这边文章解释了基于一种需求应该选择怎样的架构样式。

 

架构样式

    我们一种典型的做法是将多种样式组合在一起定义一个完整的架构。例如分层架构可以与基于组件的,面向对象与SOA等样式一起使用。

下面是一个常用的软件架构样式的列表。

 

客户端\服务器

    当存在以下情况时,考虑使用这种样式

  • 这个应用是基于服务器的且需要支持多个客户端。
  • 你正在构建通过浏览器开放的基于Web的应用
  • 你想要对数据存储,备份及管理功能中心化。

 

基于组件的

当遇到以下情况是考虑使用基于组件的架构

  • 你的应用有特殊的需求,其不包含UI或业务处理。
  • 你的应用执行存储过程这种几乎没有或者很少输入的函数
  • 你要创建一个可插拔的架构,其允许你将单独的组件进行更新或替换。

 

分层

当遇到以下情况时可以考虑使用分层架构

  • 你的应用很复杂
  • 你想要提高应用的可维护性与可扩展性。
  • 你的应用支持不同类型的客户端及不同的设备。

 

消息总线

    当存在以下情况时,考虑使用这种样式

  • 你现有的程序与其它程序进行交互来完成一些任务。
  • 你正在实现一个需要与外部应用交互的应用
  • 你正在实现一个发布者\订阅者应用

 

MVC架构样式

当存在以下情况时,考虑MVC样式

  • 你想要提高UI的可测试性并使UI的维护更简单
  • 你想要将UI元素与UI处理代码相分离
  • 你的UI处理代码并未实现任何业务逻辑。

 

SOA

当遇到以下情况是考虑面向服务的架构样式:

  • 你想要消费一个第三方暴露的服务。
  • 你想要构建一个应用将一系列不同的服务组合到一个单独的UI中
  • 你要创建一个SaaS(软件即服务)应用。
  • 你要通过一个可发现的目录暴露服务。

 

本人才疏学浅,难免出现翻译错误,请不吝赐教。

ubuntu下的翻译软件--比有道强大多了

看着一些API虽然能看懂一个大概,但总想知道每个单词的意思。问题是英语水平有限,所以只能来找一些翻译软件,像windows下来用的有道估计是不行了(也没去试到定行不行),所以在软件中心找了一款Gold...
  • xiaopohaibebo
  • xiaopohaibebo
  • 2015年04月16日 12:01
  • 18527

Linux 下安装翻译软件——stardict(星际译王)

众所周知,我们在学习新知识的时候什么最有效?当然是看官网的API,但是苦于很多API都是英文的,于是我们就不得不找翻译软件的帮忙了。此处就带大家装一款非常优秀的翻译软件,也有取词功能。...
  • u010849674
  • u010849674
  • 2015年08月16日 17:32
  • 5160

ubuntu下安装翻译软件-星际译王

简单的就讲两步: 第一步安装:星际译王         sudo apt-get install stardict 第二部安装:字库        2.1:下载字库:http://ab...
  • u011774239
  • u011774239
  • 2016年02月24日 21:00
  • 1290

ubuntu下的翻译软件--比有道强大多了

看着一些API虽然能看懂一个大概,但总想知道每个单词的意思。问题是英语水平有限,所以只能来找一些翻译软件,像windows下来用的有道估计是不行了(也没去试到定行不行),所以在软件中心找了一款Gold...
  • aj1031689
  • aj1031689
  • 2013年11月27日 11:05
  • 11700

适配器模式 : 农村小伙娶乌克兰美女语言不通 翻译软件立功

不知道什么时候开始,总听到“ XXX 小伙娶乌克兰美女” 的新闻,比如 农村小伙娶乌克兰美女语言不通 翻译软件立功 等等,我仔细地看了几篇新闻,发现居然不是标题党,新闻里的乌克兰妹子长得真不错,上几张...
  • u011240877
  • u011240877
  • 2016年09月20日 22:05
  • 5400

18 个开源翻译工具帮助你的项目本地化

在满足世界各地用户需求的开源项目中,本地化扮演着极其重要的角色。除了编码之外,语言翻译也是世界各地的人们从事开源事业并向开源项目做出贡献的主要方式之一。 在语言服务行业存在着各种工具(听到这...
  • hj7jay
  • hj7jay
  • 2017年07月03日 09:48
  • 1061

推荐一个文献翻译软件--Deja Vu X

推荐一个文献翻译软件--Deja Vu X
  • jsjliuyun
  • jsjliuyun
  • 2014年05月11日 16:59
  • 6887

xcode菜单功能翻译

File:   New : 可以新建tap,窗口,新文件,playground,workspace,target等等。 Add Files to XX: 为这个项目中引入文件 Open :...
  • csdnios_xu123
  • csdnios_xu123
  • 2016年07月18日 08:46
  • 836

DOS界面下的翻译软件制作

准备 素材 依赖 接口 地址 参数 返回值解析 编码及测试 功能代码 运行脚本 环境变量 结果展示 英语转汉语 汉语转英语 总结昨天看到一篇关于Linux下的桌面词典的文章,于是就想实现一个Windo...
  • Marksinoberg
  • Marksinoberg
  • 2016年09月29日 14:30
  • 6561

小尾巴翻译APP产品分析

最近突然对翻译行业内的app有点兴趣,所以利用闲暇之余,试着做了做分析。今天介绍的小尾巴app是一款旨在解决用户在出境旅游中遇到的语言问题的一款集机器内翻译和人工翻译一身的旅行翻译软件,实时高效的翻译...
  • sunzheng12345
  • sunzheng12345
  • 2015年09月23日 19:53
  • 1332
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:(翻译)软件架构样式
举报原因:
原因补充:

(最多只允许输入30个字)