日日夜夜撸啊撸,欧美韩国日本,日本人配种xxxx视频,在线免播放器高清观看

程序員項目總結大全11篇

時間:2023-02-27 11:12:28

緒論:寫作既是個人情感的抒發,也是對學術真理的探索,歡迎閱讀由發表云整理的11篇程序員項目總結范文,希望它們能為您的寫作提供參考和啟發。

程序員項目總結

篇(1)

中圖分類號:TP311.5 文獻標識碼:B

文章編號:1672-5913(2007)10-0056-03

我院實行院企聯姻,把IT企業中培訓過程引入到學校教育過程中,目的是擴大就業門路,縮短學生的社會適應期,降低學生的學習成本,提高學生的就業質量。按照當前行業所使用的最新技術進行項目訓練,使其達到或接近就業的專業素質要求,達到積累工作實踐經驗的目的。在培訓過程中,除了對學生進行專業的培養外,本人認為還應該在職業素質、綜合能力、理論基礎、工作習慣等方面進一步培養。

1職業素質

未走出象牙塔的學生心比天高,一向“飯來張口,衣來伸手”的生活方式培養出來的嫩芽撐不住勞動強度的摧殘,對于有些工作不是不能,而是不為,出現了退縮念頭;有些學生就業期望值太高,受經濟利益的驅使,想一口吞個胖子,淡化了過程培訓的含義,情緒上出現煩躁,導致對前途迷茫,失去信心。

程序員的工作是枯燥的,整天面對計算機,用26個英文字母和其他符號編程。程序員的工作非常辛苦,是一項智力勞動,需要投入很多的精力,因而需要程序員能夠熱愛這個職業,有工作熱情,有投入的精神。雖然有的人很聰明,但是對軟件開發沒有興趣,或者工作很不專心,工作效率很低,別人半天能干完的,他需要兩天甚至三天才能干完;情緒浮躁,抵擋不住計算機游戲、各種新聞等誘惑,不能處理好工作與娛樂的關系,自制力和自控力差;寫出的代碼漏洞百出,質量不高,這樣的學生不適合做程序員。有時程序員的成就在很大程度上不是取決于智商,而是取決于情商。程序員應該雄心壯志,面對困難時比較堅毅,吃苦耐勞、講紀律、講服從、講誠信。

2綜合能力

綜合能力方面主要是:良好的邏輯思維能力、溝通能力與再學習能力。

2.1邏輯思維能力

軟件開發過程是解決復雜業務邏輯的過程,是簡化復雜邏輯的過程,是用精確來實現模糊的過程,開發人員需要具有良好的邏輯思維能力才能勝任。現實空間是模糊的,數字空間是精確的,在現實世界中很簡單的問題,在數字空間中模擬時,就變成了一個復雜的問題。它要求程序員能夠全面、準確、簡潔地把握、分析和解決問題。

下面要求學生畫出問題的程序流程圖來測驗學生的邏輯思維能力:輸入三個整數,作為三角形的三個邊,判斷是否構成:等邊、等腰、直角、銳角、鈍角三角形。

這個題目的邏輯很簡單,需要處理的邏輯包括:

1) 輸入的合法性判斷:輸入的是否是正整數。

2) 是否構成三角形:任意兩邊之和大于第三邊。

3) 是否構成等腰或等邊三角形。

4) 是否構成鈍角、直角、銳角三角形。

上邊的題目是一個很簡單的程序,但是學生回答完全的卻很少,常見的錯誤見下表。

類似的邏輯問題在實際的軟件開發中是經常用到的,需要程序員能夠對各種情況進行仔細的分析、歸納、總結。如果在這樣的問題上出錯,是很難成為出色的程序員的。

2.2溝通能力

現在的軟件越來越龐大,需要多人來協同工作。作為程序員要善于溝通,習慣溝通,要有團隊精神。學生與學生、學生與老師交流問題時,往往要花費大量的時間描述問題。有的學生自己心里明白,但就是說不清楚,或者干脆不說,默默地做項目,甚至閉門造車。這些情況都會降低整個團隊的工作效率。

再者,全球IT外包市場主要是歐美和日本,其中85%的IT外包市場是以英語為溝通語言。作為未來軟件企業生力軍,程序員應具備良好的英語應用能力,這是最基本的要求,如果對英語的熟練程度不高,對待引進的高技術以及與客戶的溝通將會出現語言上的障礙。

2.3再學習能力

信息技術的更新速度是驚人的,程序員的職業生涯是一個要求不斷學習的過程,永遠不能滿足現狀,必須有很好的再學習能力。只有善于學習的人,才能夠不斷進步。真正優秀的程序員一定是掌握了很好的學習方法,否則現在是優秀程序員,兩年后可能就被淘汰了。只有再學習,才能談到創新,IT技術的日新月異使很多程序員眼花繚亂,什么都想學,卻又不知從何學起,今天看看這個,明天學學那個,貪多不熟。雖然IT技術發展迅速,但很多技術都是有規律可循,一些基本的概念、原理和方法是通用的,可以舉一反三。再學習的方法有很多,類比法、詢問法、閱讀示范程序、網上檢索相關的資料等等。

3理論基礎

大學計算機專業課大多是從二年級開起,有的學生由于目標不明確或數學基礎不好,對專業課程學習不是非常扎實。由于信息技術發展快,有些課程內容陳舊。在培訓階段,對于知識的匯總歸納是非常有必要的。如果基于.net做多層結構的軟件開發,以下的知識是必須的:操作系統原理、實體關系理論、SQL語句、面向對象的基本理論、數據結構、軟件工程、VC++/JAVA、ASP/HTML、PSP/TSP/ISO、專業英語、程序設計風格、系統分析與設計等等。可以看出如果沒有學過數據結構、程序設計方法、數據庫概論以及軟件工程的基本知識,要想成為一名合格的程序員顯然是很困難的,而且一名熟練的程序員需要的知識遠不止這些。掌握了基礎的計算機科學理論,再擁有一定的學習能力,才能不斷進步。

4工作習慣

良好的工作習慣是程序員個人開發過程成熟的體現,是效率的保證。程序員的培養很大程度上是習慣的培養。在實訓過程中應注重培養如下幾個方面的習慣:

4.1按照明確的編碼過程工作

在進行一項編碼工作時,需要按一個規范的過程來進行:

第一,定義做什么,包括功能范圍、接口,任務;

第二,定義如何做,包括數據結構、算法;

第三,定義驗收標準,如何檢驗正確與否;

第四,動手編程序、調程序;

最后,測試程序。

按照規范的過程來編碼,才能真正提高工作效率。職業程序員的設計時間長于編碼時間,業余程序員編碼的時間長于設計時間。職業的程序員是設計程序,業余程序員是調試程序。職業程序員是預防BUG,業余程序員是修改BUG。為什么會出現這種情況呢?因為職業程序員是按照一個規范的編碼過程來工作,編碼的前期工作量超過了其實際的編碼工作量。有的程序員經過簡單考慮后就急于去寫程序,往往是把簡單的問題搞復雜了,復雜的問題搞亂了,效率很低。

4.2編碼之前寫文檔

文檔是軟件實現思想的載體,是開發人員之間、開發人員與管理人員之間交流的工具,是設計人員與編碼人員之間、設計人員與需求人員之間的一種約定,是組織的軟件設計經驗的積累,是組織軟件財富的記錄,是軟件復用的基礎。只有真正認識到了設計文檔的重要性,才能積極主動地寫文檔。對程序員而言,在動手編程之前通過寫文檔可以把實現的方法想清楚、表達清楚、討論清楚,這是已經通過無數的實踐來證明了的好經驗。初級的程序員往往在寫程序的過程中發現越寫越覺得復雜,程序越改越亂,等真正把工作做完了,再反思一下,卻發現原來是很簡單的事情。為什么會有這種感覺呢?問題就在于事先沒有真正想清楚,弄明白,一旦進入問題的解決細節中,就很容易出錯了,所以職業程序員應該具備寫文檔的好習慣。

4.3遵循設計進行編碼

程序員不能隨意自己決策,不按設計人員的設計去施工。同一個問題,可能有多種解決方案,在考慮解決方案時,程序員想的是局部,設計人員想的是全局,因而在進行決策時,設計人員是從全局的角度的考慮問題。在這種情況下,程序員要嚴格按照設計去實現,不能在如何實現上偏離設計,造成隱患。對于設計中有疑問的問題,可以討論,但是不可以隨意變更。

4.4按照良好程序設計風格編碼

對于程序設計風格,原來要求效率第一,而現在要求清晰第一。

有人講程序設計是一門個人藝術,包含了程序員個人的創造性,正是這樣,才使得很多程序構思精巧,耐人尋味。但是同時它又使得程序的可讀性較差,尤其是在多個人合作開發一個軟件時,風格迥異的程序使得軟件的可靠性與可維護性大大降低。程序設計語言一方面是人與計算機之間進行交流的工具,還是人與人之間進行交流的工具。單純地作為人機交流的工具,只要程序能夠正確、忠實地表達設計者的思想,也就發揮了其作用。但是人與人之間的交流沒有一種固定的統一的模式,因此作為人與人之間的交流工具,還要表達得清晰易懂,能夠為其他程序員所理解,這也正是要求程序員講究程序設計風格的主要原因。

5總結

通過嚴格的專業素質訓練和職業素質、綜合能力、理論基礎、工作習慣的培養,基本上可以使大學生走上社會前,從“學校人”轉變為一個準“職業人”,使大學生在就業市場立于不敗之地!

參考文獻

[1] 王長春. 印度軟件人才教育 成功就這么簡單?[J]. 軟件工程師,2005,(Z1).

[2] 劉克青,廖建新,張俊光. 軟件項目策劃中的工作量估算方法探討[J]. 計算機工程與應用,2004,(27).

[3] 李洛,吳紹根. 基于印度NIIT培養模式的兩年制高職軟件人才培養思路[J]. 高教探索,2004,(2).

[4] 杜建立. 軟件人才培養新挑戰[J]. 中國遠程教育,2004,(2).

篇(2)

軟件心理學發展大致可分為兩個階段[7],第一階段是軟件心理學的創立和初探階段,第二階段為軟件心理學的豐富和發展階段。兩個階段的主要區別是理論基礎、研究對象和研究方法不同。20世紀70年代為軟件心理學研究的第一階段,研究學者主要由計算機科學家組成。1971年,Weinberg出版了《程序開發心理學》一書,開辟了軟件心理學的新領域。該書從人類行為、社會行為和個人行為等3個角度審視程序開發。但是溫伯格坦言,該書中的許多思想未找到“科學依據”,沒有很好的理論基礎。該階段采用實驗手段研究的代表是Shnei-derman,他采用內省、案例研究和實地研究等手段,對編程風格、項目組織、團隊進程、程序員能力傾向和人格特質因素等方面進行了探索[4]。但是,Shneiderman的實驗缺乏認知模型的支撐,面臨設計問題簡單、編程環境失真等問題。20世紀80年代至今為軟件心理學發展的第二階段,吸引了計算機科學家、心理學家和人素工程學家的參與。該階段以認知模型的構建為特征,采用客觀的行為分析作為嚴格試驗方法的補充。從認知心理學引進理論框架,并將其研究成果引入到軟件工程中,以促進軟件工具的研發,改進編程活動。該階段彌補了第一階段的不足:研究對象擴展到專業程序員,而第一階段的研究對象幾乎都是學生;考慮了軟件開發的集體性及協作性;所涉及的活動不只是編碼,也研究需求規格說明及軟件設計;考慮了語言和編程范式對編程活動的影響。縱觀軟件心理學的發展史,軟件心理學的研究方法漸趨成熟、研究內容逐漸豐富、研究學者日益多元化。軟件心理學的發展過程是軟件工程與心理學融合程度逐步提高的過程。

軟件心理學研究體系

從學術文獻來看,軟件心理學研究的熱點主要集中在7個領域:程序設計的認知機制、程序理解理論、專家與新手的差別、程序員人格特質與績效的關系、程序員情感與績效的關系、程序員能力傾向測試和人機界面設計。筆者分析了各項研究內容之間的關系,如圖1所示。軟件心理學的研究從3個層面展開:第一層面為認知活動機理層,第二層面為根源因素層,第三層面為應用層。第一層面從軟件生命周期的核心活動出發,研究其認知機制,主要包括軟件設計活動的認知機制,以及編碼、測試、維護中的程序理解機制。第二層面在第一層面的基礎上,研究影響主體績效的根源因素,一方面研究情感、人格特質對主體績效的影響;另一方面從“主體的能力是由學習和訓練得來的”這一觀點出發,研究專家與新手在知識、策略和元認知方面存在怎樣的差別。第三個層面是將前兩個層面的研究成果應用到軟件工程相關的活動中,如將根源因素層的研究成果與心理學測量方法相結合,研究程序員能力傾向測試,用于選拔適合從事軟件開發的人員。將程序員的行為和認知機制的研究結果用于指導軟件開發環境的人機界面設計。將專家與新手的差別的研究成果應用于軟件工程人員的教育與培訓。軟件心理學在人機交互中主要應用于用戶建模及可用性的設計與驗證,關注用戶描述,對用戶的感知、認知和動作進行建模,并構建感知-認知-動作的集成建模。該方面的應用旨在了解和支持人與計算機的交互,使設計的軟件或系統的可用性更高。該領域是軟件心理學與計算機科學結合最成功的研究領域,存在的評述較多。本文接下來對前6個領域的研究現狀及其對軟件工程領域的啟發展開論述。

主要研究進展

1程序設計的認知機制

