如果引用或轉貼,麻煩註明出處與本網誌連結,否則視為侵權。

2012年1月5日

Javascript在Web應用系統中的角色

作者: Fred Wang 2012/1/5

摘自http://www.saxue.com/javascript/javascript-jiaose.html 一文描述Javascript在Web的角色 :
"javascript是web中使用最為廣泛也最為重要的web腳本語言,Javascript可以為內容及其表現形式增加行為,javascript的作用就是增強用戶的瀏覽體驗,使得資訊的獲取和傳輸更加容易快捷,用戶的體驗不應該依賴於javascript,但是javascript可以作為這種體驗的工具。

javascript可以實現:
1.建立新圖像翻滾這樣的視覺效果,精細地引導用戶,並且有助於頁面的導航。
2.對一張表格的排列順序,從而使用戶更容易找到所需的要東西。
3.隱藏某些內容。
4.通過和web伺服器直接通信將瀏覽體驗流程化,以便新的資訊無需整個頁面重載就能顯示出來。(AJAX)"


當然,javascript還可以做很多的事,但更重要的是要知道Javascript也有很多事不適合做,也不應該做。也就是不應該扮演他不該扮演的角色。

許多程式設計師從開發Client-Server的應用系統,轉到開發Web應用系統,會發現許多原來可以做的設計在Web應用系統就不能做了,原來不會發生的問題,在Web應用系統就發生了,然後就會批評Javascript是爛東西。

