6 条重要的软件架构原则
6 条重要的软件架构原则
6 条重要的软件架构原则,办公软件完整版,来源软件,在线朗读软件示例:如果您制作(编码和实施)您的个人公司互联网浏览器、邮件应用程序或办公软件包,会发生什么?答:你会花很多时间和金钱。您将无法专注于您的核心业务。通常,您的解决方案会非常独特,以至于在糟糕的情况下,它需要额外的用户培训。尤其是在大公司中,验证解决方案是否已经存在、购买、实施或是否已经针对给定问题运行是有意义的。有时您会在公司的另一个部门找到正在运行的软件解决方案。如果您的公司还没有可用的软件来解决需求,您应该首先进行市场调查。在大多数情况下,有不同的软件解决方案提供商或多或少专业化。如果您的要求非常特殊以至于没有合适的解决方案,您应该制作您的软件。这是您创建和销售用于特殊用途的软件的核心业务。并以此赚钱。
2. 为云构建现代软件应用程序需要能够在 AWS、Azure、GCP 等云环境中运行。如今,没有一家公司愿意运营自己的数据中心,除非出于特殊原因必须这样做。通常,使用大型提供商的云环境要便宜得多。大型云提供商在安全方面和可用性方面也有更多的经验和更高的可靠性。您唯一应该确保的是,您在技术上并没有与特定的云提供商联系得太紧密。那么风险就是陷入供应商锁定。如果您想购买软件,则需要验证该软件可以在您喜欢的云环境中运行。
3. 可扩展软件可扩展性是系统的一种属性,可根据用户的需求增加其容量和/或功能。可扩展软件随负载变化稳定运行。无需停机即可部署更改和升级。云环境的优势在于应用程序可以灵活地对负载做出反应。这降低了基础架构成本并增加了软件的响应时间和可用性。请记住,市场上的许多标准软件只能垂直扩展(向上扩展)。这意味着它们仅在添加存储和 CPU 时进行扩展。为此,通常需要重新启动服务器,这会影响系统的可用性。通过使用横向扩展(横向扩展),系统资源和可用性几乎没有限制。例如,可以添加和删除其他服务器。负载变化时,软件系统开始“呼吸”。如果以正确的方式配置,它可以降低基础架构成本。
4. 降低复杂性复杂性是成本驱动因素。如果您使应用程序保持简单,则可以节省资金。KISS 原则要求搜索问题以找到最简单的解决方案。复杂性的降低始于需求的定义。降低复杂性的一种方法是询问“需要特定功能的频率”。降低复杂性的另一种可能性是投资回报率 (ROI) 问题。降低复杂性的一个优势是系统的更好可控性和公司中安装的应用程序的概览。如果您遵循重用原则,这也会降低组织的复杂性。
5. API优先API first 意味着使用此原则设计的应用程序可以更容易地集成到其他系统中,因此更加灵活。此外,所有应用程序功能都可以通过 API(应用程序编程接口)访问,而不仅仅是少数。API 允许公司将功能分解为单独的、自主的服务。基于微服务构建应用程序有助于确保所有设备上的良好用户体验 (UX)。API 优先策略允许组织构建服务于所有应用程序的 API,并且可以为所有设备、平台和操作系统有效地开发和维护。
6. 经常发布并避免大爆炸式部署最好的做法是将更改分解成更小的块并经常部署而不是一个大版本。这种最佳实践降低了复杂性并提高了变更的可管理性。同时,它减少了推出软件时的业务影响和风险,因为只有很小的部分发生了变化,并且可以更容易地回滚。另一个好处是您的用户和利益相关者经常会获得新的功能片段并看到稳定的改进流。值得考虑投资于自动交付管道,该管道应在项目开始时存在并与系统一起开发。
相关文章
- 6个完全免费的“真香”软件
- 详解三星Galaxy Z Fold4立式交互模式 原来手机可以这样用
- 想做好软件测试要学习哪些东西?
- 【KEYE凯悦】背景墙|最全背景墙设计方案-壁纸壁画壁布
- Blender软件下载和初步认识
- Camtasia喀秋莎最新版2022有效密钥及下载功简介
- sai怎么画人物?sai绘画入门教程!
- 【耳边评测】两万三买块砖?海贝音乐HiBy RS8旗舰播放器听感评测
- 2015-2022年中国软件产业调研与行业前景调研评报告
- 5款高阶摄影软件推荐手机也能搞定专业摄影!
- 新型勒索病毒“借刀杀人”:磁盘保护工具竟成勒索帮凶
- 4个免费下载哔哩哔哩视频方法想看什么都可以下载成功
- 显示器怎么选参数强就是好?
- 【经典案例】Minitab之MSA分析实例PPT
- Photoshop图像处理技术
- 2014中国软件和信息服务榜单
- @铜梁家长 这封信请查收事关您孩子的学习!
- 2023北京英语听说机考在线体验系统下载入口及操作流程
- OPPO智能电视R1乐享版怎么安装第三方应用当贝市场免费安装第三方应用软件
- Adobe Photoshop(Ps)2023软件安装包下载及安装教程(mac+windows多版PS软件)