研究進展程序設計認知機制主要包含3類元素:知識、策略和過程組織。程序設計知識分為句法知識、語義知識和圖式知識[5]。前兩類知識與程序語言緊密相關,而圖式知識是程序設計的核心。圖式(Schema)是主體內部的一種動態的、可變的認知結構單元,是由舊知識組成的無意識的心理結構。圖式理論的核心思想是,將主體過去的經歷形成模式,在解決問題的時候無意識地匹配和調用與目前情況相符的模式。圖式的存在使得人類的認知具有自動加工的特點,同時也是認知失誤的重要原因[6]。程序設計圖式包括編程圖式、結構圖式和問題域圖式[13]。編程圖式是編程領域特有的圖式,包括編程基礎知識和算法知識等。結構圖式是生成和理解文本的重要知識,如1個功能程序的結構圖式由3個角色組成:輸入、計算和輸出。問題域圖式是程序要解決的特定問題的領域知識。根據圖式理論,程序設計的核心活動是相關圖式的激活。程序設計過程就是程序員激活儲存于記憶中的適合解決當前問題的若干圖式,并對這些圖式進行組合的過程。以圖式為核心的程序設計模型以Adelson模型[7-9]和Détienne模型[10]為代表,將程序設計認知活動視為圖式檢索、圖式匹配、解決方案評價、調試和通用化[7,8]的過程。程序設計的策略[11-13]包括:①自頂向下和自底向上。自頂向下是指將總體問題逐層分解為小問題解決的策略,自底向上是從細節到總體逐步構造的策略。②向前和向后。向前設計模式即程序解決方案按照執行方向設計,向后設計模式即程序解決方案按照與執行相反的方向設計。③廣度優先和深度優先策略。廣度優先策略是先解決完一個層面的所有問題,再解決低一個層面的問題,深度優先策略是將一個問題從上到下解決完成后再解決其它問題。④過程式和聲明式策略。若編程方案是規程控制,則是過程式的。若編程方案用于聲明靜態屬性,如對象、角色等,則是聲明式的。⑤心理模擬,用于評價問題解決方案。程序員在不同情境下會使用不同的策略,策略的觸景包括編程語言的認知維度[14]、編程環境特征、問題類型和程序員自身思維方式和已獲得的圖式,程序員趨于選擇自己熟悉和使用頻率高的策略[15]。程序設計的過程組織有兩種方式。一種為結構化組織方式,認為程序設計是按照自頂向下、寬度優先的方式組織的。但是實驗發現,實際的程序設計過程并不是嚴格按照這種結構化的過程進行的。程序員設計或編程過程中會出現機會性的偏離[16],即程序員(設計師)以實現目標為第一要務,不受規則的限制,自頂向下和自底向上、深度優先和寬度優先策略都會用到,取決于具體的情景。存在許多支持該模型的實驗研究結果,如程序員有時會優先實現他認為最重要的功能。這種認知策略會被多個因素觸發,如資源限制。當工作記憶超出容量時,結構化的工作模式就會失效,由寬度優先策略跳變為深度優先策略,產生機會主義偏離,即機會主義組織方式。

應用與啟示從程序設計認知機制可以看出,良好的知識結構(設計模式)、恰當的策略和過程組織將促進設計工作的開展。基于此,可設計出更適合程序員使用的軟件開發工具。在軟件開發環境中提供可視化的結構圖式和知識圖式支持,對程序員具有重要的輔助作用。如在面向對象編程工具中提供一個通用化的對象圖式,包括創建、初始化、讀、寫、輸入和輸出功能;在開發工具中提供控制流、數據流和功能分解圖等。同時,領域知識庫的構建對軟件開發具有重要意義,也是軟件開發工具面臨的一個新挑戰[17]。程序員機會偏離現象說明,編程環境不能過分強制程序員按照自頂向下的方式編程[18]。編程環境應提供相對靈活的導航工具,以便程序員在不同對象之間快速切換。在支持機會主義偏離的情況下,同時也要提供未完成任務的追蹤功能,因為發生機會主義偏離后,被中斷的任務擱置后容易被遺忘。

不足與展望程序設計的一個重要特點就是解決的問題是“不明確的問題”(ill-definedproblem)[13,18],存在需求描述不清晰、缺失等問題;并且,一個問題可能存在多個解決方案,無法通過單一的標準進行評價,甚至無法評價。因此,對所要解決的問題的表征(representation)非常重要,問題表征中生成的情景模型直接影響設計方案的生成,也與設計方案共同演化,是造成個體差異的重要活動之一[19]。而目前的研究都是假設所有程序員對問題的表征是一致的,缺乏對程序員問題表征的研究。分析程序員的問題表征,將其集成到程序設計認知模型中,是未來的研究趨勢[13,19]。目前的認知模型將設計的核心活動簡化為圖式檢索、匹配和評價的過程。而實際項目中,程序員可能面臨知識不足的問題。因此學習成為程序設計中一項重要的認知活動。學習中理解和集成圖式將占用大量的工作記憶資源(germaneload)[20],對程序設計的其它活動存在重要影響。而目前的認知模型均缺乏對學習活動的研究,這將是未來研究的一個重要內容。最后,人類認知的一個重要特性就是具有主動監控和調節的高級能力,即關于“認知的認知”———元認知能力。元認知能力與認知失效調節及問題解決能力密切相關[21],而目前的認知模型幾乎都沒有考慮這一全局性的認知活動。研究程序設計元認知能力對程序設計其它活動的影響機理及其評價和訓練方法,對程序員的選拔和培訓具有重要應用價值,將是未來一項重要的研究方向[22]。

2程序理解機制

程序理解可謂是程序開發心理學最古老的課題之一。它解決的核心問題是,程序員如何處理源代碼和構建高效的軟件系統[23]。研究程序員程序理解的行為和策略,以此指導軟件可視化編程環境的開發[24]。

研究進展程序理解理論最初從文本理解理論借鑒而來。文本理解是通過信息加工構造表征的過程。該過程翻譯文本中包含的顯式信息,并調用經驗知識得到推斷信息,再將兩類信息綜合為一體。即信息加工過程的信息有兩個來源:外源,編碼在文本中的信息;內源,存儲在記憶中的知識。Letovsky模型[25]使用知識庫、心智模型(內部表征)和同化過程,從較高的抽象層次描述了這一過程。程序理解模型包括3類:功能方法,理解程序等價于利用知識圖式;結構化方法,理解程序等價于構造關系網;心智模型方法,理解程序等價于構造詳細的情景表征。功能方法的核心假設是,程序理解就是激活和實例化知識圖式。程序理解的活動包括:激活儲存在記憶中的圖式,利用從程序代碼中提取的索引,并從援引的圖式出發推斷程序所包含的某些信息。功能理解模型的主要代表是Soloway模型[26]。結構化方法認為,理解程序就是構造命題之間的關系網。程序可以用順序、迭代和條件等控制結構的基本單位來描述。專家利用結構圖式識別結構單元(順序、迭代和條件),然后構造不同層次的表征。結構化方法的模型主要有Shneiderman&Mayer模型[27]。心智模型方法認為,程序理解就是構造情境表征。這就需要區分兩類模型:程序模型和情景模型。程序模型與自然文本理解中的命題模型和文本庫概念類似,反映程序在命題層次包含什么內容。而情景模型反映問題領域的實體及其關系,即問題目標及數據流。程序的理解首先需要構造程序模型,這依賴于結構化知識,特別是編程語言的語義和句法知識;在此基礎上,構建情景模型,從而達到對程序的理解。心智模型主要有Pennington模型[28]。Mayrhauser集成元模型[29]將Soloway模型和Penning-ton組合起來,并且實驗證明,程序員在3個理解過程中轉換。該模型由4個部分組成:自頂向下、情境模型、程序模型和知識庫。前3個部分反映理解過程,知識庫是構建其它3個部分的必要因素,為程序理解過程提供相關信息并存儲推斷得出的新信息。

應用與啟示對程序理解原理的研究,可指導程序理解輔助工具的設計[30]。如在程序瀏覽方面,對于自頂向下的理解過程,需要提供從頂層的抽象信息到底層的細節信息的瀏覽;對于自底向上的理解過程,需要提供控制流和數據流瀏覽;工具還需要同時提供寬度優先和深度優先的瀏覽,才能同時滿足專家和新手的要求。除此之外,工具代碼及注釋檢索功能將大大提高程序理解效率[31]。同時需要提供能夠讓程序員詢問變量角色等的詢問功能。最后,應考慮為程序理解提供一些其它認知支持手段,如為專家提供外部便簽薄,為新手提供教學輔助,使其能夠實時地獲得語言和領域知識。集成領域知識將提高程序理解效率[32]。

不足與展望首先,在實際的軟件項目中,維護人員很可能不是程序編寫者,程序理解過程中通常伴隨新知識的學習。因此,隨著編程人員和技術的變化,終端用戶相關的學習理論將成為一個研究趨勢。第二,從理解模型可以看出,領域知識在程序理解過程中發揮重要作用。領域知識的集成是一大難點,也是未來的重要研究方向之一。第三,目前程序理解理論主要研究個體的認知機制,程序理解將向社會化組織化的方面擴展,同地合作和分布式合作方面將受到關注。第四,在工具方面,未來程序理解輔助工具將向快速改進、綜合化、集成建議和搜索功能、接口高適應性、可視化、支持團隊合作等方向發展[30]。

3專家與新手的差別

研究進展程序員的技能在很大程度上是一種習得性能力,因而研究專家與新手的差別對程序員的教育和培訓有著重要意義。專家和新手的差別主要表現在4個方面:知識、策略、熟練程度和元認知[33]。專家與新手在領域知識和編程知識方面存在較大差別。Adelson&Soloway[7]和Burkhardt等人[34]發現,新手在領域知識方面的欠缺將導致其在構建情景模型方面存在困難,但是并不影響其構建程序模型。Schraagen[35]發現,即使都是有經驗的程序員,領域知識欠缺的程序員的解決方案也會比領域知識豐富的程序員給出的方案差。因此,區分專家與新手的一個重要因素就是領域知識的掌握情況。在編程知識方面,Rist[36]發現新手更關注語言句法等表面細節信息,而專家更關注于語義信息或設計模式等深層次的信息。Soloway和Adelson等人發現[7],專家在解決模式化問題時的表現比新手好,而在解決非模式化問題時卻不存在顯著差別。Wiedenbeck[37]同樣發現專家傾向于記住程序的語義等抽象表征信息,而新手傾向于記住程序的函數和語義等具體信息。Ye[38]指出,專家比新手擁有更大的圖式組塊(chunks),在他所研究的樣本中,與新手相比,專家在C語言方面的概念塊更抽象,組成元素更多。由于知識的組塊,對新手是多個圖式,對專家卻可能只是一個圖式,這使得專家的工作記憶能夠調用和處理更多的信息。專家與新手除了在知識的數量與組織結構上存在差別之外,在知識的使用策略方面也存在顯著差別。經驗豐富的程序員傾向于使用自頂向下、寬度優先和向前的策略,而新手傾向于使用自底向上、深度優先和向后的策略[7,33,40,41];并且專家的編程策略可以在不同的問題上重用。Schraagen[35]指出,即使面臨新的問題,良好的策略也能保障他們以較為結構化的方式解決問題。Ko[42]發現,即使在陌生的編程環境中,也不會影響專家程序員的問題理解策略。專家與新手在元認知方面存在重大差別。研究[33]發現,專家能夠更好地意識到所犯的錯誤,并及時對生成的問題解決方案進行驗證。專家元認知能力也表現在專家更善于利用外界記憶輔助設施(如筆記)作更多的注釋[43]。

應用與啟示專家和新手不只是存在知識占有多少的差別,在知識的組織、知識的使用策略、熟練程度和元認知方面也存在差別,這對軟件工程人員的培訓和學習以及專家系統的設計有重要指導意義。對程序員的培訓不能只灌輸編程語言規則等顯性知識,還需要啟發其分析知識之間的關系,以及不同解決方案使用的場景,進而形成高層次的圖式;還需對知識使用策略和元認知進行訓練;在培訓的方式上,僅采用書本和授課方式是不夠的,由于專家具有實用主義和自動化的特點[44],因此需要設計具體的任務對其進行實戰訓練。

不足與展望在弄清專家與新手的差別,特別是找到新手存在的缺點后,新手的學習和教育就成為重要的研究課題[45,46]。面向對象編程教育及可視化教育工具的開發成為近年來的一個研究熱點[47]。

4程序員人格特質與績效的關系

大量證據表明,軟件開發中程序員的生產率和能力存在著巨大差別。具有相似背景的程序員在編程績效方面存在巨大差別,學者們猜想,只有存在某種“固有的人格特質”才能解釋這種差別。該領域的研究對程序員的選拔具有重要指導意義。

研究進展目前軟件心理學領域主要采用邁爾斯-布里格斯類型指標(MBTI)和五因素模型[48]來研究人格特質類型與程序員績效之間的聯系。根據MTBI理論分析[49]:①在思考(thinking)/情感(feeling)維度方面(T/F),要檢測和修改編程錯誤,克服語言錯誤,編程工作需要邏輯和分析能力,思考型比情感型更能勝任編程工作。②在感覺(sensing)/直覺(intuiting)方面(S/N),感覺型人更傾向于一步一步達到目標,對工作和細節更有耐性;而直覺型人工作更依賴于預感和直覺;但是直覺型人對復雜任務更感興趣,感知型人更適合簡單任務。③外向型(extrovert)/內向型(introvert)維度(E/I),內向型人更注意細節,在行動前喜歡徹底思考事情;外向型人思考問題傾向于表面化。在E/I維度的實證研究方面:David研究了MBTI與代碼審查能力之間的關系,實驗證明,E/I維度與代碼理解能力之間存在強關聯關系[50];Capretz[51]研究結果表明,軟件工程人員大部分都是內向型性格;Chandler等人[52]發現,計算機專業的研究生主要都是內向、感知和判斷型的;在程序員人格特質調查中,Turley發現軟件行業樣本中90%是內向型人[53]。在SN維度實證研究方面:Bishop[54,55]發現直覺型人在解決問題中表現得更好;Whitley[49]發現直覺型的學生確實更具編程潛能;Capretz[56]研究發現,他的專業程序員樣本中直覺型人所占比例遠遠超過一般人群,他認為直覺型、思考型,特別是直覺-思考型在編程相關任務中能夠工作得更好;Devito研究了MBTI與代碼審查能力之間的關系[57],發現直覺型人比感知型表現好,直覺-思考型表現尤其好。在TF維度實證研究方面:Bishop[55]認為,完成軟件開發中的一些任務(特別是問題解決相關領域的任務),需要在規定的限制條件下執行標準化過程,需要進行客觀的邏輯的分析,思考型人更能勝任;Turley和Bieman[53]的研究表明,他們的樣本中85%是思考型人;Capretz的專業程序員樣本中81%是思考型;Chandler等人的計算機專業學生中86%是思考型;Myers研究表明,思考型人更適合于與邏輯思考有關的任務[58]。

應用與啟示在現代軟件人員選拔和項目管理中,人員的性格因素不容忽視。人員選拔需要根據角色的任務特點,選擇適宜性格的人員,如直覺-思考型人普遍更適宜作編程工作;而需求分析更偏重交流能力,外向型性格比內向型性格更為適宜。實驗表明,如果IT企業能夠根據雇員的性格特點和潛能進行優化組織,生產效率和質量都可能得到提高[56,59]。

不足與展望正如Whitley所說[49],人格特質與績效方面的研究是相關性研究,而不是本質上的實驗研究,不能得出因果關系推論,不能說編程潛力、態度和行為的差別是由于人格類型導致的。需要對這種相關關系進行深入的機理研究,給出人格特質與績效之間的相關關系的合理解釋,這將是未來的一項重要的研究內容。在找到性格類型與能力偏好的關系的基礎上,對于一個特定任務,如何選擇和搭配團隊成員以形成更加和諧、高效和多樣化的團隊也是未來一項重要的研究內容[48]。

5程序員情感與績效的關系

