知己知彼,百戰不殆:“金三銀四”橫掃BAT面試之Spring108問!

說在前面

過年之後相信有一部分的人,早已磨刀霍霍向大廠。勢必要大展拳腳,必將在大廠內創出一片天地。但是,想必大家都知道:最近幾年的最嚴重的互聯網寒冬來臨,各位兄弟都會說“江湖再見”。耳邊總是充刺著流言蜚語,這個地方裁員了,這個地方縮減HC。弄得人心慌慌。年後將是一片血雨腥風,程序界的江湖將在這一天精彩斑斕。

但我們要知道,寒冬之中,什麼是最珍貴,就讓鄙人告訴你:人才。只要有過硬的技術和裝備,在逆風直下的情況下,咱們也能迎難而上,打他個戳手不及。不是“李雲龍”大哥說:“過狹路相逢勇者勝。”

知己知彼,百戰不殆:“金三銀四”橫掃BAT面試之Spring108問!

金三銀四俗稱跳槽黃金季,雖然今年的情況可能“特殊”點,但也不影響大家拿高薪,去更牛逼的公司,認識更多大牛,提升自己的職場競爭力的想法。

那怎樣才能通過BAT面試官的考核?怎樣成為一名Offer收割機?

收割Offer有一個最直接的公示:Offer=硬實力+軟實力+好的心態,三者缺一不可

硬實力

這裡說的硬實力,也就是技術上的真實積累。

怎麼來體現你的技術實力?總的分為:技術深度和技術廣度這兩方面

技術廣度通俗的講,就是你熟悉該技術點的使用以及基本原理。一般面試官在面試首輪會問很多技術點,來考核你是否能正確使用。

技術深度通俗的講,就是深入技術原理的同時,還知道優劣勢比較,以及同類產品的橫向和縱向比較,以及非常重要的應用場景。比如:消息隊列MQ,市面有哪些MQ,RabbitMQ、RocketMQ、ActiveMQ…等等他們各自的架構設計,優劣勢比較,各自的應用場景(併發量和使用優劣比較等)。以及MQ的消息去重,如何保證消息不丟失等。這樣就沿著MQ這個話題,深入的去考核你對MQ的掌握程度。

技術包括了

網絡編程

  • Http和Https
  • OSI7層模型
  • 網絡安全防範:CSRF、XSS等

算法和數據結構

  • 數組、鏈表、二叉樹、隊列
  • 紅黑樹、AVL樹、Hash樹、Tire樹、B樹、B+樹
  • 各類排序算法以及複雜度分析(快排、歸併、堆)
  • 二分查找和各種變種的二分查找
  • 手寫算法等

JVM

  • 內存回收算法
  • 垃圾收集器
  • 性能調優

併發編程

  • 多線程
  • NIO
  • 併發容器
  • 併發工具類
  • …等

數據庫

  • mysql和nosql
  • 索引、慢查詢、事務
  • 大數據方案:分庫分表、讀寫分離、數據主從同步

分佈式架構設計

  • Redis問得比較多(建議重點掌握)
  • 消息隊列Kafka、RabbitMQ、RocketMQ(阿里會問)
  • 微服務:Dubbo、Spring Cloud等

負載均衡

  • 分佈式理論:CAP、BASE等
  • 應用系統拆分
  • 分佈式鎖、分佈式事務、分佈式全局唯一ID…等

軟實力

軟實力在面試過程中也尤為重要(有時候真的要更重要),主要是指和麵試官的溝通,對一個問題的闡述方式和表達方式,邏輯思維能力等。

面試過程全程微笑,項目描述需要嚴謹的表述,個人的優缺點基本要做到隨口而出…等這些其實就是軟實力的體現。

知己知彼,百戰不殆:“金三銀四”橫掃BAT面試之Spring108問!

Spring面試108問

一個好的面試問題能使應聘者的本性顯露出來——誠實,可信,反應敏銳等等。這裡我整理出關於 Spring 的面試題。希望這個總結能為面試官和應聘者提供一些參考,若你能輕而易舉回答所有問題,相信這一塊的面試就不必擔心了。

PS:因文章篇幅問題,我這裡沒有全部進行解答,我已經整理打包成PDF文檔,有需要的可以轉發關注我後臺私信【Java】獲取!

Spring基礎68題

1.什 麼 是 spring?

