你為什麽需要一個面試題題庫
以Java開發而言。工作,最重要的效率,要盡可能快地把活做完,其次是可靠,產品功能符合預期,不出妖蛾子。在這兩個約束之下,大家會盡可能使用 簡潔方案,代碼越少越好,盡可能使用簡潔的語言特性,一眼能看懂邏輯,一眼看清Bug。同時,大多數的日常工作是在業務層,對JVM原理層要求不多。
面試則不然,全面考察知識和技能的深度廣度。一個比較常見的方式是,面試官從簡歷上挑一個項目,從需求分析,到產品架構,實現細節,部署監控,JVM調優,故障排查,一直問到GC算法,數據結構實現,問極限深度為止。這些,其實不是日常工作的場景。
比如說,“什麽是雙親委派機制?介紹一些運作過程,雙親委派模型的好處; 什麽情況下我們需要破壞雙親委派模型”。
比如說,“class 文件結構是如何解析的”。
比如說,“解釋各種鎖:自旋鎖,偏向鎖,輕量級鎖,可重入鎖,公平鎖,非公平鎖,樂觀鎖,悲觀鎖”
...
這些問題,不經過充分的準備,很難在第一次遇到的時候回答出清晰準確的答案。
各大廠、中廠、小廠的面試題風格不盡相同,而且會隨時間變動。
因此,在海投簡歷的同時,你需要一個詳細的多年的大中小廠的面試題題庫。如果這個題庫還能提供一些重要問題的答案就更好了。
比如說,面試官問你,“JAVA 有幾種基本數據類型,分別占用幾個字節”,你可以回答,有8個基礎數據類型,4整(byte,short,int,long)2浮(float,double)1符(char)1布(boolean),字節數分別是12484821。還可以進一步解釋 值類型和引用類型的區別,int和Integer的區別,以及Java是否真正有值類型的分析,會為面試增加不少亮點。
搜集面試題是個耗力的工作:首先是數據源比較多,CSDN、51CTO、知乎、脈脈...; 其次是整理規範化可跟蹤的題目系統; 再次是職位領域,Java、C/C++、Python、PHP、Scala、OC,機器學習,計算機視覺等等; 再次是去重--根據題頻整理出一份精簡題庫可以節省很多時間; 再次是精準答案。
拭目以待吧。
http://www.chaojimianshiti.com
你為什麽需要一個面試題題庫