代碼複用)

來源:互聯網
上載者:User

以下觀點只是純粹站在技術角度,先不討論商業上的,若是考慮到商業利益等,
那問題就複雜了,實際環境會比我們想象得複雜很多,但是連想象都不過關,
實際操作起來會更鬧心一些。

軟體的優點就是複用,其實複用在另一方面也體現了,要尊重自己的勞動成果
別人的勞動成果也要值錢,我們國家人多,人不值錢吧,勞動成果更不值錢,
也沒多少這方面的意識,我們做好一個,丟一個,新來新弄。

公司的文檔也是到處丟來丟去,好好分類保管在伺服器上的估計也很少,雖然
正規的公司都有公文檔案管理等,但是沒怎麼影響我們個人的價值觀,或者大
多數IT公司的價值觀,或者就我沒重視這些。

【利於程式員的個人積累】
一般為人比較好,擅長交流的程式員,一般會有一些小客戶,那些小客戶為了
開發一些小軟體,經常也會希望能做這個功能,那個功能,對程式員來說,不
是不能做,但是啥功能都自己做吧,也很累,螞蟻雖小五髒俱全,什麼都自己
開發吧,不是不可以,就是累,而且這些東西沒有啥大不了的,從頭開發到尾
巴,最後都整理好,估計也要2-3年吧。

若有一個比較好用的輕量級的架構,學習1周,然後按自己的需要填充幾下,
就可以搞定客戶的一些需求了,客戶有錢了,以後繼續開發新模組新功能,
你的軟體也有足夠的擴充空間,而且少折騰,生活品質也提高了,效益也高了,
有個模仿的好東西吧,提高也快。

普通程式員,有時也想提高一下,東學西學,東搞搞西搞搞,很難有突破,若
你公司沒有很大的技術人員,你稍微學習提高一下,很容易被領導看中,甚至
會被提拔,加薪是必然的,這個架構要一個個慢慢學習,那太耗費時間了,沒
必要每個人都走一次個這個漫長的路。

就算你是個高手,在公司幹了好幾年,公司的架構,已經改來改去很龐大了,
維護的人也多,你想抽取出來一個簡單輕易的架構,也不是開玩笑的,這裡弄
哪裡錯,哪裡弄這裡錯,等你抽取出來,也花了很多時間了,就當你是高手,
你也希望,省事一些,再說了拿公司的東西,心裡總也過不去一樣,好像偷了
個啥一樣。

若你是IT軟體無關的公司裡工作,工作上也需要做一些快速開發的小模組,可
以結合自己的日常管理工作,用電腦管理了,你的競爭力是比別人都強大,而
且由於你的日常工作,是靠你自己的程式處理的,有條有理,效率也高,也會
得到領導的賞識,甚至你可以推薦給你的同事用用看,是否好用。若你不是專
業的IT人員,也沒精力學習太深入的軟體知識,有個簡單的架構供學習模仿,
那是很省事,你也不用過度深入學習,因為你的主營業務並不是靠寫軟體。

成熟的IT公司招聘新員工時,首先是考慮是由於你擅長某個行業,及這個行業
裡都做過哪些業務部分,其次才是看你的技術,你擅長什麼技術等,若你常年
積累的東西,都很規範,很有條理性,到了新公司,你的工作也輕鬆愉快,很
多東西可以快速搞定,也沒必要又從零開始折騰。

【系統與系統之間的共用】
其實我們經常是前後開發了N個應用系統後才發現,其實裡面有很多是很類似的,
這部分完全可以通用,甚至開發一套後可以重複利用。對個人如此,對公司也
是一樣的。若這些重複疊加的部分的穩定性越高,品質越高,投入的成本越有
控制,那也能適當提高公司的生產效率,雖然話說說很簡單,但是做起來的確
沒那麼容易,但是總得朝這個方向前進,因為這麼搞絕對是正確的路線。

