都當上老鳥了,總不可能只做寫程式的工作吧,上面交代的也許會是規劃新系統的任務,這時老鳥在經驗上的優勢就很容易表現出來了,尤其是思考系統架構的深度。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (26) - 老鳥階段-寫文件的藝術。
老鳥階段指的是工作五年以上的資訊人,五年說短不短,相信除了程式設計功力已經升上高手之列外,也累積了不少心得和技術的概念吧 (例如物件導向),到了老鳥階段,除了要再繼續精進功力外,適當的把心得和成果對外分享,也算是做功德吧。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (25) - 中鳥階段-學習用筆表達:寫文章
這是中鳥階段的最後一篇了,來講講寫文章的部份吧。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (24) - 中鳥階段-養成資訊安全的良好習慣
資訊安全雖然產業界喊了很久了,網路上也有很多安全防護的資訊,但是為什麼還是有一堆常見的漏洞被發現?那就不是缺乏知識,而是個人習慣問題。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (23) - 中鳥階段-學習程式以外的IT知識。
雖然我們身處寫程式的工作,然而 IT 產業不是只有寫程式這件事而已,往不同的方向涉獵,不但可以增長見聞,還可以在無形之間強化寫程式的思考範疇,也可以讓自己有更多能力去處理各種事情。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (22) - 中鳥階段-練習思考大型應用的組織。
在菜鳥階段學習程式時,一般都是一個小小的專案或功能需求,著重的是在怎麼操作程式語言以及簡單的邏輯判斷等,以達成基本的功能需求。但到了中鳥階段,就應該要試著將範圍擴大到整個系統層次,或是專案系統之間的關聯性,放大整個設計的 view。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (21) - 中鳥階段-少挖洞給自己跳。
在能力日漸茁壯的時候,主管有可能會交代比以往更多或更難的任務給自己,雖然做完事很重要,但把它做好更重要,尤其是小心不要先挖好洞後卻自己跳下去...
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (20) - 中鳥階段-高內聚,低耦合。
一定會有人覺得奇怪,為什麼到今天還在講物件導向,因為筆者認為物件導向是心法,觀念對了,寫出來的程式才會有一定的水準,而這套心法有很多東西可以講,不過筆者只會講中鳥階段應該要學會或養成的良好習慣。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (19) - 中鳥階段-少一點流程寫法,多一點物件寫法。
今天討論的還是在物件導向的範疇內,因為物件導向的寫法和傳統的有些不同,思維更是不同。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (18) - 中鳥階段-學習物件導向的精神。
今天要談的是物件導向的幾個基本性質以及衍生出來的特性。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (17) - 中鳥階段-程式碼組織的重要性。
程式碼的組織是每個程式師都要學會的事,在中鳥階段除了要寫出程式外,寫出好程式才是中鳥階段最需要練會的技能,而良好的程式碼組織,正是看出是否為好程式的重點之一。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (16) - 中鳥階段-需求是挖出來的。
當到了中鳥階段,表示已經工作了至少一年以上,對程式開發的工作有了最起碼的經驗,當然大多數都是 Coding 比較多,但是從中鳥階段開始,要接觸的可能就不只是 Coding,其中一項就是和使用者談需求。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (15) - 菜鳥階段-測試很重要。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (15) - 菜鳥階段-測試很重要。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (14) - 菜鳥階段-學會指標的概念
雖然會有人說這東西不是在學校就學過了嗎?只是,有些現代程式語言內都隱含了它的概念,但卻有很多人無法意會,只因為指標作業被系統本身做掉了。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (13) - 菜鳥階段-由你控制程式,而不是由程式控制你。
本文要討論大家最常做的 Copy/Paste 這件事,為了要增加寫程式的效率,有時候我們會直接自現有的程式碼中直接取出需要的部份,然後移到需要的地方,不過這種夜路走多了總會碰到鬼...
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (12) - 菜鳥階段-要做工人還是設計師?
在程式開發領域,工人和設計師相差其實不像其他產業那麼大,但大家都一樣寫程式,為什麼總是有人要人家指揮才要做,而有些人卻是不需交代太多就可以把程式寫的比你想像中還好?這就是工人和設計師的差別。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (11) - 菜鳥階段-學校學的東西還是有用的。
雖然實務界有很多先進說:學校學的那套在業界根本用不到。不過,這得要看產業,以台灣科技業來說,其實用到的機會還是很高的,寫程式也不例外,還是會有不少東西可以由學校的課程來先修的。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (10) - 菜鳥階段-程式是用寫的,不是用看的。
不管是看書或是看前人的程式碼,別光是只有看,動點手寫下去,就算是模仿也好,一定會讓自己的寫碼能力進步,練的愈多,進步愈多。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (9) - 菜鳥階段-善用範例程式,但避免成為文抄公。
我想大家都不反對,在剛開始學習寫程式的時候,最依賴的兩樣的東西,就是書 (book) 和範例程式 (sample code),範例程式在學習程式的道路上一定是不可或缺的重要工具,它帶給你觀念與方法,讓你可以用相同的模式來做到相同的功能,古人云:依樣畫葫蘆,就是這樣的方法。只是,如果只是知其然而不知其所以然,反而會是一種自傷的行為。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (8) - 菜鳥階段-程式工人,萬丈高樓平地起
自本篇開始,會有連續九篇文章分享在菜鳥階段的程式師需要注意或準備的一些地方,首先就先以打底這件事來開始吧。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (7) - 學生階段-程式開發之職涯地圖
這是學生階段的最後一篇了,筆者就來談一下軟體開發的各階段發展的方向,也就是未來會從事什麼樣的職務,以及它所需要的能力大概有哪些。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (6) - 學生階段-真的需要研究所學歷嗎?
碩士學歷到底重不重要,也許在前幾年大概一堆人會一面倒的說很重要,當然,立志想進大公司或科技業大廠做RD的話,碩士是真的很重要,然而現在碩士滿街跑的狀況已經十分嚴重,碩士金雞母的時代還能維持多久?很難講。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (5) - 學生階段-專題
專題,又稱「實務專題」,是大學生活所學的最後成果,同時也會反應做專題的人是不是真的有投入心力,它也有可能會成為未來進入職場的入場券之一,所以請認真的看待它。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (4) - 學生階段-早早覺悟,資訊產業是終身學習的產業。
資訊業的技術一向進步的很快,如果認為資訊業可以一招過江湖的話,那就大錯特錯了,也許你現在學的東西,過了兩三年後可能就不能用了,因為技術不是升級就是被淘汰了...
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (3) - 學生階段-選課 (修課) 的重要性
選課一向是大學開學前的重頭戲,熱門的課程一向是學生搶著選的重點課程,或是都去選老師管得鬆又容易過的所謂 "營養學分",但是與其一頭熱,或是只想要輕鬆的修課,對未來其實一點幫助都沒有,與其只想輕鬆過學生生活換取以後職場數十年的痛苦,不如早早就準備好。
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (2) - 學生階段-資訊...工程OR管理OR..?
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (2) - 學生階段-資訊...工程OR管理OR..?
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (1) - 學生階段:認識程式開發這工作
[碎碎念] 程式開發領域由菜鳥到老鳥的成長歷程 (1) - 學生階段:認識程式開發這工作
[bug 逃走中] 在 IIS 6.0 中使用 Response.Headers.Add() 會擲出 "This operation requires IIS integrated pipeline mode" 例外
這是今天發生的一起靈異現象,原本寫好的 HTTP Handler 在 IIS 6.0 和 IIS 7.0 都相安無事,但是今天部署到 IIS 6.0 時,卻發生了 "This operation requires IIS integrated pipeline mode" 的錯誤 ...
[Data Access] ORM 原理 (9) : 資料的新增,修改與刪除
- 7350
- 0
- .NET Framework
到原理 (8) 為止,我們已經完成了資料的查詢工作,但資料庫應用程式不是只有查資料而已,對資料的新增,修改和刪除 (C/R/U/D) 也要實作,才算是具有完整的資料存取能力,所以我們也必須要做到 C/U/D 才行,對程式來說,C/U/D 比 R 要簡單,但還是會有一些需要考量的地方,首先,在一堆資料的集合物件中,大部份的情況下不是每一筆都需要做 C/U/D,怎麼判斷每一個物件的狀態,以及在處理物件時何時更改狀態,就是一個重要的課題了,再者,如何產生資料庫需要的 INSERT/UPDATE 和 DELETE 指令,也是我們需要關心的。
[Data Access] ORM 原理 (8-2) : 對延遲載入的物件進行資料載入
在原理 (8) 中,我們展示了物件集合的處理與延遲載入,但忘了提到一件事,當延遲載入的物件要載入資料時要怎麼做。不過它的作法沒有特別困難,只是要產生一個有條件的 SQL 指令,並將傳回的資料填到物件內即可。