设计模式: 软件设计的分层与软件开发注意事项

这篇具有很好参考价值的文章主要介绍了设计模式: 软件设计的分层与软件开发注意事项。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

软件设计的分层

  • 系统级设计架构
  • 应用级架构
  • 模块级架构
  • 代码级架构

1) 系统级设计架构

  • 应用在整个系统内,如与后台服务如何通信,与第三方系统如何集成

  • 包括业务的关系和协作的机制

  • 设计后端:与后台数据传递的机制

  • 包括:api设计规则,访问授权的一个开放标准(OAuth)跳转token的验证, 数据传递cookie等

  • 前端与后端的关系考虑的主要因素是:前后端分离的架构设计

  • 前后端分离架构其实是如何实施技术决策,用户鉴权,api接口管理和设计,api文档管理,mock的使用,BFF(服务于前端的后端,nodejs), 是否需要服务端渲染等

  • 举例:微前端架构

    • 在一个系统内微前端是应用间的架构方案
    • 在多个应用之间,微前端则是一种系统间的架构方案,负责调度多个子应用
    • 微前端是将多个前端应用合在一起使用
    • 旨在解决单体应用在一个相对长的时间跨度下,由于参与人员、团队的增多,变迁,从一个普通应用演变成一个巨石应用(Frontedn Monolith)后,随之而来的应用不可维护的问题
      • 微前端的实现形式,有两种

        • 单实例:同一时刻,只有一个子应用被展示,子应用具备一个完整的应用生命周期
        • 多实例:在同一时刻,多个子应用被展示
          • 通常,使用Web Components 方案来做子应用的封装,子应用更像是一个业务组件而不是应用
      • 两者都说是基于url的变化来做子应用的切换,由此在设计的时候,微前端的架构设计可以理解为系统级架构,也可以理解为应用级架构

2)应用级架构

  • 应用级架构可看做是系统级架构的细化
  • 单个应用与其他外部应用的关系,微服务架构下多个应用的协作,数据交换等
  • 应用级架构的设计形式
    • 应用间的脚手架:应用的生成,项目的生成
    • 模式库:方法和UI库等
    • 设计系统:整体应用内部实现的功能与外部的信息交互

3)模块级的架构

  • 可理解为业务编码之前的设计
  • 关注模块内如何组织相关的业务逻辑

4) 代码级架构文章来源地址https://www.toymoban.com/news/detail-726095.html

  • 规范与原则
  • 实操:开发流程,代码质量以及改善,规范而非默契

软件开发需要注意的内容

  1. 注意可维护性,可扩展性
  2. 简单代码可维护性高,越是写的抽象的代码,越难以维护
  3. 这里需要注意下
    • 在系统常规业务开发的时候可以简单来
    • 但是在实现抽象库,核心库, 该抽象的时候必须抽象和高扩展性,写好文档
    • 一个程序员的深度可以表现在他(她)能写出多抽象的代码

到了这里,关于设计模式: 软件设计的分层与软件开发注意事项的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据驱动开发模式将软件开发过程改造成一个公式化的迭代模式,可以提升软件开发效率,缩短开发周期,降低开发成本。

    作者:禅与计算机程序设计艺术 随着云计算、大数据等新兴技术的应用,软件开发领域迎来了蓬勃发展的时期。各种编程语言、框架、工具不断涌现,协同工作的强烈需求已经成为当今社会的一个主要挑战。这就需要一种新的开发方式来适应这种复杂多变的环境。传统的瀑布

    2024年02月06日
    浏览(78)
  • 《移动互联网技术》 第十章 系统与通信: 掌握Android系统的分层架构设计思想和基于组件的设计模式

    🌷🍁 博主 libin9iOak带您 Go to New World.✨🍁 🦄 个人主页——libin9iOak的博客🎐 🐳 《面试题大全》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 🌊 《IDEA开发秘籍》学会IDEA常用操作,工作效率翻倍~💐 🪁🍁 希望本文能够给您带来一定的帮助🌸文章粗浅,敬

    2024年02月16日
    浏览(56)
  • 汽车软件开发模式的5个特点

    汽车软件开发属于较为复杂的系统工程,经常让来自不同知识背景的工程师在观点交锋时出现分歧。在解决复杂性和对齐讨论基准时,可以通过勾勒出讨论对象最关键的几个特征来树立典型概念。本文旨在通过5个典型特点的抽取,来勾勒出汽车软件开发模式的特殊性和变迁性

    2024年02月19日
    浏览(36)
  • .net 软件开发模式——三层架构

    三层架构是一种常用的软件开发架构模式,它将应用程序分为三个层次: 表示层、业务逻辑层和数据访问层 。每一层都有明确的职责和功能,分别负责用户交互、业务处理和数据存储等任务。这种架构模式的优点包括易于维护和扩展、更好的组织结构和代码重用性、更高的

    2024年02月10日
    浏览(55)
  • 敏捷:应对软件定义汽车时代的开发模式变革

    ​ 随着软件定义汽车典型应用场景的落地,汽车从交通工具转向智能移动终端的趋势愈发明显。几十年前,一台好车的定义主要取决于高性能的底盘操稳与动力系统;几年前,一台好车的定义主要取决于智能化系统与智能交互能否满足终端用户的用车体验;相信不久后的将来

    2024年02月05日
    浏览(58)
  • 【鸿蒙软件开发】UIAbility组件概况、生命周期与启动模式

    UIAbility组件是一种包含UI界面的应用组件,主要用于和用户交互。 UIAbility组件是系统调度的基本单元,为应用提供绘制界面的窗口;一个UIAbility组件中可以通过多个页面来实现一个功能模块。每一个UIAbility组件实例,都对应于一个最近任务列表中的任务。 UIAbility组件是一种包

    2024年02月05日
    浏览(62)
  • 软件架构设计(八) 基于架构的软件开发方法

    ABSD虽然在日常生活中并不常见,但是在考试中却是极为常见的,因此仍然是我们的重点学习知识点。 特点 基于架构的软件设计(Architecture-Based Software Design,ABSD),这个开发方法是 架构驱动 。 即 强调由业务、质量和功能需求的组合驱动架构设计 。就是会考虑到业务的情况

    2024年02月09日
    浏览(51)
  • 软件设计模式与体系结构-设计模式-行为型软件设计模式-策略模式

    策略模式(Strategy Pattern)是一种行为型设计模式,它定义了一系列算法,并将每个算法封装在独立的类中,使它们可以相互替换。策略模式使得算法可以独立于使用它们的客户端而变化。 下面是一个使用策略模式的简单代码示例,以解释其工作原理: 在上述示例中,策略模

    2024年02月13日
    浏览(121)
  • 软件设计模式与体系结构-设计模式-行为型软件设计模式-状态模式

    与策略模式类似,状态模式将不同状态下的行为封装在不同的类中,每个类代表一个状态 状态模式的组成 Context:定义了与客户程序的接口,它保持了一个concreteState的代表现在状态的实例 State:定义了状态接口,它的各个子类封装了在各种不同状态下的行为 ConcreteState子类:

    2024年02月13日
    浏览(46)
  • 软件设计模式与体系结构-设计模式-行为型软件设计模式-中介者模式

    模式动机: 为了减少对象两之间复杂的引用关系,使之成为一个松耦合的系统,需要适用中介者模式 定义: 用一个中介对象来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使耦合松散,而且可以独立地该变它们之间的交互 中介者模式又称为调停者模

    2024年02月12日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包