• 技术大会
  • 极客时间
  • 极客时间训练营
  • 团队学习
  • 高端会员
  • App 下载
  • 技术团队访谈录
  • 案例研习社
10 月,开发者不可错过的开源大数据大会-2021 WeDataSphere 社区大会深圳站 了解详情 
logo
  • 首页
  • 直播
  • 专题
  • 电子书
  • 话题
  • 免费视频
  • 技术博客
  • 热点资讯

 写点什么

创作场景


  • 记录自己日常工作的实践、心得
  • 发表对生活和职场的感悟
  • 针对感兴趣的事件发表随笔或者杂谈
  • 从0到1详细介绍你掌握的一门语言、一个技术,或者一个兴趣、爱好
  • 或者,就直接把你的个人博客、公众号直接搬到这里
登录/注册
  • 架构
  • 前端
  • 编程语言
  • 云计算
  • AI
  • 开源
  • 技术管理
  • 运维
  • 区块链
  • 新基建
  • 云原生
  • 产品
  • 热点推荐
  • 大数据
用户头像

Tom弹架构

2021 年 10 月 22 日加入
不只做一个技术者,更要做一个思考者
畅销书作者,代表作品:
《Spring 5核心原理与30个类手写实战》
《Netty 4核心原理与手写RPC框架实战》
《设计模式就该这样学》
 关注
  • 10

    发布数

  • 0

    关注者

  • 0

    关注了

  • 发布
  • 评论
  • 划线
  • 收藏
  • 关注
  • 全部分类 
这样学 BAT 必面之软件设计原则,还不会就是我的问题

用户头像
Tom弹架构

2 小时前

学习设计原则是学习设计模式的基础。在实际开发过程中,并不要求所有代码都遵循设计原则,我们要考虑人力、时间、成本、质量,不能刻意追求完美,但要在适当的场景遵循设计原则,这体现的是一种平衡取舍,可以帮助我们设计出更加优雅的代码结构。

软件架构设计原则之合成复用原则

用户头像
Tom弹架构

2 小时前

合成复用原则(Composite/Aggregate Reuse Principle,CARP)是指尽量使用对象组合(has-a)/ 聚合(contanis-a)而不是继承关系达到软件复用的目的。可以使系统更加灵活,降低类与类之间的耦合度,一个类的变化对其他类造成的影响相对较少。

软件架构设计原则之里氏替换原则

用户头像
Tom弹架构

2 小时前

里氏替换原则(Liskov Substitution Principle,LSP)是指如果对每一个类型为 T1 的对象 o1,都有类型为 T2 的对象 O2,使得以 T1 定义的所有程序 P 在所有的对象 O1 都替换成 O2 时,程序 P 的行为没有发生变化,那么类型 T2 是类型 T1 的子类型。

软件架构设计原则之迪米特法则

用户头像
Tom弹架构

2 小时前

迪米特原则(Law of Demeter LoD)是指一个对象应该对其他对象保持最少的了解,又叫最少知道原则(Least Knowledge Principle,LKP),尽量降低类与类之间的耦合度。迪米特原则主要强调:只和朋友交流,不和陌生人说话。出现在成员变量、方法的输入、输出参数

软件架构设计原则之接口隔离原则

用户头像
Tom弹架构

2 小时前

接口隔离原则(Interface Segregation Principle, ISP)是指用多个专门的接口,而不使用单一的总接口,客户端不应该依赖它不需要的接口。这个原则指导我们在设计接口时应当注意以下几点:

软件架构设计原则之单一职责原则

用户头像
Tom弹架构

2 小时前

单一职责(Simple Responsibility Pinciple,SRP)是指不要存在多于一个导致类变更的原因。假设我们有一个类负责两个职责,一旦发生需求变更,修改其中一个职责的逻辑代码,有可能导致另一个职责的功能发生故障。这样一来,这个类就存在两个导致类变更的原因

软件架构设计原则之依赖倒置原则

用户头像
Tom弹架构

2 小时前

依赖倒置原则(Dependence Inversion Principle,DIP)是指设计代码结构时,高层模块不应该依赖低层模块,二者都应该依赖其抽象。抽象不应该依赖细节,细节应该依赖抽象。通过依赖倒置,可以减少类与类之间的耦合性,提高系统的稳定性,提高代码的可读性和可

软件架构设计原则之开闭原则

用户头像
Tom弹架构

2 小时前

开闭原则(Open-Closed Principle,OCP)是指一个软件实体(如类、模块和函数)应该对扩展开放,对修改关闭。所谓的开闭,也正是对扩展和修改两个行为的一个原则。它强调的是用抽象构建框架,用实现扩展细节,可以提高软件系统的可复用性及可维护性。开闭原则

Spring 版本命名规则

用户头像
Tom弹架构

2 小时前

1 常见软件的版本命名

Spring 5 系统架构

用户头像
Tom弹架构

2 小时前

Spring 大约有 20 个模块,由 1300 多个不同的文件构成。这些模块可以分为核心容器、AOP 和设备支持、数据访问与集成、Web 组件、通信报文和集成测试、集成兼容等类。Spring 5 的模块结构如下图所示。

个人成就
  • 发布了 10 篇内容

    共 14297字, 被阅读 55次

  • 获得了 0 次赞同

    获得了 0次喜欢, 获得了 0 次收藏

  • 参与了 0 次互动

    互动包含发布评论、点赞评论、参与投票等

TA 关注的
频道
  • 运维
  • 架构
  • 云计算
  • logo

    促进软件开发及相关领域知识与创新的传播

    活动大本营
    • 更多精彩活动持续更新
  • InfoQ
    关于我们
    我要投稿
    合作伙伴
    加入我们
    关注我们
  • 联系我们
    内容投稿:editors@geekbang.com
    业务合作:hezuo@geekbang.com
    反馈投诉:feedback@geekbang.com
    加入我们:zhaopin@geekbang.com
    联系电话:010-64738142
    地址:北京市朝阳区叶青大厦北园
  • InfoQ 近期会议
    会议图片QCon全球软件开发大会 10月21-23日
    会议图片AICon全球人工智能与机器学习技术大会 11月5-6日
    会议图片ArchSummit全球架构师峰会 11月12-13日
    会议图片GMTC全球大前端技术大会 11月19-20日
    会议图片PCon全球产品创新大会 11月26-27日
    会议图片DIVE全球基础软件创新大会 11月26-27日
    会议图片ArchSummit全球架构师峰会 12月3-4日
  • 全球 InfoQ
    会议图片InfoQ En
    会议图片InfoQ Jp
    会议图片InfoQ Fr
    会议图片InfoQ Br
Copyright © 2021, Geekbang Technology Ltd. All rights reserved. 极客邦控股(北京)有限公司 | 京 ICP 备 16027448 号 - 5京公网安备京公网安备 11010502039052号
Tom弹架构