情感(moods)是指“心境或主要情緒的意識狀態”[60]。Merriam-Webster字典將情緒(emotion)定義為“意識的情感方面,一種感覺狀態,是一種有意識的心智反應(如憤怒或恐懼),對特定對象的強烈感覺體驗,一般伴隨有身理的和行為的變化”。情感和情緒都是感情狀態。情感持續的時間更長,引起的原因沒有情緒明確。情感可以持續一兩天或者更久,而情緒在幾分鐘或者幾秒鐘之內發生或者消逝。大多數心理學家認為情緒和情感在本質上是一樣的。幾乎所有的日常活動都受到情緒的影響,從駕駛飛機到編程,無一例外都能感受到正面或者負面情緒。情緒可能破壞日常任務,通常會對精力、睡眠和思維造成干擾,嚴重的可能導致疼痛。研究發現,情感會影響人類的多種活動,如創造性、記憶、推理、行為、認知加工、信息加工、學習、決策和工作績效[60]。

研究進展雖然情感與績效關系方面存在大量研究,但是很少有針對IT專業人士的情緒研究。近年心理學領域開展了情緒對行為的影響研究,情緒對IT專業人士的影響的研究卻很少[60]。情緒心理學相關研究表明,情感影響推理。而推理是編程的必要元素,如果情感能影響推理能力,那也可能會影響程序員的績效。Khan[61]設計了實驗來測試情感對程序員調試任務的影響。其方法是讓程序員在開始調試任務之前,先觀看幾組激發特定情緒的錄像帶,比對各組任務績效。結果表明,情緒的覺醒水平對調試任務存在重大影響,而情緒的效價對任務的影響卻不明顯。即程序員檢測和改正錯誤的能力依賴于情緒的覺醒水平。Good等人[62]意識到情感對程序員績效的影響,在計算機實驗室中引進了表達和監控學生情緒的設備。實驗表明,此設備有助于學生的情緒表達、交流與修復,進而促進學業成績,獲得了良好的反饋。

應用與啟示情感對編程績效存在影響,該領域的研究對程序員的管理有著重要指導意義。如情緒的覺醒水平對調試任務存在重大影響,企業管理中就需要盡量避免員工情緒出現大幅波動,過于高興或悲傷都對工作不利。需要避免員工帶著負面情緒工作,思維受到影響可能引入嚴重的軟件缺陷。情感波動對編程績效存在較大影響,組織在選拔程序員過程中可參考此因素,優選那些情緒穩定型人格特質程序員負責關鍵性任務。可用大五人格測量中的神經質維度(neu-roticism)問卷衡量情緒穩定性。

不足與展望針對程序員情緒的研究目前還處于實驗室研究階段,這與實際工程項目中程序員的工作環境存在巨大差別;并且情緒具有實時性和積累效應,如何在不侵擾程序員編程工作的條件下,實時地檢測程序員情緒進而幫助其調節情緒是未來的發展趨勢。文獻[63]提出通過程序員使用鼠標和鍵盤的信息來監測程序員的情緒。文獻[64]提出通過增加人機界面的情感意識(emotionawareness)設計來促進用戶的正面情緒。

6編程能力傾向測試

眾所周知,有些人認為學編程很困難,而有些人卻覺得很簡單。要可靠地將這兩類人識別出來卻是一個大問題。編程能力傾向測試旨在解決這樣的問題。

研究進展Wilson&Shrock[65]研究了12個預測因子后發現,有3個預測因子與編程能力有著重要的相關關系,依次是:舒適水平、數學和歸因(把成功歸因于運氣的學生編程能力較差)。Beise等[66]考察了年齡、種族和性別與編程入門課程之間的關系,從統計學上表明,性別和年齡都不是有效的預測因子。Nathan等人發現學生的預期是一個重要影響因素,那些預期自己能得“A”的學生更容易成功[67,68]。Lister等[69]、Fincher等[70]、deRaadt等[71]、Simon等[72]、Tolhurst等[73]指出,在編程入門課程中表現差的學生缺乏問題解決能力。Stuart實驗發現,系統商數(SQ)-移情商數(EQ)與編程存在強正相關[74]。Simon等人[75]、Sue&Gary[76]、Tolhurst等人[73]都發現,學生的空間觀想能力與編程能力存在正相關,地圖描繪實驗中畫俯瞰圖的學生在課程中得分更高,畫路線圖的學生成績比俯瞰圖的差,畫路標圖的學生成績最差。空間觀想能力與代碼導航能力有關,進而關系到程序心智模型的構建。

應用與啟示編程能力傾向測試可以提供學業和就業方向咨詢,選擇那些適合學習編程的學生,提高編程課程的通過率,減少計算機學生的退學率[77];為企業選拔更適合編程的員工,并識別哪些員工需要進行計算機相關訓練。

不足與展望可以看出,目前該領域的研究未能取得公認統一的結論。學者們對預測因子的選取具有較大隨意性,各自提出的預測因子繁多且缺乏系統性。究其原因,研究者們未能對軟件工程中各種角色所需的認知能力進行機理層面的分析。相關性分析不能說明因果關系。學生在某種任務中的績效與編程績效相關只能說明該項任務與編程任務在所需的認知活動上存在某種程度的交疊。因此,用這些因子預測學生將來的編程表現是不夠合理的。作為編程能力潛力的預測因子,需要選取與編程認知活動密切相關且相對穩定的因素。本文前幾節的分析和總結對編程能力傾向測試的未來研究方向具有重要啟發:1)編程能力在很大程度上是習得性能力,知識與經驗的差異是程序員個體差異的最主要原因。因此在個體經歷和其它條件相同的情況下,學習能力的差異是影響程序員未來編程能力的一個重要因素。同時,學習能力是一項較為穩定的能力,可作為編程潛力預測因子之一。2)軟件工程的核心認知活動是問題解決(problemsol-ving),而元認知對問題解決活動進行監控與調節。元認知能力的高低對問題解決績效起著重要影響[78],并且元認知能力也是較為穩定的高級能力[21],可作為編程潛力預測因子之一。3)情緒、動機(motivation)等因素對認知活動存在較大影響。同樣,在外界刺激條件下,人格特質是個體情緒動機差異的決定因素,且人格特質具有長期穩定的特點,可探索部分人格特質維度作為編程潛力的預測因子,如情緒穩定性。總之,編程能力傾向測試的未來研究應著眼于分析軟件工程的任務活動特征,識別那些對編程活動有著因果關系且較為穩定的因素作為預測因子,才可能達到“潛力測試”的效果。

篇(3)

馬上到年末了,自己也對今年做了一下總結,自己有哪些優點,有哪些還需要加強。每當我想到今年比較滿意的地方,對比之前,就會有這樣一個思考:如果以前的我要是知道這些該多。在這里給大家分享一下經驗,讓新人少走一些彎路。

做事要積極主動,態度決定一切

說這些,可能有人會覺得,這些都明白,都是大道理,只是怎么樣執行的問題,下面我舉一個真實的例子。

我曾經帶過的兩位新人,A君上班,交代給他負責的東西,是永遠沒有結果的,我交代給A做一個數據展現的部分,A君告訴我他不會JSP的技術,我給他推薦了一些書籍以及我曾經寫過的demo,并告知不能光學,要有成果展示,可以通過這個數據展現來學習jsp技術,但是最后的結果是他下班就走,走之前沒有跟我匯報任何進度,我最后只能換人做這個東西。這里我并不是推薦職場新人要加班,但是做事的態度要認真負責,新人可以對技術不懂,但是要有負責的態度,起碼應該匯報一下今天的進度。

再來對比一下另一位B君,也是同樣接到這個任務,首先B君懂jsp,但是他不懂JSTL,我給了他時間學習,結果B君在很短的時間內,學了JSTL并將總結發給了我,我相信這么短的時間內,他畢竟掌握的有限,但是學習了,又有總結,這種態度令我非常滿意。在第二天,B君就把數據展示做出來了,而且確實是我想要的樣子!不得不說,同樣的事,同一水平線,不同人做的時候,態度和積極性就決定著一切,所以一個人只要工作態度好,我相信這個人的工作絕對不會差。

提問的技巧

作為一個新人來說,不懂就要問!這里我要說兩點:

1、 如果是單純技術上的問題,如果可以google到的,我認為就可以自己消化掉!問的問題一定要先google,然后帶著自己的想法,去問一些有經驗的人,收獲會更大!(推薦閱讀:《如何使用搜索技巧來成為一名高效的程序員》)

舉個例子:曾經的我,埋頭寫代碼,那時候很怕上司知道自己不會這,不會那!所以拼命的掩蓋自己不會的東西,自己查資料,下班了問同學,上論壇發問。但是由于邏輯和現實需求不一樣,所以結果并不理想!如果那個時候,我把自己不理解的地方和上司談,也許會很快的就能完成這個任務,而不是返工。

2、如何提問?問誰?

很多新人不知道如何提問,也不知道問誰。我的建議是,先把你要問的問題梳理好,最好可以有電子版或者打印版的整理,方便其他同事查看和解答。然后就是提出的問題,要讓回答的人感興趣,這樣他不但會給你解答問題,還有可能將問題延伸,讓你學到更多的知識。對于如何讓回答的人感興趣,就是仁者見仁,智者見智了!看個人發揮了!

對于問誰,我覺得你不了解其他同事的時候,要先問你的上司,當你了解了你的同事每個人擅長的領域之后,就應該把自己的問題歸類,然后問最擅長的人。這樣會事半功倍!

任務分解

不知道大家做事都是怎樣一個邏輯,當年的我做事就是一團糟。當我拿到一個日志分析的任務的時候,就想著做,埋頭苦干,但是自己越做,腦子越渾,完全找不到頭緒。后來,上司找到我,給我做出了任務分解,我按照任務分解來做,清晰了很多。直到現在,我還保持著做任務分解的習慣。

其實做任務分解可以幫助你更深入的了解你要做的事情,任務分解包括一個事情,你需要分幾個步驟去做,每個步驟要做到什么樣子,什么程度,多長時間做完。幾個步驟為一個里程碑。如果具體做的時候發現一個步驟的事情做起來超過了一個星期,我覺得這屬于任務分解的不夠細,需要將這個任務再次分解,讓你的工作更透明,更有效率。可以使用一些任務分解工作,將自己的工作路線和步驟明確,要善用工具。

主動匯報 + 主動溝通

曾經的我就是埋頭苦干,但是從不匯報進度,其實這樣是不好的。后來我的領導找到我,問我的進度,才發現意見有所分歧,理解有差距。索性只能重新來過。

新人一定要注意這個事情,有情況,有成果,有可展示的東西就一定要及時的主動匯報這個事情的進度,做成果展示,在對事情有不理解的時候也需要主動的溝通,使之和所有參與人員的意見一致再去做,保證你做的事情的正確性和有效性。

記住一句話:當領導找到你問進度的時候,你是被動的!

上面幾點,看似簡單,做起來很難!到現在任務分解和提問很多職場新人是不具備的,需要慢慢磨練,但是我們相信,只要有良好的態度,良好的習慣,工作一定會慢慢越來越好!相信自己的明年會越來越好!

程序員崗位個人工作總結范文二

光陰如梭,半年的工作轉瞬即將成為歷史,伴隨著新年鐘聲的臨近,我們依依惜別碩果累累的20XX年,滿懷熱情的迎來即將到來的20XX年。在這年終之際,現對來公司5個月的時間里所作的工作匯報如下:

1、正義erp項目的編碼工作。從了解新疆正義項目的背景、及計劃安排,熟悉正義公司制度及業務流程,再到熟悉新能開發模式,之后我根據需求調研報告,從基本的數據庫創建,到編碼,完成了銷售部、生產部、采購部、質檢部四個模塊的基本單據的制單、審核、選單、查詢、打印等系列的編碼工作;完成了正義項目的模塊測試及流程測試。

通過這段時間的努力,使我個人的耐心、細心程度及對工作的合理安排得到了鍛煉,學會了在繁忙之中找條理,危難之中找希望。同時自己也有一些不足之處,一些細節地方技術上還不太成熟,還需加以學習與鉆研。

2、、正義erp項目的實施工作。從十一月初開始進行正義項目的實施,每天早起趕在企業上班前趕到企業進行erp的實施。實施期間主要是軟件的安裝實施及對企業的erp系統的使用人員進行軟件使用培訓;紀錄客戶使用過程中出現的問題,晚上下班后加班加點將每天的小錯誤及客戶變更修改完畢。

通過這項工作,使我原本欠缺的業務能力得到了很大的提高,并學到了很多與客戶交流的技巧及業務上的知識,更加明晰了erp系統的流程。但離一個成功程序開發人員的標準還差得很遠,在今后工作中,定會多多注意,加以改善。

3、幫助和使用手冊文檔的編寫。幫助的編寫使我熟悉了dreameweaver和fireworks的使用,為后期的oa開發也奠定一定的基礎,使用說明的編寫,使我更加加深了項目開發的整體思路與技術要點,總結了前期開發和實施中碰到的問題,并又一次的對軟件整體進行了測試,對暴露出的小bug進行了最后的修改。

4、利用工作之余的休息時間加強學習。平時注意收集有關pb方面的資料文件,提高自己的處理新問題和解決新問題的能力,并加強學習java及oa方面的知識(現轉為學習.net),為后期的工作打好基礎。

以上為本人粗略的個人工作小結,請領導審閱,如工作上有不到之處,請領導不吝指出,以便本人及時改正,從而能更好地工作。

展望臨近的20XX年,我會更加努力、工作上認真負責,再接再厲,更上一層樓。相信自己會完成新的任務,能迎接新的挑戰。

程序員崗位個人工作總結范文三

先自我簡介一下,本人從事asp.net開發進一年,XX屆畢業生,XX年11月開始上班,之前做asp,09年2月后開始做asp.net,由于公司轉型,現在帶十幾個人在一起搞asp.net開發,主要是關于準金融行業的行業管理軟件。年度總結在會議上也寫了,但僅限于對于工作總結及20XX年工作計劃,自我總結較少,因此今天專門做下自我的年度總結,主要從技術、管理、人生上面談談這一年的收獲,前輩路過歡迎多多指正。

技術

我在學校里學的是電氣自動化,程序基礎僅限于C基礎課程的一些知識,后來由VB、HTML轉向asp,在asp上花費了不少時間,對asp比較熟悉,后來由于公司業務需要,將開發平臺轉向asp.net,開始對asp.net不是很感冒,以為就是asp的一點擴展(那時還不知道三層架構,數據數據訪問全在頁面里——!),后來招來幾個北大青鳥的過來終于意識到asp.net的強大之處,經過個人的努力已經逐步掌握了asp.net,現在層次上只能講個人覺得是入門而已,原因是多方面的,待會兒會講到。

