不认识java代码_程序员进阶:优雅的代码对于一个架构师的重要性
lison:復(fù)旦大學(xué)工程碩士,專注技術(shù)十年,產(chǎn)品控、代碼控,擁有豐富的項(xiàng)目經(jīng)驗(yàn),主持研發(fā)了多個(gè)成功上線的大型互聯(lián)網(wǎng)項(xiàng)目。熱愛互聯(lián)網(wǎng),熱衷于各種web技術(shù),精通JAVA、J2EE和前端開發(fā),擅長(zhǎng)互聯(lián)網(wǎng)高并發(fā)、高可靠架構(gòu)設(shè)計(jì),有豐富的實(shí)戰(zhàn)經(jīng)驗(yàn)。愿意和他人分享自己對(duì)技術(shù)的理解和感悟,講課邏輯清晰,生動(dòng)幽默。
什么是臃腫的代碼
臃腫代碼表征
帶來的問題
關(guān)于注解的那些事
什么是注解?
注解(annotation):元數(shù)據(jù),一種代碼級(jí)別的說明;簡(jiǎn)單的說,注解如同一張標(biāo)簽;
- 解讀一:注解是一個(gè)攜帶數(shù)據(jù)的附屬品;
- 解讀二:在特定的場(chǎng)景由外部解析產(chǎn)生作用
比如說王思聰他的標(biāo)簽就是:
通過代碼了解注解的本質(zhì)
關(guān)于注解的定義 — 元注解
1,@Documented –注解是否將包含在JavaDoc中
2,@Retention –什么時(shí)候使用該注解
可選值為:source、class、runtime,
3,@Target – 注解用于什么地方
- TYPE:表示可以用來修飾類、接口、注解類型或枚舉類型;
- PACKAGE:可以用來修飾包;
- PARAMETER:可以用來修飾參數(shù);
- ANNOTATION_TYPE:可以用來修飾注解類型;
- METHOD:可以用來修飾方法;
- FIELD:可以用來修飾屬性(包括枚舉常量);
- CONSTRUCTOR:可以用來修飾構(gòu)造器;
- LOCAL_VARIABLE:可用來修飾局部變量
4,@Inherited – 是否允許子類繼承該注解
關(guān)于注解的解析
要獲取類方法和字段的注解信息,必須通過Java的反射技術(shù)來獲取 Annotation對(duì)象,因?yàn)槟愠酥鉀]有別的獲取注解對(duì)象的方法;
談到這里大家就得思考一個(gè)問題
阿里面試問題:對(duì)于一個(gè)http請(qǐng)求,為什么Spring MVC 能準(zhǔn)確的找到對(duì)應(yīng)controller的某個(gè)方法進(jìn)行處理?
臃腫代碼美容手術(shù)的設(shè)計(jì)原則是什么?
單一職責(zé)原則:一個(gè)類或者一個(gè)接口只負(fù)責(zé)唯一項(xiàng)職責(zé),盡量設(shè)計(jì)出功能單一的接口;
技術(shù)方案:Spring AOP增強(qiáng) + 自定義注解
現(xiàn)學(xué)現(xiàn)用讓代碼妙筆生花
EL表達(dá)式解析過程
階段知識(shí)點(diǎn)復(fù)盤
評(píng)論區(qū)附詳細(xì)視頻講解資料獲取方式
Java面試核心筆記
Spring原理
微服務(wù)
由于篇幅限制,還有關(guān)于Java基礎(chǔ)、JVM、Java多線程并發(fā)、Java集合、Netty、RabbitMQ、kafka、數(shù)據(jù)結(jié)構(gòu)、算法、數(shù)據(jù)庫(kù)等就不一一展示了,如果對(duì)這份核心知識(shí)感興趣的朋友,以及優(yōu)雅代碼對(duì)于一個(gè)架構(gòu)師的重要性講解這節(jié)視頻的可以看關(guān)注轉(zhuǎn)發(fā)后臺(tái)私信回復(fù)關(guān)鍵詞【代碼】獲取原視頻講解,需要Java面試核心知識(shí)點(diǎn)筆記的可以轉(zhuǎn)發(fā)后后臺(tái)私信回復(fù)關(guān)鍵詞【筆記】領(lǐng)取原文件獲取方式。
總結(jié)
以上是生活随笔為你收集整理的不认识java代码_程序员进阶:优雅的代码对于一个架构师的重要性的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 状态码转字典文本_pyth
- 下一篇: 京瓷6525_京瓷6525扫描怎么设置?