第一篇:程序員面試注意的事項(xiàng)
作為面試官,在面試程序員時(shí),都會(huì)關(guān)注哪些問題?而程序員應(yīng)該從哪些方面做好面試的準(zhǔn)備?本期話題相信對(duì)面試官和程序員都會(huì)有所啟示。劉秋偉 深圳市萬(wàn)興軟件有限公司研發(fā)總監(jiān)
與其他崗位相比,程序員相對(duì)來說會(huì)內(nèi)向一些,思維也會(huì)更嚴(yán)謹(jǐn)、更有個(gè)性。企業(yè)招聘程序員就是要求他能和團(tuán)隊(duì)一起完成既定的開發(fā)任務(wù),所以重點(diǎn)從技能水平、學(xué)習(xí)能力、團(tuán)隊(duì)合作及工作心態(tài)等幾個(gè)方面考察程序員。
技術(shù)水平是對(duì)程序員最基本的要求,很多企業(yè)會(huì)通過筆試來輔助考察。技能的考察主要看面試者技能匹配度、對(duì)技術(shù)發(fā)展趨勢(shì)的了解以及自己的職業(yè)規(guī)劃。1.你認(rèn)為自己最擅長(zhǎng)的技術(shù)是什么?
2.談?wù)勀銓?duì)XX行業(yè)/技術(shù)發(fā)展趨勢(shì)的看法?對(duì)最近XX技術(shù)問題發(fā)表下你的看法?
3.在五年的時(shí)間內(nèi),你有什么樣的職業(yè)發(fā)展規(guī)劃?
技術(shù)快速更替,員工的求知欲和學(xué)習(xí)能力比他現(xiàn)在的技能更為重要。寧愿招聘一個(gè)學(xué)習(xí)能力很強(qiáng)的員工,也不要一個(gè)靠吃老本、不愿學(xué)習(xí)的員工。1.你最近有看哪些書或參加過什么樣的培訓(xùn)?有灌技術(shù)論壇的習(xí)慣嗎? 2.今年有什么學(xué)習(xí)計(jì)劃?今年有什么目標(biāo)? 3.研究過開源項(xiàng)目嗎?有什么收獲? 在現(xiàn)在的軟件開發(fā)中,已經(jīng)沒有所謂的“孤膽英雄”,項(xiàng)目主要靠團(tuán)隊(duì)合作來完成,而團(tuán)隊(duì)合作能力可以通過考察以往項(xiàng)目,來了解面試者對(duì)團(tuán)隊(duì)的理解、遇到問題的解決思路等。
1.你做過哪些項(xiàng)目?最成功的是哪個(gè)?為什么? 2.辛辛苦苦工作半年的項(xiàng)目失敗了,你怎么辦?
3.評(píng)價(jià)下你過去的團(tuán)隊(duì)?你喜歡在什么樣的團(tuán)隊(duì)中工作? 4.你的業(yè)余愛好是什么?
招聘新員工,需要了解面試者對(duì)工作的心態(tài)和價(jià)值取向,并且與他溝通公司的企業(yè)文 化。如果你所在企業(yè)需要快速發(fā)展,有高強(qiáng)度的研發(fā)任務(wù),而他想找一份輕松的工作,可能就不是很合適了。1.為什么選擇離開上一家公司? 2.有了解過我們公司的產(chǎn)品/服務(wù)嗎?
3.你對(duì)加班的看法?你家人或朋友抱怨你加班怎么辦? 4.如果在試用期發(fā)現(xiàn)你技能不符合要求,該怎么辦?
最后,技術(shù)人員的有效溝通能力也非常關(guān)鍵,特別是對(duì)問題的分析和說明,所以在整個(gè)面試過程中你要觀察面試者的分析思路,對(duì)問題重點(diǎn)的把握以及表達(dá)。經(jīng)常有一些滔滔不絕、但不知所云的面試者,讓人非常頭疼!蔣建華 北方躍龍項(xiàng)目經(jīng)理,微軟最有價(jià)值專家(C#MVP)
程 序員的能力分為兩種:技術(shù)能力和非技術(shù)能力。技術(shù)能力包括編碼能力、系統(tǒng)分析與設(shè)計(jì)能力;非技術(shù)能力包括寫作能力、溝通與協(xié)作能力、組織與管理能力等。而 根據(jù)程序員的能力水平,可以將程序員分成初級(jí)、中級(jí)、高級(jí)三個(gè)級(jí)別。因此,在面試過程中我會(huì)針對(duì)初級(jí)、中級(jí)、高級(jí)程序員三個(gè)級(jí)別來提出不同的問題。
在技術(shù)能力方面,重點(diǎn)考查初級(jí)程序員的編程能力、中級(jí)程序員編程能力并兼顧系統(tǒng)分析的能力、高級(jí)程序員的系統(tǒng)分析與設(shè)計(jì)能力。在非技術(shù)能力方面,重 點(diǎn)考查初級(jí)程序員的溝通與協(xié)作能力、中級(jí)程序員的寫作能力(主要指編寫技術(shù)文檔,如需求分析文檔、用戶手冊(cè)、部署手冊(cè)等)、高級(jí)程序員的組織與管理能力(如指導(dǎo)、協(xié)助中級(jí)程序員進(jìn)行問題分析和開發(fā))。
在面試時(shí),程序員首先要將自己的技術(shù)能力展現(xiàn)出來,以一種交流的心態(tài)去面對(duì),不要緊張,要有自信,即使面試失敗自己也要下去總結(jié)失敗的原因,找到技 術(shù)弱點(diǎn)加以彌補(bǔ);其次,面試中遇到不會(huì)的問題要講明自己的思路,因?yàn)橛行﹩栴}不是考你的編程能力,而是邏輯思維的能力;最后,對(duì)照程序員能力模型進(jìn)行自我 分析與評(píng)價(jià),做好職業(yè)規(guī)劃,不斷學(xué)習(xí),提高自己的編程能力和抽象思維能力。
以SQL Server為例,我來分享一下面試時(shí)常問的一些技術(shù)問題。1.聚集索引和非聚集索引有何區(qū)別?應(yīng)該怎樣使用?
2.SQL的一張表中有一個(gè)自增的ID字段,但是現(xiàn)在不連續(xù),寫一條SQL語(yǔ)句取出某個(gè)位置到另一位置(如50~60)之間的數(shù)據(jù)。3.如何判斷和防止SQL注入? 4.如何對(duì)海量數(shù)據(jù)進(jìn)行處理? 第1題考查基礎(chǔ)知識(shí);第2題考查SQL語(yǔ)句的編寫能力和技巧,屬于初級(jí)程序員的問題;第3題考查SQLServer的安全性,屬于中級(jí)程序員的問題;第4題考查SQLServer的性能,屬于高級(jí)程序員的問題。通過這幾個(gè)問題可以判斷出應(yīng)聘程序員的數(shù)據(jù)庫(kù)水平。
毛穎 法國(guó)CAPS公司銷售工程師
從個(gè)人經(jīng)歷來說,我會(huì)對(duì)以下五個(gè)問題比較感興趣。
1.請(qǐng)說出3個(gè)你覺得至今都沒有算法可以解決的問題。
這是一個(gè)開放式問題。從回答中我們可以了解到被面試者的思維方式和思維敏捷度,而這兩點(diǎn)是一名優(yōu)秀程序員不可或缺的。我預(yù)料一般有兩類回答:第一,學(xué)術(shù)類,比如有人會(huì)說一些關(guān)于尋找質(zhì)數(shù)之類的現(xiàn)在還無法解決的問題;第二,生活類,我比較期待這一類有意思的回答,如果被面試者可以結(jié)合一些現(xiàn)在的社會(huì)現(xiàn) 象作出回答,也可以從另一個(gè)角度反射出其社會(huì)屬性。2.請(qǐng)從技術(shù)角度談一下《黑客帝國(guó)》的觀后感。
同樣又是一個(gè)開放式問題,完全沒有所謂的標(biāo)準(zhǔn)答案。《黑客帝國(guó)》是程序員的必看“教材”,整個(gè)故事最精彩的莫過于構(gòu)思。我覺得能具備這樣的構(gòu)思能力 是程序員的最高境界。那么從技術(shù)角度,對(duì)于這個(gè)構(gòu)思的框架搭建以及實(shí)現(xiàn)等,我想聽聽程序員的不同理解和實(shí)現(xiàn)方法,從側(cè)面了解他們的潛在創(chuàng)造能力和對(duì)身邊事 物的建模能力。
3.你比較偏向于把程序員比作翻譯、建筑師還是設(shè)計(jì)師?
問這個(gè)問題的目的是看你怎樣理解程序員這個(gè)職業(yè)。一個(gè)人對(duì)自己職業(yè)的認(rèn)識(shí)以及定位將直接決定其在這個(gè)職位上的積極性和創(chuàng)造能力。我的答案是程序員既是翻譯,又是建筑師,更應(yīng)該是設(shè)計(jì)師。并且隨著這三個(gè)職業(yè)的排序,正是我認(rèn)為的程序員職業(yè)能力升華臺(tái)階。
4.請(qǐng)?jiān)O(shè)計(jì)至少兩個(gè)不同的算法解決將一個(gè)蛋糕平均分為6份的問題。比較實(shí)際的專業(yè)能力題。這是一個(gè)既簡(jiǎn)單又綜合的考驗(yàn)。除了對(duì)程序員這個(gè)職位的正確認(rèn)識(shí)之外,實(shí)際操作能力畢竟是影響今后實(shí)際工作的第一要素。這道操作題,考察應(yīng)聘者對(duì)問題的思考,以及分析能力和解決問題的動(dòng)手能力。5.比較一下這兩個(gè)算法,你覺得哪個(gè)更好,依據(jù)是什么?
比較算法,還是考察的專業(yè)能力,目的是看你怎樣判斷一個(gè)算法的好壞。對(duì)這道題,沒有接受過專業(yè)訓(xùn)練的應(yīng)聘者應(yīng)該無法給出全面且科學(xué)的分析。并且請(qǐng)他們?cè)u(píng)論自己設(shè)計(jì)的算法,也是對(duì)自我認(rèn)識(shí)的一種衡量。李顏杉 某外資人力資源顧問公司獵頭顧問
程序員的概念有點(diǎn)寬泛,為更有針對(duì)性,我主要分享對(duì)“網(wǎng)絡(luò)程序員”的觀點(diǎn)。簡(jiǎn)言之,我們主要關(guān)注面試者的硬條件、軟條件兩個(gè)方面。
硬條件是指學(xué)歷、技術(shù)經(jīng)驗(yàn)、語(yǔ)言等能直接呈現(xiàn)的能力。技術(shù)是實(shí)在的東西,有就有,沒有就沒有,由不得半點(diǎn)浮夸。我們比較感興趣的問題如下。
1.做過什么:是寫代碼、設(shè)計(jì)還是架構(gòu)?
2.做成功過什么:是大型的平臺(tái)嗎?其特質(zhì)如可擴(kuò)展、高并發(fā)、交互式。3.擅長(zhǎng)做什么:使用的編程語(yǔ)言是哪種?使用經(jīng)驗(yàn)有幾年? 4.Debug的經(jīng)驗(yàn),遭遇什么復(fù)雜的問題(需例證其復(fù)雜性)?
技術(shù)面試的后續(xù)往往是筆試或上機(jī),比如,在所有你使用過的DesignPattern中,請(qǐng)解釋對(duì)比其中兩種,如CommandPattern和 VisitorPattern(可以文字回答,也可以畫圖)?DOMparser與SAXparser的區(qū)別在哪兒?什么情況下采用DOMparser而 不是SAXparser?大家在面試之前可以Google一下類似的題目。如果面試外資公司,需要英文達(dá)到流利讀寫的水平。因?yàn)轫?xiàng)目的完成往往需要協(xié)同全球多個(gè)國(guó)家的同事,如果缺乏英文技能,在外企的發(fā)展是比較受限的。計(jì)劃今后進(jìn)入外資公司的朋友,一定要加強(qiáng)練習(xí)。
軟條件是指性格、興趣、職業(yè)規(guī)劃等非直接呈現(xiàn)的能力。公司對(duì)于程序員一般會(huì)看重兩種性格特質(zhì):愛技術(shù)、樂分享。
“愛技術(shù)”的人才會(huì)自發(fā)的鉆研,不浮躁,也才會(huì)在這一行做得長(zhǎng)久。對(duì)于這點(diǎn),面試官可能希望了解你工作之外喜歡做什么。我聽到過很多分享:經(jīng)營(yíng)自己的博客或者技術(shù)論壇;嘗試新技術(shù)、新設(shè)備,學(xué)習(xí)新技術(shù)是一種樂趣而不是負(fù)擔(dān);當(dāng)然,下次你可以說你平時(shí)喜歡閱讀《程序員》。
“樂分享”的人才能帶動(dòng)團(tuán)隊(duì)整體進(jìn)步。對(duì)于這點(diǎn),面試官可能希望了解你在團(tuán)隊(duì)中是什么角色。有的人可能講我是Mentor,我們遇到技術(shù)問題時(shí)要內(nèi) 部討論,我往往是能給出solution的人,所有人都解決不了,我們會(huì)求助于互聯(lián)網(wǎng)——說明你不只愿意分享,而且有東西可以分享。
以前曾在面試中聽說,程序員是青春飯,3~5年之后一定要轉(zhuǎn)做Manager。我覺得職業(yè)發(fā)展一定要切合自己的性格,并不是每個(gè)人都很享受并善于處 理人事管理。有的資深開發(fā)人員轉(zhuǎn)成Manager幾年之后,又轉(zhuǎn)回純技術(shù)(IndividualContributor)。而資深技術(shù)人員對(duì)于公司是非常 寶貴的財(cái)富,不管從受重視程度、薪資福利待遇都是非常有吸引力的。
第二篇:Java程序員面試注意事項(xiàng)(模版)
Java程序員面試注意事項(xiàng)
隨著Java框架的逐漸成熟,其功能越來越強(qiáng)大,使用越來越簡(jiǎn)便,其使用范圍越來越廣,使用人數(shù)也越來越多。Java在帶來方便的同時(shí),無形中也帶了不便,作為軟件開發(fā)的王牌語(yǔ)言,各企業(yè)對(duì)Java程序員的要求也不斷的提升,所以,求職面試成了Java程序員們最頭疼又不得不面對(duì)的現(xiàn)實(shí)。瑭錦Tanjurd為了給廣大Java程序員面試提供最貼心的指導(dǎo),Tanjurd特意列舉了一些面試常見問題希望能對(duì)廣大Java程序員的面試具有一定的 指導(dǎo)意義。
Java程序員的面試具有一定的指導(dǎo)意義面試常見的問題如下:從企業(yè)面試的角度來 Java程序員的技術(shù)功底以技術(shù)經(jīng)理的眼光來審視對(duì)Java編程知識(shí)的掌握
1.談?wù)刦inal, finally, finalize的區(qū)別
final修飾符(關(guān)鍵字)如果一個(gè)類被聲明為final,意味著它不能再派生出新的子類,不能作為父類被繼承。因此一個(gè)類不能既被聲明為 abstract的,又被聲明為final的。將變量或方法聲明為final,可以保證它們?cè)谑褂弥胁槐桓淖儭1宦暶鳛閒inal的變量必須在聲明時(shí)給定初值,而在以后的引用中只能讀取,不可修改。被聲明為final的方法也同樣只能使用,不能重載。
Finally在異常處理時(shí)提供 finally 塊來執(zhí)行任何清除操作。瑭錦Tanjurd解釋如果拋出一個(gè)異常,那么相匹配的 catch 子句就會(huì)執(zhí)行,然后控制就會(huì)進(jìn)入 finally 塊(如果有的話)。
finalize方法名。Java 技術(shù)允許使用 finalize()方法在垃圾收集器將對(duì)象從內(nèi)存中清除出去之前做必要的清理工作。這個(gè)方法是由垃圾收集器在確定這個(gè)對(duì)象沒有被引用時(shí)對(duì)這個(gè)對(duì)象調(diào)用的。它是在 Object 類中定義的,因此所有的類都繼承了它。子類覆蓋 finalize()方法以整理系統(tǒng)資源或者執(zhí)行其他清理工作。finalize()方法是在垃圾收集器刪除對(duì)象之前對(duì)這個(gè)對(duì)象調(diào)用的。
2.Set里的元素是不能重復(fù)的,那么用什么方法來區(qū)分重復(fù)與否呢?是用==還是equals()?它們有何區(qū)別?
Set里的元素是不能重復(fù)的,那么用iterator()方法來區(qū)分重復(fù)與否。equals()是判讀兩個(gè)Set是否相等。
equals()和==方法決定引用值是否指向同一對(duì)象
equals()在類中被覆蓋,為的是當(dāng)兩個(gè)分離的對(duì)象的內(nèi)容和類型相配的話,返回真值。
3.HashMap和Hashtable之間的區(qū)別
經(jīng)常問到。這兩個(gè)都是Map接口的類,實(shí)現(xiàn)了將唯一鍵映射到特定的值上。
HashMap類沒有排序,可以一個(gè)null鍵和多個(gè)null值
Hashtable,不可以有null鍵和null值。比Hash慢,因?yàn)樗峭降摹?/p>
4.abstract class和interface有什么區(qū)別
Tanjurd說此問題經(jīng)常被問。聲明方法的存在而不去實(shí)現(xiàn)它的類被叫做抽象類(abstract class),它用于要?jiǎng)?chuàng)建一個(gè)體現(xiàn)某些基本行為的類,并為該類聲明方法,但不能在該類中實(shí)現(xiàn)該類的情況。不能創(chuàng)建abstract 類的實(shí)例。然而可以創(chuàng)建一個(gè)變量,其類型是一個(gè)抽象類,并讓它指向具體子類的一個(gè)實(shí)例。不能有抽象構(gòu)造函數(shù)或抽象靜態(tài)方法。Abstract 類的子類為它們父類中的所有抽象方法提供實(shí)現(xiàn),否則它們也是抽象類為。取而代之,在子類中實(shí)現(xiàn)該方法。知道其行為的其它類可以在類中實(shí)現(xiàn)這些方法。
接口(interface)是抽象類的變體。在接口中,所有方法都是抽象的。多繼承性可通過實(shí)現(xiàn)這樣的接口而獲得。接口中的所有方法都是抽象的,沒有一個(gè)有程序體。接口只可以定義static final成員變量。接口的實(shí)現(xiàn)與子類相似,除了該實(shí)現(xiàn)類不能從接口定義中繼承行為。當(dāng)類實(shí)現(xiàn)特殊接口時(shí),它定義(即將程序體給予)所有這種接口的方法。然后,它可以在實(shí)現(xiàn)了該接口的類的任何對(duì)象上調(diào)用接口的方法。由于有抽象類,它允許使用接口名作為引用變量的類型。通常的動(dòng)態(tài)聯(lián)編將生效。引用可以轉(zhuǎn)換到接口類型或從接口類型轉(zhuǎn)換,instanceof 運(yùn)算符可以用來決定某對(duì)象的類是否實(shí)現(xiàn)了接口。
5.Overload和Override的區(qū)別。Overloaded的方法是否可以改變返回值的類型?
經(jīng)常被問。方法的重寫Overriding和重載Overloading是Java多態(tài)性的不同表現(xiàn)。重寫Overriding是父類與子類之間多態(tài)性的一種表現(xiàn),重載Overloading是一個(gè)類中多態(tài)性的一種表現(xiàn)。如果在子類中定義某方法與其父類有相同的名稱和參數(shù),我們說該方法被重寫(Overriding)。子類的對(duì)象使用這個(gè)方法時(shí),將調(diào)用子類中的定義,對(duì)它而言,父類中的定義如同被“屏蔽”了。如果在一個(gè)類中定義了多個(gè)同名的方法,它們或有不同的參數(shù)個(gè)數(shù)或有不同的參數(shù)類型,則稱為方法的重載(Overloading)。Overloaded的方法是可以改變返回值的類型。
第三篇:Java程序員面試注意事項(xiàng)
一、回答問題的思路
先正面敘述一些基本的核心知識(shí),然后描述一些特殊的東西,最后再來一些錦上添花的東西。要注意有些不是錦上添花,而是畫蛇添足的東西,不要隨便寫上。把答題像寫書一樣寫。我要回答一個(gè)新技術(shù)的問題大概思路和步驟是:我們想干什么,干這個(gè)遇到了什么問題,現(xiàn)在用什么方式來解決。其實(shí)我們講課也是這樣一個(gè)思路。
答題時(shí),先答是什么,再答有什么作用和要注意什么(這部分最重要,展現(xiàn)自己的心得)。答案的層次分明,條理清楚都非常重要,從這些表面的東西也可以看出一個(gè)人的習(xí)慣、辦事風(fēng)格、條理等。要講你做出答案的思路過程,或者說你記住答案的思想都寫下來。把答題想著是辯論賽。答題就是給別人講道理、擺事實(shí)。答題不局限于什么格式和形式,就是要將自己的學(xué)識(shí)展現(xiàn)出來!
另外,不要因?yàn)槿思翌}目本來就模棱兩可,你就心里膽怯和沒底氣了,不敢回答了。你要大膽地指出對(duì)方題目很模糊和你的觀點(diǎn),不要把面試官想得有多高,其實(shí)他和你就是差不多的,你想想,如果他把你招進(jìn)去了,你們以后就是同事了,可不是差不多的嗎?
二、關(guān)于就業(yè)薪水
如果你是應(yīng)屆生,那不能要高工資,好比大餅的故事,要拿高工資,就去中關(guān)村!少數(shù)人基礎(chǔ)確實(shí)很好,在校期間確實(shí)又做過一些項(xiàng)目,那仍然是可以要到相對(duì)高的工資的。
初級(jí)程序員薪水:2000-4500
中級(jí)程序員薪水:4000-7000
高級(jí)程序員薪水:7000以上
公司招聘程序員更看重的要用到的編碼技術(shù)、而不是那些業(yè)務(wù)不太相關(guān)的所謂項(xiàng)目經(jīng)歷:
三、公司想招什么樣的人
對(duì)于一些公司接到了一些項(xiàng)目,想招聘一些初中級(jí)的程序員過來幫助寫代碼,完成這個(gè)項(xiàng)目,你更看重的是他的專業(yè)技術(shù)功底,還是以前做過幾個(gè)項(xiàng)目的經(jīng)歷呢?我們先排除掉那些編碼技術(shù)功底好,又正好做過相似項(xiàng)目的情況,實(shí)際上,這種魚和熊掌兼得的情況并不常見。其實(shí)公司很清楚,只要招聘進(jìn)來的人技術(shù)真的很明白,那他什么項(xiàng)目都可以做出來,公司招人不是讓你去重復(fù)做你以前的項(xiàng)目,而是做一個(gè)新項(xiàng)目,業(yè)務(wù)方面,你只要進(jìn)了項(xiàng)目團(tuán)隊(duì),自然就能掌握。所以,大多數(shù)招聘單位在招聘那些編碼級(jí)別的程序員時(shí)也沒指望能招聘到做過類似項(xiàng)目的人,也不會(huì)刻意去找做過類似項(xiàng)目的人,用人單位也不是想把你招進(jìn),然后把你以前做過的項(xiàng)目重做一遍,所以,用人單位更看重招進(jìn)來的人對(duì)要用到的編碼技術(shù)的功底到底怎樣,技術(shù)扎實(shí)不扎實(shí),項(xiàng)目則只要跟著開發(fā)團(tuán)隊(duì)走,自然就沒問題。除非是一些非常專業(yè)的行業(yè),要招聘特別高級(jí)的開發(fā)人員和系統(tǒng)分析師,招聘單位才特別注重他的項(xiàng)目經(jīng)驗(yàn)和行業(yè)經(jīng)驗(yàn),要去找到行業(yè)高手,公司才關(guān)心項(xiàng)目和與你聊項(xiàng)目的細(xì)節(jié),這樣的人通常都不是通過常規(guī)招聘渠道去招聘進(jìn)來的,而是通過各種手段挖過來的,這情況不再我今天要討論的范圍中。
四、公司面試會(huì)問什么,.技術(shù)學(xué)得明白不明白,人家?guī)讉€(gè)問題就把你的深淺問出來了,只要問一些具體的技術(shù)點(diǎn),就很容易看出你是真懂還是假懂,很容看出你的技術(shù)深度和實(shí)力,所以,技術(shù)是來不得半點(diǎn)虛假的,必須扎扎實(shí)實(shí)。
由于項(xiàng)目的種類繁多,涉及到現(xiàn)實(shí)生活中的各行各業(yè),什么五花八門的業(yè)務(wù)都有,例如,酒店房間預(yù)定管理,公司車輛調(diào)度管理,學(xué)校課程教室管理,超市進(jìn)銷存管理,知識(shí)內(nèi)容管理,等等……成千上萬(wàn)等等,但是,不管是什么項(xiàng)目,采用的無非都是我們學(xué)習(xí)的那些目前流行和常用的技術(shù)。技術(shù)好、經(jīng)驗(yàn)豐富,則項(xiàng)目做出來的效率高些,程序更穩(wěn)定和更容易維護(hù)些;技術(shù)差點(diǎn),碰碰磕磕最后也能把項(xiàng)目做出來,無非是做的周期長(zhǎng)點(diǎn)、返工的次數(shù)多點(diǎn),程序代碼寫得差些,用的技術(shù)笨拙點(diǎn)。如果一個(gè)人不是完完全全做過某個(gè)項(xiàng)目,他是不太關(guān)心該項(xiàng)目的業(yè)務(wù)的,對(duì)其中的一些具體細(xì)節(jié)更是一竅不知,(如果我招你來做圖書管理,你項(xiàng)目經(jīng)歷說你做過汽車調(diào)度,那我能問你汽車調(diào)度具體怎么回事嗎?不會(huì),所以,你很容易蒙混過去的)而一個(gè)程序員的整個(gè)職業(yè)生涯中能實(shí)實(shí)在在和完完整整做出來的項(xiàng)目沒幾個(gè),更別說在多個(gè)不同行業(yè)的項(xiàng)目了,有的程序員更是一輩子都只是在做某一個(gè)行業(yè)的項(xiàng)目,結(jié)果他就成了這個(gè)行業(yè)的專家(專門干一件事的家伙)。所以,技術(shù)面試官通常沒正好親身經(jīng)歷過你簡(jiǎn)歷寫的那些項(xiàng)目,他不可能去問你寫的那些項(xiàng)目的具體細(xì)節(jié),而是只能泛泛地問你這個(gè)項(xiàng)目是多少人做的,做了多長(zhǎng)時(shí)間,開發(fā)的過程,你在做項(xiàng)目的過程中有什么心得和收獲,用的什么技術(shù)等面上的問題,所以,簡(jiǎn)歷上的項(xiàng)目經(jīng)歷可以含有很多水分,很容易作假,技術(shù)面試官也無法在項(xiàng)目上甄別你的真?zhèn)巍?/p>
五、簡(jiǎn)歷怎么寫
簡(jiǎn)歷該怎么寫:精通哪些技術(shù),有一些什么項(xiàng)目經(jīng)歷
六、怎樣達(dá)到簡(jiǎn)歷上的標(biāo)準(zhǔn)(培訓(xùn)中心教項(xiàng)目的目的)
教項(xiàng)目是為了鞏固和靈活整合運(yùn)用技術(shù),增強(qiáng)學(xué)習(xí)的趣味性,熟悉做項(xiàng)目的流程,或得一些專業(yè)課程中無法獲得的特有項(xiàng)目經(jīng)驗(yàn),增強(qiáng)自己面試的信心。講的項(xiàng)目應(yīng)該真實(shí)可靠才有價(jià)值,否則,表面上是項(xiàng)目,實(shí)際上還是知識(shí)點(diǎn)的整合,對(duì)鞏固技術(shù)點(diǎn)和增強(qiáng)學(xué)習(xí)的趣味性,但無法獲得實(shí)際的項(xiàng)目經(jīng)驗(yàn)。
總之,項(xiàng)目主要是增加你經(jīng)驗(yàn)的可信度,獲得更多面試機(jī)會(huì),真正能不能找到工作,找到好工作,主要看你鍵盤上的功夫了
第四篇:求職面試程序員的技巧和注意事項(xiàng)
我們?cè)诿嬖嚦绦騿T的時(shí)候一定要注意一些面試技巧和注意事項(xiàng)。程序員是從事程序開發(fā)、維護(hù)的專業(yè)人員。大家都知道求職程序員崗位一定要專業(yè)知識(shí)雄厚,但是在求職過程中注意基本禮儀和技巧是必不可少的。還需要對(duì)自我的認(rèn)知,是否適合此工作。
了解自己
與很多人的看法不同,所有的程序員都是不一樣的。了解您是哪一種類型的程序員對(duì)找到合適的工作是很關(guān)鍵的。盡管您也許能完成許多不同類型的編程任務(wù),但您對(duì)這些任務(wù)的興趣卻是不同的。做并非真正喜歡的事情在短時(shí)間內(nèi)是可以的,但對(duì)于需要長(zhǎng)時(shí)間持續(xù)做的事情,您需要有興趣,對(duì)所做的事情感到興奮。最好的程序員對(duì)他們的工作充滿激情,對(duì)于興趣一般的事情,您是不會(huì)真正產(chǎn)生激情的。如果您不能確定自己是否喜歡,可以問自己以下問題:
1.您是一名架構(gòu)師還是一名編碼人員?
每一個(gè)編碼職位都需要某方面的設(shè)計(jì)能力,但某些工作比其他工作更需要設(shè)計(jì)能力。如果您喜歡設(shè)計(jì)甚于喜歡編碼,軟件架構(gòu)師的職位可能更有吸引力。也就是說,架構(gòu)師的職位可能涉及許多與他人的互動(dòng),較少涉及編碼或根本不涉及編碼,盡管您需要很好地理解如何進(jìn)行編碼才能有效地進(jìn)行架構(gòu)設(shè)計(jì)。除非您接受軟件架構(gòu)方面的正規(guī)培訓(xùn),否則成為一名架構(gòu)師的一般途徑就是先參加編碼工作,然后展示出您在設(shè)計(jì)和項(xiàng)目各部分集成方面的才能。
前面這些問題涉及您對(duì)哪一種類型的工作感興趣,下面的問題與編程無關(guān),但也是需要考慮的。
2.您是一名系統(tǒng)程序員還是一名應(yīng)用程序員?
系統(tǒng)程序員與保持計(jì)算機(jī)系統(tǒng)運(yùn)行的代碼打交道,這些代碼包括框架、工具、編譯器、驅(qū)動(dòng)程序、服務(wù)器等。另一些程序員是他們自己的主要聽眾,他們很少與非程序員打交道。應(yīng)用程序開發(fā)者與此不同,他們所編寫的程序被非程序員用來完成其工作,他們與非技術(shù)人員的互動(dòng)更為頻繁。
3.您喜歡編寫用戶界面嗎?
如果是這樣,而且如果您擁有這方面的技能,那就要恭喜自己的好運(yùn)氣了。用戶界面設(shè)計(jì)是極為講究的工作,容易被批評(píng),很難做好,特別是在要考慮國(guó)際化和易用性問題的時(shí)候。
4.您更喜歡開放源碼項(xiàng)目嗎?
絕大部分編程工作通常都涉及知識(shí)產(chǎn)權(quán),封閉源代碼的項(xiàng)目,某些程序員是反對(duì)這一點(diǎn)的。現(xiàn)在有一些向更開放的軟件開發(fā)轉(zhuǎn)變的傾向,為像您這樣的人提供了更多的機(jī)會(huì),可以參與開放源碼項(xiàng)目并同時(shí)獲得報(bào)酬。
5.您喜歡測(cè)試嗎?
測(cè)試也稱為品質(zhì)保證,或縮寫為QA,常常遭到缺乏經(jīng)驗(yàn)的程序員的詆毀,但那些有經(jīng)驗(yàn)的程序員非常看重獨(dú)立測(cè)試的價(jià)值。好的測(cè)試人員很難找到。編寫工具和自動(dòng)化的測(cè)試用例常常需要編程技能。
6.您善于除錯(cuò)嗎?
如果您認(rèn)為在自己的代碼中除錯(cuò)已經(jīng)是夠麻煩了,請(qǐng)想像一下替別人的代碼除錯(cuò)是怎樣的感覺。這需要很強(qiáng)的分析能力和解決問題的能力。找到并消除缺陷可能是很有價(jià)值的,但肯定不是每個(gè)人都適合這項(xiàng)工作。
7.您想為小公司工作嗎?
薪水可能少一些,但隨著公司的發(fā)展和成功,從底層進(jìn)入一個(gè)新公司肯定對(duì)將來有好處(可能會(huì)帶來相當(dāng)大的報(bào)酬)。當(dāng)然,不好的一面是大部分新的嘗試都會(huì)失敗,您可能在一兩年內(nèi)失去這份工作。
8.您想為大公司工作嗎?
在大的公司中工作既有好的一面也有不利的一面。例如,大的公司通常能夠提供更大的工作穩(wěn)定性,以及某種類型的職業(yè)發(fā)展途徑。它也可能擁有非技術(shù)人員知道的品牌。但在另一方面,您也可能對(duì)大公司中常常發(fā)生的繁文縟節(jié)、要求嚴(yán)格和公司內(nèi)部斗爭(zhēng)感到窒息。
9.您希望參加長(zhǎng)期的項(xiàng)目還是短期的項(xiàng)目?
某些程序員渴望改變,最多在每個(gè)項(xiàng)目上花上幾個(gè)月的時(shí)間。如果您喜歡短期的項(xiàng)目,而且不介意出差,那么成為一名咨詢公司的雇員可能比成為一名傳統(tǒng)公司的雇員要更好一些。重要的是您必須明白,這些問題沒有標(biāo)準(zhǔn)答案,沒有正確或錯(cuò)誤的答題方式。但是,您在這些問題上對(duì)自己越誠(chéng)實(shí),就越有可能找到真正喜歡的編程工作。
10.您對(duì)管理有興趣嗎?
某些程序員的長(zhǎng)期目標(biāo)是成為一名經(jīng)理,但另一些程序員對(duì)這個(gè)想法會(huì)產(chǎn)生恐懼。但如果您的目標(biāo)是成為管理者,就需要培養(yǎng)自己的領(lǐng)導(dǎo)才能,并展示出您在處理技術(shù)問題的同時(shí),也能夠管理軟件開發(fā)中“人”的問題。如果您的目標(biāo)不是成為管理者,請(qǐng)尋找那些提供良好的技術(shù)職業(yè)發(fā)展途徑的公司,這樣在提升時(shí)就不需要被迫去管理人。
此文由傳邦人才網(wǎng) 整理轉(zhuǎn)載請(qǐng)注明出處。
第五篇:java程序員應(yīng)職面試注意事項(xiàng)
第1部分 求職過程
古人云:凡事預(yù)則立,不預(yù)則廢。機(jī)會(huì)都是垂青有準(zhǔn)備的人的。為了得到一份滿意的工作,大家一定要對(duì)整個(gè)求職過程有清醒的了解。把能夠預(yù)見的、必須做的事情早一些做完,這樣在大規(guī)模招聘開始的時(shí)候就可以專心地為面試做準(zhǔn)備。
第1章 應(yīng)聘求職 3
每年的二三月份,都是應(yīng)屆生求職、在職人員跳槽的高峰期。對(duì)于即將成為程序員的應(yīng)屆畢業(yè)生們,在求職過程中怎樣確定目標(biāo)公司和目標(biāo)職位;對(duì)于已經(jīng)是程序員的跳槽大軍,是按照技術(shù)路線發(fā)展自己的職業(yè)生涯,還是走向管理崗位繼續(xù)自己的職業(yè)道路,或者是改變自己的發(fā)展軌跡;大家在求職過程中要注意哪些細(xì)節(jié)?這些都是大家所關(guān)心的話題。
1.1 應(yīng)聘渠道 3
1.2 應(yīng)聘流程 4
第2章 簡(jiǎn)歷書寫 5
據(jù)統(tǒng)計(jì),80%的簡(jiǎn)歷都是不合格的。不少人事管理者抱怨收到的許多簡(jiǎn)歷在格式上很糟糕。簡(jiǎn)歷應(yīng)該如何做到在格式上簡(jiǎn)潔明了,重點(diǎn)突出?求職信應(yīng)該如何有足夠的內(nèi)容推銷自己?如何控制長(zhǎng)度,言簡(jiǎn)意賅?相信讀了本章你會(huì)對(duì)簡(jiǎn)歷的撰寫有一個(gè)新的認(rèn)識(shí)。
2.1 簡(jiǎn)歷注意事項(xiàng) 5
2.2 簡(jiǎn)歷模板 8
第3章 3種考試 13
筆試,電話面試,面試,是順利求職的3個(gè)過程。三關(guān)全過才能順利簽約,只要有一關(guān)沒能通過,就會(huì)被“刷”掉。
3.1 筆試 13
3.2 電話面試 15
3.3 面試 16
第4章 職業(yè)生涯發(fā)展規(guī)劃 19
在一般情況下,我們工作一年之后,對(duì)自己的喜好及擅長(zhǎng)都有了更加深刻的了解,這時(shí)會(huì)有較為明確的職業(yè)發(fā)展規(guī)劃。
4.1 缺乏工作經(jīng)驗(yàn)的應(yīng)屆畢業(yè)生 19
4.2 更換工作的程序員們 21
第5章 3個(gè)求職技巧 23
筆者作為一個(gè)專業(yè)的技術(shù)人員,一直不相信面試有什么真正的技巧可言。在求職面試中主要還是以實(shí)力為主,用能力說話。至于求職技巧,我覺得是一些待人接物的基本常識(shí)而已,你的家教,你的品行,你處理問題和對(duì)待朋友的態(tài)度,你的情操和品德,這些都是無法掩飾的。如果真的有什么技巧培養(yǎng),那在幼兒園的時(shí)候就已經(jīng)形成了。
5.1 應(yīng)屆生面試技巧 23
5.2 主考者的觀點(diǎn) 25
5.3 談話的技巧 26
第2部分 Java程序設(shè)計(jì)
本部分主要以Java設(shè)計(jì)語(yǔ)言為基礎(chǔ),通過大量實(shí)際例子分析各大公司Java面試題目,從技術(shù)上分析面試題的內(nèi)涵。許多面試題看似簡(jiǎn)單,卻需要深厚的基本功才能給出完美的解答。
第6章 Java程序設(shè)計(jì)基本概念 31
對(duì)于一個(gè)求職者或者應(yīng)屆畢業(yè)生,公司除了對(duì)項(xiàng)目經(jīng)驗(yàn)有所問詢之外,最好的考量辦法就是檢查基本功,包括編程風(fēng)格,以及對(duì)賦值語(yǔ)句、遞增語(yǔ)句、類型轉(zhuǎn)換、數(shù)據(jù)交換等程序設(shè)計(jì)基本概念的理解。當(dāng)然,在考試之前最好對(duì)自己所掌握的程序概念知識(shí)有所復(fù)習(xí),尤其是對(duì)各種細(xì)致的考點(diǎn)要加以重視。
6.1 Java配置 31
6.2 i++ 33
6.3 類型轉(zhuǎn)換 37
6.4 程序結(jié)構(gòu) 38
6.5 其他相關(guān)問題 41
第7章 異常與反射 43
可以說,實(shí)現(xiàn)了反射機(jī)制的系統(tǒng)都具有開放性,但具有開放性的系統(tǒng)并不一定采用了反射機(jī)制,開放性是反射系統(tǒng)的必要條件。在Java類反射的主要方法中,獲得字段信息的class反射調(diào)用不同于那些用于接入構(gòu)造函數(shù)的調(diào)用,在參數(shù)類型數(shù)組中使用了字段名。反射讓我們可以于運(yùn)行時(shí)加載、探知、使用編譯期間完全未知的classes。換句話說,Java程序可以加載一個(gè)運(yùn)行時(shí)才得知名稱的class,獲悉其完整構(gòu)造(但不包括methods定義),并生成其對(duì)象實(shí)例,或?qū)ζ鋐ields設(shè)值,或喚起其methods1。
7.1 final定義 43
7.2 異常處理 46
7.3 Reflection定義 47
第8章 傳遞與引用 53
Java語(yǔ)言明確說明取消了指針,因?yàn)橹羔樛窃趲矸奖愕耐瑫r(shí)導(dǎo)致代碼不安全的根源,而且還會(huì)使程序變得非常復(fù)雜和難以理解,濫用指針寫成的代碼不亞于使用早已臭名昭著的GOTO語(yǔ)句。Java放棄指針的概念絕對(duì)是極其明智的。但這只是在Java語(yǔ)言中沒有明確的指針定義,實(shí)質(zhì)上每一個(gè)new語(yǔ)句返回的都是一個(gè)指針的引用,只不過在大多數(shù)時(shí)候Java中不用關(guān)心如何操作這個(gè)“指針”,更不用像在操作C++的指針那樣膽戰(zhàn)心驚。唯一要多多關(guān)心的是在給函數(shù)傳遞對(duì)象的時(shí)候。
8.1 傳值基本問題 53
8.2 靜態(tài)變量與私有變量 58
8.3 輸入/輸出流 60
8.4 序列化 67
第9章 循環(huán)、條件、概率 71
遞歸過程的執(zhí)行總是一個(gè)過程體未執(zhí)行完,就帶著本次執(zhí)行的結(jié)果又進(jìn)入另一輪過程體的執(zhí)行……如此反復(fù),不斷深入,直到某次過程的執(zhí)行遇到終止遞歸調(diào)用的條件成立時(shí),則不再深入,而執(zhí)行本次的過程體余下的部分,然后又返回到上一次調(diào)用的過程體中,執(zhí)行其余下的部分……如此反復(fù),直到回到起始位置上,才最終結(jié)束整個(gè)遞歸過程的執(zhí)行,得到相應(yīng)的執(zhí)行結(jié)果。遞歸過程的程序設(shè)計(jì)的核心就是參照這種執(zhí)行流程,設(shè)計(jì)出一種適合“逐步深入,而后又逐步返回”的遞歸調(diào)用模型,以解決實(shí)際面試?yán)}。
9.1 典型遞歸問題 71
9.2 Switch 76
9.3 條件語(yǔ)言 78
9.4 Java排序 80
9.5 隨機(jī)數(shù) 89
第10章 Java內(nèi)存管理 93
內(nèi)存管理太重要了,花多少口舌介紹它都不過分。我曾經(jīng)見到這樣一句話:“C++程序員覺得內(nèi)存管理太重要了,所以一定要自己進(jìn)行管理;Java/C#程序員覺得內(nèi)存管理太重要了,所以一定不能自己去管理。”從某種意義上說,兩者都是對(duì)的。面試中內(nèi)存管理涉及堆、棧、哈希表、內(nèi)存泄漏等諸方面。
10.1 堆棧 9
310.2 垃圾收集 99
10.3 clone 107
10.4 Java線程 109
第11章 面向?qū)ο?111
面向?qū)ο笃鋵?shí)是現(xiàn)實(shí)世界模型的自然延伸。現(xiàn)實(shí)世界中任何實(shí)體都可以看做是對(duì)象。對(duì)象之間通過消息相互作用。另外,現(xiàn)實(shí)世界中任何實(shí)體都可歸屬于某類事物,任何對(duì)象都是某一類事物的實(shí)例。如果說傳統(tǒng)的過程式編程語(yǔ)言是以過程為中心、以算法為驅(qū)動(dòng)的話,面向?qū)ο蟮木幊陶Z(yǔ)言則是以對(duì)象為中心,以消息為驅(qū)動(dòng)。用公式表示,過程式編程語(yǔ)言為:程序=算法+數(shù)據(jù);面向?qū)ο缶幊陶Z(yǔ)言為:程序=對(duì)象+消息。
11.1 面向?qū)ο蟮幕靖拍?112
11.2 類和對(duì)象 115
11.3 嵌套類 118
11.4 構(gòu)造函數(shù)和析構(gòu)函數(shù) 119
11.5 復(fù)制構(gòu)造函數(shù)和賦值函數(shù) 120
11.6 多態(tài)的概念 121
第12章 繼承與接口 129
接口在實(shí)際語(yǔ)言,如Delphi、Java、C++等中,都有廣義和狹義之分,這很重要,以前就是因?yàn)闆]明白接口的廣義和狹義之分,始終沒能真正理解接口的真正意義。廣義接口從一般意義上說,凡是一個(gè)類提供給外部使用的部分都可以被稱為接口。但是在引入繼承和抽象類之前,這個(gè)廣義接口并沒有太大意義。廣義接口的真正意義是在類的繼承中體現(xiàn)多態(tài)的功能,這種接口又被稱為抽象類接口。
12.1 基礎(chǔ)知識(shí) 129
12.2 Super 133
12.3 this 138
12.4 不能繼承的情況 142
12.5 抽象類與接口 144
12.6 設(shè)計(jì)有效的繼承 154
第13章 JavaScript 161
越來越發(fā)現(xiàn)很多靈巧的功能都是由JS實(shí)現(xiàn)的。這是因?yàn)閃eb模式現(xiàn)在還是Pull為主,要實(shí)現(xiàn)靈巧的功能,客戶端必須有一定的主動(dòng)性,簡(jiǎn)單的頁(yè)面刷新是不夠的,越來越多的應(yīng)用要求互動(dòng)刷新或者實(shí)時(shí)刷新。在Push技術(shù)還未成主流的情況下,JS的價(jià)值就體現(xiàn)出來了。13.1 網(wǎng)頁(yè)腳本 161
13.2 APPLET 162
第14章 Java架構(gòu)技術(shù)及相關(guān)中間件 163
Push軟件開發(fā)的過程中,人們?cè)絹碓揭庾R(shí)到軟件重用的重要性。異構(gòu)的系統(tǒng)、不同的實(shí)現(xiàn)方案使軟件的重用變得復(fù)雜。在中間件產(chǎn)生以前,應(yīng)用軟件不得不直接面對(duì)非常底層的東西。不同的硬件體系、不同的操作系統(tǒng)、不同的網(wǎng)絡(luò)協(xié)議實(shí)現(xiàn)和不同的數(shù)據(jù)庫(kù)等,這些使得應(yīng)用程序復(fù)雜多變。面對(duì)易變的東西,軟件設(shè)計(jì)師們已經(jīng)習(xí)慣于通過添加中間層的方式來隔離變化。把應(yīng)用軟件所要面臨的共性問題進(jìn)行提煉、抽象,在操作系統(tǒng)之上添加一個(gè)可復(fù)用的部分,供成千上萬(wàn)的應(yīng)用軟件重復(fù)使用。這一技術(shù)思想最終構(gòu)成了中間件。
14.1 WebLogic 164
14.2 WebSphere 178
14.3 WebService 182
第3部分 數(shù)據(jù)結(jié)構(gòu)和設(shè)計(jì)模式
本部分主要介紹求職面試過程中出現(xiàn)的第二個(gè)重要的板塊-數(shù)據(jù)結(jié)構(gòu),包括字符串的使用、堆、棧、排序方法等。此外隨著外企研發(fā)機(jī)構(gòu)大量遷入我國(guó),外企針對(duì)軟件工程知識(shí)的考核,包括設(shè)計(jì)模式、UML、敏捷軟件開發(fā),以及.NET技術(shù)和完全面向?qū)ο笳Z(yǔ)言C#的面試題目將會(huì)有增無減,今后設(shè)計(jì)模式在面試中的比重會(huì)進(jìn)一步提高。
第15章 字符串 191
基本上求職者進(jìn)行筆試時(shí)沒有不考字符串的。字符串也是一種相對(duì)簡(jiǎn)單的數(shù)據(jù)結(jié)構(gòu),結(jié)合指針,容易多次引起面試官反復(fù)發(fā)問。筆者曾不止一次在筆試或面試時(shí)遇到字符串試題。事實(shí)上,字符串也是一個(gè)考驗(yàn)程序員編程規(guī)范和編程習(xí)慣的重要考點(diǎn)。不能忽視這些細(xì)節(jié),因?yàn)檫@些細(xì)節(jié)會(huì)體現(xiàn)你在操作系統(tǒng)、軟件工程、邊界內(nèi)存處理等方面的知識(shí)掌控能力。15.1 字符串基礎(chǔ)問題 191
15.2 StringBuffer 194
15.3 正則表達(dá)式 202
15.4 數(shù)字流和數(shù)組聲明 209
15.5 字符串其他問題 210
第16章 設(shè)計(jì)模式 221
地上本沒有路,走的人多了也就成了路。設(shè)計(jì)模式如同此理,它是經(jīng)驗(yàn)的傳承,并非體系;是被前人發(fā)現(xiàn),經(jīng)過總結(jié)形成了一套某一類問題的一般性解決方案,而不是被設(shè)計(jì)出來的定性規(guī)則;它不像算法那樣可以照搬照用。
16.1 UML 222
16.2 23種模式 235
16.3 軟件工程 248
第4部分 UNIX、Oracle、網(wǎng)絡(luò)
作為一個(gè)幾十年來幾乎沒有修改過技術(shù)架構(gòu)的系統(tǒng),UNIX本身的性能和特點(diǎn)決定了它的成功。除了精細(xì)、謹(jǐn)慎地繼承、改造現(xiàn)有技術(shù)以外,UNIX在總體設(shè)計(jì)思想方面也有所發(fā)展。這主要表現(xiàn)在操作系統(tǒng)的功能設(shè)計(jì)方面。在設(shè)計(jì)UNIX時(shí),著眼于向用戶提供包含有多種工具而且便于綜合應(yīng)用它們的程序設(shè)計(jì)環(huán)境,即構(gòu)成一個(gè)能夠提供各種服務(wù)的基礎(chǔ)。本部分主要介紹求職面試過程中出現(xiàn)的第三個(gè)重要的板塊-UNIX操作系統(tǒng)、Oracle數(shù)據(jù)庫(kù)、網(wǎng)絡(luò)知識(shí)。作為一個(gè)程序員,尤其是系統(tǒng)管理方面的程序員,對(duì)這幾部分有深刻理解和領(lǐng)悟是相當(dāng)重要的。
第17章 操作系統(tǒng) 253
操作系統(tǒng)面試?yán)}主要涉及進(jìn)程、線程、內(nèi)存管理、垃圾回收,以及緩存等諸方面。17.1 進(jìn)程 253
17.2 線程 255
17.3 UNIX 259
17.4 AIX 264
17.5 Solaris 273
第18章 數(shù)據(jù)庫(kù)和SQL語(yǔ)言 277
數(shù)據(jù)庫(kù)面試?yán)}主要涉及范式、事物、存儲(chǔ)過程、SQL語(yǔ)言,以及索引等諸方面。18.1 數(shù)據(jù)庫(kù)理論問題 277
18.2 Oracle基礎(chǔ) 280
18.3 Oracle-SQL語(yǔ)言 283
18.4 SQL語(yǔ)言常見選擇題 289
第19章 計(jì)算機(jī)網(wǎng)絡(luò)及分布式系統(tǒng) 303
網(wǎng)絡(luò)面試?yán)}主要涉及局域網(wǎng)、廣域網(wǎng)和IP管理等諸方面。
19.1 網(wǎng)絡(luò)結(jié)構(gòu) 303
19.2 TCP/IP 305
19.3 網(wǎng)絡(luò)安全 308
19.4 網(wǎng)絡(luò)其他問題 309
第5部分 Java開源
EJB組件曾經(jīng)被認(rèn)為是一個(gè)重量級(jí)的組件。EJB 3.0規(guī)范的重要目標(biāo)就是簡(jiǎn)化EJB的開發(fā),提供一個(gè)相對(duì)輕量級(jí)的組件方案。Spring基于輕量?jī)?nèi)核,然后通過集成第三方的服務(wù)器來提供完整的架構(gòu)。其實(shí),當(dāng)EJB 3.0推出,當(dāng)Spring 2.0的程序需要特別的Javac進(jìn)行編譯時(shí),重和輕模糊了。追求簡(jiǎn)單、輕量,是每一個(gè)應(yīng)用架構(gòu)的目標(biāo)。對(duì)于企業(yè)應(yīng)用的構(gòu)建來說,不論輕重,只有架構(gòu)合適的應(yīng)用平臺(tái),才能最終適應(yīng)項(xiàng)目的需要。
第20章 J2EE技術(shù) 323
從整體上講,J2EE是使用Java技術(shù)開發(fā)企業(yè)級(jí)應(yīng)用的一種事實(shí)上的工業(yè)標(biāo)準(zhǔn),它是Java技術(shù)在不斷適應(yīng)和促進(jìn)企業(yè)級(jí)應(yīng)用過程中的產(chǎn)物。目前,Java平臺(tái)有3個(gè)版本:適用于小型設(shè)備和智能卡的J2ME(Java 2 Platform Micro Edition)、適用于桌面系統(tǒng)的J2SE和適用于企業(yè)級(jí)應(yīng)用的J2EE。Sun推出J2EE的目的是為了消除傳統(tǒng)Client/Server模式的弊病,迎合Browser/Server架構(gòu)的潮流,為應(yīng)用Java技術(shù)開發(fā)服務(wù)器端應(yīng)用提供一個(gè)平臺(tái)獨(dú)立的、可移植的、多用戶的、安全的和基于標(biāo)準(zhǔn)的企業(yè)級(jí)平臺(tái),從而簡(jiǎn)化企業(yè)應(yīng)用的開發(fā)、管理和部署。J2EE是一個(gè)標(biāo)準(zhǔn),而不是一個(gè)現(xiàn)成的產(chǎn)品。
20.1 Spring輕量級(jí)架構(gòu) 323
20.2 Hibernate 330
20.3 實(shí)體EJB技術(shù) 334
20.4 Java Bean技術(shù) 338
第21章 數(shù)據(jù)庫(kù)相關(guān) 339
數(shù)據(jù)庫(kù)相關(guān)面試?yán)}主要包括JDO、事務(wù)、數(shù)據(jù)源架構(gòu)、接口、分布式事務(wù)、結(jié)果集、數(shù)據(jù)連接池等方面。
21.1 JDO 339
21.2 數(shù)據(jù)源架構(gòu) 340
第22章 Java中的Web設(shè)計(jì) 347
關(guān)于Web設(shè)計(jì)的面試題目涉及Session、Servlet和JSP等方面。
22.1 JSP代碼 347
22.2 Servlet 349
第23章 Java中的網(wǎng)頁(yè)設(shè)計(jì) 353
關(guān)于網(wǎng)頁(yè)設(shè)計(jì)的面試題目涉及HTML、DHTML和XML等方面。
23.1 HTML 353
23.2 XML 3
54第24章 Struts結(jié)構(gòu)設(shè)計(jì) 359
Struts跟Tomcat、Turbine等諸多Apache項(xiàng)目一樣,是開源軟件,這是它的一大優(yōu)點(diǎn),使開發(fā)者能更深入地了解其內(nèi)部實(shí)現(xiàn)機(jī)制。除此之外,Struts的優(yōu)點(diǎn)主要集中體現(xiàn)在兩個(gè)方面:TagLib和頁(yè)面導(dǎo)航。TagLib是Struts的標(biāo)記庫(kù),靈活運(yùn)用,能大大提高開發(fā)效率。24.1 AWT 359
24.2 Struts體系結(jié)構(gòu) 361
第25章 Java安全性 371
Java平臺(tái)提供的原始安全模式是沙箱模型。對(duì)于從開放網(wǎng)絡(luò)中得到的不被信任的代碼,該模
型提供了一個(gè)非常嚴(yán)格的使用環(huán)境。沙箱模型的實(shí)質(zhì)在于信任本地代碼,使其可以完全訪問重要的系統(tǒng)資源(例如文件系統(tǒng));而下載的遠(yuǎn)程代碼則不被信任,因此只能訪問沙箱內(nèi)提供的有限資源。沙箱模型通過Java開發(fā)工具包(JDK)發(fā)布,一般被用JDK編寫的應(yīng)用程序所采納(包括支持Java的網(wǎng)絡(luò)瀏覽器)。
25.1 內(nèi)存管理 372
25.2 Java安全設(shè)置 380
第6部分 綜合面試題
本部分主要介紹求職面試過程中出現(xiàn)的第五個(gè)重要的板塊-英語(yǔ)面試、電話面試和智力測(cè)試。這里的英語(yǔ)面試不同于普通的英語(yǔ)面試。就一個(gè)程序員而言,最好能夠用英文流利地介紹自己的求職經(jīng)歷,這是進(jìn)外企非常重要的一步。此外還必須對(duì)幾個(gè)常用的問題有相關(guān)的解答,比如你最大的缺點(diǎn)是什么。有些問題即便是中文你都很難回答,更何況是用英文去回答。但是求職過程本身就是一個(gè)準(zhǔn)備的過程,精心地準(zhǔn)備,等待機(jī)會(huì)-機(jī)會(huì)總是垂青于那些精心準(zhǔn)備的人。
第26章 英語(yǔ)面試 389
如果你是一個(gè)具有戰(zhàn)略眼光,期待進(jìn)入國(guó)際性跨國(guó)大企業(yè)的求職者,本章值得你仔細(xì)研讀。26.1 面試過程和技巧 389
26.2 關(guān)于工作(About Job)391
26.3 關(guān)于個(gè)人(About Person)395
26.4 關(guān)于未來(About Future)397
26.5 其他建議(Other Tips)399
26.6 英文面試常用詞匯 400
26.6.1 工作經(jīng)歷相關(guān)詞匯 400
26.6.2 個(gè)人資料相關(guān)詞匯 400
26.6.3 個(gè)人品質(zhì)相關(guān)詞匯 401
26.6.4 學(xué)歷相關(guān)詞匯 403
26.6.5 離職原因相關(guān)詞匯 405
第27章 電話面試 407
求職時(shí),經(jīng)常會(huì)遭遇電話面試,戲稱“觸電”。我曾經(jīng)在開會(huì)、洗澡、吃飯、坐車時(shí)都接到過電話。問的問題也是五花八門,千奇百怪。
27.1 電話面試之前的準(zhǔn)備工作 407
27.2 電話面試交流常見問題 408
第28章 智力測(cè)試 417
智力測(cè)試,其實(shí)是考查應(yīng)聘者在限制條件下解決問題的能力。這類題目會(huì)出現(xiàn)于跨國(guó)企業(yè)的招聘面試中,對(duì)考查一個(gè)人的思維方式及思維方式轉(zhuǎn)變能力有極其明顯的作用。而據(jù)一些研究顯示,這樣的能力往往也與工作中的應(yīng)變與創(chuàng)新狀態(tài)息息相關(guān)。
28.1 關(guān)于數(shù)字的智力測(cè)試 417
28.2 關(guān)于推理的智力測(cè)試 427
28.3 綜合智力測(cè)試 429