相信從面向過程轉向面向對象的同學都有一種感覺:面向對象開始真的有點別扭, 涉及到屬性,尤其是類之間的各種關系,那時老想用面向過程傳遞參數多方面啊。于是老在想對象這種東西,從概念中跳中來,以自己的方式去理解才逐漸體會到頁面對象的精華來,分層次展現、分級別訪問、封裝對象之間各種關系逐漸真正理解了,尤其是對象之間的關系,如對象a與對象b兩者之間的關系,有些需要完全公開,有些需要隱藏,有些需要通過第三方傳遞,有些需要給自己的下級可見,有些需要讓下級去完成具體操作——這不是現實的實際模型嗎?應該這么理解,面向對象來源于現實,它不是一種憑空空想出來的理論,這些對象之間的關系可以將其還原為父子、夫妻、領導下屬、同事、朋友之間的關系。相比之下,頁面過程往往像是一股腦全部推給用戶使用,其中的數據與數據訪問方法層次不清晰,在模擬現實上它與面向對象相比更易于入門理解,實質上難于準確直接地表述。

面向對象上另一方面是它的設計模式,在之前的面向過程中 對這個設計模式并沒有清晰地提出來,面向過程優秀的代碼要求高內聚低耦合,從個人的理解上,這僅是對軟件開發方法“技”上理論總結;設計模式是達到了“道”的層次,因為它從更大的方向、更抽象的層次來去表述具體的代碼模塊之間的關系,可以認為設計模式是完全從實際的應用來不斷總結得來的經驗,之間并沒有這種術語,但相信前人肯定也使用到這種思想,它從實際應用于來,當然要應用于實際工作中,認真思考不斷總結每個人都會有自己的“設計模式”,可以借鑒前人的思想來去提升自己,不可去為“設計模式”而設計模式。

具體到asp.net的實現模型中,真正理解它的機制與方法也就不難理解,記住b/s中離不開post或get,所有的AutoPostBack、SelectedIndexChanged……都是去調用Form傳值,加上runat=server的服務器控件打開它生成的源文件也是普通的HTML標簽,微軟的讓軟件開發更容易的思路是很好的,時代在前進,很多年前你使用C寫出MIS證明你很牛,很多年之后你不在使用C去寫“學生管理系統”、“圖書館管理系統”那只能說明你的腦子少一根筋,開發語言都有長處與不足的地方,因為它們適用的場合不同,類似不能拿匕首去跟炮彈比,也不能拿C與PHP比,程序員都有一種偏執的心理,但一點要記住,你面對的用戶才有最終發言權,程序能不能滿足需要,易用性、穩定性、成本才是應當首先放到重要位置來去談的。

管理

最開始擔任管理一職時開發團隊加我在內只有四個人,那時只是抱著接受挑戰的心理去做管理,加上我本人比較重感情,團隊之間關系相處都不錯,但嚴重的問題逐漸顯露出來:工作的隨意性、團隊精神薄弱、工作方式蠻干,印象深刻的是有幾個開始承諾項目不能完工,于是最后天天加班,一直做到早上6點,睡一會7點半接著上班,幾個同事都是年齡差不多的小伙子,干勁十足。后來隨著時間的推進,問題越來越擺在眼前:項目遲遲不能完工,又由于公司待遇方面讓新員工感覺不值得,于是形成了老板抱怨員工也抱怨的狀況,我在中間兩點都要去“消火”,這期間是我們部門相對最累的時間但也是相對感覺最充實的時候,后來,之前的員工跟我說“再也找不到那種感覺了”,這是我能想像的。這期間主要是老總對我十分信任,工作上主要是管理方法上對我指點了不少。后來我逐步體會到,管理應該是“大家定規則去遵守”,而不應該是“人管人”。

人管人很容易陷入一個誤區:領導去時時刻刻關注每個員工,這樣最后往往后造成員工對領導的敷衍了事,管理松了員工會責任下下降,管理緊了造成員工與領導關系緊張,另一方面領導時間精力有限必然耗費大量的精力在日常的監督中而不能投入到全局的管理中。

于是“定制度-定分工-定進度”,明確日常所有的規章制度,這期間除了公司主要的工作規章制度外其他的日常工作紀律、日常管理等規章制度都是我本人制訂,然后征求大家意見最后去貫徹執行。中間也遇到了不少問題,比如開始我們內部是允許使用QQ的,后來員工用QQ閑聊的時間增多,大大影響了工作效率,最后決心禁止,開始阻力較大(貌似程序員都喜歡掛上幾個QQ去到群里搞個群主,雖然群里大多都是菜鳥),最后多次開會,逐個談話,闡明道理,形勢逐漸好轉。

項目分工上針對技術水平明確分工,制訂項目開發計劃,由于開始技術都不是很成熟,不少時間我這邊強勢要求,使用野蠻方法,完不成加班——我陪著加班, 這段時間能感覺到員工對我稍有怨言但總體還是認可的。

這期間公司新招人員,人員的增多更使我意識到團隊管理的重要性,這期間版本控制、編碼規范、文檔管理、Bug管理等諸多問題都得到一一解決, 技術水平上主要是我個人利用空余時間學習新知識充電,然后展開各種培訓,主要是photoshop、css、js、SQL等方面,培訓一方面提升了員工的技術水平,一方面我本人在學習培訓的過程中得到的最多,因為這個時候個人要求去思考的會更多,加上我本人對技術興趣比較深厚,所以后期工作慢慢踏入良性循環。

待遇低、條件艱苦、工作時間長、工作壓力大是團隊中最大的難題,這方面公司在某些方面決策層有著嚴重的錯誤思想,造成技術人員對公司埋怨增多,在這方面我本人只能以勸架婆的身價去安慰身邊的兄弟,因為我明白現在公司的問題與當前中國軟件行業的通病一樣,盲目追求利益最大化,不求質量,但求速度,整個社會風氣造成軟件行業良莠不齊發展,整個中國三四個人的開發團隊組成的公司數不勝數,整個程序員階層生存狀況可想而知,瘋狂加班、代碼質量低下、維護成本大、穩定性差、用戶體驗差……。當然我們本身不能去逃避這個現狀,對于個人來講任何假大空的口號都是沒有意義的,程序員作為技術人員最重要的是心態,以良好的心態去面對各種問題,發現問題、解決問題,發現問題抱怨是解決不了問題的(“IT民工”是我個人認為IT人最沒有正確的自我定位的一個稱謂,試想一個人連自己都看不起自己的職業,他能做好自己的工作嗎?),最主要是解決問題。

我在面試員工時反復提到的三點是;工作態度、發展潛力、工作能力,由前向后排序,心態最重要,大公司大家都想削尖腦袋往里擠,但名額有限,所以廣大的程序員同志絕大多數都集中在二流三流四流的軟件公司,這個時候更應該做好個人職業定位。以我個人的經驗,新員工選擇一家公司往往最看重工資待遇跟發展潛力,程序員是一種不可以混日子的職業,工作能力很重要,但不是最主要的,工作態度是最重要的,工作態度往往跟個人的思想認識還有職業所在的環境有關,我個人的體會是絕不能太過于情緒化,情緒化無論是對工作還是對個人的發展都是不利的,就是說哪怕是明天你要辭職,你今天都要把今天要做的事情認真用心做好。

看了“程序員崗位個人工作總結”的人還看了

1.程序員個人工作總結范文3篇

2.精選程序員個人工作總結

篇(4)

中圖分類號:G642 文獻標識碼:A

目前,重慶市從政策上大力扶持軟件產業,加大投入力度,而其中的一個重心就是放在軟件外包產業上。基于這個前提,市場必然需要大量的軟件外包人才,本學院已經完成兩屆對日軟件外包人才培養工作,在此基礎之上,時刻把握市場對于人才職業素質要求的變化,進入對日軟件外包企業深入了解實際需求,制定有針對性的培養計劃就具有重大意義。

1軟件外包企業人才需求現狀

軟件外包企業面臨的問題是極其缺乏合格的軟件人才。學校和社會培訓機構培養了大量的軟件人才,但大部分不能滿足企業的實際需求。

軟件外包項目是開發滿足用戶需求、及時交付、不超過預算和無故障的軟件的任務,它以質量保證為基礎,包括過程、方法和工具等要素。若要成功順利地完成軟件外包項目,還必需具備軟件外包團隊,這支隊伍要有合理的軟件人才結構,即“金字塔”型:塔尖的5%是軟件架構師,中、高層的35%是管理項目、技術和產品的高級軟件工程師,底層的60%是軟件編碼人員。

然而,三個層次的人才供應都有問題。首先是在整個軟件開發過程中起著重要作用的軟件架構師,由于需求量較少,要求也最高,單靠國內自己力量很難培養可勝任大項目的架構師,重慶市在金融風暴來臨之際,出臺優厚政策,高薪從國外聘請具有跨國大型項目經驗的人才。其次是金字塔底層的程序員,學校教育理論與實踐的脫節使得畢業生缺乏實際動手能力,不能滿足企業的需求。現在,社會涌現出一批實訓教育機構,以彌補學校教育的缺失,可勉強解決人才結構的底層人才數量問題。但是這些實訓教育機構缺少規范和標準,人才質量無法得到保障。

最關鍵的是金字塔中約占35%的中、高層工程師問題,是整個人才問題的難點,它體現著企業生產和實施項目的執行力,他們必須懂得正確地生產開發外包軟件的管理方法和國際標準,不再是手工業作坊式的管理與操作。中國軟件行業起步于20世紀90年代,歐美國家的軟件產業已經有約50年的歷史,多年的積累已經形成了對軟件生產環節系統的管理和規范,有效地控制軟件開發的流程。這些操作規程已被國際上軟件企業普遍接受,執行多年,并且形成標準。遺憾地是國內絕大多數公司的工程師和項目經理,完全不知道這些標準的存在,有些雖然知道但也沒有仔細研究、更不用說應用。不執行這些標準并不妨礙面向國內客戶開發生產軟件產品,但是當走向國際市場時,是不能夠勝任任何外包項目的要求。

2對日軟件外包人才應該具有的職業素質

對日軟件外包人才應該具有很強的專業技能并接受系統的軟件工程實施規范的熏陶。筆者從外包人才的兩個層面進行說明。

2.1中、高層工程師層次

對于中、高層工程師層面的人才,需要使用軟件工程國際人才標準來進行衡量,比如懂得國際軟件工程標準CSDP(Certified Software Development Professional),該認證體系由IEEE-CS(國際電子與電器工程師學會-計算機學會)創建,是對全世界范圍的軟件工程師在知識領域、工作經驗及職業道德等方面的資質的正式認證。雖然需要拿到相關認證書是極其困難的(到目前為止中國拿到CSDP認證的只有30多人),但是所有這個層面的工程師應該積極向這個標準看齊,CSDP國際認證的基本內涵是按照國際標準規范化地開發軟件。試想,一個外包企業,如果有3~5人通過CSDP認證,何愁外包項目做不好。

2.2程序員層次

程序員層面人才(高校本科教育能夠為工業界輸送的軟件人才層次)應該具有的職業素質是:具有較強的快速學習能力,扎實的高級數據結構和算法基礎、嫻熟的編碼技能、良好的編碼習慣、能夠熟練地使用2~3種流行的開發工具,能夠寫出規范的項目文檔,善于溝通、具有極強的團隊協作精神、奉獻精神和務實的作風等。

2.2.1快速學習能力

快速學習能力是軟件外包程序員非常重要的一個素質。筆者與幾位IT公司面試官在討論學習能力和已有的知識儲備對于應屆畢業生來說哪個對于該畢業生發展更重要這個問題時,得到的一致結論是前者。原因很簡單,軟件外包行業是隨時要保證跟上IT技術發展的步伐,而IT技術的發展變化快是當前其他任何行業都無法相比的。相關從業人員如果不能跟上技術發展變化步伐,就會失去主動。所以在繁忙的工作之余能夠利用較少的時間快速學習新技術、新的架構思想就顯得非常重要。

2.2.2數據結構算法基礎

扎實的高級數據結構和算法基礎是程序員必須掌握的基礎技能,但往往也是很多包括已經在業內工作多年的程序員沒有重視的一個問題。對于現在很多高級的集成開發環境以及應用框架、類庫等已經將很多數據結構和算法細節隱藏以支持RAD,很多程序員已經不必再去了解這些細節就能夠透明的去處理業務和UI。這種情況針對小項目沒有太大問題,但對于跨國外包項目來說,在處理一些軟件項目時要從全局性能的角度考慮問題,此時高水平的底層數據結構設計和高效率的算法思路就顯得十分寶貴了。

2.2.3編碼習慣

良好的編碼習慣對于在外包團隊內部工作的程序員來說是非常重要的。在規范的軟件外包團隊中,程序代碼需要給其他程序員復審,在維護階段還會有其他程序員進行代碼維護工作。如果程序員沒有良好的代碼習慣,那么上述情形不管對于自己還是對于團隊中的其他成員來說都是噩夢。

2.2.4重視文檔的作用

在軟件工程中,文檔的重要性是顯而易見的。然而,至今大量的國內軟件項目都還是編碼基本完成后再回頭來補齊文檔,這對于軟件外包來說肯定是行不通的。軟件的設計實施都需要按照文檔的規范定義來嚴格執行。對日軟件外包人才必須具備規范的項目文檔編寫能力。

2.2.5語言能力及精神品質

對日軟件外包程序員必須要具有較強的日語口語交流技能,這樣才能直接精確的理解客戶的需求,完成良好的溝通。而團隊協作精神是當前很多行業都要求職業人應該具備的基本素質,軟件行業當然不會例外,當今的軟件產品規模越來越大、架構越來越復雜,一個人是不可能完成大型軟件項目的開發工作的。軟件外包行業由于其特殊性,必然的面臨著大量的加班壓力,從業人員必須從容面對經常性的加班,這當然會從某種程度上影響從業人員的其他生活,但從全局出發,這樣的犧牲是必須的、是值得的。要從思想上要求從業人員做好心理準備,能夠吃苦、自愿奉獻。

3如何培養具有高素質的對日軟件外包人才

要使軟件人才的素質達到國際標準,并能夠順利做好對日軟件外包項目,首先要在中、高層工程師層面尋找出提升高級軟件人才素質的切實可行的辦法與途徑。解決問題的方法是:直接引進軟件工程國際標準與軟件工程人才標準,普及與推廣CSDP是迅速提升人員素質達到國際水平的一條“捷徑”。這個群體一旦培養成型具有一定規模后,對于底層軟件外包人員的發展壯大以及素質的全面提升都是至關重要的。

中、高層工程師層面的問題解決了,對于底層的對日軟件外包程序員的從業素質培養有一定帶頭指導作用,但仍然需要一整套科學合理、符合各地域實際情況的培養模式。筆者結合本學院兩屆對日軟件外包人才培養經驗,以及重慶市實際情況提出一個概要的培養方案設計思路。

首先,高校應多與企業進行交流和合作,讓高校能夠根據企業需求適當進行教學改革,鼓勵學生多參加社會實習實踐,使大學生具有相應的就業能力。同時,軟件外包企業應與IT職業教育和培訓機構合作,將更多的應屆大學生培養成IT應用型人才。因為目前學歷教育更專注于學生的基本素質培養,其就業能力、工作技能的培養應由學校與職業教育機構共同完成。就本學院的經驗看來,在以往傳統的計算機教學模式下,學生基本上將精力投入到計算機基礎理論學習中,走向社會找工作時,發現IT職場更需要的是具有一定理論基礎的、較強的動手能力的實干型人才。經過兩屆的對日軟件外包校企合作培訓,已經有半數畢業生的實際動手能力能夠為軟件外包企業所認可。