2.使 用 Spring 框 架 的 好 處 是 什 麼 ?

  • 輕 量:Spring 是 輕 量 的 , 基 本 的 版 本 大 約 2MB。
  • 控 制 反 轉 :Spring 通 過 控 制 反 轉 實 現 了 松 散 耦 合 , 對 象們 給 出 它 們 的 依 賴 , 而 不 是 創 建 或 查 找 依 賴 的 對 象 們 。
  • 面 向 切 面 的 編 程(AOP):Spring 支 持 面 向 切 面 的 編 程 ,並 且 把 應 用 業 務 邏 輯 和 系 統 服 務 分 開 。
  • 容 器 :Spring 包 含 並 管 理 應 用 中 對 象 的 生 命 周 期 和 配置 。
  • MVC 框 架:Spring 的 WEB 框 架 是 個 精 心 設 計 的 框 架 ,是 Web 框 架 的 一 個 很 好 的 替 代 品 。
  • 事 務 管 理:Spring 提 供 一 個 持 續 的 事 務 管 理 接 口 , 可 以擴 展 到 上 至 本 地 事 務 下 至 全 局 事 務 (JTA) 。
  • 異 常 處 理:Spring 提 供 方 便 的 API 把 具 體 技 術 相 關 的 異常 ( 比 如 由 JDBC,Hibernate or JDO 拋 出 的 ) 轉 化 為一 致 的 unchecked 異 常 。

3.Spring 由 哪 些 模 塊 組 成?

4.核 心 容 器 ( 應 用 上 下 文) 模 塊

這 是 基 本 的 Spring 模 塊 , 提 供 spring 框 架 的 基 礎 功能 ,BeanFactory 是 任 何 以 spring 為 基 礎 的 應 用 的 核心 。Spring 框 架 建 立 在 此 模 塊 之 上 , 它 使 Spring 成 為一 個 容 器。

5.BeanFactory – BeanFactory 實 現 舉 例

Bean 工 廠 是 工 廠 模 式 的 一 個 實 現 , 提 供 了 控 制 反 轉 功能 , 用 來 把 應 用 的 配 置 和 依 賴 從 正 真 的 應 用 代 碼 中 分離 。最 常 用 的 BeanFactory 實 現 是 XmlBeanFactory 類 。

6.XMLBeanFactory

最 常 用 的 就 是org.springframework.beans.factory.xml.XmlBeanFactory , 它 根 據 XML 文 件 中 的 定 義 加 載 beans。 該 容 器從 XML 文 件 讀 取 配 置 元 數 據 並 用 它 去 創 建 一 個 完 全 配 置的 系 統 或 應 用。

7.解 釋 AOP 模 塊

AOP 模 塊 用 於 發 給 我 們 的 Spring 應 用 做 面 向 切 面 的 開發 , 很 多 支 持 由 AOP 聯 盟 提 供 , 這 樣 就 確 保 了 Spring和 其 他 AOP 框 架 的 共 通 性 。 這 個 模 塊 將 元 數 據 編 程 引 入Spring。

8.解 釋 JDBC 抽 象 和 DAO 模 塊

通 過 使 用 JDBC 抽 象 和 DAO 模 塊 , 保 證 數 據 庫 代 碼 的 簡潔 , 並 能 避 免 數 據 庫 資 源 錯 誤 關 閉 導 致 的 問 題 , 它 在 各種 不 同 的 數 據 庫 的 錯 誤 信 息 之 上 , 提 供 了 一 個 統 一 的 異常 訪 問 層 。 它 還 利 用 Spring 的 AOP 模 塊 給 Spring 應用 中 的 對 象 提 供 事 務 管 理 服 務 。

9.解 釋 對 象/關 系 映 射 集 成 模 塊

10.解 釋 WEB 模 塊

11.Spring 配 置 文 件

12.什 麼 是 Spring IOC 容 器

