为什么80%的码农都做不了架构师?>>>   

点评主流软件开发技术

http://soft.chinabyte.com/297/8698297.shtml

■ 河北秦皇岛 谷俭政

--------------------------------------------------------------------------------

当前软件工程领域和软件产业界的热点技术包括原型开发方法、C/S与B/S结构、软件构件、软件复用等。本文针对这些当今软件开发的主流技术加以评述,以期对实际工作做出指导。

原型法

原型法是近年来提出的一种以计算机为基础的系统开发方法,利用原型法开发系统时首先构造一个功能简单的原型系统,然后通过对原型系统逐步求精,不断扩充完善得到最终的软件系统。

原型就是模型,原型系统就是应用系统的模型。它是待开发的实际系统的缩小比例模型,但是保留了实际系统的大部分性能。这个模型可在运行中被检查、测试、修改,直到它的性能达到用户需求为止,随之这个工作模型很快就能转换成需要的目标系统。

原型法的主要优点在于它是一种支持用户的方法,使得用户在系统生存周期的设计阶段起到积极的作用,能减少系统开发的风险。特别是在大型项目的开发中,由于用户对系统功能认识的模糊性,使得对项目需求的分析难以一次完成,往往会造成已完成的项目多次修改,应用原型法则会避免这种风险。

原型法的概念既适用于系统的重新开发,也适用于对系统的修改;利用原型法开发系统需要有良好的软件开发环境、工具的支持。原型法也可以与传统的生命周期方法相结合使用,以便扩大用户参与需求分析、初步设计及详细设计等阶段的活动,加深对系统的理解。

微软公司通常采用“同步-稳定产品开发法”进行项目开发。典型项目的生命周期包括三个阶段:

1. 计划阶段:完成项目的功能说明和进度表的制定;

2. 开发阶段:写出完整的的源代码;

3. 稳定化阶段:完成产品,使之能够批量生产。

这三大阶段以及阶段间内在的循环方法与传统的“瀑布”式开发方式很不相同,后者是由需求、详尽设计、模块化的代码设计与测试、集成测试以及系统测试组成的。而微软的三个阶段更像是风险驱动的、渐进的“螺旋”式的生命周期模型。

构造原型是在计划阶段具体说明一件新产品或一个新版本的最好方法,这从许多方面来说特别是在系统可用性方面都使开发前测试成为可能,并且有助于对与用户交互情况做出良好的理解,同时也能使产品说明更加紧凑。

微软的开发人员通常采用VB构造用户界面原型,对于构造计算机屏幕模型之类的工作,画笔(Paintbrush)也是一个很好用的工具。通过原型法可以使死板的说明变成有生命的文件。

C/S与B/S结构

管理信息系统平台模式大体上分为四种:主机终端模式、文件服务器模式、C/S模式和B/S模式。主机终端模式由于硬件选择有限,硬件投资得不到保证,已被逐步淘汰。而文件服务器模式只适用小规模的局域网,对于用户多、数据量大的情况就会产生网络瓶颈,特别是在互联网上不能满足用户要求。因此,现代企业管理信息系统平台模式应主要考虑C/S模式和B/S模式。

● C/S结构

两层结构的C/S(Client/ Server)模式在上个世纪八九十年代得到大量的应用。C/S结构由两部分构成:前端是客户机,通常是PC;后端是服务器,运行数据库管理系统,提供数据库的查询和管理。

但两层的C/S结构存在以下几个局限:它是单一服务器且以局域网为中心的,所以难以扩展至大型企业广域网或Internet;受限于供应商;软、硬件的组合及集成能力有限;难以管理大量的客户机。

因此,三层C/S结构应运而生。三层结构的C/S模式是伴随着中间件技术的成熟而兴起的,核心思想是利用中间件将应用分为表示层、业务逻辑层和数据存储层三个不同的处理层次。三个层次的划分是从逻辑上来分的,具体的物理分法可以有多种形式。

三层C/S结构具有以下优点:具有灵活的硬件系统构成;提高程序的可维护性;利于变更和维护应用技术规范;进行严密的安全管理;越关键的应用,用户的识别和存取权限设定愈重要。

● B/S结构

基于Web的B/S(Browser/ Server)方式其实也是一种客户机/服务器模式,只不过它的客户端是浏览器。

B/S结构中处于第一层的是客户端,处于第二层的是应用服务器,由一台或者多台服务器组成,该层具有良好的可扩充性,可以随着应用的需要增加服务器的数目。处于第三层的是数据层,由数据库系统和遗留系统组成。

B/S的优势在于:简化了客户端;简化了系统的开发和维护;用户操作变得更简单;适用于网上信息发布。

软件构件技术

转载于:https://my.oschina.net/tadcat/blog/148158

