当前位置: 首页 > wzjs >正文

郑州龙华小学网站建设WordPress博客Modown模板

郑州龙华小学网站建设,WordPress博客Modown模板,新闻软文广告,66郑州网站建设编程规范 编程范式设计原则常用的设计模式设计扩展性的思考应用分层规范 编程范式 结构化编程 C语言(if/else结构)面向对象编程(OOP) JAVA语言(将程序组织为类与类之间的交互)函数式编程(FP&am…

编程规范

  • 编程范式
  • 设计原则
  • 常用的设计模式
  • 设计扩展性的思考
  • 应用分层规范

编程范式

  • 结构化编程
    C语言(if/else结构)
  • 面向对象编程(OOP)
    JAVA语言(将程序组织为类与类之间的交互)
  • 函数式编程(FP)
    没有典型的语言,AI中常用python的FP特性来进行数据处理,但python同时也能支持OOP。python用于数据处理的方便之处在于语法简单,数据处理的第三方库丰富。

设计原则

目前最被广泛接受的是SOLID原则:

  • Single Responsibility Principle(单一职责原则)
    类或函数的功能要尽量单一,从而保证各模块尽量正交,引起每个模块的变动的来源更加地少;
  • Open-Closed Principle(开闭原则)
    对扩展开放,对修改关闭
  • Liskov Substitution Principle(里氏替换原则)
    做继承设计时,要从父类角度思考,设计行为一致的子类,子类和父类是is-A的关系
  • Integerface Segregation Principle(接口隔离原则)
    类似SRP,ISP表达了接口设计时应遵循职责尽量单一的原则,只不过SRP是从代码维护者的角度,而ISP是从使用者的角度
  • Dependency Reversion(依赖倒置原则)
    实现应该依赖于抽象

常用的设计模式

  1. 创建型:简单工厂、工厂方法、抽象工厂:
    简单工厂是通过一个简单工厂类根据不同的输入,实现不同的处理方式(一般通过if-else实现);工厂方法是针对不同的实现方式抽象出一个工厂方法接口,然后不同的处理方式去实现这个接口得到不同的工厂,这种方式更符合开闭原则;抽象工厂是当不同的工厂类需要实现不止一个工厂方法接口时,在抽象的工厂类中新增更多的工厂方法接口,然后不同的工厂都去实现这些接口,抽象工厂用的比较少,一般这种情况就会用抽象类来代替了,因为可能还有公共的属性。
  2. 结构型:代理模式、装饰器模式、适配器:
    代理模式,如Spring AOP就是典型的动态代理设计模式,核心目的是在屏蔽用户感知的情况下,控制对象的访问,通常应用在日志、埋点、监控、鉴权、事务等;
    装饰器模式,本质是要解决类继承深度过深,然后通过组合的方式,实现多重装饰进行嵌套,从而避免继承问题;
    适配器模式,本质是将不同的实现统一成相同的接口,比如Slf4j日志框架,通过统一日志接口定义,然后为不同的日志框架实现如log4j和logback构造对应的适配器,适配器来实现统一的接口,从而形成了接口和实现的解耦。
  3. 行为型:观察者模式、模版模式、职责链模式:
    观察者模式,例如google的eventbus就是基于该模式进行的设计,所有观察者可以注册到需要监听的event上,event发送时触发调用相应观察者进行处理。总体来说分为异步和同步两种,异步一般就是通过新起线程来实现。
    模版模式,通过抽象出子类公共的功能,增加代码复用,同时对流程中需要有不同实现的环节预留扩展点。典型的应用就是callBack。
    职责链模式,应用于需要将一个业务流程各环节进行拆分,每个环节分配给一个对应的职责类来处理,如流水线上不同工位可以看作不同的职责类,整个流水线就应用类职责链模式。

设计扩展性的思考

基于开闭原则,我们平时在技术设计时要预留足够的扩展性,同时也注意不要过度设计。
扩展性设计主要体现在下面几个方面:

  • 数据库扩展性
    设计数据库时,要确认好产品的功能全景和发展方向,针对有较大可能的功能预留扩展字段;预估业务体量,考虑是否应用分库分表;
  • 代码扩展性
    厘清业务迭代方向,形成产品全景,通过功能抽象,应用设计模式保证代码满足SOLID特性。

应用分层规范

Starter层
Biz层
Dao层
Common层
Api层
Api-impl层
Integration层
http://www.dtcms.com/wzjs/788236.html

相关文章:

  • 网站建设合同书wordpress国内支付
  • 网站建设费用贵不贵做企业网站有效果吗
  • ECMS做的网站做死活题网站
  • 杭州网站程序开发公司网页设计实训结论
  • 网站单页面怎么做的汝阳网站建设
  • 做ppt常用的网站有哪些东莞网站设计建设公司
  • 禹州市门户网站建设华为最新消息
  • 网站空间免泰安市人才交流服务中心
  • 盐城公司网站建设做网站最基础需要什么条件
  • 贵阳网站推广¥做下拉去118cr五大建设内容
  • 国外网站开发技术福州网站建设网络公司
  • 网站制作公司兴田德润i在哪里公司网站建设要求书
  • 杭州自助建站河北建设厅网站开通账号
  • 网页设计与网站建设西方设计网站
  • 网站建设工程师职责在线一键生成网页
  • 在门户网站做产品seo广州电商小程序开发
  • 域名做网站北海建设网站
  • 万和城官方网站北京流感最新消息
  • 延吉市建设厅网站卖狗做网站什么关键词最好
  • 跨境电商网站开发公司现在广告行业好做吗
  • 莒县做网站的电话flash网站的优点和缺点
  • 网站建设体会doc贵阳官网建设价格
  • 网站建设哪些好网站开发有什么好的介绍
  • 用c 做毕业设计的音乐网站软件应用商店下载免费
  • 展会网站建设海底捞口碑营销案例
  • 写作网站推荐中山 网站建设开发
  • 汽车行业网站建设比较好学校官方网站
  • 带分期功能的网站建设建筑人才网下载安装
  • 建设网站公司名称大全wordpress wp user frontend
  • wordpress 缩略图广州seo关键词优化外包