第一篇:程序員的經(jīng)驗(yàn)
編程20年的20條編程經(jīng)驗(yàn) 排行榜 收藏 打印 發(fā)給朋友 舉報(bào)發(fā)布者:admin
熱度665票瀏覽6727次 【共11條評(píng)論】【我要評(píng)論】時(shí)間:2010年11月18日 11:18 從11歲時(shí),我就一直在編程,并且一直都很喜歡技術(shù)和編程。這些年來(lái),我積累了一些艱難又容易的經(jīng)驗(yàn)。作為一名程序員,你或許還沒(méi)這些經(jīng)驗(yàn),但我會(huì)把它們獻(xiàn)給那些想從中學(xué)到更多的朋友。
我會(huì)持續(xù)更新這些經(jīng)驗(yàn),我可能還會(huì)有更多的感想,但就我這20年來(lái)看,我想下面這個(gè)列表中基本不需要增添額外的東西了。下面就是我至今最難忘的經(jīng)驗(yàn)。
1.估算解決問(wèn)題所需要的時(shí)間。不要怕,承認(rèn)吧!我曾見(jiàn)過(guò)一些程序員為了解決一個(gè)特殊問(wèn)題而坐在顯示器前面8小時(shí)。為自己定一個(gè)時(shí)間限制吧,1小時(shí)、30分鐘或甚至15分鐘。如果在這期間你不能解決問(wèn)題,那就去尋求幫助,或到網(wǎng)上找答案,而不是嘗試去做“超級(jí)堆碼員”。
2.編程語(yǔ)言是一種語(yǔ)言,只是一種語(yǔ)言。隨著時(shí)光推移,只要你理解了一種語(yǔ)言的原理,你會(huì)發(fā)現(xiàn)各種語(yǔ)言之間的相似之處。你所選擇的語(yǔ)言,你應(yīng)該覺(jué)得“舒服”,并且能夠?qū)懗鲇行Вǘ液?jiǎn)潔)的代碼。最重要的,讓語(yǔ)言去適應(yīng)項(xiàng)目,反之亦然。
3.不要過(guò)于注重程序的“設(shè)計(jì)模式”。有時(shí)候,寫(xiě)一個(gè)簡(jiǎn)單的算法,要比引入某種模式更容易。在多數(shù)情況下,程序代碼應(yīng)是簡(jiǎn)單易懂,甚至清潔工也能看懂。
4.經(jīng)常備份代碼。在我年輕時(shí),我就有過(guò)因硬盤(pán)故障而丟了大量代碼的經(jīng)歷,這經(jīng)歷很恐怖的。只要你一次沒(méi)有備份,就應(yīng)當(dāng)像有著嚴(yán)格的期限,客戶明天就需要。此時(shí)就該源碼/版本控制軟件大顯身手了。
5.承認(rèn)自己并不是最頂尖的程序員-知不足。我常想,我對(duì)編程了解已足夠多,但是總有其他人比你優(yōu)秀。正所謂,“一山總比一山高”。所以,向他們看齊吧!
6、學(xué)習(xí)再學(xué)習(xí)。正如第5點(diǎn)所說(shuō),我經(jīng)常會(huì)在手里拿一本計(jì)算機(jī)或編程相關(guān)的雜志或書(shū)(不信,可以問(wèn)我的朋友)。誠(chéng)然,總有很多你不知道的技術(shù),你可以從中學(xué)習(xí)以保持不落后。如果你有一種靈巧的方式來(lái)獲取你需要的新技術(shù),那你每天都應(yīng)該堅(jiān)持學(xué)習(xí)。
7.永恒的變化。你對(duì)待技術(shù)/編程知識(shí),就應(yīng)像你對(duì)待股票一樣:多樣化。不要在某一特定技術(shù)上自我感覺(jué)良好。如果那種技術(shù)或語(yǔ)言已經(jīng)沒(méi)有足夠支持,那你還不如現(xiàn)在就開(kāi)始更新你的簡(jiǎn)歷,并啟動(dòng)培訓(xùn)新計(jì)劃。我能保持前行的主要原則是什么呢?至少了解兩到三種語(yǔ)言,所以,如果某種語(yǔ)言過(guò)時(shí)了,你在學(xué)習(xí)新技術(shù)的時(shí)候還可以依靠另一種語(yǔ)言。
8.提攜新人。協(xié)助并且培養(yǎng)初級(jí)/入門(mén)的開(kāi)發(fā)人員學(xué)習(xí)優(yōu)秀的編程方法和技巧。也許你還不知道,在幫助他們向更高一層前進(jìn)時(shí),你自己也在向更高一層提升,你會(huì)更加自信。
9.簡(jiǎn)化算法。代碼如惡魔,在你完成編碼后,應(yīng)回頭并且優(yōu)化它。從長(zhǎng)遠(yuǎn)來(lái)看,這里
或那里一些的改進(jìn),會(huì)讓后來(lái)的支持人員更加輕松。
10.編寫(xiě)文檔。無(wú)論是Web服務(wù)的API,還是一個(gè)簡(jiǎn)單的類(lèi),你盡量編寫(xiě)相應(yīng)文檔。我曾經(jīng)引以為豪的代碼注釋?zhuān)蜻^(guò)度注釋而有人指責(zé)。給三行代碼加一行注釋?zhuān)恍枰銕酌霑r(shí)間。如果那是一個(gè)比較難以理解的技術(shù),千萬(wàn)別擔(dān)心過(guò)多注釋。如果你能很好做好自己的工作,大多數(shù)架構(gòu)師、后備程序員、支持組都會(huì)感激你。
11.測(cè)試、測(cè)試再測(cè)試。我是一名黑盒測(cè)試粉絲。當(dāng)你完成編碼后,你“被認(rèn)可”的時(shí)候就開(kāi)始了。如果你們公司有QA部門(mén),如果你的代碼中有錯(cuò)誤,那你得到的評(píng)論,會(huì)比項(xiàng)目經(jīng)理還多。如果你不徹底測(cè)試自己的代碼,那恐怕你開(kāi)發(fā)的就不只是代碼,可能還會(huì)聲名狼藉。
12.慶祝每一次成功。我見(jiàn)過(guò)很多程序員在解決編程技術(shù)難題后,會(huì)和同伴握手、擊掌或甚至手舞足蹈。每個(gè)人在生命中都會(huì)碰到“頓悟”。如果一個(gè)程序員高興地跑來(lái)叫你去看他的非凡代碼,也許你已經(jīng)看過(guò)這樣的代碼100遍了,但你也應(yīng)該為了這個(gè)家伙而慶祝第101次。
13.經(jīng)常檢查代碼。在公司,你的代碼要經(jīng)常檢查(包括自查和其他同事檢查)。不要把別人的檢查,看成是對(duì)代碼風(fēng)格的苛求。應(yīng)該把它們看作是有建設(shè)性的批評(píng)。對(duì)個(gè)人來(lái)說(shuō),經(jīng)常檢查你的代碼并且自問(wèn),“我怎樣才能寫(xiě)得更好呢?” 這會(huì)讓你加速你的成長(zhǎng),讓你成為一個(gè)更優(yōu)秀的程序員。
14.回顧你的代碼。在看到自己以前的代碼時(shí),通常會(huì)有兩種方式:“難以至信,這代碼是我寫(xiě)的”和“難以至信,這代碼是我寫(xiě)的”。第一種往往是厭惡的語(yǔ)氣,并在想如何改進(jìn)它。你也許會(huì)驚嘆,舊代碼也能復(fù)活成為一種更好的程序,甚至是一個(gè)完整的產(chǎn)品。第二種通常帶著驚奇和成就感。開(kāi)發(fā)人員應(yīng)該一到兩個(gè)自己完成的項(xiàng)目成果,能讓眾人不禁而立并注目而觀的項(xiàng)目。同樣,基于你優(yōu)越的編程能力,你可以把過(guò)去的程序或項(xiàng)目拿出來(lái),把它們更新為更加優(yōu)秀的產(chǎn)品或想法。
15.幽默是不可缺的。在我20年的開(kāi)發(fā)生涯中,我還沒(méi)有碰到哪位程序員是沒(méi)有幽默感的。實(shí)際上,干我們這行,幽默是一項(xiàng)必備品。
16.謹(jǐn)防那些無(wú)所不知的程序員,不愿分享的程序員,還有經(jīng)驗(yàn)不足的程序員。當(dāng)你遇到這幾種程序員時(shí),你自己要謙虛。無(wú)所不知的程序員,更想當(dāng)一個(gè)英雄而不是團(tuán)隊(duì)成員;保守的程序員則是在編寫(xiě)著他們獨(dú)享的代碼;而經(jīng)驗(yàn)不足的程序員則會(huì)每十分鐘就來(lái)問(wèn)你一下,當(dāng)代碼完成后,代碼已經(jīng)是你的,而不是他們。
17.任何項(xiàng)目都不會(huì)那么簡(jiǎn)單。朋友、家人和同事曾請(qǐng)求我倉(cāng)促做一些事情,倉(cāng)促做一個(gè)程序或者網(wǎng)站。對(duì)于這樣的事,應(yīng)該從雙方做計(jì)劃,才能做出令兩方都會(huì)滿意的東西。如果某人起初只是需要一個(gè)使用Microsoft Access的、只有有3個(gè)頁(yè)面的網(wǎng)站,但來(lái)就很可能變成一個(gè)有15個(gè)頁(yè)面的網(wǎng)站,并使用SQL Server,有一個(gè)論壇,還有一個(gè)定制的CMS(內(nèi)容管理系統(tǒng))。
18.任何時(shí)候不要想當(dāng)然。假如你承接一個(gè)簡(jiǎn)單的項(xiàng)目,你可能會(huì)認(rèn)為某個(gè)部分可以輕松完成。千萬(wàn)別這樣想!除非你有一個(gè)類(lèi)、組件、或者一段已經(jīng)寫(xiě)好的代碼,并且在現(xiàn)有的項(xiàng)目已經(jīng)測(cè)試通過(guò)。不要認(rèn)為這將是很容易的。
19.沒(méi)有已經(jīng)完成的軟件。曾經(jīng)有一位程序員告訴我,沒(méi)有軟件是已經(jīng)完成的,它只是“暫時(shí)完成了”。這是明智的忠告。如果客戶還在使用你寫(xiě)的程序,并經(jīng)受了時(shí)間的考驗(yàn)。如果有機(jī)會(huì),你仍在更新它,這并不是什么壞事,這讓你不斷地前行。
20.耐心是一種美德。當(dāng)客戶、朋友或家庭成員用電腦的時(shí)候,他們也許會(huì)受挫,進(jìn)而想砸電腦,或氣沖沖地離開(kāi)。我一直在告訴他們,“是你掌控電腦,不是電腦掌控你?!睂?duì)于用作編程的電腦,你要有一定的耐心。一旦程序員知道問(wèn)題所在后,他們就會(huì)站在電腦的角度看問(wèn)題,并且說(shuō) “哦,這就是為什么它是這樣做。”
原文作者喬納森·丹尼可(Jonathan Danylko)是一位自由職業(yè)的web架構(gòu)師和程序員,編程經(jīng)驗(yàn)已超過(guò)20年,涉足領(lǐng)域有電子商務(wù)、生物技術(shù)、房地產(chǎn)、醫(yī)療、保險(xiǎn)和公用事業(yè)。正如喬納森在文中所言,本文適合剛畢業(yè)的大學(xué)生和剛?cè)腴T(mén)的程序員。如果你已是高級(jí)開(kāi)發(fā)人員,或許你在本文中看到自己的身影。
第二篇:程序員考試經(jīng)驗(yàn)
但我確信一條:計(jì)算機(jī)知識(shí)是一門(mén)技術(shù)學(xué)科,不是一門(mén)藝術(shù);可能有人終其一生,也不能成為一名藝術(shù)家,但每個(gè)人通過(guò)努力,都是可以掌握好一門(mén)技術(shù)的。正是因?yàn)橛羞@樣堅(jiān)定的信心,我才能夠在三年的時(shí)間里,克服了常人難以想像的困難,終于達(dá)到了自己的目標(biāo)。
選好教材沒(méi)人指導(dǎo)自己學(xué)習(xí),選一些好的教材就顯得非常重要了。開(kāi)始我也不知道什么書(shū)好,見(jiàn)什么買(mǎi)什么。后來(lái)發(fā)現(xiàn)一些大學(xué)教材內(nèi)容很系統(tǒng),而且也有一定的權(quán)威性。我后來(lái)選的就是清華大學(xué)計(jì)算機(jī)系的教材。學(xué)完教材后,我開(kāi)始研究三本軟件水平考試的統(tǒng)編教材,如果一開(kāi)始就看統(tǒng)編教材,會(huì)覺(jué)得書(shū)里結(jié)論大多沒(méi)有詳細(xì)的闡述,很難理解和記憶,但先系統(tǒng)學(xué)完教材后,你會(huì)發(fā)現(xiàn)統(tǒng)編教材起了一個(gè)很好的綜合作用。
學(xué)會(huì)“不求甚解”我這里說(shuō)的“不求甚解”并不是指不認(rèn)真學(xué)習(xí)。自學(xué)電腦最怕鉆牛角尖:看書(shū)時(shí)一個(gè)問(wèn)題不明白,就在那里卡住,非解決它不可——這樣的方法我是不贊成的。首先,它會(huì)嚴(yán)重打擊你的自信心,使你喪失繼續(xù)學(xué)習(xí)下去的興趣;其次,這樣浪費(fèi)了許多時(shí)間。因此學(xué)習(xí)時(shí)要給自己留一些“不懂”的余地。例如第一遍讀書(shū)時(shí)要允許自己似懂非懂,用規(guī)定的時(shí)間(例如兩個(gè)星期)把它看完,然后開(kāi)始第二遍學(xué)習(xí)。開(kāi)始時(shí)許多不明白的東西,這次就容易理解多了。
關(guān)于軟件水平考試
重點(diǎn)突破計(jì)算機(jī)的專(zhuān)業(yè)課程很多,如果要通過(guò)軟件水平考試,我認(rèn)為一定要抓住《數(shù)據(jù)結(jié)構(gòu)》這門(mén)核心課程。軟件水平考試最難通過(guò)的部分是下午試題,其中很多內(nèi)容涉及數(shù)據(jù)結(jié)構(gòu)中的知識(shí),大部分試題都是數(shù)據(jù)結(jié)構(gòu)的演化。只有對(duì)線性表、棧和隊(duì)列、樹(shù)、查找、排序等問(wèn)題非常精通,編程的難題才能迎刃而解。在1997年參加程序員考試時(shí),最后一道題目整體上我看得不是很懂,但由于我對(duì)數(shù)據(jù)結(jié)構(gòu)比較熟悉,我把需要填空的上下兩句仔細(xì)看了看,就知道是實(shí)現(xiàn)一個(gè)鏈表的問(wèn)題,而鏈表的操作我十分熟練,我自信地填上了正確答案。數(shù)據(jù)結(jié)構(gòu)應(yīng)該學(xué)到什么程度呢?我認(rèn)為,基本上能用高級(jí)語(yǔ)言來(lái)實(shí)現(xiàn)各種數(shù)據(jù)結(jié)構(gòu)就差不多了。
重點(diǎn)突破的另一個(gè)含義是揚(yáng)長(zhǎng)避短:一個(gè)非計(jì)算機(jī)專(zhuān)業(yè)的考生,很難做到知識(shí)十分全面。特別是對(duì)一個(gè)文科生來(lái)說(shuō),數(shù)學(xué)是心頭永遠(yuǎn)的痛,而我的英語(yǔ)也丟了多年。是花費(fèi)巨大的精力去補(bǔ)數(shù)學(xué)和英語(yǔ),還是把精力集中在其他科目?經(jīng)過(guò)權(quán)衡,我選擇了后者。在程序員和高程考試中,上午試題的前十一道,我基本上得了滿分,數(shù)學(xué)和英語(yǔ)對(duì)我的影響并不大。我的順利過(guò)關(guān),就是舍車(chē)保帥策略的成功運(yùn)用。當(dāng)然這只是針對(duì)應(yīng)試而言,如果你現(xiàn)在還有機(jī)會(huì)學(xué)習(xí)數(shù)學(xué)和英語(yǔ),還是應(yīng)當(dāng)盡量把它們學(xué)好。
多上機(jī)雖然軟件水平考試下午試題只要填上程序所缺的語(yǔ)句,不用上機(jī)調(diào)試,但要想做對(duì),就離不開(kāi)平時(shí)多上機(jī)練習(xí)了。有時(shí)你看書(shū)時(shí)覺(jué)得懂了,但上機(jī)時(shí)卻會(huì)發(fā)現(xiàn)一個(gè)簡(jiǎn)單的程序也容易漏洞百出。我把統(tǒng)編教材《程序設(shè)計(jì)》中的程序上機(jī)調(diào)試了兩次:第一次基本上是照書(shū)打字,邊打邊想;第二次是先看題自己做,實(shí)在不會(huì)時(shí)才對(duì)照一下教材,看自己為什么做不出來(lái)。調(diào)試程序的過(guò)程中會(huì)發(fā)現(xiàn)C語(yǔ)言中的許多精妙的地方,一些考試時(shí)容易忽略的細(xì)節(jié)問(wèn)題也都暴露出來(lái),對(duì)考試十分有利,下午試題考的就是你的思維是否嚴(yán)密。
多做試題我不提倡多做模擬題,因?yàn)槟M題的難度很難把握——不是太難就是太易,對(duì)考試幫助不是很大。但一定要把近幾年的正式試題找來(lái)做,最好能做十份左右。雖然每年的考題都不同,但你一定能夠在歷年的考題中發(fā)現(xiàn)一些有規(guī)律的東西——它要考核你什么樣的能力?它考一些什么知識(shí)點(diǎn)?這樣,你在復(fù)習(xí)時(shí)就能做到有的放矢
第三篇:java程序員面試寶典_java程序員面試經(jīng)驗(yàn)
java程序員面試寶典_java程序員面試經(jīng)驗(yàn)
一些Java軟件工程師求職者們,可能因?yàn)榉N種原因,對(duì)Java語(yǔ)言及其深層原理掌握不牢固,以至于在面試中犯各種錯(cuò)誤。本期喬布簡(jiǎn)歷小編將為大家?guī)?lái)的主題是java程序員面試經(jīng)驗(yàn),一起來(lái)了解一下java程序員面試寶典吧~
關(guān)鍵詞:java程序員面試寶典,java程序員面試經(jīng)驗(yàn)
以下是一些java程序員面試需要注意的地方:
1、對(duì)于此類(lèi)崗位而言,具體的項(xiàng)目是用人單位招聘時(shí)最看重的參考因素。即便是沒(méi)有工作經(jīng)驗(yàn)的應(yīng)屆生,也要準(zhǔn)備可作為自己能力參考的具體作品。如果從未參加過(guò)任何項(xiàng)目,可以準(zhǔn)備自己在相關(guān)領(lǐng)域的課程設(shè)計(jì),如有必要還可以將其修改為完整的項(xiàng)目。對(duì)于這份具體作品,求職者要有相當(dāng)?shù)牧私?。通過(guò)求職者對(duì)于該作品的講解,招聘官會(huì)判斷求職者的技術(shù)能力到底如何。
2、Java程序員要求掌握的技能會(huì)比較多,求職者在簡(jiǎn)歷上可以分類(lèi)依次列舉出自己所掌握的專(zhuān)業(yè)技能,有證書(shū)的列出自己所持有的證書(shū)名稱(chēng)。在面試的時(shí)候,可以對(duì)自己所掌握的技能做出介紹,并輔以實(shí)例證明,這樣會(huì)更具有說(shuō)服力。
3、基礎(chǔ)很重要,不要生疏了。不管應(yīng)聘什么程序員崗位,基礎(chǔ)永遠(yuǎn)都是最重要的。只有有了踏實(shí)的基礎(chǔ),再輔以較好的學(xué)習(xí)能力,這樣才不會(huì)被互聯(lián)網(wǎng)日新月異的變化甩開(kāi)。很多程序員在面試時(shí)往往是因?yàn)榇鸩怀鲎罨A(chǔ)的問(wèn)題才會(huì)錯(cuò)失工作機(jī)會(huì)。面試前鞏固一下基礎(chǔ)知識(shí),永遠(yuǎn)不要輕視了基礎(chǔ)。
程序員要時(shí)刻關(guān)注技術(shù)前沿,將新技術(shù)與自己所從事的工作聯(lián)系到一起,做一些深入思考,面試時(shí)談?wù)勥@樣的問(wèn)題也是向面試官展現(xiàn)自己學(xué)習(xí)能力的好機(jī)會(huì)~
本文來(lái)源簡(jiǎn)歷http://cv.qiaobutang.com/knowledge/articles/5652f8b30cf2a980ccfbcec2
第四篇:有項(xiàng)目經(jīng)驗(yàn)程序員自我介紹
自我介紹是面試程序員中非常關(guān)鍵的一步。下面寫(xiě)寫(xiě)幫文庫(kù)小編為你帶來(lái)程序員自我介紹的內(nèi)容,希望你們喜歡。
關(guān)于程序員自我介紹篇一
尊敬的各位領(lǐng)導(dǎo),你們好。我叫___,來(lái)自上海.我是今年南京工業(yè)大學(xué)的應(yīng)屆畢業(yè)生,學(xué)的是信息管理與信息系統(tǒng)專(zhuān)業(yè).畢業(yè)之前,我曾在上海興達(dá)網(wǎng)絡(luò)有限公司實(shí)習(xí)過(guò),和貴公司是同類(lèi)行業(yè).本人性格開(kāi)朗,善于微笑,長(zhǎng)于交際,工作態(tài)度認(rèn)真。善于寫(xiě)作,熟悉計(jì)算機(jī)系統(tǒng)及各類(lèi)辦公軟件,應(yīng)用軟件,具有簡(jiǎn)單的編程能力。我相信,這一切將成為我工作最大的財(cái)富.我在很久就注意到貴公司,貴公司無(wú)疑是_行業(yè)中的姣姣者(將你所了解的公司榮譽(yù)或成果填上).同時(shí)我又了解到,這又是一支年輕而又富有活力的隊(duì)伍.本人非??释軌蛟跒槠渲械囊粏T.如果有幸獲聘,本人將以為公司創(chuàng)造最大利益為自己最大的利益,不講價(jià)錢(qián).真誠(chéng)做好每一件事,和同事們團(tuán)結(jié)奮斗.勤奮工作,加強(qiáng)學(xué)習(xí),不斷進(jìn)步!
關(guān)于程序員自我介紹篇二
本人___,我是一個(gè)實(shí)事求是、不浮夸的人。喜歡參與團(tuán)隊(duì)工作與集體活動(dòng)。重視自身素質(zhì)培養(yǎng)。
軟件開(kāi)發(fā)基礎(chǔ)扎實(shí),對(duì)編程充滿熱情,學(xué)習(xí)能力強(qiáng),能快速掌握新技術(shù)
在校期間,曾獲午2007—2008學(xué) 優(yōu)秀團(tuán)員,2007—2008學(xué) 丙等獎(jiǎng)學(xué)金,2005年9月份 軍訓(xùn)優(yōu)秀個(gè)人。曾是系學(xué)生會(huì)干事,在通過(guò)與其他干事的合作,主要對(duì)學(xué)生宿舍公共衛(wèi)生、宿舍文化、晚歸等進(jìn)行監(jiān)督管理,評(píng)定優(yōu)秀寢室,不定期組織學(xué)生活動(dòng)(寢室籃球賽、跳蚤文化市場(chǎng)等)
實(shí)習(xí)期間就職于金融事業(yè)本部,部門(mén)業(yè)務(wù)涉及全國(guó)數(shù)省的農(nóng)村信用社核心業(yè)務(wù)系統(tǒng)、城市商業(yè)銀行支付系統(tǒng)以及外圍輔助服務(wù)系統(tǒng)。我一直在廣東四地市的農(nóng)信社做軟件開(kāi)發(fā)工作。先后參與了廣東省四地市的銀行卡系統(tǒng)、綜合業(yè)務(wù)系統(tǒng)卡改造、電話銀行系統(tǒng)、自助終端系統(tǒng)等的開(kāi)發(fā)和實(shí)施。相信您的信任與我的實(shí)力將為我們帶來(lái)共同的成功!希望我能為貴公司貢獻(xiàn)自己的力量!
關(guān)于程序員自我介紹篇三
大家好,我叫__,天津大學(xué)計(jì)算機(jī)應(yīng)用專(zhuān)業(yè)碩士,2013年6月份畢業(yè),研究方向__,我想從三個(gè)方面介紹自己:
(1)學(xué)習(xí)方面。大三時(shí)保送研究生,之后進(jìn)入實(shí)驗(yàn)室開(kāi)展項(xiàng)目研究。在_年時(shí)間里,先后參與了_個(gè)項(xiàng)目,其中_個(gè)縱向項(xiàng)目,_個(gè)橫向項(xiàng)目,縱向項(xiàng)目主要是關(guān)于__,橫向項(xiàng)目主要是關(guān)于__。這些分別對(duì)應(yīng)我簡(jiǎn)歷里的項(xiàng)目經(jīng)歷(1,2,3)。我本科績(jī)點(diǎn)3.8,研究生績(jī)點(diǎn)3.4。我__年一次性通過(guò)大學(xué)英語(yǔ)四、六級(jí)考試,__年通過(guò)托業(yè)英語(yǔ)考試,考試成績(jī)__分(滿分__分),__年通過(guò)軟件工程師/網(wǎng)絡(luò)工程師/系統(tǒng)分析師考試。
(2)實(shí)踐方面。曾在軟件公司實(shí)習(xí)__年時(shí)間,曾在__當(dāng)過(guò)計(jì)算機(jī)講師,主講__,另外,本科時(shí)曾參加過(guò)__比賽,并獲得了__獎(jiǎng)。實(shí)習(xí)期間,我的最大收獲是:學(xué)校學(xué)習(xí)與工作知識(shí)的銜接,深切感悟?qū)⒗碚搼?yīng)用于實(shí)踐的重要性和快樂(lè)。
(3)社會(huì)工作方面。本科和研究生都擔(dān)任所在班級(jí)班長(zhǎng)/ 部長(zhǎng),同時(shí)也在校學(xué)生會(huì)工作過(guò)。在擔(dān)任班干部的日子里我具備了一定的組織、協(xié)調(diào)能力,并深深體會(huì)團(tuán)隊(duì)協(xié)作的重要性。
我的性格特點(diǎn)是,1.性格沉穩(wěn),2.考慮問(wèn)題全面、仔細(xì),3.做事有自己明確的想法和計(jì)劃。
我的優(yōu)勢(shì)是1.自己全面的綜合素質(zhì);2.做事分清輕重緩急;3.喜歡總結(jié),避免犯同樣的錯(cuò)誤。
我的座右銘是:人因?yàn)閴?mèng)想而偉大,機(jī)遇永遠(yuǎn)屬于那些有準(zhǔn)備、立即行動(dòng)并能堅(jiān)持到底的人!
我的職業(yè)生涯目標(biāo)是,將來(lái)有一天能帶領(lǐng)一個(gè)團(tuán)隊(duì),做出億萬(wàn)網(wǎng)民喜愛(ài)和尊敬的軟件!做一個(gè)既懂技術(shù),又懂業(yè)務(wù)的復(fù)合型人才。
看了程序員自我介紹的還看了:
1.程序員面試自我介紹6篇
2.it程序員自我介紹范文3篇
3.程序員面試自我介紹范文3篇
4.android程序員優(yōu)秀自我介紹
5.程序員面試時(shí)自我介紹范文
6.程序員自我介紹范文
第五篇:java程序員面試交流項(xiàng)目經(jīng)驗(yàn)
1:請(qǐng)你介紹一下你自己
這是面試官常問(wèn)的問(wèn)題。一般人回答這個(gè)問(wèn)題過(guò)于平常,只說(shuō)姓名、愛(ài)好、工作經(jīng)驗(yàn),這些簡(jiǎn)歷上都有。其實(shí),面試官最希望知道的是求職者能否勝任工作,包括:最強(qiáng)的技能、最深入研究的知識(shí)領(lǐng)域、個(gè)性中最積極的部分等。2:說(shuō)說(shuō)你的家庭
面試時(shí)詢(xún)問(wèn)家庭問(wèn)題不是非要知道求職者家庭情況,探究隱私,而是要了解家庭背景對(duì)求職者的塑造和影響。面試官希望聽(tīng)到的重點(diǎn)也在于家庭對(duì)求職者的積極影響。3:說(shuō)說(shuō)你的最大優(yōu)缺點(diǎn)
這個(gè)問(wèn)題的概率很大,面試官喜歡求職者從自己的優(yōu)點(diǎn)說(shuō)起,中間加一些小缺點(diǎn),最后再把問(wèn)題轉(zhuǎn)回到優(yōu)點(diǎn)上,突出優(yōu)點(diǎn)的部分。4:就你申請(qǐng)的這個(gè)職位,你認(rèn)為你還缺什么?
面試官喜歡問(wèn)求職者的弱點(diǎn),但精明的求職者一般不直接回答。他們希望看到這樣的求職者:繼續(xù)重復(fù)自己的優(yōu)勢(shì),然后說(shuō):“對(duì)于這個(gè)職位和我的能力來(lái)說(shuō),我相信自己可以勝任的,只是缺乏經(jīng)驗(yàn),這個(gè)問(wèn)題我想我可以進(jìn)入公司以后以最短的時(shí)間來(lái)解決?!?5:你期望的工資是多少?
這個(gè)問(wèn)題不能直接回答,面試官希望聽(tīng)到:“以我的能力和優(yōu)勢(shì),我完全可以勝任這個(gè)職位,我相信我可以做的很好。但是貴公司對(duì)這個(gè)職位的描述不是很具體,我想我可以延后再討論”。
6:你還有什么問(wèn)題嗎?
這個(gè)問(wèn)題看上去可有可無(wú),其實(shí)很關(guān)鍵,面試官不喜歡說(shuō)“沒(méi)有問(wèn)題”的人,因?yàn)槠浜茏⒅貑T工的個(gè)性和創(chuàng)新能力。如果有人這樣問(wèn):貴公司對(duì)新入公司的員工有沒(méi)有什么培訓(xùn)的項(xiàng)目?或者說(shuō)貴公司的晉升機(jī)制是什么樣的?面試官將很歡迎,因?yàn)轶w現(xiàn)出你對(duì)學(xué)習(xí)的熱情和以及你的上進(jìn)心。
注意:面試過(guò)程中,求職者要尊重面試官,認(rèn)真回答每一個(gè)問(wèn)題,在回答問(wèn)題之后說(shuō)一句“謝謝”,能提高獲勝的機(jī)會(huì).面試進(jìn)行曲之技術(shù)面試(項(xiàng)目經(jīng)驗(yàn))收藏
在前期已經(jīng)講過(guò)怎樣分析自己,對(duì)自己進(jìn)行一個(gè)準(zhǔn)確的定位,選擇一個(gè)合適的求職方向!并結(jié)合自己的實(shí)際個(gè)人情況來(lái)寫(xiě)一份針對(duì)性很強(qiáng)的個(gè)人簡(jiǎn)歷!個(gè)人簡(jiǎn)歷就是個(gè)人的廣告!好的簡(jiǎn)歷可以更受到用人需求單位青睞!好的簡(jiǎn)歷才能讓你獲得面試的機(jī)會(huì)!我們還針對(duì)面試列出了j2ee方面的知識(shí)點(diǎn)!不管是筆試還是面試都是會(huì)考到這些非常重要的知識(shí)點(diǎn)!面試的技術(shù)內(nèi)容并不會(huì)有想象中的那么難,主要注重基礎(chǔ)和細(xì)節(jié)!細(xì)節(jié)決定一切!所以列羅的那些知識(shí)點(diǎn)是需要下功夫去準(zhǔn)備的!當(dāng)然列羅的那些知識(shí)點(diǎn)只是一些在面試中經(jīng)常會(huì)出現(xiàn)的問(wèn)題集!每家企業(yè)都可能超出這些知識(shí)點(diǎn)的可能(就不要罵我了)!自己去準(zhǔn)備吧!技術(shù)方面的考核通常分為筆試,技術(shù)面試;其中技術(shù)面試又分為專(zhuān)業(yè)知識(shí)面試和項(xiàng)目經(jīng)驗(yàn)考核。應(yīng)該說(shuō)來(lái)筆試和專(zhuān)業(yè)知識(shí)面試都是考核你對(duì)某方面(j2ee或.net)知識(shí)的掌握和熟練程度!而項(xiàng)目經(jīng)驗(yàn)考核則是看你是不是擁有項(xiàng)目經(jīng)驗(yàn),是不是適合企業(yè)的用人需要,是不是需要企業(yè)為你付出培養(yǎng)的成本,是不是你能夠馬上投入到工作中去.企業(yè)是以你的項(xiàng)目經(jīng)驗(yàn)作為衡量你的工資標(biāo)準(zhǔn)的!所以就是會(huì)出現(xiàn)有些同學(xué)可能在學(xué)校學(xué)習(xí)成績(jī)很好而企業(yè)給他開(kāi)的工資并不高,而有些同學(xué)的學(xué)習(xí)成績(jī)一般反而得到高工資的原因!專(zhuān)業(yè)知識(shí)的考核只是企業(yè)了解你具有這方面的專(zhuān)業(yè)素養(yǎng)和能力!其實(shí)有時(shí)筆試成績(jī)差一點(diǎn)或者你感覺(jué)在做筆試題的時(shí)候有些題目沒(méi)有做出來(lái)或答錯(cuò)了并沒(méi)有關(guān)系的。在技術(shù)面試的時(shí)候,在回答專(zhuān)業(yè)知識(shí)方面的題目不夠理想,也并不起決定性的作用!總之筆試和專(zhuān)業(yè)知識(shí)面試的答題達(dá)到企業(yè)要求的70%就可以了!當(dāng)然如果你在專(zhuān)業(yè)知識(shí)方面表現(xiàn)的太差,考官對(duì)你也就沒(méi)有多大的興趣了!但是最能決定企業(yè)下定決心錄用你的關(guān)鍵在于你的項(xiàng)目經(jīng)驗(yàn)(排除企業(yè)特別強(qiáng)調(diào)英文等其它方面能力外)。說(shuō)了這么多好像都沒(méi)有說(shuō)到正題,這是因?yàn)樽尨蠹腋宄牧私饣卮鸷庙?xiàng)目經(jīng)驗(yàn)方面的問(wèn)題是多么的重要。而這方面又正好是剛從學(xué)校出來(lái)的學(xué)員十分薄弱的,并且針對(duì)這方面介紹也十分少!下面我們就來(lái)談?wù)劽嬖囍嘘P(guān)于項(xiàng)目經(jīng)驗(yàn)的問(wèn)題及應(yīng)該從哪些方面進(jìn)行回答!
問(wèn)題
一、請(qǐng)簡(jiǎn)單的介紹一下你自己吧!
分析:這是在任何面試中都會(huì)遇到一個(gè)題目,看起來(lái)這個(gè)問(wèn)題是十分簡(jiǎn)單的,但是往往我們并不知道考官問(wèn)這個(gè)題目是希望從你的回答中獲得什么信息!所以我們就很容易走題,跑題,不入正題!不能馬上就吸引考官。請(qǐng)記住抓住面試的每一個(gè)機(jī)會(huì)來(lái)推銷(xiāo)自己。但是往往我們不知道從哪里談起。所以我們得先了解考官想要獲取什么信息呢? 1. 你的從業(yè)時(shí)間 你從事相關(guān)的工作有多長(zhǎng)了 2. 你的教育背景 你是否受過(guò)良好的教育 3. 你的工作經(jīng)驗(yàn) 你是否有過(guò)具有一定的工作經(jīng)驗(yàn) 4. 你的項(xiàng)目經(jīng)驗(yàn) 你是否有過(guò)豐富的項(xiàng)目經(jīng)驗(yàn)
5. 你與眾不同之處 你是怎么進(jìn)行項(xiàng)目開(kāi)發(fā)的,有什么特別之處,或者你在哪些項(xiàng)目中 取得過(guò)哪些成功,或者有哪些自己覺(jué)得驕傲的地方 6. 你最擅長(zhǎng)的地方 你最擅長(zhǎng)的技術(shù)是什么? 7. 你的性格 你是怎么樣的一個(gè)人
怎么回答: 我們一一來(lái)分析吧,首先從業(yè)時(shí)間一般回答你進(jìn)行軟件項(xiàng)目專(zhuān)業(yè)開(kāi)發(fā)的時(shí)間.千萬(wàn)不要把你以前在大街上賣(mài)過(guò)魚(yú)蛋或到夜市賣(mài)燒雞等亂七八糟的時(shí)間計(jì)算進(jìn)來(lái).工作經(jīng)驗(yàn)也是,你至少有在一家公司呆過(guò)吧.不要告訴我你只學(xué)過(guò)j2ee或.net半年時(shí)間,就想來(lái)我公司混飯吃.要和你的簡(jiǎn)歷對(duì)應(yīng)起來(lái).一般至少1年半以上.教育背景:如果你上的大學(xué)及所上的專(zhuān)業(yè)比較對(duì)口,就說(shuō)出來(lái),非否就不要提了.總之是要揚(yáng)長(zhǎng)避短
工作經(jīng)驗(yàn):也就是以前在什么公司上過(guò)班,與你簡(jiǎn)歷上的一致就可以了.只說(shuō)與軟件開(kāi)發(fā)的工作經(jīng)驗(yàn),其它的就不要提了
項(xiàng)目經(jīng)驗(yàn):你曾經(jīng)做過(guò)的自認(rèn)為比較好的項(xiàng)目,這里特別重要,先用一句話來(lái)概括項(xiàng)目,然后把項(xiàng)目的功能及子功能全部敘述出來(lái).你與眾不同之處:也以說(shuō)你在項(xiàng)目你以什么獨(dú)特的方法獲得什么不同的效果,主要是能夠結(jié)果具體的項(xiàng)目或能舉例說(shuō)出來(lái).最擅長(zhǎng)的地方:主要告訴對(duì)方你最擅長(zhǎng)哪方面的技術(shù),是需求分析?編碼,或數(shù)據(jù)庫(kù)或架構(gòu) 你的性格:用一兩個(gè)詞來(lái)形容你自己,描述你的性格.回答實(shí)例: 面試官:請(qǐng)簡(jiǎn)單的介紹一下你自己吧!令狐沖:您好,在下令狐沖.從事j2ee開(kāi)發(fā)工作3年時(shí)間.20002年至2005年在大宋桃花島軟件谷皇室軟件公司從事j2ee項(xiàng)目開(kāi)發(fā).其間開(kāi)發(fā)過(guò)大宋俠士綜合管理平臺(tái).大宋俠士綜合管理平臺(tái)能夠自動(dòng)收集大宋各路俠士,英雄好漢,隱居高人信息并對(duì)他們的個(gè)人信息及所作所為進(jìn)行跟蹤管理,實(shí)現(xiàn)俠士信息維護(hù),查詢(xún).俠義事件維護(hù),俠士等級(jí)管理,俠士獎(jiǎng)懲管理,俠義活動(dòng)發(fā)布,抗災(zāi)募捐管理等。鄙人在項(xiàng)目中主要負(fù)責(zé)需求分析,架構(gòu)設(shè)計(jì)和框架類(lèi)代碼實(shí)現(xiàn)。在項(xiàng)目開(kāi)發(fā)中善于與客戶溝通,充分理解客戶需求。具有極強(qiáng)自學(xué)能力,在大宋藏經(jīng)閣中通讀了大量的軟件項(xiàng)目開(kāi)發(fā)秘籍,具有藏文,印度文,金文的讀寫(xiě)能力。問(wèn)題之
二、談?wù)勀愕腦XX項(xiàng)目吧!分析:考官通過(guò)看你的簡(jiǎn)歷或者你的介紹來(lái)了解你所做的項(xiàng)目,那么考官肯定想更詳細(xì)的了解您的項(xiàng)目,看是不是與你的簡(jiǎn)歷寫(xiě)的項(xiàng)目經(jīng)驗(yàn)一致。也就是考核你是否具有真實(shí)的項(xiàng)目經(jīng)驗(yàn)。一般來(lái)說(shuō),在你的簡(jiǎn)歷至少有一個(gè)重點(diǎn)項(xiàng)目,放在簡(jiǎn)歷項(xiàng)目經(jīng)驗(yàn)欄的第一位。把項(xiàng)目的業(yè)務(wù)功能描述清楚。在這里你就是重點(diǎn)談一個(gè)項(xiàng)目就可以了。從下面幾個(gè)方面來(lái)進(jìn)行陳述 1. 用一句話簡(jiǎn)述項(xiàng)目 2. 詳細(xì)的列出項(xiàng)目實(shí)現(xiàn)的功能
3. 說(shuō)出項(xiàng)目實(shí)現(xiàn)的技術(shù)和架構(gòu),能說(shuō)出項(xiàng)目的不尋常之處,比如采用了某項(xiàng)新技術(shù),采用了良好的架框等
4. 能讓別人感覺(jué)出項(xiàng)目的規(guī)模 5. 說(shuō)出你在項(xiàng)目中的責(zé)任
通過(guò)這些來(lái)證明你是的確開(kāi)發(fā)過(guò)了這個(gè)項(xiàng)目,并且這個(gè)項(xiàng)目是一個(gè)真實(shí)的。還有就是你是真正具有項(xiàng)目經(jīng)驗(yàn)的。合乎企業(yè)的用人需要。
特別注意要把項(xiàng)目所實(shí)現(xiàn)的功能描述得越詳細(xì)越好。當(dāng)然用詞要簡(jiǎn)潔,表達(dá)要流利。其次要盡可能采用專(zhuān)業(yè)術(shù)語(yǔ),顯得你的專(zhuān)業(yè)。不要犯低級(jí)錯(cuò)誤。
請(qǐng)記住,你要描述的是整個(gè)項(xiàng)目而不僅僅是你做的那一個(gè)模塊。有些項(xiàng)目你只參與了其中一個(gè)模塊,但是你要把整個(gè)項(xiàng)目描述出來(lái),不要僅僅描述你參與的那一個(gè)模塊。說(shuō)出你項(xiàng)目采用的技術(shù)及架構(gòu),還要能說(shuō)明你在項(xiàng)目中的責(zé)任?;卮饘?shí)例:
面試官:令狐沖,能介紹一下你做的大宋俠士綜合管理平臺(tái)吧!令狐沖:好的,大宋俠士綜合管理平臺(tái)是為大宋武林聯(lián)盟開(kāi)發(fā)的,實(shí)現(xiàn)武林聯(lián)盟管理的自動(dòng)化。大宋俠士綜合管理平臺(tái)能夠自動(dòng)收集大宋各路俠士,英雄好漢,隱居高人信息并對(duì)他們的個(gè)人信息及所作所為進(jìn)行跟蹤管理,實(shí)現(xiàn)俠士信息維護(hù),查詢(xún).俠義事件維護(hù),俠士等級(jí)管理,俠士獎(jiǎng)懲管理,俠義活動(dòng)發(fā)布,抗災(zāi)募捐管理等。
系統(tǒng)基于B/S三層架構(gòu),采用Spring + Hibernate + Spring MVC框架.使用Oracle 數(shù)據(jù)庫(kù).本項(xiàng)目只投入15個(gè)人,開(kāi)發(fā)周期為6個(gè)月。本人在項(xiàng)目中進(jìn)行了前期的需求分析,系統(tǒng)架構(gòu)實(shí)現(xiàn),數(shù)據(jù)庫(kù)建模,及部分編碼工作。
問(wèn)題之
三、談?wù)勀銈兪窃趺磳?duì)這個(gè)項(xiàng)目進(jìn)行開(kāi)發(fā)的?(談?wù)勀銈兪窃趺催M(jìn)行項(xiàng)目開(kāi)發(fā)的?)分析:這個(gè)問(wèn)題是考核你是否熟悉軟件開(kāi)發(fā)的流程,同時(shí)也是考核你的項(xiàng)目經(jīng)驗(yàn),你的專(zhuān)業(yè)素養(yǎng),從這里可以判斷出你參與過(guò)多少項(xiàng)目,可以判斷你對(duì)軟件工程的理解和熟悉程度。這個(gè)問(wèn)題是十分關(guān)鍵的,你需要準(zhǔn)備的知識(shí)點(diǎn)有:軟件項(xiàng)目的生命周期、軟件項(xiàng)目的開(kāi)發(fā)模型、面向?qū)ο蟮姆治龊驮O(shè)計(jì)、軟件質(zhì)量保證等。軟件項(xiàng)目的生命周期: 項(xiàng)目計(jì)劃 需求分析
設(shè)計(jì)(概要設(shè)計(jì)和詳細(xì)設(shè)計(jì))編碼 測(cè)試 發(fā)布 維護(hù)
項(xiàng)目計(jì)劃階段:走訪客戶,進(jìn)行交流溝通,獲得客戶原始需求。對(duì)客戶的需求和市場(chǎng)等進(jìn)行調(diào)研,分析,編寫(xiě)可行性分析報(bào)告。
通過(guò)不斷的與客戶溝通,找客戶不同環(huán)節(jié)的用戶進(jìn)行交流來(lái)獲取需求。召開(kāi)評(píng)審會(huì)議,報(bào)告可行性分析,報(bào)告用戶原始需求,報(bào)告項(xiàng)目遠(yuǎn)景規(guī)化。需求分析階段:
在客戶原始需求的基礎(chǔ)上不斷與客戶溝通,充分的熟悉和深入客戶業(yè)務(wù),獲得充分的業(yè)務(wù)需求,完善用戶需求和功能性需求,了解客戶的相關(guān)約束而獲得非功能性需求。最終編寫(xiě)《需求規(guī)格說(shuō)明書(shū)》;召開(kāi)需求評(píng)審會(huì)議,客戶確定需求,并簽定合同;編寫(xiě)項(xiàng)目計(jì)劃說(shuō)明書(shū);編寫(xiě)測(cè)試計(jì)劃;召開(kāi)項(xiàng)目啟動(dòng)會(huì)議,項(xiàng)目正式啟動(dòng)。
概要設(shè)計(jì)階段:根據(jù)《需求分析說(shuō)明書(shū)》,進(jìn)行用例分析,獲得充分而有效的用例。編寫(xiě)界面原型,編寫(xiě)編碼規(guī)范和界面風(fēng)格規(guī)范,數(shù)據(jù)庫(kù)設(shè)計(jì)規(guī)范。用uml工具畫(huà)用例圖,編寫(xiě)有效的用例規(guī)約文檔。劃分項(xiàng)目功能模塊.評(píng)審用例及用例規(guī)約文檔。
詳細(xì)設(shè)計(jì)階段:根據(jù)完整的用例及需求進(jìn)行分析,獲得數(shù)據(jù)庫(kù)所需的相關(guān)信息,畫(huà)數(shù)據(jù)庫(kù)E-R圖,編寫(xiě)數(shù)據(jù)設(shè)計(jì)說(shuō)明書(shū).進(jìn)行數(shù)據(jù)庫(kù)建模。進(jìn)行詳細(xì)的分析,用uml工具畫(huà)類(lèi)圖,確定每個(gè)功能模塊的子功能,抽取項(xiàng)目的公共部分成為一個(gè)公共模塊。確定項(xiàng)目的架構(gòu)基礎(chǔ)。確定需要用到的類(lèi)及類(lèi)成員和方法。確定一些輔助類(lèi)及方法。對(duì)每一個(gè)用例都用uml工具畫(huà)出順序圖。編寫(xiě)詳細(xì)設(shè)計(jì)說(shuō)明書(shū),評(píng)審詳細(xì)設(shè)計(jì)說(shuō)明書(shū), 進(jìn)行基礎(chǔ)框架搭建。列出任務(wù)清單,進(jìn)行任務(wù)分配。編碼階段:以小組的形式進(jìn)行代碼編寫(xiě),編寫(xiě)單元測(cè)試用例,每完成一個(gè)類(lèi)都要進(jìn)行單元測(cè)試。每完成一個(gè)功能點(diǎn)和模塊都要進(jìn)行集成測(cè)試。確保每一個(gè)功能點(diǎn)和模塊完成后都是一個(gè)可以看得見(jiàn)、摸得著的產(chǎn)品。而不是等到最后才進(jìn)行統(tǒng)一的調(diào)試和搭配。每天都要對(duì)代碼進(jìn)行檢查和優(yōu)化,也就是所謂的重構(gòu)。
測(cè)試階段:根據(jù)測(cè)試計(jì)劃對(duì)項(xiàng)目進(jìn)行系統(tǒng)測(cè)試,以及用戶的驗(yàn)收測(cè)試
產(chǎn)品發(fā)布:交付完整的產(chǎn)品和設(shè)計(jì)文檔。把產(chǎn)品布署到客戶的計(jì)算機(jī)上,確保產(chǎn)品的正常運(yùn)行??蛻艉炇?。
維護(hù)階段:為客戶提供技術(shù)保障,對(duì)產(chǎn)品進(jìn)行相應(yīng)的維護(hù)和升級(jí)工作 軟件常見(jiàn)開(kāi)發(fā)模型
瀑布模型:最經(jīng)典的過(guò)程模型,適用于需求明確,規(guī)模較小的項(xiàng)目 噴泉模型:迭代,無(wú)間隙特點(diǎn),適用于面向?qū)ο蟮能浖_(kāi)發(fā)過(guò)程 螺旋模型:
MSF模型:微軟解決方案過(guò)程模型
什么是極限(XP)編程:極限編程是對(duì)敏捷軟件開(kāi)發(fā)方法的一種實(shí)現(xiàn)。它強(qiáng)調(diào)測(cè)試先行,也就是在編寫(xiě)代碼的時(shí)候先編寫(xiě)測(cè)試用例;循環(huán)迭代,每一次迭代都是一個(gè)可用的產(chǎn)品;重構(gòu),不斷的對(duì)代碼進(jìn)行優(yōu)化;結(jié)對(duì)編程,兩個(gè)人為一對(duì)共同進(jìn)行代碼編寫(xiě);它強(qiáng)調(diào)團(tuán)隊(duì)之間的知識(shí)傳播,讓團(tuán)隊(duì)的每個(gè)人都能熟悉軟件開(kāi)發(fā)的各種技術(shù)。如:支持熟悉數(shù)據(jù)庫(kù)的人去做界面,做界面的人去做數(shù)據(jù)庫(kù)等,通過(guò)不定期的角色轉(zhuǎn)換來(lái)增強(qiáng)團(tuán)隊(duì)的能力。要求客戶參與到軟件開(kāi)發(fā)中來(lái),開(kāi)發(fā)出最適合客戶需求的產(chǎn)品。
單元測(cè)試一般是在編碼的時(shí)候同步進(jìn)行的,一般是以類(lèi)為單位進(jìn)行測(cè)試,當(dāng)一個(gè)類(lèi)完成了編碼,并編譯正確后才進(jìn)行的測(cè)試,測(cè)試這個(gè)類(lèi)是否已經(jīng)能夠?qū)崿F(xiàn)指定的功能。一個(gè)類(lèi)能夠正常的編譯成功并不意味著這個(gè)類(lèi)就已經(jīng)完成了,還要通過(guò)測(cè)試,設(shè)置斷言來(lái)確定他是否已經(jīng)達(dá)到了預(yù)期的效果,實(shí)現(xiàn)了特定的功能。調(diào)試,編譯通過(guò)只能證明代碼的語(yǔ)法沒(méi)有錯(cuò)誤。單元測(cè)試由程序員自己來(lái)進(jìn)行,也可以在項(xiàng)目小組內(nèi)交互進(jìn)行。單元測(cè)試是采用白盒測(cè)試 集成測(cè)試一般指實(shí)現(xiàn)了一個(gè)功能點(diǎn)或一個(gè)模塊后,為了測(cè)試這個(gè)模塊是否已經(jīng)實(shí)現(xiàn)了需求要求的功能。集成測(cè)試可能需要對(duì)多個(gè)類(lèi)進(jìn)行組裝,也可能需要與以前已經(jīng)測(cè)試通過(guò)的模塊進(jìn)行組裝,是對(duì)產(chǎn)品組件的系統(tǒng)整合和執(zhí)行。集成測(cè)試可以根據(jù)模塊的大小分不同的級(jí)別,在現(xiàn)行的軟件開(kāi)發(fā)中,每完成一個(gè)功能模塊都必須要進(jìn)行一次集成測(cè)試,使得你完成的模塊是一個(gè)可以運(yùn)行的產(chǎn)品。集成測(cè)試一般可以由項(xiàng)目小組的負(fù)責(zé)人(或指定一個(gè)小組成員)來(lái)完成。集成測(cè)試采用白盒式測(cè)試和黑盒測(cè)試
系統(tǒng)測(cè)試一般指項(xiàng)完代碼已經(jīng)全部完成,交給測(cè)試小組來(lái)進(jìn)行測(cè)試。進(jìn)行系統(tǒng)測(cè)試的人員獨(dú)立于開(kāi)發(fā)小組,系統(tǒng)測(cè)試人員把完成的產(chǎn)品布署在相應(yīng)的計(jì)算機(jī)環(huán)境中,按照測(cè)試計(jì)劃進(jìn)行測(cè)試,驗(yàn)證系統(tǒng)是否滿足了指定的需求。系統(tǒng)測(cè)試除了測(cè)試產(chǎn)品應(yīng)滿足基本的功能需求外,還要對(duì)產(chǎn)品的性能,用戶界面,安全性,壓力,可靠性,安裝和反安裝等幾個(gè)方面進(jìn)行測(cè)試 系統(tǒng)測(cè)試采用黑盒測(cè)試
驗(yàn)收測(cè)試一般指產(chǎn)品交付給客戶,負(fù)責(zé)把產(chǎn)品布署在指定的計(jì)算機(jī)環(huán)境中。由用戶根據(jù)需求文檔,進(jìn)行的總體測(cè)試。驗(yàn)收測(cè)試的內(nèi)容和系統(tǒng)測(cè)試一樣,只是執(zhí)行者不同。都是除了測(cè)試系統(tǒng)完成基本功能外還要對(duì)性能,安全性,可靠性等進(jìn)行測(cè)試。驗(yàn)收測(cè)試也是采用黑盒測(cè)試 為什么需要測(cè)試?測(cè)試是對(duì)軟件質(zhì)量的保證,只能通過(guò)嚴(yán)格測(cè)試的軟件才是合格的軟件,測(cè)試并不是說(shuō)讓軟件能夠編譯通過(guò),測(cè)試是讓軟件產(chǎn)品最大程度的滿足客戶的需求度?;卮饘?shí)例:
考官:令狐沖,能談?wù)勀銈兪窃趺礃訉?duì)這個(gè)項(xiàng)目開(kāi)發(fā)的嗎?
令狐沖:首先,我們這個(gè)項(xiàng)目已經(jīng)有了一個(gè)基本的用戶原始需求。但這是不夠的,我們都知道需求分析是十分重要的,所以我們?cè)谟脩粼夹枨笪臋n的基礎(chǔ)上,再次進(jìn)行了分析,通過(guò)不斷的與客戶溝通,充分的了解和熟悉用戶的業(yè)務(wù),完善了業(yè)務(wù)需求和功能需求。還對(duì)用戶業(yè)務(wù)需求和功能需求分析完善為實(shí)現(xiàn)軟件的必須的非功能性需求。得出項(xiàng)目需求規(guī)格說(shuō)明書(shū),經(jīng)過(guò)評(píng)審會(huì)議確認(rèn)通過(guò)。
根據(jù)需求規(guī)格說(shuō)明書(shū)進(jìn)行用例分析,通過(guò)分析和討論找出充分的有效用例,并用Rose畫(huà)用例圖。對(duì)每一個(gè)用例進(jìn)行詳細(xì)的分析,完成每個(gè)用例的用例規(guī)約文檔,并編寫(xiě)界面原型。劃分項(xiàng)目模塊。最后對(duì)用例及用例規(guī)約文檔進(jìn)行評(píng)審驗(yàn)證。編寫(xiě)”代碼編寫(xiě)規(guī)范”及界面風(fēng)格規(guī)范,數(shù)據(jù)庫(kù)設(shè)計(jì)規(guī)范,編寫(xiě)概要設(shè)計(jì)說(shuō)明書(shū)。
根據(jù)需求規(guī)格說(shuō)明書(shū)和分析各個(gè)用例規(guī)約文檔,獲得數(shù)據(jù)庫(kù)的基本信息原型。也可以說(shuō)是數(shù)據(jù)庫(kù)表的草稿,根據(jù)數(shù)據(jù)庫(kù)表草搞進(jìn)行分析,進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)和優(yōu)化。編寫(xiě)數(shù)據(jù)庫(kù)設(shè)計(jì)說(shuō)明書(shū)。采用PowerDesigner進(jìn)行數(shù)據(jù)庫(kù)建模,并生成SQL腳本。確定項(xiàng)目框架,設(shè)計(jì)公共模塊和輔助類(lèi)。根據(jù)對(duì)數(shù)據(jù)庫(kù)模型和用例規(guī)約文檔的分析,列出對(duì)象清單和理清對(duì)象關(guān)系。用Rose來(lái)畫(huà)類(lèi)圖。對(duì)每一個(gè)用例都用rose畫(huà)出時(shí)序圖。編寫(xiě)詳細(xì)設(shè)計(jì)說(shuō)明書(shū)。列出任務(wù)清單,分組進(jìn)行代碼編寫(xiě)。在代碼編寫(xiě)階段,先統(tǒng)一完成所有的實(shí)體類(lèi)。對(duì)于非實(shí)體類(lèi)則先完成類(lèi)的框架,也就是只寫(xiě)方法和注釋文字。具體方法的實(shí)現(xiàn)暫時(shí)為空。然后再進(jìn)行代碼填寫(xiě)。每完成一個(gè)類(lèi)的代碼編譯通過(guò)后都要進(jìn)行重構(gòu)和單元測(cè)試。每完成一個(gè)功能和模塊都由會(huì)由小組長(zhǎng)進(jìn)行集成測(cè)試。使得完成的模塊是一個(gè)真正可以運(yùn)行的,可見(jiàn)的功能實(shí)現(xiàn)。
在各個(gè)小組都完成自己的模塊后就進(jìn)行模塊整合,進(jìn)行一次大規(guī)模的集成測(cè)試。然后把產(chǎn)品產(chǎn)給產(chǎn)品測(cè)試小組進(jìn)行系統(tǒng)測(cè)試。
問(wèn)題之
四、你們是怎么保證軟件開(kāi)發(fā)的質(zhì)量的?
分析:這個(gè)問(wèn)題其實(shí)上面的講解已經(jīng)給了答案了。軟件質(zhì)量是軟件實(shí)現(xiàn)對(duì)需求的滿足度。開(kāi)發(fā)的軟件越滿足客戶的需求,說(shuō)明軟件的質(zhì)量越高。反之就是質(zhì)量越低。盡管你開(kāi)發(fā)的軟件使用了新的技術(shù),良好的設(shè)計(jì),豐富的功能;但是這些功能都不是客戶需要的,客戶需要的功能沒(méi)有實(shí)現(xiàn)或者是很多沒(méi)有實(shí)現(xiàn)。這樣的軟件也是失敗的軟件。為了保證軟件質(zhì)量,也就是讓開(kāi)發(fā)的軟件最大程度滿足客戶的需求,只有兩個(gè)方法。一個(gè)是獲得充分完整的需求,二是能過(guò)測(cè)試,以需求為中心編寫(xiě)測(cè)試計(jì)劃。來(lái)保證軟件合乎需求?;卮饘?shí)例:
考官:你們是怎么來(lái)保證軟件的質(zhì)量的呢?
令狐沖:要保證軟件的質(zhì)量首先就要獲得完整的需求,在需求分析階段做了大量的工作與客戶各個(gè)環(huán)節(jié)的代表性用戶進(jìn)行溝通,充分了解和熟悉客戶的業(yè)務(wù)。并且從需求到設(shè)計(jì)階段都保持與用戶的溝通和交流。讓用戶的業(yè)務(wù)專(zhuān)家一直參與我們的需求,分析和設(shè)計(jì)工作。其次我們會(huì)在需求分析后就編寫(xiě)測(cè)試計(jì)劃,在開(kāi)發(fā)的每個(gè)階段都進(jìn)行相應(yīng)的測(cè)試來(lái)保證代碼是乎合相應(yīng)需求的。在代碼編寫(xiě)過(guò)程中,每完成一個(gè)類(lèi)都由程序進(jìn)行單元測(cè)試,每完成一個(gè)功能點(diǎn)或模塊都要進(jìn)行集成測(cè)試,每一次集成測(cè)試都對(duì)上一次的已經(jīng)測(cè)試通過(guò)的產(chǎn)品進(jìn)行迭代, 也就是以前測(cè)試成功的都會(huì)加入到本次測(cè)試中來(lái)。使得每個(gè)完成的功能和模塊完成后都是一個(gè)可以運(yùn)行的,可以看得到的產(chǎn)品;同時(shí)也歡迎用戶來(lái)見(jiàn)證我們的集成測(cè)試結(jié)果。代碼編寫(xiě)完成后進(jìn)行最后一次集成測(cè)試,然后交由獨(dú)立的測(cè)試小組對(duì)項(xiàng)目進(jìn)行系統(tǒng)測(cè)試。問(wèn)題之
五、你為什么離職的?(你為什么離開(kāi)以前公司的?)
分析:這個(gè)問(wèn)題幾乎在任何場(chǎng)合的面試都會(huì)有,有時(shí)是在技術(shù)面試的時(shí)候問(wèn),有時(shí)是在人事面試的時(shí)候問(wèn),有時(shí)會(huì)在技術(shù)面試和人事面試的時(shí)候都問(wèn)。其實(shí)也比較好回答,回答的抽象一點(diǎn)比好。切記不要說(shuō)以前公司的壞話,如果你這樣做。人家會(huì)想,你以后離職后同樣也會(huì)說(shuō)這家公司的壞話.一般都是說(shuō)為了某求更好的發(fā)展空間。讓人感覺(jué)你是經(jīng)過(guò)深思熟慮后才選擇他們公司的?;卮饘?shí)例:
考官:你為什么離開(kāi)以前公司的?
令狐沖:以前公司對(duì)我很好,我在以前公司干得也很愉快。我因?yàn)楹贤狡?,為了獲得更好的發(fā)展空間及謀求對(duì)自己能持續(xù)發(fā)展的環(huán)境。并向公司辦理了離職手續(xù),完成了工作交結(jié)。(后面這句也可以不談)問(wèn)題之
六、談?wù)勀愕穆殬I(yè)規(guī)化
分析:企業(yè)都希望他所招聘的人是潛力股,看你是不是一個(gè)追求上勁的人,還有想看看你能夠在企業(yè)長(zhǎng)期干還是僅把其當(dāng)著一個(gè)跳板。總的說(shuō)來(lái),回答這個(gè)問(wèn)題要讓人覺(jué)得你是一個(gè)可培養(yǎng),有潛力人。記住要看是什么樣的人來(lái)面試你。如果是項(xiàng)目經(jīng)理來(lái)面試你,你就不要說(shuō)你以后的職業(yè)規(guī)化是項(xiàng)目經(jīng)理。你就可以說(shuō)你的職業(yè)規(guī)化是成為架構(gòu)師,或者是技術(shù)專(zhuān)家等。否則他可能會(huì)認(rèn)為你是一個(gè)對(duì)其有威脅的人。就算他內(nèi)心知道這不算什么,可能心理總會(huì)有一點(diǎn)點(diǎn)不爽。如果是老總面試或人事問(wèn)你這樣的問(wèn)題,你則可以說(shuō)項(xiàng)目經(jīng)理也無(wú)妨,不過(guò)要給人有一種覺(jué)穩(wěn)的感覺(jué)?;卮饘?shí)例:
考官:你的職業(yè)規(guī)化是怎么樣的呢?(考官是項(xiàng)目經(jīng)理)
令狐沖:我思維能力比較強(qiáng),擅于邏輯分析。在之前的工作中積累了一定的架構(gòu)經(jīng)驗(yàn),以后就想成為一名架構(gòu)師和技術(shù)專(zhuān)家
寫(xiě)在最后:上面的這些問(wèn)題都是面試中十分常見(jiàn)的的問(wèn)題,比較難以回答的。有些看似簡(jiǎn)單卻不知從何說(shuō)起。有些看似復(fù)雜卻又并不復(fù)雜。因?yàn)楹芏嗳硕既鄙夙?xiàng)目經(jīng)驗(yàn),對(duì)軟件開(kāi)發(fā)的過(guò)程相對(duì)陌生,而老師講這方面的知識(shí)也比較少,如果你沒(méi)有一定的代碼和項(xiàng)目積累就算老師講你也很難去體會(huì)、理解。再說(shuō)這方面的內(nèi)容太要求實(shí)際經(jīng)驗(yàn)和日月積累,老師也不好講。現(xiàn)在我采用把枯燥的概念和實(shí)際的項(xiàng)目結(jié)合起來(lái)進(jìn)行歸納,從而形成這樣一個(gè)答題技巧。并且對(duì)其中的一些技術(shù)結(jié)合實(shí)際進(jìn)行分析和總結(jié)。希望閱讀者能快速的知其然也知其所以然。從而能夠提高面試的成功率。當(dāng)然這僅僅是一個(gè)答題技巧,關(guān)鍵還是需要知識(shí)的積累。有道是“不積跬步,無(wú)以至千里;不聚細(xì)流,不以成江河”。這次完成此文也是我自己對(duì)知識(shí)的一次梳理,我并沒(méi)有去查閱和考證書(shū)本。我想完全通過(guò)自己的語(yǔ)言來(lái)描述項(xiàng)目開(kāi)發(fā)的過(guò)程和一些細(xì)節(jié)。又因我實(shí)在是才疏學(xué)淺,真的希望大家能對(duì)我的不當(dāng)及錯(cuò)誤之處指出并加以指教,我就涕感淚流了。不管是技術(shù)還是人生,我才剛剛上路呢!
“本項(xiàng)目結(jié)構(gòu)上分為表現(xiàn)層、業(yè)務(wù)層和數(shù)據(jù)訪問(wèn)層,層次間的依賴(lài)關(guān)系自下到上。采用的技術(shù)有 Struts,Spring,Hibernate,Log4J,JDom等。其中表現(xiàn)層采用Struts框架開(kāi)發(fā);業(yè)務(wù)層封裝業(yè)務(wù)流程,為適應(yīng)業(yè)務(wù)的變 更,每一業(yè)務(wù)模塊均有專(zhuān)門(mén)的接口及實(shí)現(xiàn)類(lèi),利用Spring的IoC功能將實(shí)現(xiàn)類(lèi)注入給表現(xiàn)層的Action;數(shù)據(jù)訪問(wèn)層借助于Hibernate實(shí)現(xiàn),代碼簡(jiǎn)潔且可適應(yīng)不同的數(shù)據(jù)庫(kù)。事務(wù)部分利用Spring的聲明式事務(wù)管理。為提高性能,采用Servlet Filter實(shí)現(xiàn)了緩存代理”
這段描述簡(jiǎn)單的勾劃出了系統(tǒng)的結(jié)構(gòu),也表現(xiàn)出你非常熟悉Struts,Spring,Hiberante這幾種技術(shù)。
同時(shí)可以注意到,其中一些重要環(huán)節(jié)描述的十分簡(jiǎn)略,比如事務(wù)、緩存代理,這是故意的。
面試的時(shí)候很多人都怕對(duì)方突然問(wèn)一個(gè)自己沒(méi)有準(zhǔn)備的問(wèn)題,往往缺乏應(yīng)變能力。一方面你需要多進(jìn)行專(zhuān)門(mén)的練習(xí),另一方面要知道面試時(shí)你并不總是被動(dòng)的,等待對(duì)方發(fā)問(wèn)。
如果你給對(duì)方的只是一份普普通通的簡(jiǎn)歷,里面只提到了大家都會(huì)提及的JSP,Struts,那你只好等待對(duì)方隨機(jī)的問(wèn)題了。但是如果你的項(xiàng)目描 述像剛才那么寫(xiě),對(duì)方就很可能會(huì)問(wèn)你到底是如何在Spring中應(yīng)用事務(wù)、如何使用緩存代理(如果對(duì)方是技術(shù)人員的話),這時(shí)你已經(jīng)變被動(dòng)為主動(dòng)啦??當(dāng) 然,前提是你寫(xiě)的這些技術(shù)要點(diǎn)一定是自己掌握的,事先已經(jīng)想好如何表達(dá)的!