【利於小公司的積累】
老闆是技術型的小公司,能發展起來的很少,一般是靠業務型的老闆才更會有
生存空間,小池塘也養不了大鯊魚,更何況這也是水土不服,也沒足夠的空間。
更何況大鯊魚吃得也多。
小公司人來人往,一年換一波人,這樣很難積累下來穩定成熟的小產品、成果
物等,若一開始就注意一個有效積累,前人做出來的東西能留下來沉澱,後
人接手也比較順利一些,設計思路都一致,好接著完善維護。
這幾年流行外包,其實小公司的支援人員也可以進行外包,有疑難問題,架構
等找個兼職的架構師諮詢一下,若沒啥問題,也不用過去折騰,其實也沒必要
非要僱傭一個資深架構師,浪費人才。
招聘一個大牛,搞個幾個月,幾萬元也燒進去了,或者幹了3個月,弄了個半成
品感覺沒有發展空間,人家拍拍屁股走人了也有可能的。

【利於公司與公司之間整合】
例如我們公司是上市IT公司經常會承接一些規模比較大的軟體開發訂單,但是
自己又無法擅長開發全部應用,經常會外包一部分非核心業務給其他單位進行
開發,但是整合這些應用時,又會發生很多問題,導致外包的單位無法及時拿
到貨款,若我們採用了統一的思想去開發的功能模組,子系統,那我們的軟體
整合也會變得更順利一些,也容易收到相應的款項。

市場上比較通用的軟體,互相整合起來,也很難,開發外圍小應用也很費勁,
若大家都採用同樣的系統架構及設計思想,那這些應用想有機的集合在一起,
也是相對容易的。

目前硬體的整合技術已經很成熟了,因為這些東西看得見摸得著,也有國際標
准,相對而言,軟體的整合是離理想狀態差距甚遠,我想不久的將來,會有一
個業務會比較吃得開,那就是軟體整合,甚至會出現一些公司,專門是做軟體
整合的,可能不是以開發某個應用為主營業務的,這個業務的收費也應該是相
當昂貴的。他們的主營業務就是分析行業軟體,然後可以將這些軟體於其他類
似財務軟體等都進行整合。

【公司與個人的衝突】
公司不用怕個人會搶走你的生意,一個個人都能打敗一個公司了,除非這個人
的綜合能力超級強大,否則一般公司是不願找個人合作的,都希望找公司合作,
因為個人的不確定性因素比公司大太多了,人失蹤了都有可能的。

公司一般是開展某一類型的業務,相對有專業性、有知名度、行業性質。除非
個人成了大家公認專家,別人才會相信,總的來講不必過分擔心這個。

就像我們公司的代碼,都是存在公司職員的膝上型電腦裡,還有就是公司的服
務器上,雖然離職時都需要把代碼刪除掉,但是這些代碼,個人是根本沒有能
力全部維護好,順利的跑起來,因為有那麼多行業的業務知識也在裡面,人也
不是神,他頂多對他負責的那部分有經驗,瞭解內幕而已,一個大規模的軟體,
還是需要一個團隊才能持續維護起來。

我有時會想,若電腦是中國人發明的,會是啥樣子?以中國人的思想,會搞出
啥神奇的東西來?

以我做管理類軟體的經驗,老外的分工是:
1. 作業系統
2. 資料庫
3. 開發語言,設計器
4. 團隊開發版本控制
5. 第三方控制項
6. 報表分析控制項

若電腦是我們發明的,會不會有個神奇的系統,這些全部搞定了。
幾年前參與日本外包項目,是分設計階段、開發階段,分2個公司去弄,國內
很少有這麼分工配合的,說白了,我們從小就沒有合作精神,倒是很有山寨精
神,模仿、仿造能力特彆強,不服不行。

不知道我以上想法是否正確,若不正確,請指點批評,思維可能有些擴散、
主題思想有些紊亂。接下來我會從技術角度去考慮 系統運行效能、資料並
發控制、開發效率 的方面的考量。

將許可權管理、工作流程管理做到我能力的極致,一個人只能做好那麼很少的幾件事情。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.