其次,由企業與培訓機構共同推動大學生IT實習實訓基地建設,通過IT實訓提高高校畢業生實際動手能力,并大力支持和發展大學生IT就業中介服務機構,為大學生提供專業的就業信息、職場素質、就業推介等服務。

再次,重慶位于我國的西南部地區,學習外語的大眾推動力和外語培訓的教學能力較之沿海發達地區有一定的差距。對日軟件外包人才必須具備較好的日語交流能力,特別是對日軟件外包技術專業術語的領會和表達能力是語言能力培訓過程的重中之重。特別缺乏既熟悉日語教學,又具備一定軟件開發經驗的人員作為對日軟件外包日語培訓師。

目前,我國教育現狀更多還是應試教育,這樣培養出來的人才從一開始在團隊協作方面就有一定的欠缺。在高校教育的過程中,應該有意識的去培養學生的團隊協作精神,激發學生對團隊的奉獻熱情。

4總結

本文分析了重慶市軟件外包企業人才需求現狀,歸納了對日軟件外包人才應該具有的職業素質,概要的提出了對日軟件外包人才培養方案設計思路。我們相信重慶市的軟件外包產業必將走向美好的明天!

參考文獻:

[1] 劉紹堅. 中國承接國際軟件外包的現狀、模式及發展對策研究[J]. 國際貿易,2007(6):27-32.

[2] 李岳云. 國際服務外包趨勢與我國服務外包的發展[J]. 江蘇對外經貿論壇,2007(3):25-30.

[3] 趙桂玉. 中國軟件外包業發展的障礙及解決措施[J]. 現代企業,2006(6):65-66.

[4] 劉先雨. 大連軟件外包產業集群發展探討[J]. 現代商貿工業,2008(10):121-122.

Research on Cultivating Professional Quality of Software Outsourcing towards Japan

WU Yu, YANG Hao

篇(5)

中圖分類號:G642 文獻標識碼:A

“高級語言程序設計”是計算機軟件相關專業中很重要的職業技能課,是一門理論性、實踐性和實用性都很強的課程。通過教學,不僅要讓學生掌握軟件開發的有關理論,更重要的是培養學生的實戰技能和職業素質,使學生一畢業就能夠在軟件公司找到合適的崗位并能夠勝任。這在以培養應用型人才為目標的高職院校更為明顯。筆者多年從事“高級語言程序設計”課程的教學及軟件開發,對如何在日常教學中培養學生的職業素質有些粗淺的認識,下面以VB語言為例,從教學方法、課堂教學設計方面進行深入討論。

1程序員應具有的職業素質

(1) 與人協作能力

這是程序員應該具備的最基本的,也是最重要的安身立命之本。軟件項目開發往往不可能是由一個人完成的,而是由一個團隊共同完成的,這就需要每個人既要會編寫程序,還應該有全局意識,自己的工作要考慮與大局相一致,沒有協作精神是不可想象的。

(2) 獨自解決困難的能力

任何一本教科書都不可能囊括程序設計語言的所有內容,在一個具體的軟件任務中肯定會遇到特定的困難,因此程序員必須具有自己解決困難的能力。一般情況下,可以通過查看微軟msdn及csdn手冊、網絡搜索、到一些有影響力的站點同其他程序員交流來解決困難,如編程中國、編程愛好者等網站。

(3) 良好的代碼編寫習慣

這些習慣包括變量聲明使用、變量命名簡明扼要、代碼標注、捕獲代碼異常、注重代碼復用、加強測試環節等。如果在軟件開發中忽略這些好的習慣,那么軟件中存在的漏洞會不易發現,軟件也不易于維護。

(4) 善于總結與積累素材

建立自己的資料庫,把一些實用的程序代碼收集起來,這些代碼可以是自己編寫的,也可以是網上下載下來的。并且每次完成一個研發任務,應當有目的地跟蹤該程序的應用狀況和用戶反饋,找到不足,這樣逐步提高才可以盡快成長起來,才可以在接受新任務時有的放矢。

2案例教學與項目化教學法相結合的教學過程

高職學生的程序設計課程采用案例教學法,這個觀點多年來已達成共識[1]。近年來也有學者提出在程序設計語言教學中采用項目化教學法,把整個的教學內容組織成一個項目,以對項目的不斷完善為線索組織教學。

筆者認為高職VB程序設計教學,應采取案例教學與項目化教學相結合的教學方法,實施“整體-局部-整體”的學習模式。在最初的日常教學中,采用案例教學法傳授基本知識,案例教學可以增強學生學習的興趣,而且因涉及新知識較少而不會讓學生感到難以接受,符合先具體后抽象、由易到難的認知規律。學期末,采用項目化教學法,通過一個面向應用的小型項目,不僅能將知識點進行系統總結,還可以讓學生體驗到軟件開發的步驟與氛圍,培養工程的概念和把握全局的能力和素質。

2.1采取案例教學,注重習慣養成

案例教學時每堂課首先展示一個程序范例,該范例包括了當天要講的新控件、新語句,然后講解實現這一程序的基本思路,提出算法,以完成“任務”為主導。在案例教學過程中應注重:

(1) 采用“整體-局部”的教學思路,不論多么簡單的一個案例,都應以系統設計為起點,以完成案例的過程為線索展開教學,把“程序設計方法”這一核心內容貫穿于教學的始終,使學生在學習過程中建立系統和全局的概念。

(2) 案例圍繞“趣味性和實用性”,要培養學生的學習興趣,案例的趣味性和實用性尤其重要,使趣味性貫穿于教學始終,這樣學生一開始就能體會到課程的趣味性和實用性,進而激發學生的學習興趣。

(3) 每個案例的設計要通盤考慮,用戶的需求、功能的思想、界面的設計、容錯的考慮、代碼的復用、系統的測試等都必須考慮到,注意案例代碼的規范化,同時要求編寫規范代碼。

(4) 要及時歸納、做好小結。歸納可以是一個控件使用的歸納,也可以是對一種結構、一個模塊的歸納,可以使用文字概括,也可以使用圖示總結,要求學生整理積累歸納總結的結果,并鼓勵學生自己做好歸納。

(5) 有意識地培養學生的異向思維,如一個案例是否只有書上的一種解法,書上的解法是否是最優化等等。要求學生通過網絡搜索、相互討論的方式完善案例,輔助學生查閱多種資料來解決完善案例過程中遇到的困難[2]。

2.2實際項目開發,體驗開發過程

在這一階段,以小組合作討論的形式展開教學,由學生獨立完成項目開發,教師的任務由傳授轉變為指導。這種方式不僅是對所學知識的鞏固總結,也能提供一個逼真的環境讓學生體驗程序員的工作過程。

項目任務不能太難,也不能太易。任務最好能較多地使用學生平時積累的素材,可以是一個學籍管理軟件,可以是比較簡單的游戲,也可以是一個實用的工資管理系統或者學生自主命題[3]。對已確定的項目任務,首先要求學生搜索網絡,查找類似的源代碼進行修改完善,如果搜索不到的話再進行自主創新。教師應協助學生選好搜索關鍵詞,以便得到更恰當的結果,并指導學生從眾多結果中選擇自己想要的。在完成任務的過程中,本著由易到難、由簡到繁的原則,將一些難題逐步分解,循序漸進地完成。小組內的學生要進行交流、討論、溝通共同完成項目開發,小組間可通過相互測試來尋找不足,互相學習,培養學生團結合作精神,提高與人協作溝通的能力。遇到困難和未接觸過的知識點,可通過查找書本、搜索網絡等方式來解決,使學習的內容更多、更深、知識面更廣,提高自學和解決困難的能力。

3教學設計舉例-“多重窗體制作”案例

3.1 教學目標

(1) 知識目標:掌握窗體的加載(Load)、卸載(Unload)語句,學會窗體的添加、多重窗體程序的執行與保存。

(2) 能力目標:提出問題、解決問題的探索能力,通過msdn搜索資料的學習能力。

3.2教學過程

(1) 功能需求的提出

演示三重窗體操作實例,分析功能,提出功能需求

(2) 仿制體驗,逐步探索

(3) 窗體的加載、卸載、顯示、隱藏

嘗試窗體切換,失敗,引出問題:在多重窗體程序中,如何打開、關閉、顯示或隱藏指定窗體?通過示范讓學生跟隨教師應用Load、Unload、Cls、Move、Show、Hide語句對指定窗體打開、關閉、顯示或隱藏,實現第一、第二窗體的切換,探索窗體加載、卸載、顯示、隱藏的方法,使學生掌握Load、Unload、Cls、Move、Show、Hide語句的應用。

3.3 探索與實踐

組織學生通過小組合作完成第三窗體的添加、打開、關閉、顯示或隱藏,實現各窗體之間的調用。探索Load、Unload、Cls、Move、Show、Hide語句的用法及功能,研究Show兩種模式的功能特點及Load和Hide的區別。并探索多重窗體工程的保存與啟動,研究多重窗體的“窗體保存”與“工程保存”特點,研究如何改變多窗體中的啟動窗體。指導學生完成多重窗體完整項目的制作。

3.4總結與交流

組織全班交流編程思路與得失,著重討論各自的編程策略、過程和對相關語句的理解,總結多重窗體制作的步驟與方法。

結束語:21世紀的教育要著眼于社會發展的實際需求和人才市場的實際需求,在程序設計教學實踐中,教師要在教學方法上不斷探索,努力提高學生的學習興趣和專業素質,真正做到學以致用,使計算機程序設計課程的教學能夠適應現代信息化人才培養的需要。

參考文獻

[1] 周曉宏. 程序設計課程內容體系改革模式漫議[J]. 職業教育研究,2007,(5):73-74.

[2] 王方杰. VB教學方法探索[J]. 計算機教育,2007,(14):91-92.

Training Professional Quality in VB Teaching Activity

DU Shao-jie

篇(6)

程序員年終總結范文1以前在校很少自己做程序,對軟件工程更是一無所知。來到公司,開始接觸"大規模"(其實現在看來實習的項目其實還是很小的)軟件開發,一時真的有些迷茫。比起VSS,MVC,QA,CMMI,我對JAVA,JSP,_ML的一竅不通根本不值一提。大家都不想輸在"起點",所以都默契地在加班,這樣一直持續了實習的兩個月。

剛來的時候"始業教育"顯得慢吞吞,我們還經常盤算去哪哪玩之類的。我和__(20個新生里一個南區的兄弟,軟件學院的)還經常出去吃各種小吃,每到一處都嘗嘗本地的風味,這是他的習慣。之后開始的培訓還不是很難過,JAVA,C++,ORACLE,老師們講的很"好",可以說是非常好,好得我們沒有幾個人能聽懂。大家開始發愁,我也是每天晚上都基本看書到10點。

"我心說得虧哥們我還練過",來之前的2月份我就自己買了一本THINKINGINJAVA,看懂看不懂怎么說也算是準備了一下JAVA。C++雖說沒去上過課,但憑我的直覺我就一下看中這東西很有用,自己也看過一陣。至于ORACLE,雖然不了解,但畢竟因為佩服"云飛揚"的性格和敬業精神,咱SQL選修也不是白混的。專業倒還有點"基礎",再加上咱這自學能力也不是吹的,基本維持。可等到后來的日語課就全迷糊了:本就沒有語言天賦,再加上記憶嚴重欠缺,總是特別害怕去上日語課。不過特別喜歡那個老師說話的感覺,加上她一直對我都很好,所以還是很用心的學著。

隨著培訓的收尾,我們開始正式進入項目。從需求分析,概要設計到詳細設計,我們一步一步的開始接觸軟件開發的每個細節。不了的就是每天都要記"周報",填寫自己的勞動成果。因為這個我還被QA通報了好幾次呢,真的很郁悶。其實現在我很感謝這種制度化的東西,某些情況下好習慣的養成是要靠強制來確保的。詳細設計之后就是企盼已久的編碼,我心想終于可以做點"正事"了。現在回頭一看才知道,其實編碼只占軟件開發的整個過程勞動量的1/4左右,而且其他的環節也不是想象中的那么無足輕重。

編碼我其實做的很不好,主要是因為需求分析階段就沒有認真仔細的理解需求和規格說明,加上編碼時一個關鍵時段我回校和老同學敘舊。那陣項目經理(PM)就經常和我們說,"有問題自己想辦法,不要經常問我"。PM其實是在叫我們自己醞釀,遇到難題只有"憋"一"憋"才能有真的收獲。而我不在的那三天正好是大家技術/思路上的一個"躍遷",很多難題的解決方法都基本成熟,大家的編碼也接近50%了,所以回來時我感覺已經掉隊很多。再一個就是編碼中期時機器出問題,環境搭不上了,這使我更加緊張和急躁,大大影響了我的士氣。

后來利用五一其間的加班我終于趕完了自己的模塊,達到了第一個里程碑。其實從發現落后到加班趕完這段經歷,對我來說也具有里程碑的意義。不僅考驗了我自己的能力和心理素質,也證明了我對集體的責任感和合作意識。我可以叫別人來幫我做趕上進度,但那樣我會錯過自己學習的機會,以后再遇到難題我還是不行;我也可以硬著頭皮導致項目延期,那樣我以后的日子保證不好過,而且這么做也不符合我的性格。事實證明我頂住壓力獨立完成任務不管是對集體還是對我個人都是一件大好事。

緊張的編碼之后是單體測試,很多人都在繼續編碼,原來大家的編碼都是沒有完全做完。本是自己給自己挑毛病的過程,我們卻都用來完成之前沒有完成的任務,說來不禁可笑。

單體測試之后就是惡夢一樣的系統測試。傳說系統測試壓力很大,測試組找到BUG上報后這邊就得限期修改,之后提交給測試組進行下一輪的測試,回歸若干次,測試結束后產品達到允許的缺陷率才可以出荷。不過由于這時已經有人要返校體檢,其他人也軍心渙散導致集體"早退",測試沒有很正式的進行,只是簡單的做了一下界面的統一和功能的檢查,連性能測試都沒做。不能不說是實習的一個敗筆。

回想之前的工作,不到10周時間我們從學生開始轉變為員工,從對公司完全陌生到有了一定的了解,不管是處世為人還是技術思想我們都有確確實實的進步。

再結合我自己來看一看。的收獲就是我克服了有些自大的壞毛病,虛心的向別人學習。我知道這就是我練習與不同類型的人適應,交流的開始。技術上自不必說,我絕對學到了以前在學校一年也不一定學到的東西,這就是一個態度的問題。"態度決定一切",這句話太有道理了。

