自從加入本公司以來,參與開發的都是企業內部專案,說不上有什麼技術含量,如果說還算有點技術的話就是開源框架到其它公司還能用得上,剩下的全是企業內部的業務邏輯,基本上出去了就是完全沒有意義的。我是11年3月底加入當前這個團隊的,到現在也已經是兩年多的時間了。最近正巧專案開發告一段落,處於比較空閒的狀態。參看其它同行的部落格比較多,想想自己也真的需要好好回頭看看,反思一下了。已到而立之年,原來沒有認真思考的職業生涯問題,最近終於提到自己的日程中。
其實現在的公司對於個人日常的管理,相對比較自由。以前沒有考慮過在這樣一種型別的公司裡做開發,自己到底可以在哪些方面有針對性鍛鍊到自己?以前沒有想過,想不到也不做不到。思維的高度決定人生的高度。今天午飯後想了一下,其實雖然沒有處於高併發的web開發環境中,不過還是可以在以下幾方面加強自己的實力:
1,物件導向分析與設計沒有做到結構化程式開發,沒有比較,或許沒有更深的體會。讀重構一書時,讓我反思自己日常開發乙個模組功能時,早就把學過的面對物件程式設計的理論拋到九霄雲外了。物件導向的核心要點是將資料與運算元據的行為封裝在乙個類中。而我寫**時,乙個功能模組的**基本上放在乙個很大的類中,每個方法都很長。完全採用的過程化的程式設計思維做開發。已經上線的專案,要經過重構一點點的修改,已經很困難。
2,站在全域性的角度來看待自己乙個功能模組的開發。作為基層開發人員,雖然也參與過客戶需求分析,但是開發中並沒有始終把自己擺在全域性的高度思考開發中遇到的問題,結果為開發而開發的思考,無謂的浪費腦細胞,甚至做一些無用功(白做的**開發)。為**而寫**,把自己陷入白白浪費時間的愚蠢者的行列。
3,養成良好的測試(驅動開發?)習慣。以前功能開發完了,經過自己簡單操作,未嚴格編寫單元測試、整合測試**就直接提交了。然後測試人員就提出很多問題,後來自己反思,很是說明自己的工作態度不夠認真,未對**質量嚴格把關就提交給別人測試,實在是不夠負責任。想到要反思的原因,應該是內功不夠,基本功不紮實,邏輯思維不夠嚴密,不夠嚴謹。解決的辦法大體上是,寫完的**必須進行單元測試整合測試。要加強邏輯思維嚴謹的能力,必須加強演算法與資料結構的學習(程式設計基本功),數學的學習(嚴謹思維)。此為軟體可靠性之必備保障。
4,培養隨時隨地進行重構的習慣。最初寫就的**首先是要實現了需求的功能。隨著專案需求的變化,就要對最初的**進行修改和擴充套件。但是最初的**在可讀性、可維護性和可擴充套件性沒有進行考慮,通常都比較差。重構的好處就是在這個方面進行完善。最終經過重構的**,在離開最初的開發團隊交到另乙個團隊手中時,容易閱讀,容易修改,很容易的支援新功能的擴充套件。
5,設計模式的學習積累。其實重構時就已經使用設計模式了。前人經過無數專案,總結出了應對不同情況的設計模式。合理的使用設計模式,是為可維護性和可擴充套件性保駕護航。 讀過一遍深入淺出設計模式(head first),後來在專案開發中未經過應用試驗,幾乎忘記了。現在是時候再繼續研究一下了。
6,無論以後工作再忙,也要養成堅持反思總結的習慣。在乙份工作上經歷兩年時間,技術上並沒有感覺到有多少長進。這是最值得反思的地方。做的專案再多,如果不時常總結,也不會有多少進步。經過最近不斷反省,越來越感覺到制定職業規劃迫在眉睫刻不容緩。人說在乙個開發崗位上做上三年,就應該在職業方向上點評一下自己,然後針對當前工作環境或目標適時做出調整。是時候做出職業規劃了。
一周以來的工作總結
這周客戶的問題非常多,總是說我的資料不對。於是我對資料梳理了以後發現以前認為是重複資料的,其實並不是,而是我忽略了乙個維度。那麼這樣一來,我們的周詳單錶就會有500多萬的資料。乙個月按照4周計算,就要有2000萬條資料。而我大概計算了一下,每乙個周的分割槽要占用2g多的儲存空間,要知道電信給我們的空...
一周以來的工作總結
這周客戶的問題非常多,總是說我的資料不對。於是我對資料梳理了以後發現以前認為是重複資料的,其實並不是,而是我忽略了乙個維度。那麼這樣一來,我們的周詳單錶就會有500多萬的資料。乙個月按照4周計算,就要有2000萬條資料。而我大概計算了一下,每乙個周的分割槽要占用2g多的儲存空間,要知道電信給我們的空...
H公司工作總結(1)
總結 離開上一家公司的時候還只有28歲,個人覺得那個年齡是能做出最佳選擇的最好時候,已經有了一定的經驗,而衝勁兒未泯 而公司也最願意接受這樣的員工。當時我的技術上的領導出去創業,而自己在他離開後的半年基本算是撐起了半個部門,理所應當的以為最終自己會得到提公升和補償,但是最終還是被空降的奇兵驚了一跳。...