好的软件应该满足的特点
- 软件的纯粹性:只做软件功能需要的事情,不做软件功能之外的事情。
- 软件的可控性:软件执行的任何功能都出自用户的控制,不会强制执行某些用户不期望的功能。微软的windows10的自动更新就是强制用户升级。没有按照用户的意愿去执行功能。
- 软件的透明性:软件做的所有事情都让用户知晓。很多流氓软件,他们所作的事情就是在背后监视和窃取用户的信息。用户看到的只是表面的东西。他们背后做的事情更多。
- 软件的独立性:软件与其它组件解除耦合。互相可以替换而不是绑定。
- 软件的开放性:软件保持开放的标准,可以互相配合使用。linux系统的很多工具通过管道互相配合,发挥强大的作用。
- 软件的高效性:软件应该高效的实现功能,不占用过多资源,低效软件会白白的浪费掉空间和性能。,办法就是用简单和清晰的结构去实现功能,软件结构越是简单和清晰,越是稳定和高效。
- 软件的安全和稳定性:软软件应该运行稳定,不会出现意想不到的情况和崩溃,即使出错也不会造成太多损失。