“JavaScript 是爛東西?”(http://www.kenming.idv.tw/javascript_a_mc_a_peyiif) 這篇文章標題看來聳動,文章中要表達的是"會爛的原因是… 程式設計師把它變成爛東西了。"

從開發Client-Server的應用系統轉而開發Web應用系統,程式設計師若無法了解由原來Stateful連線模式轉換為Stateless連線模式等差異,想辦法改變設計習慣,往往造成效能,可用性與安全上的錯誤,例如上面連結文章中提到的例子 : "系統中客戶輸入 ID 後,就能馬上秀出客戶姓名,竟然就一次把位於資料庫的客戶資料全部傳到 Browser端,然後,用 JavaScript 寫個 For-Loop 的迴圈,來找出對應 ID 的客戶姓名。"

或是常見到將商業邏輯寫在Javascript端,或直接在Javascript端檢查輸入內容,而忽略Server端的檢查等錯誤的設計方式。這些都突顯對Web環境,如Http連線與資料傳遞的方式等的基本認識不足。

因此,Javascript主要角色應該用在前端UI呈現與使用者動作事件的控制,而不該做為商業邏輯運算與資料處理用途。  -- Fred




2012年1月4日

Team Hoyt的故事讀後感


文章(http://www.tkc.org.tw/article.php/472)

這篇文章讓我蠻震撼, 不知道如果發生在我身上, 是否我能如此勇敢面對!!

以前的鄰居有一位男孩, 出生後就有輕微的腦性麻痺, 運動神經受損, 說話不是很清楚, 走路會搖晃, 卻也學會跑, 寫字困難, 但可打電腦。

與許多這類小孩相比, 應該是輕微多了, 但是卻遇到逃避的父親與放棄的母親, 因為缺乏父母的教導, 慢慢連內在也產生缺陷。

逃避與放棄並沒有讓他的父母過得更好, 心中揮之不去的陰影, 與內心的譴責, 讓他們只能生活在痛苦與掙扎之中

Team Hoyt 故事中偉大的父親, 在努力付出中, 有得到任何得回報嗎? 看到這些照片, 可以感受到那些回報,

遭遇苦難, 若能勇敢面對, 相信上帝會賜給我們力量!

ZDNet軟體工廠一文之閱讀心得


作者: Fred Wang 2012/1/4

ZDNet軟體工廠(http://www.zdnet.com.tw/members/1000101720/blog/?v=post&id=10000198)

 製造業不管是汽車或電子等,都經過早期手工時期,為了大量製造,開始了生產線標準流程,但是軟體業為何仍落在手工業時期,而少導入生產線製造模式,快速生產組裝,主要在於軟體不需重覆生產與大量製造。


但是,如何思考以工廠製造與經營方式改變軟體開發的現狀是在軟體工程領域不斷被研究與討論的,近年來就是Web Service, SOA等,而軟體工廠更包含標準化與自動化的作業,組裝,測試與品管, 而軟體設計師等同與產品設計,IC設計,設計完成後就進入軟體工廠,元件部份則有專業的元件工廠製造軟體元件提供下游廠商使用。

這是一種理想,而MIS嚴格來說應該是產品的使用者,將產品導入並應用在業務上,就角色與資源運用上都並不適合定位為軟體工廠,但是仍可採用一些標準化的精神與自動化的工具協助改善現狀。

我主修軟體工程,也了解許多MIS在採用軟體工程過程的困難,身為主管應該在不影響工作目標下,推廣與鼓勵以更理想兼具品質與生產力的方法開發系統。

相關文章

1.軟體開發生產線化探討
2.企業應用系統的開發生產模式探討

中央圖書館典藏圖書調閱程序


整理中央圖書館典藏圖書調閱程序,作為備忘。

下面是中央圖書館圖書調閱說明

http://www.ncl.edu.tw/ct.asp?xItem=1087&CtNode=1257&mp=2


1.調閱處所:讀者入館查檢館藏目錄,如屬各閱覽室開架圖書,逕至各室取閱;如屬各書庫內藏書時,普通圖書於電腦直接線上調閱,視聽、微縮(善本、政府出版品除外)資料至四樓視聽室調閱,其餘期刊、善本、日韓文、政府出版品等至各專科閱覽室服務臺調閱。

2.調閱手續:調閱書庫內書籍時,請先查檢館藏目錄後於電腦直接線上調閱。期刊則依式填寫「提閱單」,連同閱覽證交予館員提取。

3.調閱數量:調閱普通書籍每人每次以三冊為限;期刊一次以三種每種五冊為限;善本圖書以三部為限;微縮資料則每次以九十分鐘為限。

4.攜出各室:書刊如欲攜離各室,須填「書刊紀錄單」。

5.歸還:閱畢後將所借書刊資料、號碼牌一併交予館員,領回閱覽證。

6.外借:本館以典藏國家圖書文獻為務,所有圖書實料均不外借。 如有偷竊或撕割書刊等情事,除註銷其閱覽證外,並視行為情節,按下列方式處理;報請司法機關究辦犯罪行為並責令按所毀棄損壞書刊價格拾倍賠償;在學者通知其家長或學校,服務公私機構者,通知其服務單位。


各書庫內藏書的調閱程序,例如 :

出版日期較早的中文圖書如屬典藏書庫典藏,讀者可利用館藏查詢系統直接線上調閱,調閱完畢等候約十五分鐘,即可至圖書出納服務臺憑本人閱覽證取書,利用完畢後將調閱圖書歸還櫃臺。

2012年1月2日

2012年1月最流行的電腦程式語言排名與趨勢


作者 : Fred Wang 日期 : 2012/1/2
根據最近一期TIOBE程式語言社群索引統計,目前最流行的程式語言為Java, 第二名為C, 第三名為C++。從2001年開始Java與C一直保持前兩名,而C++曾少數幾次被Perl, PHP, VB超過外,多保持在第三名;但是來勢洶洶的C#恐怕會讓C++第三名的地位不保。C#是Microsoft最活躍與不斷改良的語言。
除了C語言20多年來一直保持前兩名外,在排行前20名的語言不乏一些長青樹,例如C++, (Visual)Basic, Lisp, Pascal, Ada, Assembly。除Ada外都是筆者20多年前學過的語言,還有Fortran(28), COBOL(37), Prolog(33), Forth(39), RPG(23)都還在前40名內。
近年有一些新崛起的程式語言,慢慢降低前三大程式比例,由2000年初Java,C,C+合併使用率約65%,到2011年底減少到43%。其中C#與Objective-C崛起,在2011年底一舉超過PHP與VB,攀升到前五名。特別是2009年後才出現的Objective-C使用率成長十分驚人,這主要要拜iPhone流行之賜。
相關數據請參考TIOBE Programming Community Index 每月公布的數據
如果有興趣學習新的程式語言,不妨了解一下這個趨勢。