点评主流软件开发技术相关推荐

  1. 2021年度总结 | 葡萄城软件开发技术回顾(下)

    2021年度总结 | 葡萄城软件开发技术回顾(下) 在上节中,我们介绍了在过去一年中葡萄城在控件领域中的一些新探索,新尝试. (详细内容:https://www.cnblogs.com/powerto ...

  2. 盘点直播直播平台软件开发技术中的编解码、直播协议、网络传输与简单实现

    盘点直播直播平台软件开发技术中的编解码.直播协议.网络传输与简单实现 编解码 视频封装格式就是我们通常所说的 .mp4,.flv,.ogv,.webm 等,它其实就是一个盒子,用来将实际的视频流以一定 ...

  3. 传道解惑 软件开发技术名词解密

    传道解惑 软件开发技术名词解密 序:去年为了总结自己所学习/接触过的技术,也顺便为初学者少走弯路指明一些方向,可惜后来诸事缠身未能继续,十分遗憾,现放到自己的BLOG上来鼓励自己将此继续下去. &qu ...

  4. 主流web开发技术有哪些,盘点web开发最新发展趋势

    Web开发正以惊人的速度崛起,随着web概念的普及和W3C组织的推广,各种类型的桌面web应用大批量涌现,网站前端由此开始了它翻天覆地的变革,网页不再只是单一的文字或图片,各种丰富的媒体应用让网页的内 ...

  5. 从今天开始,我就要潜心研究软件开发技术了,不在被名利所困

    参加工作六年来,我一直被虚名所困,想要通过努力得到单位的认可,但是由于我是小副科,学校领导根本不放在心上,我反而为此浪费了很多宝贵的时间. 从今天开始,我就要潜心研究软件开发技术,不再在单位争名夺利了 ...

  6. 2020年度总结 | 葡萄城软件开发技术回顾

    本文由葡萄城技术团队原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 2020年是不平凡的一年,虽然疫情为整个社会都带来了巨大的冲击,但IT技术人 ...

  7. 软件开发技术联盟 - 图书系列资源

    软件开发技术联盟编著,清华大学出版社出版. 资料来源官方授权许可,详情见链接 资源出处 另外推荐学习资源网站: 清华出版社图书资源 以下为软件开发技术联盟所提供的图书配套资源,多为图书所带光盘资料,为 ...

  8. html5脑图_基于HTML5的三维思维导图软件开发技术研究

    龙源期刊网 http://www.qikan.com.cn 基于 HTML5 的三维思维导图软件开发技术 研究 作者:汪升华 唐国纯 来源:<软件工程> 2017 年第 10 期 摘 要: ...

  9. 软件开发技术常用术语英中对照

    软件开发技术常用术语英中对照 A.I. 人工智能 A2A integration A2A整合 abstract 抽象的 abstract base class (ABC)抽象基类 abstract c ...

最新文章

  1. PHP中spl_autoload_register函数的用法
  2. suprahex画进化树_安装使用pyclone进行克隆演化推断
  3. 【机器学习基础】一文看透多任务学习
  4. RDD的几种创建方式
  5. 方舟手游服务器设置文件翻译,方舟生存进化手游界面翻译 方舟生存进化手机版中文对照翻译一览...
  6. 【转自CSDN论坛】行业软件的利润从哪里来?
  7. [Hadoop] - SSH免密码登录
  8. java后台开发必备的9大类基础工具,你集齐了?
  9. Unity使用tolua框架教程: LuaFramewrk
  10. 《经典书籍推荐》代码大全
  11. 【数据api】数据API企业关键字模糊查询
  12. 2.1 linux 存储结构和硬盘划分
  13. 快狗打车CTO沈剑:如何利用计划管理提升团队效率和产能
  14. 在Excel中填写空白单元格以完成表格
  15. Python中WEB开发(一)
  16. NBA 球星杜兰特的加密投资版图
  17. 《CSDN/TUP 系列活动:我们的开源》学习
  18. 计划评审方法和关键路线法【PERT/CPM、统筹方法】
  19. docker 安装mysql、canal、redis实现redis和mysql缓存一致性
  20. 前端证券项目_头条猿辅导瓜子老虎证券等前端面经

热门文章

  1. WPF:Animation动画--AnimationTiming动画时机
  2. 确认AD DS域是否正常
  3. linux下,redis 3.2.1双节点集群安装部署
  4. mongoose 使用总结
  5. Struts Form中Date类型之“argument type mismatch”错误解决方法
  6. 理解T-SQL: 存储过程
  7. Laravel 中的 Many-To-Many
  8. redis的spring的xml配置
  9. jQuery动画---自定义动画animate()
  10. NSURLConnection实现文件上传和AFNetworking实现文件上传