编程艺术之变成原则

news2025/4/8 7:39:41

编程有一个原则,就是尽可能去避免重复的代码。

类的开闭原则,类做好后,就尽量不要再在类上面在修改代码,

耦合度:简单的一个例子,活字印刷术在之前是整版印刷,导致,如果有一个字要改动,那么整版的印刷体都不在能用,减少耦合度,就是减少出现字体改动时,不要有太大成本的改动。

在这里插入图片描述

编程是一门技术,更加是一门艺术,不能只满足与写完代码运行结果正确就完事了,时长考虑如何让代码更加简练,更加容易维护,容易扩展和复用,只有这样才可以真正得到提升。

写出优雅的代码真的是一种很爽的事情。

简单工厂模式

自己的理解,就是将各个方法进行单一话,功能结构单一,再使用继承的方式和 switch 的组合让各个零散的功能聚合,这就是低耦合,高内聚。

简单工厂模式,本身并没有多么复杂,就是将本质性的和直观的进行了分离和关系的调用,

简单工厂是将各个类共有的做了一个抽象,比如 加减乘除的计算,都需要有个结果的

工厂类,实现的价值就是一个壳子,就是各个功能的一个枢纽区,加减乘除的调用关系,而实际的计算是在各自的类里,这些类可以独立存在,不需要频繁拿出来,做修改。

工厂模式有:简单工厂模式,工厂方法模式,抽象工厂模式

策略模式

策略模式,实质上是封装算法, 工厂模式,把 new 创建对象封装起来,而策略模式是将 new 对象作为参数

说明

面向对象的编程,并不是类越多越好,类的划分是为了封装,但分类的基础是抽象,具有相同属性和功能的对象的抽象集合才是类。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/109661.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

作一回白嫖怪:写一个脚本自动获取ST官网积分,用积分领取奖品

环境:Python、selenium、ubuntu22.04 网址:STMCU中文官网 chrome: 版本 108.0.5359.124(正式版本) (64 位) chromeDriver: CNPM Binaries Mirror 这两个文件我打包起来了,0积分方便大家…

【表格合并与底纹】vue-elementul表格简单实现合并单元格,与列和行给底纹颜色

前言 这是一个很常见的需求啊,因为很多公司都会涉及到写表格展示数据 那么在某些公司内就会出现为了让数据更直观的感受到 而让你给某些行和列用颜色标出来。使得看起来更方便 那么这里就汇总一下常用的横竖合并以及横竖颜色底纹如何实现 效果图 这是写的一个dem…

小米便签维护过程记录——可能出现问题解决方案

在对小米便签开源代码进行研究和维护及新功能开发的同时,会遇到很多问题,将以本文进行记录总结。 导入项目 若不导入直接Open会导致默认为Project,不为Android。 小米标签菜单栏不显示的问题 先来看NotesListActivity类,这个类创…

Zookeeper 4 Zookeeper JavaAPI 操作 4.5 Curator API 常用操作【修改节点】

Zookeeper 【黑马程序员Zookeeper视频教程,快速入门zookeeper技术】 文章目录Zookeeper4 Zookeeper JavaAPI 操作4.5 Curator API 常用操作4.5.1 修改节点4 Zookeeper JavaAPI 操作 4.5 Curator API 常用操作 4.5.1 修改节点 直接开干 修改之前app1 的数据是本机…

PS1文件执行

PS1文件执行目录概述需求:设计思路实现思路分析1.power shell 管理2.shell 管理执行参考资料和推荐阅读Survive by day and develop by night. talk for import biz , show your perfect code,full busy,skip hardness,make a better result,wait for ch…

软件需求说明书(GB856T——88)基于协同的在线表格forture-sheet

软件需求说明书的编写提示 1引言 1.1产品目的 制造一个功能丰富,配置简单的在线表格组件,开箱即用,产品对位所有办公用户,可以大量用户同时在线进行协同合作办公,可以大大的提高工作效率。 1.2产品范畴 产品为软件…

Javaweb会话跟踪技术(Cookie和Session)

目录 一、会话跟踪技术概述 二、Cookie 1.Cookie基本原理 2.Cookie基本使用 3.Cookie存活时间 4.cookie存储中文 三、Session 1.Session钝化、活化 2.Session基本使用 3.sesion销毁 四Cookie和Sesion区别 一、会话跟踪技术概述 1.会话:用户打开浏览器&…

Java和vue开发的橱柜定制系统家具定制系统

简介 橱柜定制家具定制系统。用户查看家具样本,进行预约下单,后台人员根据用户的要求给出效果图和方案,以及报价,填写上门时间。管理员上门测量和用户确定好需求后上传协议,此时订单变成待开工订单,后台人…

过半985、单岗位2K+简历!速腾聚创如何开展校园招聘?

在半导体、芯片等新兴科技产业,人才短缺和人才培养已经成为全球性问题。 速腾聚创是国内激光雷达领域的龙头企业,在庞大人才实力的助推下,构建起激光雷达硬件、感知软件和芯片三大核心技术闭环,通过领先的技术实力和过硬的产品质量…

VB实现火焰的效果

Option Explicit 锁定指定窗口,禁止它更新。同一时刻间只能有一个窗口处于锁定状态,可用在界面作大弧度布局改变时。 Private Declare Function LockWindowUpdate Lib “user32” (ByVal hwndLock As Long) As Long 在指定的设备场景中设置一个像素的RGB…

机器学习多分类二分类回归问题数据集分享

数据集: https://download.csdn.net/download/qq_38735017/87336921

DocuWare 文档管理软件在医疗保健行业的应用

DocuWare 文档管理软件在医疗保健行业的应用 尽管技术在其他领域取得了很大进步,但许多医院、门诊机构和医疗保健提供商仍然使用过时的系统来管理计费、财务和人力资源等文档密集型流程。借助快速、安全、灵活的 DocuWare 文档管理软件,可以节省您的时间…

基于注解方式实现Spring Security忽略拦截

文章目录1.Spring Security忽略拦截配置2.基于配置文件注入2.1.添加配置2.2.修改Spring Security配置类2.3. 测试3.基于注解的方式过滤接口3.1.添加忽略拦截注解3.2.获取所有使用了IgnoreWebSecurity注解的接口访问路径3.3.测试1.Spring Security忽略拦截配置 关于Spring Secu…

启动项目端口被占用无奈只能重启?程序员的电脑绝不允许重启!

各位小伙伴大家好呀~最近疫情严重很多小伙伴都阳了༼༎ຶᴗ༎ຶ༽虽然放开了,但还是要注意防护呀! 我们在写代码的时候,很多小伙伴都遇到过启动项目但是端口被占用,找了半天也不知道究竟谁占用的,所以就使出了“杀手锏…

@Scope注解的使用方法

Scope注解的使用方法 原文详细参考 1.Scope注解是什么 Scope注解是 Spring IOC 容器中的一个作用域,在 Spring IOC 容器中,他用来配置Bean实例的作用域对象。Scope 具有以下几种作用域: singleton 单实例的(单例)(默认)   ----全局有且…

OPTIONS 漏洞修复

文章目录前言:OPTIONS 漏洞说明Nginx 修复方法环境说明修复测试Tomcat 修复方法环境说明修复测试Tomcat 版本:8.5.3 测试SpringBoot 项目修复方法环境说明修复测试总结前言:OPTIONS 漏洞说明 漏洞名称 : OPTIONS method is enabl…

Docker+Jenkins+Gitee+Maven构建后台jar包后配置SSH传送到服务器并执行指定命令

场景 DockerJenkinsGiteeMaven项目配置jdk、maven、gitee等拉取代码并自动构建以及遇到的那些坑: DockerJenkinsGiteeMaven项目配置jdk、maven、gitee等拉取代码并自动构建以及遇到的那些坑_霸道流氓气质的博客-CSDN博客 在上面将后台jar包构建成功之后&#xff…

【SpringMVC】SpringMVC的入门

1.SpringMVC的入门案例 1.1 项目目录 1.2 配置核心控制器和编码过滤器(web.xml) <?xml version"1.0" encoding"UTF-8"?> <web-app><display-name>Archetype Created Web Application</display-name><!--配置spring mvc的核…

20221223英语学习

今日托福词汇 review n.复习; 回顾, 检讨; 检阅; 评论; 详检, 审核; 回放功能 tentative adj.试验性的; 不确定的; 暂时的; 犹豫的, 踌躇不决的 synonym n.同义词 confine v.限制&#xff1b;监禁 parking n.机动车停放&#xff1b;停车场 sculpture n.雕像&#xff0c;雕…

高通 OpenXR SDK 使用指南(2)

高通 OpenXR SDK 使用指南&#xff08;2&#xff09;1.5 OpenXR 生命周期1.5 OpenXR 生命周期 下图是 OpenXR 框架生命周期的流转过程。 此图中描述了以下过程&#xff1a; 应用程序首先使用 xrEnumerateApiLayerProperties 查询 API 层和扩展属性。 API层可以是以下类型&a…