AI 助理
备案 控制台
开发者社区 开发与运维 文章 正文

黄山归来不看岳:《Java开发手册(黄山版)》新增 11 条规约

简介: 黄山归来不看岳:《Java开发手册(黄山版)》新增 11 条规约



孤尽老师有话说

五岳归来不看山,黄山归来不看岳!从2015年到2022年,希望这是爱因斯坦的第三个小板凳,点点滴滴,希望对大家的程序员生涯有帮助

《Java开发手册(黄山版)》下载


1. 聊聊版本沿革

最初的版本,没有名称,只有版本号,从1.0.0开始,后来感觉并不利于传播,改成以五岳来命名。因为华山最有武侠渊源,所以第一个版本叫做《华山版》,边上的码出真功有点向周星驰电影功夫最后的场景《如来神掌》致敬的味道;华山之后,去五岳至尊泰山朝圣,感受东海日出的壮观;泰山之后,去往嵩山,因为那里有一个金庸先生笔下武功最高的人物——扫地僧,所以封面用了扫地僧的原型。印象最深的是封面,太阳下的扫地僧在台阶上的影子,来来回回还改了好几次,为了逼真,我觉得影子需要有点折子的感觉,表达这是台阶上的影子;嵩山之后,不出意外是恒山版,为此还去了悬空寺,结果无意中发现恒山和衡山的发音居然完全相同,这个在表达上是大忌,增加无谓的共同成本;为此还公开征集下一个版本名称,收到:天山版,屏峰版,玉山版,黄山版…,最后选择了黄山版,是那句诗:五岳归来不看山,黄山归来不看岳,那就遗忘掉以前的版本。


2. 以上四个版本的共同之处?

第一、都是使用了武侠的水墨画风格;第二、都是使用的红色印章的方式表达版本号;第三、推广中国元素和风景区;


3. 黄山版的更新之处?

一、排版上

统一字号改小一号,条目之间统一留出0.5行的间距,即使本次新增11条,总页数还是从嵩山版的63页减少到本次的55页:


二、内容上的其他更新如最后的版本历史所示:

回归初心,码出高效,码出质量,码出快乐,从2015到2022,痛并快乐着,坚持公益,坚持我的,一路走到黄山。无论是排版,样式,说明,正反例,过年也是仔仔校对,细细勘察,相信黄山归来不看岳,《Java开发手册(黄山版)》,相信我辈程序员值得拥有哈~

以上内容节选 https://www.zhihu.com/question/514550687/answer/2335435300


《Java开发手册(黄山版)》

孤尽老师,一直是我的榜样。你看,即使是在2022年的春节大联欢的时候,他还在“内卷”,于2月3日整理发布出《Java开发手册(黄山版)》。

记得从《Java开发手册》刚发布时,自己拿到时的欣喜感,像是“捡了个大便宜”–终于有一个国产的JAVA编码的系统总结。基于此,自己也在团队中组织培训了多次。

特别是其中的编码规约--并发处理,对于刚工作的开发人员,提前规避了很多坑,也帮助自身快速熟悉了JUC常见集合的原理和异常处理。而对于高级开发人员,其中的设计规约,从刚开始的理论熟悉,慢慢有了心悦诚服的认可。

所以,当《Java开发手册(黄山版)》发布后,我也迫不及待的通读了一遍,我知道这又是一个“修武”的好机会,哈哈。

看完《Java开发手册(黄山版)》,有三大感受: 例子更详实了,说明更醒目了,规约更完善了(多了11条,下文会一一列举)

期待后面的版本有分布式,架构图,系统设计更多的内容。(哈哈,免费的,还这么贪心)


1. 例子更详实了

1.1 常量定义-魔法值

1.2 OOP 规约–构造方法

1.3 日期时间

1.4 并发处理-线程池


2. 说明更醒目了

2.1 代码格式


3. 规约更完善了

3.1 浮点数类型的数值后缀统一为大写的 D 或 F

3.2 枚举 enum(括号内)的属性字段必须是私有且不可变

3.3 【推荐】为了保护用户隐私,日志文件中的用户敏感信息需要进行脱敏处理。

3.4【强制】对于文件上传功能,需要对于文件大小、类型进行严格检查和控制。

3.5【强制】配置文件中的密码需要加密。

3.6 【强制】在数据库中不能使用物理删除操作,要使用逻辑删除。

3.7 【强制】二方库定制包的命名方式,在规定的版本号之后加“-英文说明[序号]”,英文说明可以是部门简称、业务名称,序号直接紧跟在英文说明之后,表示此定制包的顺序号。

3.8【强制】调用远程操作必须有超时设置。

说明:类似于 HttpClient 的超时设置需要自己明确去设置 Timeout。根据经验表明,无数次的故障都是因为没有设置

超时时间。

3.9【推荐】客户端设置远程接口方法的具体超时时间(单位 ms)

超时设置生效顺序一般为:1)客户端 Special Method;2)客户端接口级别;3)服务端 Special Method;4)服务端接口级别。

3.10【推荐】了解每个服务大致的平均耗时,可以通过独立配置线程池,将较慢的服务与主线程池隔离开,免得不同服务的线程同归于尽。

3.11 【强制】系统设计时要准确识别出弱依赖,并针对性地设计降级和应急预案,保证核心系统正常可用。


琦彦
目录
相关文章
服务端技术栈
|
7天前
|
人工智能 自然语言处理 Java
Spring AI,Spring团队开发的新组件,Java工程师快来一起体验吧
文章介绍了Spring AI,这是Spring团队开发的新组件,旨在为Java开发者提供易于集成的人工智能API,包括机器学习、自然语言处理和图像识别等功能,并通过实际代码示例展示了如何快速集成和使用这些AI技术。
服务端技术栈
27 3
Spring AI,Spring团队开发的新组件,Java工程师快来一起体验吧
石小石Orz
|
12天前
|
前端开发 Oracle Java
【前端学java】java开发的依赖安装与环境配置(1)
【8月更文挑战第8天】java开发的依赖安装与环境配置
石小石Orz
29 1
【前端学java】java开发的依赖安装与环境配置(1)
热爱技术的小郑
|
5天前
|
数据采集 供应链 JavaScript
分享基于Java开发的Java毕业设计实战项目题目
这篇文章分享了67套基于Java开发的毕业设计实战项目题目,覆盖了互联网、企业管理、电子政务、Java基础项目、ERP系统、校园相关、医疗以及其他细分行业等多个领域,并推荐了使用IDEA、Vue和Springboot的技术栈。
热爱技术的小郑
22 8
李木子2024
|
2天前
|
IDE Java 开发工具
快速上手指南:如何用Spring Boot开启你的Java开发之旅?
【8月更文挑战第22天】Spring Boot由Pivotal团队开发,简化了Spring应用的创建过程。本文详述了从零开始搭建Spring Boot项目的步骤:首先确保安装了新版JDK、Maven/Gradle及IDE如IntelliJ IDEA或Eclipse;接着访问Spring Initializr网站(start.spring.io),选择所需依赖(如Web模块)并生成项目;最后,使用IDE打开生成的项目,添加`@SpringBootApplication`注解及main方法来启动应用。通过这些步骤,即便是新手也能快速上手,专注于业务逻辑的实现。
李木子2024
10 1
龙大吉
|
4天前
|
Java 持续交付 项目管理
Maven是一款基于Apache许可的项目管理和构建自动化工具,在Java开发中极为流行。
Maven是一款基于Apache许可的项目管理和构建自动化工具,在Java开发中极为流行。它采用项目对象模型(POM)来描述项目,简化构建流程。Maven提供依赖管理、标准构建生命周期、插件扩展等功能,支持多模块项目及版本控制。在Java Web开发中,Maven能够自动生成项目结构、管理依赖、自动化构建流程并运行多种插件任务,如代码质量检查和单元测试。遵循Maven的最佳实践,结合持续集成工具,可以显著提升开发效率和项目质量。
龙大吉
15 1
众所周知
|
4天前
|
Java API 数据库
详细介绍如何使用Spring Boot简化Java Web开发过程。
Spring Boot简化Java Web开发,以轻量级、易用及高度可定制著称。通过预设模板和默认配置,开发者可迅速搭建Spring应用。本文通过创建RESTful API示例介绍其快速开发流程:从环境准备、代码编写到项目运行及集成数据库等技术,展现Spring Boot如何使Java Web开发变得更高效、简洁。
众所周知
18 1
热爱技术的小郑
|
5天前
|
存储 Java 测试技术
阿里巴巴java开发手册
这篇文章是关于阿里巴巴Java开发手册的整理,内容包括编程规约、异常日志、单元测试、安全规约、MySQL数据库使用以及工程结构等方面的详细规范和建议,旨在帮助开发者编写更加规范、高效和安全的代码。
热爱技术的小郑
200 1
众所周知
|
5天前
|
分布式计算 Java API
Java 8带来了流处理与函数式编程等新特性,极大提升了开发效率
Java 8带来了流处理与函数式编程等新特性,极大提升了开发效率。流处理采用声明式编程模型,通过filter、map等操作简化数据集处理,提高代码可读性。Lambda表达式支持轻量级函数定义,配合Predicate、Function等接口,使函数式编程无缝融入Java。此外,Optional类及新日期时间API等增强功能,让开发者能更优雅地处理潜在错误,编写出更健壮的应用程序。
众所周知
11 1
热爱技术的小郑
|
10天前
|
SQL 存储 Java
完整java开发中JDBC连接数据库代码和步骤
该博客文章详细介绍了使用JDBC连接数据库的完整步骤,包括加载JDBC驱动、提供连接URL、创建数据库连接、执行SQL语句、处理结果以及关闭JDBC对象的过程,并提供了相应的示例代码。
热爱技术的小郑
10 1
招风的黑耳
|
10天前
|
安全 前端开发 Java
Web端系统开发解决跨域问题——以Java SpringBoot框架配置Cors为例
在Web安全上下文中,源(Origin)是指一个URL的协议、域名和端口号的组合。这三个部分共同定义了资源的来源,浏览器会根据这些信息来判断两个资源是否属于同一源。例如,https://www.example.com:443和http://www.example.com虽然域名相同,但由于协议和端口号不同,它们被视为不同的源。同源(Same-Origin)是指两个URL的协议、域名和端口号完全相同。只有当这些条件都满足时,浏览器才认为这两个资源来自同一源,从而允许它们之间的交互操作。
招风的黑耳
12 0
Web端系统开发解决跨域问题——以Java SpringBoot框架配置Cors为例

