1. 程式人生 > >如何評估個人的軟件開發能力

如何評估個人的軟件開發能力

c# arch 線程 說明 用戶信息 內存 .com 提高 編譯

如何評估個人的軟件開發能力

基礎:

1.讀程序的能力

很多的軟件開發工作不一定會從頭開始,這就需要開發人員有良好的閱讀程序的能力,能在盡可能短的時間裏了解軟件整體的架構,理解該軟件初始的開發思想,能迅速並有效地參與到項目開發中去。

2.編碼能力

這點會涉及到開發人員對所用語言的熟練程度,和該開發人員的編程風格。是否擁有良好的編程習慣,能遵循通用的編程規範,並作好註釋,對該開發人員所開發代碼的易讀性和易維護性有很大的影響。

3.調試和測試能力

現代的軟件行業中,代碼的調試和測試時間並不比編碼時間短,甚至會超出,當然,很多的調試和測試工作並不都是編碼人員完成,但測試工作是很多軟件開發人員的必經之路。

4.軟件的維護

似乎維護談不上需要什麽能力,因為這時更多需要的是開發人員的耐心。

進階能力

1.需求分析的能力

一個項目,最初就需要做需求分析,了解該項目的目的,對系統的需求,對功能的要求,並對其進行分析,作好項目規劃和說明

2.建立軟件框架的能力

建立一個良好的軟件框架是這個項目成功的一個保證,需要考慮整個軟件的一致性和完整性。

3.貫穿項目始終的管理控制能力

在項目開發過程中,不可避免會出現新需求的加入,目標的修正,或者人員的變動等問題,對此進行有效的管理控制是對開發人員的更高要求。

軟件工程師軟件設計師架構設計師或項目管理師

A.基礎理論知識,如

操作系統、編譯原理、數據結構算法、計算機原理等,它們並非不重要。如不想成為計算機科學家的話,可以采取"用到的時候再來學"的原則。

B.一門編程語言,現在基本上都是面向對象的語言,Java/C++/C#等等。如果做WEB開發的話還要學習HTML/JavaScript等等。

C.一種方法學或者說思想,現在基本都是面向對象思想(OOA/OOD/設計模式)。由此而衍生的基於組件開發CBD/面向方面編程AOP等等。

D.一種關系型數據庫Oracle/SqlServer/DB2/MySQL等等

E.一種提高生產率的IDE集成開發環境JBuilder/Eclipse/VS.NET等。

F

.一種UML建模工具,用ROSE/VISIO/鋼筆進行建模。

G.一種軟件過程,RUP/XP/CMM等等,通過軟件過程來組織軟件開發的眾多活動,使開發流程專業化規範化。當然還有其他的一些軟件工程知識。

H.項目管理、體系結構、框架知識。

開發一款 Windows 軟件一般會用到的編程工具和知識

1、最基本的語言、算法、數據結構。例如: C++ STL
2、界面API庫,例如:MFCATL
3網絡編程知識:TCP/IP協議Socket編程等
以上可以弄個湊合版的局域網聊天工具,進階的還要:
4操作系統知識:多線程、多進程、內存管理、各種I/O等,優化服務器性能。 5、數據庫:儲存和管理海量用戶信息

6、安全方面:傳輸數據要加密,服務器端要防黑客攻擊、客戶端防逆向工程反外掛防病毒等。

取自他人,激勵自己。

如何評估個人的軟件開發能力