另外一點遺憾就是小孟說的,我似乎也感到自己有點"工作狂"的味道。為了拿下那些代碼和BUG,我有好幾周都連續加班到晚上11點,由于工作占用了時間,我連以前一直的跑步都沒堅持下去。這樣不是好兆頭,我必須要養成合理的作息制度,不管工作怎樣忙,必須不能占用自己的作息時間。還有一個就是和別人的交往。曾因為一些小事分別和老胡和哲明鬧了不愉快,幸好后來都說開了,大家沒計較。我一定要嚴謹,克制,絕對不在以后的正式工作中做這樣的蠢事。

總體來說,我對實習充滿了快樂的回憶,也許是因為我在大學的生活過于平淡和壓抑。希望我可以延續這樣的快樂,將自己帶上事業的頂峰。

程序員年終總結范文2我是一名程序員,在過去的一年里,軟件研發部團結協作,以及在公司這充滿奮斗的環境下,我以嚴肅認真的工作態度和百折不饒的精神,努力的完成了公司的各項工作,在軟件研發、團隊協作和個人成長上也取得了一定的成績。在公司一年的工作已經結束,特向公司總結匯報如下:

一、軟件研發

根據公司的安排,項目的需要。在自身的努力、伍經理的幫組,團隊的合作下,克服重重技術困難,增長了工作經驗,收獲豐盈:

1、asp.net開發

以前我在其他公司也做過一些開發,但是底層和架構與頁面樣式我都是沒有涉及到的。通過這一年在本公司的的這些項目程序中的鍛煉,我成長了,我學會了很多很多。

首先,面向對象語言的收獲。對于當前編程的主流思想是對象,任何事物都可以用對象來表示。以前理解這些話很費解都是從表面上理解,沒有從深入的體會,通過這次asp.net項目的深入,不管是數據還是外部一些條件我們都可以抽象成對象,都可以用對象來表示,具體可以用語言中的類方等。asp.net如此,c#如此java也同樣如此。

其次,具備獨立完成vb.net知識方面的能力。以前沒有做過vb的東西,加上這次深入的做,這次涉及到的領域也非常廣,常用的重要的都有涉及,并且還補充_ml,java實際操作中空白的部分。通過這一年的開發,在.net方面我能勝任這方面的工作,能獨立完成這方面的工作。

再次,c#方面存在一些不足。LocALhOST通過c#這次軟件的開發,也發現自己的不足,如基礎知識掌握不牢,缺乏編程整體思想。這些都是需要在工作中完善和改進的。

2、數據庫開發

數據庫是伴隨著項目以來用的最多最平凡的技術。以前對數據庫只是會一些簡單常用的操作,經過這一年項目的實戰,對數據庫的操作增加了一些豐富的經驗。為以后的工作和經驗的積累都奠定了堅實的基礎。同時在項目中還用到了oracel與access數據庫,這是我的收獲。

優點:能熟練的運用數據庫技術進行開發。特別是對sql數據庫的操作,經過這么長時間的積累,基本上能合理的設計和新建數據庫,同時在數據結構上也加強了對數據庫的理解。通過項目的實踐現在能熟練使用和編寫多種sql語句。還掌握了一些關于數據庫優化sql語句優化的方法,能進行一些簡單的優化。

缺點:數據是一門比較先進的技術,并不是你會寫一些sql語句,能建幾個數據庫你就是數據庫工程師。要成為一個好的數據庫管理員是要經過長時間的工作積累。針對自己的不足,在以后的工作和學習中多接觸,多運用新的知識點。充實自己的經驗和知識儲備。

二、團隊協作

上面的成功與收獲,除了自身努力外,以及公司的支持。是這個團隊鑄造了我。我們這個團隊也是因為有了我們這些拼搏協作的隊員,使得它成為一個具有務實、拼搏、創新精神的團隊。我與軟件研發小組是一個整體,這里的團隊總結也就是我在這個團隊中的收獲。

務實:公司下發的任務,下發的工作,件件都是用心去做的。我們這個團隊中沒有一個人在工作的時候做了工作以外的事情,都是實實在在的做跟工作相關對公司有益的事情。相信在伍經理的帶領下現在是這樣,以后同樣也是這樣。

拼搏:公司給的每一個任務不管它多難,如果工作沒有完成我們會晚上加班,也要盡可能的完成當天的工作。如果工作實在忙,為了趕進度我們放棄周末休息時間也要盡可能的使項目提前。

創新:現在我們開始項目的時候都會進行研討,一般都會進行一個效率和邏輯的分析與討論,保證程序正確的前提盡可能的提高程序的效率。

互助:我們小組內只要任何一個人出現技術或其它的問題,我們都會彼此都會盡可能的去幫助他。不會因為某一個人而拖住整個項目滯后。

交流:我們在項目中會及時溝通自己的收獲,特別是一些針對性的技術問題。這樣可以省了很多重復研究的時間,這是一筆很可觀的時間。

在交流中只要我會的,我懂的,我不會去吝嗇。我會積極的去與你交流,我的團隊名言“人強團則強,人弱團則削”。

三、個人成長

通過公司這快一年的鍛煉與學習我真的進步了很多,不管從技術上還是做事上,都不像以前那樣了。我在公司學到的懂得的使我飛速成長。

技術上:不管從語言上還是做事的邏輯上都得到了很大的的提高。現在在軟件小組里面自己能獨立完成一部分工作,承擔自己的責任。

程序員年終總結范文3來公司擔任程序員一職已一年多時間,在這一年時間里,我學到了很多東西。每個人都是在不斷的總結中成長,在不斷的審視中完善自己。在這半年里自己也是在總結、審視中腳踏實地地完成好本職工作,現將這半年的工作總結如下:

一、思想方面:

嚴格按照一個程序員應有的素養要約束自已,愛崗敬業,具有強烈的責任感和事業心,積極主動認真的學習專業知識,工作態度端正,認真負責,聽從公司的安排,積極配合全友家私完善ERP系統,任勞任怨。

二、工作方面:

熱愛自己的本職工作,能夠正確認真的對待每一項工作,工作投入,熱心為大家服務,認真遵守勞動紀律,按時上下班,有效利用工作時間,堅守崗位,需要加班完成工作按時加班加點,保證工作能按時完成。在這半年里,我本著把工作做的更好這樣一個目標,開拓創新意識,積極圓滿的完成了以下本職工作:

配合全友家私開發并完善SRM系統

獨自開發全友家私SAP日志維護系統

三、存在不足:

公司領導以及部門領導同事的幫助和指教,使我的工作有了很大提高,當然我還存在著很多不足之處,處理問題思路簡單,不夠成熟,工作中容易產生急躁情緒,需要更深入學習專業知識,提高自己的工作水平。

程序員年終總結范文4這段時間,在領導和同事們的關懷和指導下,我通過不懈努力,各方面均取得一定的進步,現將我的工作情況做如下匯報:

一、通過理論學習和日常工作積累經驗我的各方面有了很大的進步。

剛到公司不久,我便開始負責。NET方面的網站開發和廣告平臺開發和維護,剛開始的時候對我來說確實壓力很大,因為各方面都還不熟悉,而且與之前的公司相比,節奏也有點快,不過我慢慢的習慣了環境,和同事相處的比較融洽,領導對我也比較關心,在公司里工作就像是在一個幸福的大家庭里一樣,我很快喜歡上了這里。

我到公司不久,第一個項目是___公司網站,做這個項目的時候我遇到了幾個問題,我在以前公司做的時候沒有在這么短的時候完成一個項目的,在效率上提高了我的能力。做這個項目的時候我也遇到了許多以前沒有遇到過的問題,我請教同事和朋友,還有借助網絡一一解決了難題。

之后,我將B2B廣告招商平臺進行了改版,開發了___智能建站廣告平臺以及以后網站的維護工作。

接下來,我又做了一個比較棘手的項目——___在線咨詢系統。為什么說棘手呢,因為我以前沒有做過這方面的項目,而且我問遍了所有認識的朋友,搜遍了網絡也沒有找到如何解決的方法,之后我翻書籍,接著搜索網絡。功夫不負有心人,終于我找到一個聊天室的小例子,但是功能差的太遠,于是我把這個示例一點點的研究,從一點也不懂到后來慢慢看懂,從對AJA_技術一無所知到基本熟練運用。接下來我就開始自己開發,到最后終于把它開發了出來,雖然不是很完美,功能不是很強大,但是它是我辛苦的勞動結晶,我相信以后會把它開發的更強大,更完美。

二、明確崗位職能,認識個人技術能力不足。

經過三個多月的工作,雖然完成了一些項目的開發,我的技能也提高了很多,但是感覺我的技術還有待提高,所以我會在以后的工作中更加努力,努力提高自己的技術和各種不足,努力使自己成為一名稱職的職員。

三、提出自己努力計劃

1、學無止鏡,時代的發展瞬息萬變,各種學科知識日新月異。

我將堅持不懈地努力學習各種技術知識,并用于指導實踐。

2、“業精于勤而荒于嬉”,在以后的工作中不斷學習知識,通過多看、多學、多練來不斷的提高自己的各項技能。

3、不斷鍛煉自己的膽識和毅力,提高自己解決實際問題的能力,并在工作過程中慢慢克服急躁情緒,積極、熱情、細致地的對待每一項工作。

4、努力提高自己的日常交際能力。

時光流轉間,我已到公司工作三個多月。非常感謝公司領導對我的信任,給予我體現自我、提高自我的機會。這三個多月的試用期工作經歷,使我的工作能力得到了由校園步入社會后幅度的提高。

程序員年終總結范文5馬上到年末了,自己也對今年做了一下總結,自己有哪些優點,有哪些還需要加強。每當我想到今年比較滿意的地方,對比之前,就會有這樣一個思考:如果以前的我要是知道這些該多。在這里給大家分享一下經驗,讓新人少走一些彎路。

做事要積極主動,態度決定一切

說這些,可能有人會覺得,這些都明白,都是大道理,只是怎么樣執行的問題,下面我舉一個真實的例子。

我曾經帶過的兩位新人,A君上班,交代給他負責的東西,是永遠沒有結果的,我交代給A做一個數據展現的部分,A君告訴我他不會JSP的技術,我給他推薦了一些書籍以及我曾經寫過的demo,并告知不能光學,要有成果展示,可以通過這個數據展現來學習jsp技術,但是最后的結果是他下班就走,走之前沒有跟我匯報任何進度,我最后只能換人做這個東西。這里我并不是推薦職場新人要加班,但是做事的態度要認真負責,新人可以對技術不懂,但是要有負責的態度,起碼應該匯報一下今天的進度。

再來對比一下另一位B君,也是同樣接到這個任務,首先B君懂jsp,但是他不懂JSTL,我給了他時間學習,結果B君在很短的時間內,學了JSTL并將總結發給了我,我相信這么短的時間內,他畢竟掌握的有限,但是學習了,又有總結,這種態度令我非常滿意。在第二天,B君就把數據展示做出來了,而且確實是我想要的樣子!不得不說,同樣的事,同一水平線,不同人做的時候,態度和積極性就決定著一切,所以一個人只要工作態度好,我相信這個人的工作絕對不會差。

提問的技巧

作為一個新人來說,不懂就要問!這里我要說兩點:

1、如果是單純技術上的問題,如果可以google到的,我認為就可以自己消化掉!問的問題一定要先google,然后帶著自己的想法,去問一些有經驗的人,收獲會更大!

舉個例子:曾經的我,埋頭寫代碼,那時候很怕上司知道自己不會這,不會那!所以拼命的掩蓋自己不會的東西,自己查資料,下班了問同學,上論壇發問。但是由于邏輯和現實需求不一樣,所以結果并不理想!如果那個時候,我把自己不理解的地方和上司談,也許會很快的就能完成這個任務,而不是返工。

2、如何提問?問誰?

很多新人不知道如何提問,也不知道問誰。我的建議是,先把你要問的問題梳理好,可以有電子版或者打印版的整理,方便其他同事查看和解答。然后就是提出的問題,要讓回答的人感興趣,這樣他不但會給你解答問題,還有可能將問題延伸,讓你學到更多的知識。對于如何讓回答的人感興趣,就是仁者見仁,智者見智了!看個人發揮了!

對于問誰,我覺得你不了解其他同事的時候,要先問你的上司,當你了解了你的同事每個人擅長的領域之后,就應該把自己的問題歸類,然后問最擅長的人。這樣會事半功倍!

任務分解

不知道大家做事都是怎樣一個邏輯,當年的我做事就是一團糟。當我拿到一個日志分析的任務的時候,就想著做,埋頭苦干,但是自己越做,腦子越渾,完全找不到頭緒。后來,上司找到我,給我做出了任務分解,我按照任務分解來做,清晰了很多。直到現在,我還保持著做任務分解的習慣。

其實做任務分解可以幫助你更深入的了解你要做的事情,任務分解包括一個事情,你需要分幾個步驟去做,每個步驟要做到什么樣子,什么程度,多長時間做完。幾個步驟為一個里程碑。如果具體做的時候發現一個步驟的事情做起來超過了一個星期,我覺得這屬于任務分解的不夠細,需要將這個任務再次分解,讓你的工作更透明,更有效率。可以使用一些任務分解工作,將自己的工作路線和步驟明確,要善用工具。

主動匯報 + 主動溝通

曾經的我就是埋頭苦干,但是從不匯報進度,其實這樣是不好的。后來我的領導找到我,問我的進度,才發現意見有所分歧,理解有差距。索性只能重新來過。

新人一定要注意這個事情,有情況,有成果,有可展示的東西就一定要及時的主動匯報這個事情的進度,做成果展示,在對事情有不理解的時候也需要主動的溝通,使之和所有參與人員的意見一致再去做,保證你做的事情的正確性和有效性。

篇(7)

文章編號:1672-5913(2010)08-0076-04

中圖分類號:G642

文獻標識碼:A

JavaEE編程技術是我院軟件技術Java開發方向的專業核心課程,它是繼學生修完Java程序設計、JSP程序設計之后的一門重要課程,對培養學生在企業應用中的開發能力,培養中高級Java程序員和Java服務器端程序員起著至關重要的作用。

JavaEE是一個龐大、分支眾多的技術體系,同時也是一個需要不斷接受新思想、解決新問題的系統,要想在有限的學時內學好,很難做到面面俱到。同時,作為一門高職課程,JavaEE不能太理論化,而應該面向實際應用。JavaEE是服務器端技術,要解決的問題是企業級應用,企業級應用的重要表現形式是分布式系統,EJB、Web服務、JMS這些企業級系統常用的技術,其學習難度大,應用環境很復雜,這給實踐教學的開展帶來一定的難度。

高等職業教育的課程改革不僅僅是方法的改革,還是理念、內容、實施方法等多方面的改革,高職教育的特點應該以實踐教學為主。本文以企業對人才的需求為導向,結合筆者多年的教學實踐經驗,按照基于工作過程的改革思路,探討了JavaEE編程技術課程改革過程中教學內容的優化整合、學習情境的設計、教學方法和教學手段的革新等多方面的改革實踐。

1 按照企業需求和成長規律優化整合教學內容

1,1課程改革源于專業的整體要求,同時必須符合企業的需求

