软件升级的意义

在软件升级的过程中,经常有一个问题,即软件是否应该向下兼容。

我有幸经历了组里项目引擎升级的过程。在升级引擎的过程中,我一直有这样的疑问,却没有想明白,直到于有一天,我想起一个很基本的问题:升级引擎的目的是什么?

一般来讲,人做一件事总是有目的的。吃饭是为了吸收营养,喝水是为了解渴。软件升级也不例外,最初决定升级引擎的时候,给出的说法是这样的,“为了保持和延长项目的生命。项目开始时采用的那些技术在现在已经是落后的了,而这个项目至少还有几年的生命。如果现在不做一些软件升级的事情,将来的软件维护和升级会更加困难”。初听很有道理,乍一想却毫无道理,这好比是在说,为了升级而升级,或者说,这次升级软件的目的是模糊的。

的确,与时俱进的软件常常有顽强的生命力。但升级软件始终应该有一个目的,有了目的,才知道一些选择应该如何取舍。通常来讲,软件升级的目的一般是为了获得某些新的特性,也就是说我们的目的不是提升软件的版本号,而是为了获取新功能。这时候,或许可以采取部分部分模块的方式,而其他部分则可以保持原样。有时会遇到一些兼容性问题,有可能新的特性是旧就功能冲突的,相信这个时候你就需要仔细考虑自己的目的,究竟孰轻孰重,应该如何取舍,新的特性是否能体现出足够大的价值,而保留旧功能是否违背了软件升级的意义。一般来说,一些程序在升级的过程中会保留旧的api,他总需要保留自己的用户。毕竟,编写软件的最终目的是为了用户的使用。反过来,如果我们最终的用户并不是程序人员,那么保留旧的api和代码还有多少意义?是否还必须保留?多数情况下,我们使用各种技术和手段来实现用户的需求,完成最终的产品。用户只是通过ui交互来使用软件,这样的情况下,也许向下兼容的意义可以理解为保留软件原有的业务功能,实际上程序是可以进行大刀阔斧的改变,前提是你得有足够的能力,你必须“不行损害之事”。而这往往是很难的,所以才有这样的说法:最好让软件保持原状。

原文地址:https://www.cnblogs.com/afraidToForget/p/9532156.html

时间: 2024-10-10 22:45:34

软件升级的意义的相关文章

TODO:软件升级的那些事

软件升级,指软件从低版本向高版本的更新.由于高版本常常修复低版本的部分BUG,所以经历了软件升级,一般都会比原版本的性能更好,得到优化的效果,用户也能有更好的体验. 最近常见的升级有 1.iOS的升级 2.macOS的升级 3.chrome的升级 但是这升级给我门带来好多麻烦,iOS的升级导致机器好点,系统慢:macOS的升级导致进不了系统不得已重新安装系统:chrome的升级导致崩溃,不能浏览网页. 虽然网上有很大解决方案,但是这样的体验给用户带来非常不友好的体验,若非必须,更多人会选择其它替

MTM量身定制系统 - 富友ERP产品 - 信息化推动服装行业管理软件升级

MTM量身定制系统 - 富友ERP产品 - 信息化推动服装行业管理软件升级 国内第一款量体定制管理系统 ????????????? 结合富友软件10年服装行业经验和多家大型量身定制企业管理经验,推出的量身定制专业化管理系统 MTM量身定制系统 - 富友ERP产品 - 信息化推动服装行业管理软件升级,布布扣,bubuko.com

男装 - 富友客户 - 信息化推动服装行业管理软件升级

男装 - 富友客户 - 信息化推动服装行业管理软件升级 典型客户公司?品牌?绫致时装(天津)有限公司Jack & Jones山东新郎希努尔股份有限公司?新郎青岛红领集团有限公司红领凯撒(中国)股份有限公司?凯撒北京依文服装有限公司依文.诺丁山北京吉嘉诺服装服饰有限公司吉诺里兹上海沙驰服饰有限公司沙驰广州欧三服饰有限公司Yesboss中山市进都服饰有限公司宾奴大连富哥实业有限公司富哥广东浪登集团有限公司浪登北京泰奕丰商贸有限公司?玛珂.爱萨尼上海威雅达服饰公司威雅达山东桑沙集团公司吉瑞 男装 -

