在之前寫代碼只是單純的寫代碼,只知道簡單的完成功能,並不知道除了代碼的其他方面,也沒有了解學習軟件工程。
現在了解到軟件工程后,開拓了自己思路和知識面。
一個完整的軟件的誕生不單單只是寫代碼,也不僅靠程序員。
個人技術固然很重要,但放在整個軟件工程中也顯得微不足道。
在軟件工程中,軟件團隊是一個很重要的部分。團隊也分為非團隊和團隊。具體的團隊模式有:
一窩蜂模式、主治醫師模式、明星模式、社區模式、業余劇團模式、秘密團隊、特工團隊、交響樂團模式、爵士樂模式、
官僚模式、功能團隊模式。
一個軟件的誕生最先的就是需求分析,只有先把需求分析完成好后程序員才能去根據需求分析設計和實現代碼。在軟件的完成后則需要對其進行測試,對軟件的質量有所保證,軟件穩定之后才能發布。好的團隊,一個優秀的PM(項目經理)也必不可少,PM需要可以做開發和測試之外的所有事情,但也需要一定的專業能力,PM在一個團隊的作用更相當於是一個管家,是一個舵手,管理着整個團隊,也掌控者團隊的發展方向。
一個程序員成為一個優秀的軟件工程師更是需要巨大的時間和精力。當然程序員的發展方向也是有多個方面
1、 走向管理:有兩種原因會使部分程序員走上管理的道路,一是與生俱來的對 權力的欲望;一是在程序員的崗位上對自我價值重新認知。對於前者如果欲望過去強烈就會急功進利,很容易走捷徑,會出現不能服眾的情況。對於后者自我價值的重新認知是一個緩慢的過程,一個程序員在長期的開發過程中會慢慢發現一個人的力量是有限的,做一件事情必須要借助其他人的幫助,如果需要別人的幫助就必須能影響他人。從而認識到一個人的價值對公司來說幾乎是不值一文,如果想讓自己的價值得到提升必須要影響到他人,借助他人的力量使自己的價值得到最大提升。
2、走向行業:即成為某個行業的行業專家。一般來說走這個方面需要機遇,需 要長時間的從事某一個領域的開發與管理工作,對某個行業無論是大局還是細節都了如指掌。
3、走向專業:即成為架構師。一般來說這些人對開發有狂熱的興趣,逐漸的從代碼的編寫中認識到設計與軟件架構的重要性,並對軟件設計樂此不疲。
4、自已干:這些人是野心家,也是風險最大的一條路。好多程序員都認為軟件開發不需要什么成本,只要能接到單子完全可以自己干,自己當老板。然而很少了解只有長期持續的訂單才是一個企業不斷穩定發展的最重要因素。
在了解軟件工程這些知識后,我對自身和發展也有了更多的想法。