热门文章

最新文章

  • 1
    Java中static变量作用和用法详解
  • 2
    idea如何导入一个java Gradle项目
  • 3
    Java下一代高并发技术——虚拟线程“JEP 425: Virtual Threads (Preview)”
  • 4
    “有限”的OutputStream | 带你学《Java语言高级特性》之六十四
  • 5
    Leetcode724:寻找数组的中心索引(java、python3)
  • 6
    JAVA代码实现数据库备份
  • 7
    java启动dos命令收集笔记二
  • 8
    深入剖析Java中的装箱和拆箱(转)
  • 9
    java-数据结构-续
  • 10
    Java面向对象要点
  • 1
    本地MinIO存储服务通过Java程序结合cpolar实现远程连接上传文件
    72
  • 2
    Java 8新特性之Lambda表达式与Stream API
    47
  • 3
    深入理解Java并发编程:线程安全与性能优化
    60
  • 4
    java IO接口(Input)用法
    37
  • 5
    Java并发编程:理解并应用ReentrantLock
    43
  • 6
    Java并发编程:深入理解线程池
    26
  • 7
    Java 8新特性解析及应用区块链技术在供应链管理中的应用与挑战
    44
  • 8
    Java 效率编码 必备插件 Lombok 让代码更优雅
    22
  • 9
    Java代码一键生成数据库文档(案例详解)
    142
  • 10
    java一行代码实现RESTFul接口
    41
  • 相关课程

    更多
  • Java面试疑难点解析 - Java Web开发
  • Java面试疑难点解析 - 系统架构及项目设计
  • Java编程入门
  • Java面向对象编程
  • Java高级编程
  • 相关电子书

    更多
  • Spring Cloud Alibaba - 重新定义 Java Cloud-Native
  • The Reactive Cloud Native Arch
  • JAVA开发手册1.5.0
  • 相关实验场景

    更多
  • 基于ECS搭建Java Web开发环境
  • 使用Aliyun Java Intializr进行项目开发
  • 搭建Java Web开发环境
  • 部署基于Dragonwell的Java运行环境
  • 一键创建和部署高分电影推荐语音技能
  • 下一篇
    【案例实战】SpringBoot整合阿里云文件上传OSS

    PHP网站源码大鹏网站搭建松岗网站建设大运网站优化推广吉祥网站改版南澳模板推广大运关键词按天扣费南澳百度标王南山网站优化按天计费大运网站优化按天扣费南联百姓网标王宝安百度网站优化排名南山网站搜索优化沙井网站seo优化横岗网站优化推广深圳网站推广方案罗湖百度网站优化东莞网页制作民治关键词排名荷坳百度竞价坑梓网站推广方案大浪百度网站优化排名龙华模板制作大芬模板网站建设东莞网站推广方案惠州推广网站南联优化松岗网站优化推广坂田高端网站设计永湖标王坑梓SEO按天扣费歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

    PHP网站源码 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化