论文检测软件的积极意义

目前各高校使用的论文检测软件大都是清华大学做的,这款软件已经试用好多年,现在比较成熟了,所以才开始正式使用.以前只能对比重复率,现在还可以区别引证.引进这个软件,主要是为了端正学风.软件数据库收录了20世纪80年代以来所有公开发表的论文,它可以告诉学生,如果再抄袭,是很容易被发现的,这个对很多人来说是压力,但却可以有效减少论文抄袭现象. 此系统开始是在各高校内部使用,现在是强制所有研究生论文接受检测.通过严格把关,防止不端行为对学校和个人产生不好的影响.在没有更好的办法下,学术不端行为检测系统还

还是一篇老文章 - 由软件升级想到的

最近一波WannCry病毒,把很多还在用XP操作系统的机构都搞得不是焦头烂额,就是人心惶惶.XP虽然成功,但是都这么多年了,微软早就说好不支持了,这个锅不愿意背估计还得背.今天在印象笔记中看到自己一篇2014的文章,写的也是关于软件升级的,文章早就随我CSDN账号没了,在这里从新发出来,也算应个景. 下面是文章全文: 这几天因为要用的到,对单位只有.NET 4.0产生了极大的怨念.在羡慕.NET 4.5的诸多新功能,和Visual Studio 2013的强大的Github集成之余,怨念为什么公

Cisco 4507R交换机IOS软件升级方法

现有设备信息 XIASW#show version Cisco IOS Software, Catalyst 4000 L3 Switch Software (cat4000-I5S-M), Version 12.2(25)EWA7, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2006 by Cisco Systems, Inc. Compiled M

无线 LAN 控制器 (WLC) 软件升级

介 本文解释步骤和需求到在无线局域网控制器(WLC)的升级软件. 先决条件 要求 除了具备基本网络知识和熟悉 Cisco 无线局域网控制器的基本配置和安装之外,在您尝试升级 WLC 之前,请确保满足以下要求.请注意,每个主要求还包括一个版本特定的要求: 可从 WLC 的管理 IP 地址访问的网络上的 TFTP 服务器 请确保您有一个可用于软件升级的 TFTP 服务器.在设置 TFTP 服务器时,请记住以下准则: 如果通过服务端口升级,则 TFTP 服务器必须与服务端口位于同一子网中,因为服务端口

EPON ONU软件升级的若干优化方案

1 说明 目前EPON ONU软件升级主要有IP方式(如SNMP/TR069)和TFTP+OAM两种.前者需占用大量IP地址,且配置ONU的IP地址需要手工操作,给业务开通和系统维护带来较大不便:后者对每个ONU的升级都需要单独进行OAM报文的协议交互,因为OAM报文本身发送速度和长度的限制,不能较快地交互升级. 对于海量终端的EPON OAM软件升级,为避免对维护的影响,要求尽量缩短升级时间,此外,为提升用户满意度,需要实现在业务不中断的情况下进行软件升级.最后,在软件层面上,版本下载异常中止

【swupdate文档 三】SWUpdate: 嵌入式系统的软件升级

SWUpdate: 嵌入式系统的软件升级 概述 本项目被认为有助于从存储媒体或网络更新嵌入式系统.但是,它应该主要作为一个框架来考虑,在这个框架中可以方便地向应用程序添加更多的协议或安装程序(在SWUpdate中称为处理程序). 一个用例是从外部本地媒体(如USB-Pen或sd卡)进行更新.在这种情况下,更新是在没有操作员干预的情况下完成的:它被认为是"一键更新",软件在复位时启动,只需按下一个键(或者以任何目标可以识别的方式),自动进行所有检查.最后,更新过程只向操作员报告状态(成功