一門課程不是孤立的存在,課程改革來源于專業的整體要求,而專業人才的培養必須符合企業需求。企業對Java程序員的崗位需求分為兩類,即Java客戶端程序員和Java服務器端程序員。這兩類崗位所要求的知識和技能既有較大的差異,又存在緊密的聯系。一方面,客戶端程序是獨立運行的桌面應用,一般具有豐富的圖形用戶界面,經常需要直接與數據庫進行交互,也需要調用服務器端程序提供的服務。客戶端程序員需要具有豐富的Java圖形用戶界面編程經驗,數據庫編程經驗,對Java服務器端技術有一定的掌握和運用能力。另一方面,服務器端程序運行在服務器上,它為別的程序提供服務,需要程序員掌握組件的編程、應用在服務器端的主流框架。作為高職院校軟件專業畢業的學生,應該能夠勝任軟件企業對Java程序員的不同崗位需求。

1,2明確Java主線課程教學任務的側重劃分

我院以Java為主線的核心課程有3門:Java程序設計、JSP程序設計和JavaEE編程技術。其中,Java程序設計主要培養Java客戶端程序員,同時解決基礎問題。JSP程序設計和JavaEE編程技術主要培養Java服務器端程序員。事實上,JSP屬于lavaEE的Web組件,是JavaEE分層架構中表現層最重要的技術,同時,在使用Java技術建立Web應用時,JSP因其便于掌握和可實現快速開發的優點成為很多小型Web應用采用的技術。我們將JSP作為一門課程放在JavaEE之前,不僅符合JSP的自身體系,還可以減輕JavaEE的教學壓力,平滑JavaEE的學習曲線。

1,3確立JavaEE課程的教學目標和教學內容

在理清了各課程的關系之后,我們確立了JavaEE編程技術的教學目標:學習完本課程后,學生能夠獨立搭建JavaEE開發環境,能夠熟練進行三大組件(servlet、JSP、EJB)的編程,能夠運用Singleton、DAO、MVC設計模式,能夠運用Struts框架,能夠實現數據訪問層,能夠按照不同的方案設計和實現JavaEE多層結構的企業級應用。

教學內容包括:JavaEE開發環境、在JavaEE中使用XML、Servlet組件的編程、JavaBean組件在JSP中的應用、數據庫訪問技術、MVC架構、Struts框架、EJB 3.0組件編程。

教學內容的重點在于JavaEE三大組件技術(JsP組件主要在“JSP程序設計”中介紹)、數據訪問層、設計模式、MVC架構和Struts框架;難點在于如何運用這些技術和框架實現一個既符合JavaEE分層結構,又遵循MVC架構的企業級應用系統;能力目標在于培養具有一定理論知識,又具有較強的實際編程能力和開發能力的應用型人才。

2 基于工作過程進行課程開發與設計

2,1課程開發的思路:教學內容、工作任務、軟件項目三位一體

“教學內容、工作任務、軟件項目三位一體”的含義是:巧妙地將理論知識點融入到完成不同的工作任務中;工作任務不是孤立的存在,而是軟件項目中的一個個局部功能;學習進度與項目進度相一致,學習內容與項目內容相一致,用完整的項目貫穿課程始終。具體而言,主要具備以下3個特色:

特色1:軟件項目貫穿。選擇一個綜合性的項目貫穿整個課程,項目根據學習情境分成一系列局部功能,在不同的學習情境中,學生將學會實現某個(些)局部功能,當完成所有學習情境,整個項目就可以完成。

特色2:理論教學采取任務驅動教學模式。整個課程劃分為不同的學習情境,每個學習情境都有若干個典型工作任務,理論教學采取任務驅動的教學模式,將相關理論知識點融入到完成不同的任務中,并布置相近似的任務在課后實驗中指導學生動手完成。

特色3:實踐教學采取項目導向教學法。實踐教學分為兩個層次,第一個層次是在理論課后的作業和實驗中閱讀和模仿課堂上老師給出的代碼,完成近似的任務。第二個層次是項目的開發,課程安排了三次大的課程設計,隨著課程內容的推進,將同一個項目分別用不同的技術和框架實現三遍。第一層次的任務是為項目作準備,是項目中的一個個局部功能,這樣學生可以實現從任務到項目的平滑過渡。

改革后的課程體系完全顛覆了傳統的教學模式,符合高職教學以實踐為主的理念,更加有利于培養高素質的技術、技能型人才。

2,2學習情境的設計

在上述課程改革思路的指導下,我們設計開發了“學習情境、能力目標總表”,如表1所示。

3 按照高職教育理念構建教學實施模式

3,1理論教學:任務驅動

改革后的理論教學以任務引領,按照“提出任務;完成任務的思想、方法、操作:邊學邊做完成任務;總結規律和技巧”4個步驟實施教學。

教師在講授某個(些)理論知識點之前,首先提出一個具體的任務要求,讓學生明白需要完成一個什么樣的工作任務。例如:在課程早期講授Servlet請求 和Servlet響應時,如果從理論到理論,不僅難以理解而且枯燥乏味。那么我們不直接從理論入手,而是首先推出一個任務“創建登錄系統”,要求包含一個登錄頁面和一個LoginServlet。其中:登錄頁面接收用戶填寫的用戶名和口令,點擊提交按鈕之后,LoginServlet將用戶名和口令以HTML的方式返回給客戶端(因為不想涉及到數據庫);接著,將要完成的任務演示出來,使學生看得見、摸得著,以此激起他們強烈的興趣。教師可乘機將“Http請求和響應的格式,如何發送請求,如何提交表單數據,如何處理請求,如何生成響應”等教學內容巧妙地融入到這個任務當中,講解實現程序的代碼,演示完成任務的步驟。

為了讓學生真正掌握課程內容并且能夠自己動手,教師必須提出新的要求。做法是:布置一個近似的但又有所不同的任務,比如,在登錄的基礎上添加注冊,這樣,學生必須閱讀和消化代碼,才能夠模仿和創新,通過完成任務達到掌握所學知識的目的。在此過程中,教師要及時收集學生在完成任務過程中出現的典型問題和共性問題,結合理論知識點,在課堂上進行有針對性地講解,給出解決問題的辦法。

最后,要求學生總結規律和技巧,將完成任務過程中遇到的問題及解決辦法寫成實驗報告,督促學生及時總結實戰經驗,實現知識的融合和再學習。

在“任務驅動”教學法中,“任務”的設計是關鍵。一方面,教師必須精心設計出一個個實際任務,將教學內容巧妙地隱含到這個任務當中。另一方面,為了配合項目導向教學法,任務的設計不能脫離項目而獨立存在,而要為完成項目服務。任務實際上是項目這個大要求下的一個個小局部的功能,當學生完成了一定數量的任務之后,那么切入項目的時機就成熟了。

3,2實踐教學:項目貫穿+項目改寫

項目導向教學法,就是教師講解項目的要求和涉及的知識點,學生在教師的引導下,上機實現項目。學生邊學習邊做項目,學習內容與項目內容相一致。請注意,項目導向教學法強調學習進度與項目進度相一致,用項目貫穿整個課程,而不是到了課程的最后才開始做項目。

為了實現項目導向教學法,就要考慮課程內容、課程進度與所要實現項目的相關性。事實上,在絕大多數課程中,很難找到一個完整的能夠貫穿課程始終的項目。為了解決這一難題,可以在課程中及時地引入若干個小項目,讓每個小項目近可能涵蓋前一階段課程所涉及的知識點。這樣一來,整個課程就由若干個小的項目貫穿,既增加了課堂教學的靈活性,又降低了項目實施的難度。

幸運的是,JavaEE項目有自己的特點,Java EE項目可以選擇不同方案來實現,如不同的分層結構,在一層中可以采取不同的技術,還可以選擇不同的方法實現MVC設計模式。每一種方案都有自己的特點以及學習曲線。這些因素帶來的影響在項目進入開發階段后非常顯著,學生在學習中需要適應這些選擇。而正是由于JavaEE項目這一特點,使得采用一個項目貫穿整個課程成為可能。

本課程選擇了“在線商店”作為貫穿始終的項目,該項目采取不同的方案被實現了三次。由于課時的限制,只要求實現“在線商店”前臺的登錄子系統和在線訂貨子系統。登錄子系統包括注冊和登錄:訂貨子系統部分包括瀏覽商品目錄、查看商品詳情、商品搜索、購物車、商品定購。在表1中“載體”一欄顯示了項目在各個學習情境的切入情況。

本課程的實踐教學還有另一個新穎之處,那就是:教師不是直接布置學生做一個項目,而是給定一個原始項目,要求學生按照指定的要求進行改造。例如,在表1中的情境6,交給學生一個采用JSP+JavaBean模式實現的登錄子系統,這是一個典型的JSP應用,只有兩層結構,要求學生采用基于Servlet實現MVC模式進行改造,并用DAO設計模式實現數據訪問層,數據訪問采用連接池技術。在情境7,給定一個采用MVC模式實現的在線訂貨子系統,要求學生以此為基礎運用Struts框架進行改造,實現基本項目的全部功能,鼓勵實現擴展功能。在最后的情境中,用EJB改造現有的購物車功能。原始項目和改造后項目的比較參見表2。

篇(8)

1計算機常用的編程語言

1.1C語言

20世紀七八十年代,C語言被開發,迄今為止這一編程語言在社會各個領域中均有較高的應用,同時在不斷改進中演變成現代性的編程語言,得到了各界人士的青睞與肯定,從某種程度上可以證實C語言存在的意義與不摧的生命活力。C語言在編寫進程中,最大的特征體現在無須計算機硬件或他類功能輔助就可以運行方面上。當然C語言的優點不僅在編輯環節上體現出來,還具有以下幾種優勢:(1)擁有優良的設計語言;(2)參照工作系統運行特征編寫出有效的應用程序;(3)短小精煉;方便、語法簡練、語法要求寬松、數據結構種類多樣、運算符整體、功能靈活強大等特征;(4)因為數據模型是具備字符型、數組型以及構造型等屬性的模型,那么就會使C語言能夠為計算機軟件的研發營造優良的運轉環境,軟件編寫效率大幅度提升;(5)C語言可以直接訪問物理區域,從而確保軟件開發工作運行的動態性,這也是多數軟件商安裝C語言的原因之一。

1.2C++語言

C++語言可以被視為C語言的升級版本,C++語言最大的特征體現在囊括了C語言全部功能與優勢方面上,這也促使目前C++語言在軟件領域中被普及應用。C++語言適用于多變的環境,故此C++語言應用范疇不斷拓展,在操作平臺有廣泛的應用。與C語言相比較,C++語言編寫進程復雜性特征顯著,學習起來具有一定難度,只有在對C++語言支持數據封裝與數據隱藏、支持傳承與多次應用、支持多態性等特征有認識,同時對C++語言工作原理有深刻認識上,才能確保在計算機相關軟件研發的進程中,C++語言的實用價值發揮出來。在對以往實踐數據解析過程中,發現C++語言為他類編程語言學習的入門學科,對C++語言編程要點有全面、嫻熟掌握的基礎上,軟件學習者在學習與掌握他類編程語言應用要點上就更為容易了。

1.3Java語言

Java語言是繼C語言之后出現的,有效地整合了C語言的全部優勢,并填補了C++語言存在的不足,體現出特質性與優越性[]。概括地講,Java語言大體上是以面向對象為主的編程語言。在語法屬性方面上,Java語言與C#語言也存有顯著差異性,Java語言使用package的概念將指針取而代之,導入包采用的是import語句,在Java內還存有特性的概念,以setXXXO、getXXXO為媒介進行設置。但是C#語言應用了指針概念,在unsafe狀況中可以順利地落實指針操作指令,Java語言特點在以下幾方面體現出來:(1)跨平臺性。即軟件可以不受計算機硬件和操作系統的約束而在任意計算機環境下正常運行;(2)面向對象。而通過使用方法來操作這個對象;(3)安全性。具體是在語言級安全性、編譯時安全性、運行時安全性、可執行代碼安全性四方面體現出來;(4)多線程。允許一個應用程序同時存在兩個或兩個以上的線程,用于支持事務并發和多任務處理:(5)簡單易用。用記事本、文本編輯器等編輯軟件來實現,然后將源文件進行編譯,編譯通過后可直接運行,通過調試則可得到想要的結果。

1.4C#語言

C#語言是一類最新的、面向對象的編程語言。它最大的特征體現在能夠協助程序員迅速的編寫多種以Microsoft.NET平臺為基礎的應用程負面上,Microsoft.NET提供了多樣化的工具與服務內容,去協助程序員最大程度地開發利用計算以及通訊領域。也就是因為C#語言具備面向對象的超長規劃能力,初始它轉型為建設多種組件的最佳編程語言——不管面對的是高級的商業對象還是系統級的應用程序。程序員采用簡單的C#語言結構,這些組件就可以開解的轉型為XML網絡服務,從而使它們可以由任何語言在任何操作系統上通過Internet進行調整與應用。

1.5Python是一種面向對象的解釋型計算機程序設計語言

Python具有豐富和強大的庫。它常被昵稱為膠水語言,能夠把用其他語言制作的各種模塊(尤其是C/C++)很輕松地聯結在一起。常見的一種應用情形是,使用Python快速生成程序的原型(有時甚至是程序的最終界面),然后對其中有特別要求的部分,用更合適的語言改寫,比如3D游戲中的圖形渲染模塊,性能要求特別高,就可以用C/C++語言對其進擴展類庫。需要注意的是在您使用擴展類庫時可能需要考慮平臺問題,某些可能不提供跨平臺的實現。綜合以上論述的內容,對C語言、C++語言、Java語言、C#語言以及python這五種常見的編程語言各自特征、優點、應用范疇以及取得的應用成果有更為全面的認識。計算機軟件開發人員應以設計目標為基點,科學的選用編程語言,進而實現提升軟件開發效率的目標,在編程語言的協助下,軟件開發人員工作強度得以降低。

2編程語言在計算機軟件開發中的應用規則

