32、开源软件:代码复用与开发的新范式

开源软件:代码复用与开发的新范式

1. 软件行业现状与代码复用困境

在当今的软件行业中,存在着诸多问题,导致大量的时间、资金和人力技能被浪费。许多编程机构存在着严重的“非我发明症候群”,对代码复用持有矛盾态度。一方面,为了赶进度,他们会向程序员推行那些虽大力营销但并不完善的供应商组件;另一方面,却拒绝复用程序员自己经过测试的代码。这就导致程序员们不断产出大量临时、重复的软件,即便他们明知这些结果可能是垃圾代码,也只能无奈地处理自己负责的部分。

在这样的文化环境下,有一种类似代码复用的教条出现:一旦为代码付了钱,就绝不能丢弃,即便所有人都知道重新编写会更好,也只能不断打补丁、修修补补。随着时间的推移,这种文化下产生的产品会变得越来越臃肿、漏洞百出,即便每个参与者都在尽力做好工作。

2. 透明度:代码复用的关键

代码复用的诸多问题,根源往往在于缺乏透明度。对于一个具有复杂 API 的软件,如果无法深入了解其内部,就无法对其进行修复,甚至不能正确使用。文档在实际应用和理论上都存在不足,无法传达代码所蕴含的所有细微差别。

以 Unix 程序员的经验为例,源代码具有长久的价值,而目标代码则不然。硬件平台、支持库等服务组件以及操作系统的 API 都在不断变化,但不透明的二进制可执行文件无法适应这些变化。它们很脆弱,难以进行可靠的向前移植,还需要越来越厚且易出错的模拟代码层来支持。因此,即使没有改变软件的意图和需求,为了在新环境中运行软件,也需要源代码。

透明度的重要性以及代码遗留问题,都表明我们应该要求复用的代码是可检查和修改的。不过,这还不是对“开源”的完整论证,因为“开源”的含义比仅仅要求代码透明和可见更为丰富。

下载前可以先看下教程 https://pan.quark.cn/s/16a53f4bd595 小天才电话手表刷机教程 — 基础篇 我们将为您简单的介绍小天才电话手表机型的简单刷机以及玩法,如adb工具的使用,magisk的刷入等等。 我们会确保您看完此教程后能够对Android系统有一个最基本的认识,以及能够成功通过magisk root您的手表,并安装您需要的第三方软件。 ADB Android Debug Bridge,简称,在android developer的adb文档中是这么描述它的: 是一种多功能命令行工具,可让您设备进行通信。 该命令有助于各种设备操作,例如安装和调试应用程序。 提供对 Unix shell 的访问,您可以使用它在设备上运行各种命令。 它是一个客户端-服务器程序。 这听起来有些难以理解,因为您也没有必要去理解它,如果您对本文中的任何关键名词产生疑惑或兴趣,您都可以在搜索引擎中去搜索它,当然,我们会对其进行简单的解释:是一款在命令行中运行的,用于对Android设备进行调试的工具,并拥有比一般用户以及程序更高的权限,所以,我们可以使用它对Android设备进行最基本的调试操作。 而在小天才电话手表上启用它,您只需要这么做: - 打开拨号盘; - 输入; - 点按打开adb调试选项。 其次是电脑上的Android SDK Platform-Tools的安装,此工具是 Android SDK 的组件。 它包括 Android 平台交互的工具,主要由和构成,如果您接触过Android开发,必然会使用到它,因为它包含在Android Studio等IDE中,当然,您可以独立下载,在下方选择对应的版本即可: - Download SDK Platform...
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值