Spring IOC 負 責 創 建 對 象 , 管 理 對 象 ( 通 過 依 賴 注 入(DI) , 裝 配 對 象 , 配 置 對 象 , 並 且 管 理 這 些 對 象 的 整個 生 命 周 期。

13.IOC 的 優 點 是 什 麼

IOC 或 依 賴 注 入 把 應 用 的 代 碼 量 降 到 最 低 。 它 使 應 用 容易 測 試 , 單 元 測 試 不 再 需 要 單 例 和 JNDI 查 找 機 制 。 最小 的 代 價 和 最 小 的 侵 入 性 使 松 散 耦 合 得 以 實 現 。IOC 容器 支 持 加 載 服 務 時 的 餓 漢 式 初 始 化 和 懶 加 載 。

14.ApplicationContext 通 常 的 實 現 是 什 麼?

  • FileSystemXmlApplicationContext :此 容 器 從 一 個XML 文 件 中 加 載 beans 的 定 義 ,XML Bean 配 置 文 件 的全 路 徑 名 必 須 提 供 給 它 的 構 造 函 數 。
  • ClassPathXmlApplicationContext:此 容 器 也 從 一 個XML 文 件 中 加 載 beans 的 定 義 , 這 裡 , 你 需 要 正 確 設 置classpath 因 為 這 個 容 器 將 在 classpath 裡 找 bean 配置 。
  • WebXmlApplicationContext:此 容 器 加 載 一 個 XML文 件 , 此 文 件 定 義 了 一 個 WEB 應 用 的 所 有 bean。

15.Bean 工 廠 和 Application contexts 有 什 麼 區別

Application contexts 提 供 一 種 方 法 處 理 文 本 消 息 , 一個 通 常 的 做 法 是 加 載 文 件 資 源 ( 比 如 鏡 像 ) , 它 們 可 以向 注 冊 為 監 聽 器 的 bean 發 布 事 件 。 另 外 , 在 容 器 或 容器 內 的 對 象 上 執 行 的 那 些 不 得 不 由 bean 工 廠 以 程 序 化方 式 處 理 的 操 作 , 可 以 在 Application contexts 中 以 聲明 的 方 式 處 理 。Application contexts 實 現 了MessageSource 接 口 , 該 接 口 的 實 現 以 可 插 拔 的 方 式 提供 獲 取 本 地 化 消 息 的 方 法 。

16.一 個 Spring 的 應 用 看 起 來 象 什 麼

  • 一 個 定 義 了 一 些 功 能 的 接 口 。
  • 這 實 現 包 括 屬 性 , 它 的 Setter , getter 方 法 和 函 數等 。
  • Spring AOP
  • Spring 的 XML 配 置 文 件
  • 使 用 以 上 功 能 的 客 戶 端 程 序

17.什 麼 是 Spring 的 依 賴 注 入

18.有 哪 些 不 同 類 型 的 IOC( 依 賴 注 入 )方 式

  • 構 造 器 依 賴 注 入 :構 造 器 依 賴 注 入 通 過 容 器 觸 發 一 個 類的 構 造 器 來 實 現 的 , 該 類 有 一 系 列 參 數 , 每 個 參 數 代 表一 個 對 其 他 類 的 依 賴 。
  • Setter 方 法 注 入:Setter 方 法 注 入 是 容 器 通 過 調 用 無 參構 造 器 或 無 參 static 工 廠 方 法 實 例 化 bean 之 後 , 調 用該 bean 的 setter 方 法 , 即 實 現 了 基 於 setter 的 依 賴 注入

19.哪 種 依 賴 注 入 方 式 你 建 議 使 用 , 構 造 器 注 入 , 還 是Setter 方 法 注 入

20.什 麼 是 Spring beans?

21.一 個 Spring Bean 定 義 包 含 什 麼

22.如 何 給 Spring 容 器 提 供 配 置 元 數 據?

23.你 怎 樣 定 義 類 的 作 用 域?

當 定 義 一 個<bean> 在 Spring 裡 , 我 們 還 能 給 這 個bean 聲 明 一 個 作 用 域 。 它 可 以 通 過 bean 定 義 中 的scope 屬 性來 定 義 。 如 , 當 Spring 要 在 需 要 的 時 候 每 次生 產 一 個 新 的 bean 實 例 ,bean 的 scope 屬 性 被 指 定 為prototype。 另 一 方 面 , 一 個 bean 每 次 使 用 的 時 候 必 須返 回 同 一 個 實 例 , 這 個 bean 的 scope 屬 性 必 須 設 為singleton。/<bean>

24.解 釋 Spring 支 持 的 幾 種 bean 的 作 用 域

Spring 框 架 支 持 以 下 五 種 bean 的 作 用 域 :

  • singleton : bean 在 每 個 Spring ioc 容 器 中 只 有 一 個 實例 。
  • prototype: 一 個 bean 的 定 義 可 以 有 多 個 實 例 。
  • request
    : 每 次 http 請 求 都 會 創 建 一 個 bean, 該 作 用域 僅 在 基 於 web 的 Spring ApplicationContext 情 形 下有 效 。
    session: 在 一 個 HTTP Session 中 , 一 個 bean 定 義 對應 一 個 實 例 。 該 作 用 域 僅 在 基 於 web 的Spring ApplicationContext 情 形 下 有 效 。
  • global-session: 在 一 個 全 局 的 HTTP Session 中 , 一個 bean 定 義 對 應 一 個 實 例 。 該 作 用 域 僅 在 基 於 web 的Spring ApplicationContext 情 形 下 有 效 。缺 省 的 Spring bean 的 作 用 域 是 Singleton.

25.Spring 框 架 中 的 單 例 bean 是 線 程 安 全 的 嗎

不 ,Spring 框 架 中 的 單 例 bean 不 是 線 程 安 全 的 。

26.解 釋 Spring 框 架 中 bean 的 生 命 周 期

27.哪 些 是 重 要 的 bean 生 命 周 期 方 法 ? 你 能 重 載 它 們嗎

28.什麼是 Spring 的內部 bean

29.在 Spring 中如何注入一個 java 集合

30.什麼是 bean 裝配

31.什麼是 bean 的自動裝配

32.解釋不同方式的自動裝配

33.自動裝配有哪些侷限性

34.你可以在 Spring 中注入一個 null 和一個空字符串嗎

35.什 麼 是 基 於 Java 的 Spring 注 解 配 置? 給 一 些 注 解的 例 子

36.什 麼 是 基 於 注 解 的 容 器 配 置

37.怎 樣 開 啟 注 解 裝 配

38.@Required 注 解

39.@Autowired 注 解

40.@Qualifier 注 解

41.在 Spring 框 架 中 如 何 更 有 效 地 使 用 JDBC

42.JdbcTemplate

43.Spring 對 DAO 的 支 持

44.使 用 Spring 通 過 什 麼 方 式 訪 問 Hibernate

45.Spring 支 持 的 ORM

46.如 何 通 過 HibernateDaoSupport 將 Spring 和Hibernate 結 合 起 來

47.Spring 支 持 的 事 務 管 理 類 型

48.Spring 框 架 的 事 務 管 理 有 哪 些 優 點

49.你 更 傾 向 用 那 種 事 務 管 理 類 型

50.解 釋 AOP

51.Aspect 切 面

52.在 Spring AOP 中 , 關 注 點 和 橫 切 關 注 的 區 別 是 什麼

53.連 接 點

連 接 點 代 表 一 個 應 用 程 序 的 某 個 位 置 , 在 這 個 位 置 我 們可 以 插 入 一 個 AOP 切 面 , 它 實 際 上 是 個 應 用 程 序 執 行Spring AOP 的 位 置 。

54.通 知

通 知 是 個 在 方 法 執 行 前 或 執 行 後 要 做 的 動 作 , 實 際 上 是程 序 執 行 時 要 通 過 SpringAOP 框 架 觸 發 的 代 碼 段 。Spring 切 面 可 以 應 用 五 種 類 型 的 通 知 :

  • before: 前 置 通 知 , 在 一 個 方 法 執 行 前 被 調 用 。
  • after: 在 方 法 執 行 之 後 調 用 的 通 知 , 無 論 方 法 執 行 是 否成 功 。
  • after-returning: 僅 當 方 法 成 功 完 成 後 執 行 的 通 知 。
  • after-throwing: 在 方 法 拋 出 異 常 退 出 時 執 行 的 通 知 。
  • around: 在 方 法 執 行 之 前 和 之 後 調 用 的 通 知 。

55.切 點

切 入 點 是 一 個 或 一 組 連 接 點 , 通 知 將 在 這 些 位 置 執 行 。可 以 通 過 表 達 式 或 匹 配 的 方 式 指 明 切 入 點 。

56.什 麼 是 引 入

57.什 麼 是 目 標 對 象

58.什 麼 是 代 理

59.有 幾 種 不 同 類 型 的 自 動 代 理

60.什 麼 是 織 入 。 什 麼 是 織 入 應 用 的 不 同 點

61. 解 釋 基 於 XML Schema 方 式 的 切 面 實 現

62.. 解 釋 基 於 注 解 的 切 面 實 現

63.什 麼 是 Spring 的 MVC 框 架

64.DispatcherServlet

Spring 的 MVC 框 架 是 圍 繞 DispatcherServlet 來 設 計的 , 它 用 來 處 理 所 有 的 HTTP 請 求 和 響 應 。

65.WebApplicationContext

WebApplicationContext 繼 承 了 ApplicationContext並 增 加 了 一 些 WEB 應 用 必 備 的 特有 功 能 , 它 不 同 於 一般 的 ApplicationContext , 因 為 它 能 處 理 主 題 , 並 找到 被 關 聯 的 servlet。

66.什 麼 是 Spring MVC 框 架 的 控 制 器

控 制 器 提 供 一 個 訪 問 應 用 程 序 的 行 為 , 此 行 為 通 常 通 過服 務 接 口 實 現 。 控 制 器 解 析 用 戶 輸 入 並 將 其 轉 換 為 一 個由 視 圖 呈 現 給 用 戶 的 模 型 。Spring 用 一 個 非 常 抽 象 的 方 式 實 現 了 一 個 控 制 層 , 允 許 用 戶 創 建 多 種 用 途 的 控 制器。

67.@Controller 注 解

68.@RequestMapping 注 解

知己知彼,百戰不殆:“金三銀四”橫掃BAT面試之Spring108問!

Spring進階40題

1.什麼是 Spring 框架?

Spring 框架是一個為 Java 應用程序的開發提供了綜合、廣泛的基礎性支持的 Java 平臺。Spring 幫助開發者解決了開發中基礎性的問題,使得開發人員可以專注於應用程序的開發。Spring 框架本身亦是按照設計模式精心打造,這使得我們可以在開發環境中安心的集成 Spring 框架,不必擔心 Spring 是如何在後臺進行工作的。

2.使用 Spring 框架能帶來哪些好處

3.什麼是控制反轉(IOC)?什麼是依賴注入

4.請解釋下 Spring 框架中的 IoC?

5.BeanFactory 和 ApplicationContext 有什麼區別

6.Spring 有幾種配置方式

將 Spring 配置到應用開發中有以下三種方式:

  1. 基於 XML 的配置
  2. 基於註解的配置
  3. 基於 Java 的配置

7.如何用基於 XML 配置的方式配置 Spring

8.如何用基於 Java 配置的方式配置 Spring

9.怎樣用註解的方式配置 Spring

10.請解釋 Spring Bean 的生命週期

11.Spring Bean 的作用域之間有什麼區別

Spring 容器中的 bean 可以分為 5 個範圍。所有範圍的名稱都是自說明的,但是為了避免混淆,還是讓我們來解釋一下:

  • singleton:這種 bean 範圍是默認的,這種範圍確保不管接受到多少個請求,每個容器中只有一個 bean 的實例,單例的模式由 bean factory 自身來維護。
  • prototype:原形範圍與單例範圍相反,為每一個 bean 請求提供一個實例。
  • request:在請求 bean 範圍內會每一個來自客戶端的網絡請求創建一個實例,在請求完成以後,bean 會失效並被垃圾回收器回收。
  • Session:與請求範圍類似,確保每個 session 中有一個 bean的實例,在 session 過期後,bean 會隨之失效。
  • global-session:global-session 和 Portlet 應用相關。當你的應用部署在 Portlet 容器中工作時,它包含很多 portlet。如果你想要聲明讓所有的 portlet 共用全局的存儲變量的話,那麼這全局變量需要存儲在 global-session 中。

12.什麼是 Spring inner beans

13.Spring 框架中的單例 Beans 是線程安全的麼

  • Spring 框架並沒有對單例 bean 進行任何多線程的封裝處理。關於單例 bean 的線程安全和併發問題需要開發者自行去搞定。但實際上,大部分的 Spring bean 並沒有可變的狀態(比 如 Serview 類和 DAO 類),所以在某種程度上說 Spring 的單例 bean 是線程安全的。如果你的 bean 有多種狀態的話(比如 View Model 對象),就需要自行保證線程安全。
  • 最淺顯的解決辦法就是將多態 bean 的作用域由“singleton”變更為“prototype”。

14.請舉例說明如何在 Spring 中注入一個 Java Collection

15.如何向 Spring Bean 中注入一個 Java.util.Properties

16.請解釋 Spring Bean 的自動裝配

17.請解釋自動裝配模式的區別

18.如何開啟基於註解的自動裝配

19.請舉例解釋@Required 註解

20.請舉例解釋@Autowired 註解

21.請舉例說明@Qualifier 註解

22.構造方法注入和設值注入有什麼區別

23.Spring 框架中有哪些不同類型的事件

24.FileSystemResource 和 ClassPathResource 有何區別

在 FileSystemResource 中需要給出 spring-config.xml 文件在你項目中的相對路徑或者絕對路徑。在ClassPathResource中 spring 會在 ClassPath 中自動搜尋配置文件,所以要把ClassPathResource 文件放在 ClassPath 下。

如果將 spring-config.xml 保存在了 src 文件夾下的話,只需給出配置文件的名稱即可,因為 src 文件夾是默認。

簡而言之,ClassPathResource 在環境變量中讀取配置文件,FileSystemResource 在配置文件中讀取配置文件。

25.Spring 框架中都用到了哪些設計模式

Spring 框架中使用到了大量的設計模式,下面列舉了比較有代表性的:

  1. 代理模式—在 AOP 和 remoting 中被用的比較多。
  2. 單例模式—在 spring 配置文件中定義的 bean 默認為單例模式。
  3. 模板方法—用來解決代碼重複的問題。比如. RestTemplate,JmsTemplate, JpaTemplate。 4. 前端控制器—Spring 提供了 DispatcherServlet 來對請求進行分發。
  4. 視圖幫助(View Helper )—Spring 提供了一系列的 JSP 標籤,高效宏來輔助將分散的代碼整合在視圖裡。
  5. 依賴注入—貫穿於 BeanFactory / ApplicationContext 接口的核心理念。
  6. 工廠模式—BeanFactory 用來創建對象的實例。

26.談談你對 spring IOC 和 DI 的理解,它們有什麼區別

27.BeanFactory 接口和 ApplicationContext 接口有什麼區別

28.spring 配置 bean 實例化有哪些方式

29.簡單的說一下 spring 的生命週期

30.請介紹一下 Spring 框架中 Bean 的生命週期和作用域

31.Bean 注入屬性有哪幾種方式

spring 支持構造器注入和 setter 方法注構造器注入, 通過元素完成注入 setter 方法注入,通過元素完成注入【開發中常用方式】

32.什麼是 AOP,AOP 的作用是什麼

33.Spring 的核心類有哪些,各有什麼作用

34.Spring 裡面如何配置數據庫驅動

35.Spring 裡面 applicationContext.xml 文件能不能改成其他文件名

36.Spring 裡面如何定義 hibernate mapping

37.Spring 如何處理線程併發問題

38.為什麼要有事物傳播行為

39.介紹一下 Spring 的事物管理

40.通知有哪些類型


共同進步,學習分享

沒有人會討厭和拒絕認真準備面試的人,所以不要認為面試就是必須用一個“素顏”的你去“真誠”的面對。

因文章篇幅問題,我這裡沒有全部進行解答,我已經整理打包成PDF文檔,有需要的可以 點擊這裡 獲取資料!

內容很多,因文章篇幅問題,我就不全部展示了,我已把所有題目(帶解析)整理成 PDF 分享給大家,另外還有一些電子書籍及架構視頻;希望能幫助到您面試前的複習且找到一個好的工作,也節省大家在網上搜索資料的時間來學習,也可以關注我一下以後會有更多幹貨分享

最後祝大家工作順利,升職加薪,面試都能通過,offer拿到手軟,早日找到心儀的工作~

資料獲取方式:轉發+轉發+轉發關注我後臺私信【Java】獲取資料領取方式!

部分資料展示

知己知彼,百戰不殆:“金三銀四”橫掃BAT面試之Spring108問!

知己知彼,百戰不殆:“金三銀四”橫掃BAT面試之Spring108問!

知己知彼,百戰不殆:“金三銀四”橫掃BAT面試之Spring108問!

最後,用 Martin Fowler 的一句話作為結尾:「任何傻瓜都能寫計算機能理解的代碼,優秀的程序員編寫人類能夠理解的代碼。」(Any fool can write code that a computer can understand. Good programmers write code that humans can understand)


分享到:


相關文章: