最新要闻
- 20万能买到?极氪003最新预告:3米级加速秒杀百万超跑
- 滚导和盘托出未来规划 超人新片定档2025年
- 全球观察:12.4万买下保时捷帕纳梅拉 涉事博主:无成本新车营销成功案例
- 3层果肉 层层爆浆 榴莲西施榴莲千层蛋糕6寸:两盒69.9元
- 环球最资讯丨博主怒斥极氪汽车站不起来 居然致敬燃油车奥迪Q3
- 一劳永逸打一地名是什么?一劳永逸和一蹴而就的区别是什么?
- 怒晴湘西讲的是什么故事?怒晴湘西大结局是什么?
- 阳光大道是什么意思?阳光大道打一个生肖是什么?
- 萝卜喝醉了会变成什么?脑筋急转弯大全
- 南国新川是什么意思?南国新川在哪里?
- 可测水温、室温、体温 一机多用:可孚红外电子体温枪29.9元发车
- 全球热点评!投入一亿建立优化实验室:一加Ace 2《原神》表现稳了
- 李一男造车“破梦重圆”?自游家NV现身奇瑞商用车总部
- 天天动态:男孩撸猫后发烧12天:腋下长鸡蛋大肿块
- 环球热推荐:知名车评人侮辱特斯拉被判赔10万 车评人上诉
- 国内首家!奇瑞霸气官宣:旗下四大品牌全系车型终身质保
广告
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
读Java8函数式编程笔记07_设计和架构的原则
(资料图)
1.SOLID原则
1.1.开发良好面向对象程序的准则
1.2.Liskov substitution里氏替换
1.3.Interface segregation接口隔离
1.4.Single responsibility单一功能原则
1.4.1.程序中的类或方法只能有一个改变的理由
1.4.2.一个类不仅要功能单一,而且还需将功能封装好
1.5.Open/closed开闭原则
1.5.1.软件应该对扩展开放,对修改闭合
1.5.1.1.让软件易于修改
1.5.2.高阶函数在用多态来实现开闭原则
1.5.3.使用不可变对象实现开闭原则
1.6.Dependency inversion依赖反转原则
1.6.1.抽象不应依赖细节,细节应该依赖抽象
1.6.1.1.待依赖的抽象不必是接口
1.6.2.让程序员脱离底层粘合代码,编写上层业务逻辑代码
1.6.3.高阶函数提供了反转控制
1.6.4.模块化和重用方式是双向的
1.6.4.1.可以替换不同的细节重用上层代码
1.6.4.2.可以替换不同的业务逻辑重用细节的实现
2.不可变性
2.1.观测不可变性
2.1.1.在其他对象看来,该类是不可变的
2.1.2.java.lang.String
2.1.2.1.第一次调用hashCode方法时缓存了生成的散列值
2.1.3.观测不可变性不意味着实现不可变性
2.2.实现不可变性
2.2.1.对象本身不可变
2.2.2.实现不可变性意味着观测不可变性
3.设计模式
3.1.有些模式会变得过时
3.2.Lambda能让很多现有设计模式更简单、可读性更强
3.2.1.将大量代码塞进一个方法会让可读性变差是决定如何使用Lambda表达式的黄金法则
4.单例模式
4.1.应该避免使用的模式
4.2.敏捷开发使其成了一个反模式
5.命令者模式
5.1.命令者是一个对象,它封装了调用另一个方法的所有细节
5.2.使用该对象,可以编写出根据运行期条件,顺序调用方法的一般化代码
5.3.函数接口Runnable
5.4.宏只是使用命令者模式的一个例子,它被大量用在实现组件化的图形界面系统、撤销功能、线程池、事务和向导中
5.5.使用Lambda表达式或是方法引用,能让代码更简洁,去除了大量样板代码,让代码意图更加明显
6.策略模式
6.1.能在运行时改变软件的算法行为
6.2.定义一个通用的问题,使用不同的算法来实现,然后将这些算法都封装在一个统一接口的背后
6.3.使用Lambda表达式或者方法引用可以去掉样板代码
7.观察者模式
7.1.可被Lambda表达式简化和改进的行为模式
7.2.被观察者持有一个观察者列表。当被观察者的状态发生改变,会通知观察者。
7.3.观察者模式被大量应用于基于MVC的GUI工具中,以此让模型状态发生变化时,自动刷新视图模块,达到二者之间的解耦
8.模板方法模式
8.1.整体算法的设计是一个抽象类,它有一系列抽象方法,代表算法中可被定制的步骤,同时这个类中包含了一些通用代码
8.2.算法的每一个变种由具体的类实现,它们重写了抽象方法,提供了相应的实现
8.3.将一组方法调用按一定顺序组织起来
8.4.如果用函数接口表示函数,用Lambda表达式或者方法引用实现这些接口,相比使用继承构建算法,就会得到极大的灵活性
8.4.1.使用函数接口实现方法并没有排除继承的方式
9.领域专用语言(DSL)
9.1.针对软件系统中某特定部分的编程语言
9.1.1.比较小巧
9.1.2.表达能力也不如通用语言强
9.1.3.不求面面俱到,但求有所专长
9.2.Domain-Specific Languages
9.2.1.Martin Fowler和Rebecca Parsons合著
9.2.2.Addison-Wesley出版社出版
9.3.外部DSL
9.3.1.脱离程序源码编写,然后单独解析和实现
9.3.2.例如
9.3.2.1.级联样式表(CSS)
9.3.2.2.正则表达式
9.4.内部DSL
9.4.1.嵌入编写它们的编程语言中
9.4.2.普通的类库,提供API方便使用
9.4.3.例如
9.4.3.1.JMock
9.4.3.2.Mockito
9.4.3.3.JOOQ
9.4.3.4.Querydsl
10.行为驱动开发(BDD)
10.1.测试驱动开发(TDD)的一个变种
10.2.它的重点是描述程序的行为,而非一组需要通过的单元测试
-
读Java8函数式编程笔记07_设计和架构的原则
1 & 160;SOLID原则1 1 & 160;开发良好面向对象程序的准则1 2 & 160;Liskovsubstitution里氏替换1 3 & 160;Interfacesegreg
来源: 读Java8函数式编程笔记07_设计和架构的原则
20万能买到?极氪003最新预告:3米级加速秒杀百万超跑
滚导和盘托出未来规划 超人新片定档2025年
全球观察:12.4万买下保时捷帕纳梅拉 涉事博主:无成本新车营销成功案例
3层果肉 层层爆浆 榴莲西施榴莲千层蛋糕6寸:两盒69.9元
环球最资讯丨博主怒斥极氪汽车站不起来 居然致敬燃油车奥迪Q3
三星s3370手机有触控笔吗?三星s3370手机参数
怎么删除地址栏里的网址记录?如何恢复删除的网址记录?
tdscdma手机怎么样?tdscdma手机铃声静音怎么解除?
魅族m8什么时候上市的?魅族m8手机参数
All Share Play是什么意思?All Share Play功能是什么?
一劳永逸打一地名是什么?一劳永逸和一蹴而就的区别是什么?
怒晴湘西讲的是什么故事?怒晴湘西大结局是什么?
阳光大道是什么意思?阳光大道打一个生肖是什么?
世界聚焦:linux服务器运行java项目, 监控查看内存、储存空间和cpu占用率
热点!火山引擎 DataTester:0 代码也能实施 A/B 测试的实验平台
世界滚动:一看就懂!任务提交的资源判断在Taier中的实践
全球热文:全球首个面向遥感任务设计的亿级视觉Transformer大模型
萝卜喝醉了会变成什么?脑筋急转弯大全
南国新川是什么意思?南国新川在哪里?
可测水温、室温、体温 一机多用:可孚红外电子体温枪29.9元发车
全球热点评!投入一亿建立优化实验室:一加Ace 2《原神》表现稳了
李一男造车“破梦重圆”?自游家NV现身奇瑞商用车总部
天天动态:男孩撸猫后发烧12天:腋下长鸡蛋大肿块
环球热推荐:知名车评人侮辱特斯拉被判赔10万 车评人上诉
activiti审批流源码,落地版教程
天天新消息丨easy excel 导入导出
全球最资讯丨@vue/cli 插件开发之自动根据目录列表生成别名配置
国内首家!奇瑞霸气官宣:旗下四大品牌全系车型终身质保
环球观察:30年前拍不成 现在香爆!郭帆拍《流浪地球3》 图恒宇写“4”原因揭晓
天天要闻:颜值碾压BBA 马自达旗舰CX-90全球首发:国产后或砍3.3T
支付巨头PayPal“挥刀”裁员7%:2000名员工将被辞退
当前快报:反向操作?特斯拉降价后 宝马、牧马人等油车主动涨价
全球看点:OKR之剑·实战篇04:OKR执行过程优化的那些关键事
用户不升Win11原因扎心!微软正式停售Win10:ISO等继续下载
比SSD便宜 还写不死!净亏4.4亿美元 西数力挺机械硬盘:9亿美元要收铠侠
小米商城惊现神价格!将近500块的手机壳只要10元 米粉疯狂下单
今日报丨曝苹果2025年推出折叠屏MacBook:20.5英寸屏 颠覆以往
环球最资讯丨韩国刷新世界最低生育率纪录 一小学上演1人毕业季:网友唏嘘
联想小新Pro 16 23款轻薄本真机首曝:115W性能释放堪比游戏本
【计算机网络】Stanford CS144 Lab0 : networking warmup 学习记录
天天最资讯丨React框架运行机制
netcore之异步并不是多线程!
天天观点:NVIDIA御用游戏《赛博朋克2077》终于支持DLSS 3:性能暴涨3.9倍!
天天热推荐:机械硬盘:彻底陨落
天天热头条丨地球最黑暗的时刻:被狂轰滥炸长达2000万年
信息:游客岳飞观高喊“还我河山” 砸打秦桧像:景区已报警
焦点热文:丰田章男:一年卖出1049万辆汽车!却败给了电动车
环球快报:特斯拉2022年在华营收181.45亿美元:占比降至约22%
天天微动态丨千呼万唤始出来 《赛博朋克2077》正式支持DLSS3
神十五乘组太空过春节!这一看就是咱中国的空间站:红红火火
天天热头条丨MySQL之MVCC总结理解
环球关注:autojs实例02-为朋友圈指定好友点赞
Prometheus&Grafana基本使用
直播:5万年一遇绿色彗星逼近地球 肉眼可见
python教程:shutil高级文件操作
当前播报:自定义ConditionalOnXX注解(二)
世界焦点!河南矿山开工招聘电话被打爆:因6100万奖金火出圈
天天热议:对不起!《狂飙》反派集体直播“道歉”:阵势让网友欢呼太上头
观热点:日本厂商2023年推出新款磁带收音机:支持U盘数据转录
天天日报丨戴尔灵越Pro 2023系列上架:13代酷睿P系 5999元起
DDS结构的FPGA实现
【算法训练营day34】LeetCode1005. K次取反后最大化的数组和 LeetCode134. 加油站 LeetCode135. 分发糖果
天天观焦点:女子有洁癖:每天消杀双手10次 结果患乏脂性皮炎
最新快讯!彻底消灭自燃!宝马今年开始测试固态电池:计划两年后装车
世界信息:情人节倒计时 国外动物园想出报复前任的绝妙点子:蟑螂惨了
当前速讯:宏碁杀入显卡市场!通吃Intel/AMD、不碰NVIDIA
新资讯:《狂飙》热播!湖南一网吧凌晨变《狂飙》专场
实时焦点:如何手动补充陈年老库(或纯 JS 代码)的 TypeScript 类型?
中国新车质量榜:前四均被合资车企包揽 本田最大赢家
刷新中国影史记录!2023年院线全年总票房已破百亿
播报:男生和女生初四相亲初八订婚:称不想耽误节后上班!网友惊到
全球热头条丨《黑豹2》中国角色海报发布:全员黑色皮肤 2月7日上映
看点:我国自研水陆飞机!“鲲龙”AG600M全面进入型号取证试飞阶段
博客园主题美化DIY教程
全球短讯!优秀前端都应该具备的开发好习惯,坚持了效率翻倍
每日视讯:有博主称《满江红》制作成本不到1000万!歌手胡彦斌一番话上了热搜第一
视焦点讯!Xbox月活用户突破1.2亿!微软赢麻了
全球快看:强盛集团橱窗上架《孙子兵法》:还卖小灵通手机壳
迄今为止最庞大的公版显卡来了?RTX 4090Ti/Titan曝光
比亚迪正式进军日本市场卖车:“两田一产”如临大敌
世界消息!Linux 服务器Python后台运行服务(ssh断开不退出)
资讯推荐:Docker-consul的容器服务更新与发现
【天天时快讯】记录--手把手教学,实现一个优雅的图片预览
每日快报!首款车明年量产!小米汽车最新专利公布:手表控制车有戏
天天热文:A卡游戏画面鲜艳 N卡灰蒙蒙?可能是这里设置错了
焦点播报:北美杀入前十后《流浪地球2》官宣:2月9日在中国香港及澳门上映
焦点简讯:三体人为什么那么害怕地球人的加速器?中科院科普
中国航天科技喊话《流浪地球2》:太空天梯、地球车站、空间驿站有望实现
全球报道:网易二面:CPU狂飙900%,该怎么处理?
每日看点!男子打赏女主播1.8万后起诉欲要回!最终被驳回诉求
焦点速递!男子寄5万元笔记本被摔坏索赔遭拒:屏幕、键盘都烂了 维修要2万
动视暴雪点赞《最后生还者》:索尼令人敬畏 我们被收购是应该的
天天热头条丨官网12.4万元帕纳梅拉遭抢购 保时捷:情况属实 已与首单用户达成协议
当前观察:索尼PS5现货全开放!黄牛惨了:带大量机器退货遭拒
环球资讯:Redis数据结构实战演练,看看微博、微信、购物车、抽奖小程序是如何使用的?
全球聚焦:【促进开发】上海道宁与DHTMLX为您提供易于使用且功能丰富的JavaScript组件
APITable:免费开源的多维表格与可视化数据库,上线1天斩获GitHub星标1000+
今日精选:HTTP笔记1--网络模型
环球速讯:selenium + python自动化测试环境搭建