計算機軟件研發的主要目的是在現實生產生活中產生價值。在對計算機軟件開發之前,相關人員為了能夠選用最佳的編程語言,對不同類型編程語言的概念、特征、主要功能、工作原理,以及編程語言具體能夠處理哪些問題等信息有全面性認識是基礎。繼而編程人員就會對一段代碼的內容與編寫的意義進行解析,若遇到難以理解或辨識的情況,程序員會一般就不采用該段代碼或對其進行二次編寫,在此書寫的代碼應帶有通俗易懂的特征,這樣才能為后續人員解析工作的開展與運行提供便利條件。比如在“parm=15”這一代碼中,因為不存在聲明變量的信息,那么程序員怎么判斷該代碼的正確性呢?在編譯器沒有用武之地的情況下,程序員通常是存有顧慮心理執行該語句的,故此他們只能借助解讀后面代碼含義的方式,才可以辨識“parm=15”確切意思。2.1整體結構通常來講,被開發項目整體結構決定了被開發軟件的功能,以及程序員選用哪種編程語言。因為計算機整個系統是由多個部分構成的,這間接的說明系統軟件在開發過程中有很大的可能應用多種編程語言進行編寫。而怎樣在眾多編程語言中將有效語言挑選出來?這是所有程序員需要面對的難題,通常情況下項目屬性與功能決定所用編程語言的類型。但是對于資金投入金額相對較大的操作程序,最好選用一些靜態類型的編程語言,成本較高的操作通常是指圖形渲染、密碼學、視頻以及信號處理等。2.2最好應用自體能夠嫻熟使用的語言如果程序員能夠嫻熟的運用某一編程語言對計算機軟件進行開發,那么就可以節省反復試用不同編程語言的時間,同時相關人員也能夠達到對軟件工程項目時間表精確估算的目標,從而確保軟件開發工作結束的準時性。此外,程序員在嫻熟掌握有關編程語言應用要點的情況下,還可以參照被開發項目運轉需求,對語言進行適度整改與創造。比如,被研發的軟件性能傾向于多次處理手工勞動時,那么程序員就可以參照現實中人工勞動量,選用簡易性、敏捷性的編程語言,最好是選用那些自體就帶有相應功能的編程語言進行操作。2.3充分考慮硬件環境眾所周知,硬件環境是計算機軟件開發目標順利實現的前提條件,也就是說任何類型軟件的開發均要有適宜的硬件環境去輔助,故此在應用編程語言對軟件開發進程中應充分解析外部硬件環境。一般情況下,編程語言能夠在當下版本的硬件環境下運行,但是在科學技術不斷進步的時代中,硬件設備更新不斷提速,那么過去適用的編程語言有很大可能不能滿足當下軟件發展需求了,從而使不匹配的問題衍生出來。故此,為了使軟件開發的質量有所保障,在對有關程序進行設計之前應準確選擇適應硬件環境運行的最佳編程語言,只有這樣才能夠使編寫出的語句長時間、安穩的運轉。此外,只有結合硬件設備環境特征選用編程語言對被開發軟件程序進行編寫,在對所得軟件性能進行調整環節中才不會存在較大難度。由此可見,迅速對軟件系統進行復原是極為必要的,動態編程語言的應用,能夠使上述目標順利達成,具體是借助和數個庫相整合的方式。2.4語言的選擇要考慮是否支持平臺在選用編程語言對軟件編寫過程中,支持平臺也是不可忽視的重要因素之一。比如說在瀏覽器內運轉的程序語言,參照語言的適用性就可以有針對性的選用某些語言。支持平臺可以被視為一個大型環境,全部操作行為均要緊扣平臺運行模式。某些程序在研發的過程中,在程序語言格式這一因素的作用下,需產生大批量的位操作,那么在這樣的形勢下,程序員要分析這些位操作對軟件開發進度與質量造成的影響效果,是否可以省略某些操作內容,若一定要進行這些位操作,那么就應該對編程語言類型進行科學選擇,最好是位操作相對簡單,以及能夠供應合適數據的語言同時,此外,在一些特殊情況下,程序員應采用專業化的在的編程語言,節省時間的同時,也有效規避編程中較大的偏差。

3結束語

綜合全文論述的內容,對C語言、C++語言、Java語言、C#語言以及Python五種常見計算機編程語言特征與適用范疇有更為全面的認識,同時也掌握了幾種編程語言在計算機軟件開發中的應用規則。總之,編程語言對軟件的開發質量產生直接的影響,軟件開發的項目與硬件環境又作用于程序語言。故此,選擇最適編程語言是極為必要的,程序員在實踐中應不斷學習與總結經驗,實現提升軟件開發效率的目標。

參考文獻

[1]王志剛,柴功昊.智能住宅計算機應用軟件開發研究[J].科技視界,2015(05):153-154.

[2]李開元.探究計算機應用軟件開發過程中不同編程語言的影響[J].信息化建設,2015(06):48.

[3]張彤.計算機應用軟件開發中編程語言的選擇研究[J].電子技術與軟件工程,2015(21):57.

[4]康超.基于計算機軟件開發的JAVA編程語言探討[J].科技展望,2016,26(04):11.

[5]惲健.基于計算機應用軟件開發的Java編程語言探究[J].電腦編程技巧與維護,2016(16):26-27.

篇(9)

1.準備充分,我這次找工作準備的特別不充分,可以說在第一次面試的時候都沒正真意義的準備過什么,在第一周的時候基本都是打醬油,所以準備是必須的,我總結了大概有幾點需要的。常見的面試題目,自己所做的項目情況,自我介紹,職業規劃,離職原因。我覺得這些東西一定要用一點時間做下梳理,不然面試的情況會像我開始一樣很糟糕,浪費時間也浪費一些很好的機會,我覺得應該在你想跳槽的半個月之前就要準備了,這樣可以節約一個星期的時間。

2.基礎知識的積累,我是.NET的方向的,所以主要說.NET方向,面試無非四大塊:C#,數數據庫,JS(Jquery),數據結構和算法。先說數據庫,分頁SQL和一些查詢SQL,再就是大數據量查詢的優化這基本是每個面試官都會問的,JS方面因為我不是主做前端開發,面試一般都是些DOM對象的操作和AJAX,C#的主要是一些基礎知識這里就不一一舉例各種面試題目,自己多做做。最難得就是面試數據結構和算法了,這也是很多程序員薄弱的地方,一般問這方面的問題的面試官都很牛逼,問這種問題的公司一般開的待遇會高很多,個人覺得問了這方面的問題的公司對程序員的綜合素質要求很高。數據結構和算法這個只能靠平時工作之余多看書,多學習了。程序員這條路,學無止境。

3.項目的描述,這個是每個面試官都會問的問題,面試官最愿意聽的是你的項目亮點,用到了哪些技術來解決問題。最好的做法是把你的項目的大體的框架畫出來給面試官看,這樣才能直觀的給面試官一種你確實是做過了這個項目。你要非常流暢的給面試官講解,有的面試官會讓你拿筆在白板上做講解,這個可以在家里面多做幾次模擬。我覺得我在這方面是強項,幾個讓我畫圖講解項目的公司都給我發出了入職通知。

4.職業規劃,這個一般是在總監級別的面試官會問到,我覺得程序員在工作到3到5年的時候都應該考慮這個問題,是走項目管理還是技術到底。這個就看自己的人生規劃了,我個人覺得工作不到5年的同學還是老老實實,踏踏實實的做好技術,靠這個吃飯,什么都別多想,技術才是你生存的根本。

5.待遇的談判,任何事情都是有回旋的余地的,所有的公司都想用最低廉的價格找最優秀的員工,不要主動說自己的期望待遇,誰先說誰就會被動,你可以嘗試的問貴公司這個職位大概能開出的待遇是多少?一般的人力都會給你一個范圍,然后你根據實際情況來做出決定,一般在這個基礎+2K的范圍,比如人力MM對你說這個職位在8K左右,你可以開10K的待遇,反正這一塊是非常有技巧的,我覺得的待遇只要和你跳槽的時候期望的差不多其實就行了。

篇(10)

【1兩個平行世界】產品經理為什么要懂技術?

你得明白,人跟人的差距,比人跟豬的差距還大。兩種不同的職業,看問題的方式那真的是天差地別。

(1)程序員的世界

程序員的世界既簡單又復雜,在他們的眼里,世界的元素基本是固定的:

If和Else構建了世界

For和While是成果的復制

True和False是世界僅有的兩種狀態

Exception(異常)表示程序的世界不和諧因素

Function(函數)讓我們專注解決問題

Class(類)抽象世界為對象

程序員們的思維基本如上,他們往往冷靜、機智、思維敏捷,但往往也帶來副產品,如自負(多少有一點)、較真(程序員往往不怕加班,但是痛恨多次返工、白干)、好面子(不要輕易評價程序員們的工作)。

(2)產品經理的世界

產品經理的世界,不是一個純粹理性的世界。這個世界不只有黑和白,在黑和白中間還有無數的灰色空間。

產品經理為什么要懂技術?

產品經理的主要工作就是尋找、抓住用戶需求,然后通過一定的手段做出產品滿足用戶需求。而需求是難以用黑白、對錯兩種狀態來表述的。我覺得,這就是程序員的世界和產品經理的世界最根本的差異了。

一句話概括:程序員相信世界是數學構建的,0和1能夠創造一切;產品經理相信世界不是純粹理性的,人不是純粹理性的,黑與白之間廣闊的灰度空間是難以用數字表述的。

【2平行世界的統一】產品經理為什么要懂技術?

世界不是唯一的,但多個世界也不是完全孤立的,兩個平行世界在某個維度下也會有交集。

(1)讓需求落地,可能更加困難

產品經理的工作內容之一,就是找到不同世界的交集,然后將兩個世界最強的點融合起來,聚合后發揮出巨大的能量。

產品經理想到、搜集到某個需求是一件很難的事,但是在找到需求后,如何讓需求落地,可能是一件更加困難的事。統一產品經理和程序員的世界,是其中一個非常重要的步驟。

(2)如何做到統一世界呢?

第一步,產品經理要懂程序員的世界,不懂怎么做到統一?最好你就從那個純粹理性的世界來,你自己在程序的世界生存過,你會明白程序員們思考問題的邏輯,你會很容易做到換位思考(換位思考時常被提起,但只有你做過對方的工作,你才能真正做到換位思考)。

第二步,產品經理要明白世界不只是0和1,至少目前不是(天網沒有滅絕人類之前)。世界永遠有很多東西是無法被解釋的,不要抓狂,容忍不完美,在缺陷中才能找到需求和秘密,那是我們創造、改進用戶體驗的源頭。

第三步,產品經理要做好溝通,說服程序員們用他們的黑和白,來做出你想要的多彩世界。溝通,是連接兩個世界的繩索。每一次愉快的溝通,都會在兩個世界之間連接上一段繩索,當繩索數量達到一定程度后,兩個世界也就不分你我了。多鼓勵,少貶低,在需求實現過程中多關注程序員的工作。

【3必知必會的技術術語(干貨)】產品經理為什么要懂技術?

產品經理通過溝通來聯系程序員和產品經理的世界。有效溝通的前提是你們有共同話題,他說的術語你能懂,他說的方案你能夠參與討論,并且說出專業的見解,這容易讓程序員們產生共鳴,感覺你和他是同一種生物。做好了有效溝通,那么以后的工作的推進難度,起碼降低80%。

下面分享一下我在跟項目期間,總結的出現頻次比較多的技術術語,懂了他們,你跟程序員溝通需求時、閑聊扯蛋時,就不會覺得自己在聽相聲了。

1主流操作系統:Windwos(xp、7、8、10),Linux(服務器比較多),UNIX(服務器比較多),OS X(蘋果出的操作系統)。

2 MAC地址:計算機的物理地址、硬件地址,它是生產廠商燒錄好的,一般不能改動。

3 IP地址:用來給Internet上的電腦一個編號,方便別人找到你,容易更改。

4 HTTP:超文本傳輸協議,瀏覽器通過它,將Web服務器上站點的網頁代碼提取出來,并翻譯成漂亮的網頁。

5 FTP:成兩臺計算機之間的拷貝,從遠程計算機拷貝文件至自己的計算機上。

6接口:顧名思義,就是兩個程序之間,通過一個通道傳輸一些信息。

7帶寬和寬帶:帶寬指的是你的上網時由于設備限制所能達到的最高數據流量理論值,而寬帶則是一種寬泛的概念,即帶寬達到512k以上的所有上網環境。

8數據結構和算法:數據結構指數據在計算機中存儲存在的方式,算法就是計算機處理解決問題的計算機能理解的方法。

9 TCP/IP:要使計算機連成的網絡能夠互通信息,需要有一組共同遵守的網絡協議,不同的計算機之間必須使用相同的網絡協議才能進行通信,在Internet中TCP/IP協議是使用最為廣泛的通訊協議。

篇(11)

深入研究型

這一類人的共性就是酷愛鉆研技術,通常能持之以恒地研究一門技術,以達到比較高的造詣。筆者幾年前的一個同學,他那時侯就一直學習SAP的技術平臺,到了工作單位,不計投入,一直潛心研究SAP的技術架構,近年來風起云涌的Java和.net等技術的火熱也絲毫沒有讓他轉移方向。現在他已經身為SAP上海公司的系統架構師。拿著一份讓中產階級都羨慕的穩定薪水,他選擇了一個不錯的出路。

通常這類人都很執著,能刻苦深入地鉆研一項技術,直到找到一個很好的位置,最終讓自己的執著產生相應的價值。

綜合發展型

這一類人無論在什么行業都很不顯眼,他們大都集中在中層的管理崗位。經過在底層的多年打拼,逐漸積累了豐富的技術經驗和項目經驗,并具備了一定的管理協調能力。這類人走的是與深入研究型不同的道路,他們從寬度著手,讓自己全面、綜合發展。只要有恒心,并抓住機會,這類人大部分都會得到公司的部門經理或項目經理等職位。

創業進取型

筆者的前任部門經理,是一個很不甘于現狀的人。他曾在Oracle做過部門經理,按理說,大型外企的中層已經是一個令很多人羨慕的位置了。他可能看到自己在這樣的外企里難有上升空間,于是,毅然決定創業,利用他對行業的深入了解、極廣的人脈和良好的客戶關系資源,創辦了一家咨詢公司。現在公司已經小有名氣。

這類人的特點是不甘于現狀,眼光很長遠,很適合創業。他們善于在工作中研究市場,著重培養自己的人脈以及客戶圈,而這些都是未來創業的重要條件。

轉換行業型

有些IT人員在積累多年的技術項目的經驗后,會告別高薪水、高壓力的工作和生活,轉而追求一種相對自由的狀態,比如回歸學校傳授經驗及技術。有人說,賺多少錢不重要,重要的是生活質量和幸福度是否足夠高。筆者當初的很多老師,就是曾經在企業工作、有豐富經驗的IT人員,他們在職場打拼多年之后,選擇了回歸校園教書傳道、授業解惑。

還有的人會根據自己的項目經驗和技術特點,轉到傳統行業做一名IT部門的主管,或公務員。換行業也是不錯的選擇,知識業務交叉的復合型人才,也是各個企業都歡迎的緊俏人才。

主站蜘蛛池模板: 咸阳市| 边坝县| 肇庆市| 罗山县| 株洲县| 安义县| 杭锦后旗| 瑞金市| 东兰县| 桐柏县| 孟连| 客服| 绵竹市| 临泽县| 凯里市| 台湾省| 托克逊县| 新兴县| 达孜县| 神农架林区| 宣化县| 江西省| 黄浦区| 内乡县| 吉林省| 兴仁县| 罗源县| 金乡县| 巴中市| 马鞍山市| 平舆县| 新邵县| 如东县| 稷山县| 咸丰县| 长寿区| 新巴尔虎左旗| 平谷区| 长治县| 高尔夫| 镇远县|