我不知道你的具體工作是什麼
如果你是某冷門領域的專家而變得不可或缺
或者你們的公司十分穩固
以你現有的技術就足以安度你的職業生涯
那我不知道你是否有失業的危險
不管怎樣
請你先不要急著寄出那些告訴我你們的公司對用VB
十分滿意或你們除C以外永不用其它語言的信件
並保留起那些講述
NET將如何把Java掃地出門
XML將如何取代關系型數據庫
或你怎樣能用匯編語言或C寫任何軟件而任何其它開發工具都不重要的信件
現在
想象一下如果你像很多受裁員和公司倒閉影響的同行一樣失去了工作
那將會怎樣
如果你突然需要搬往它處該怎麼辦?如果你的公司突然做了技術轉向又怎麼辦?
在目前的就業市場
經理們是根據當前和未來的開發需要招聘雇員
作為開發人員
你所掌握的知識是你找工作和保住工作的關鍵
你要了解技術的發展方向
跟上技術的變化
這一點十分重要
即使你永遠不用再找開發方面的工作
這裡是我選出的當前最重要的十大開發技術
最重要的排在前面
看完本文後
請務必加入talk
editors
devx討論組
提出你選出的十大技術
XML 首先
你要了解XML
我不是說僅僅是XML規格本身
還包括一系列相關的基於XML的語言
最重要的是XHTML
XSLT
XSL
DTDs
XML Schema (XSD)
XPath
XQuery和SOAP
那些在過去
年內從未碰過鍵盤的人
可能不知道XML為何物
XML是一種文本文件
使用與HTML類似的標記
XML能定義一個樹狀結構
並能描述所含的數據
XML最好的一點是既能存結構化數據也能存非結構化數據
它既能存貯和描述
規格的
(regular)表格數據
也能容納和描述
粗糙的
(ragged)文件數據
XHTML是現今寫HTML的首選方法
因為它是形式完好(well formed)的XML
比起古老的
通常是畸形(malformed)的HTML文件
XHTML格式的文件更容易處理
XSLT和XSL是用於把XML文件轉成其它格式的語言
可轉換的格式包括
文本文件
PDF文件
HTML
以逗號為分隔符的文件
或其它XML文件
DTD和XML Schema描述XML文件所能包含的內容的類型
並讓你
驗證
XML文件內容的合理性
而不用寫特殊代碼以確保內容符合規則要求
XPath和XQuery是用於從XML文件中抽取單個項目或一組項目的查詢語言
XQuery擴展了XPath
因而更重要
XQuery與XML的關系正像SQL與關系數據庫的關系
SOAP是Web服務之間的一個標准通訊協議
盡管你不需要對SOAP標准一清二楚
你應該熟悉一般的schema和它的工作原理
以便能應用這門技術
Web服務 Web服務是XML流行後的一個直接產物
因為你能用XML描述數據和物件
因為你能用schema確保XML文件內容的合理性
因為XML是基於文本的規范
XML為跨平台通訊標准提供了一個極其方便的基本格式
如果你還從來沒碰到Web服務
你可能很快就會碰到
在未來
年內
你幾乎肯定會碰到
熟悉Web服務十分重要
因為它是目前所有跨不同機器
不同語言
不同平台和不同地點的通訊協議中最簡單的一個
不管你需要與否
Web服務是邁向互用性的重要一步
XML工作組主席John Bosak曾說XML
給Java一些事做
實際上
Web服務讓所有語言都有了一些事做
Web服務讓在大型機上運行的COBOL應用軟件能調用在手持設備上運行的Java應用程序
能讓Java applet與
NET服務器交談
能讓微機軟件與Web服務器無縫連接
並提供了一個相對容易的方法
讓企業不光能向外界提供數據
還能提供功能
而且是一種與語言
平台和位置都獨立的方法
面向對象的編程 很多程序員仍認為OOP是象牙塔裡的技術
但如果你想一下是什麼語言在過去的
年裡占主導地位
你就會理解OOP不是象牙塔裡的技術
OOP從Smalltalk開始
傳到C++和Pascal (Delphi)
Java使OOP大踏步地邁向主流
幾年後的VB
NET和C#則完全確立了OOP的優勢地位
盡管這些語言中的多數並不要求你必須會OOP
但我覺得如果你不了解OOP的基本概念也不知道如何應用這些概念
你能找到的編程工作將越來越少
JavaC++C#和VBNET 我把這些語言列在一起
並不是建議你成為每一種語言的專家
我的理由是
學習編程最有效的方法之一是看代碼
而你能看到的大量的代碼很可能不是用你所喜愛的語言編寫的
在過去幾年
各語言的能力越來越接近
現在
你可以用VB
NET寫Windows服務
Web應用程序或命令行程序
即使你只使用一種語言
你也應該學一些其它語言
以便能看懂那些樣例
並將其翻譯到你所用的語言
這
種語言是基本核心
還有其它一些滿足不同需要
頗具用途的語言
如FORTRAN
COBOL
APL
ADA
Perl和Lisp
JavaScript 盡管名字有些相像
但Java與JavaScript並無關聯
為什麼一個腳本語言會如此重要呢?因為所有主流浏覽器都用JavaScript
如果你需要寫Web應用程序
你就有足夠的理由學JavaScript
JavaScript可以用作ASP或ASP
NET的服務器語言
也可以當做用於擴展XSLT的功能語言(functional language)
JavaScript是Mozilla/Netscape中用於激活基於XUL的程序接口的首選語言
JavaScript的一個變種ActionScript是Flash MX的編程語言
將來
JavaScript很可能成為新設備的編程語言
以及大型應用軟件中的宏語言
與JavaScript相對照的是VBScript
盡管Microsoft的軟件對VBScript有良好的支持
但VBScript在未來的開發工作中很可能是一個糟糕的選擇
就是Microsoft也傾向於用JavaScript(或Microsoft自己的變種
JScript)寫客戶端程序
在選擇腳本語言時
請選擇JavaScript
正則表達式(Regular Expressions) 查尋關系數據庫可以用SQL
查詢XML可以用XPath和XQuery
查詢純文本文件則可以用正則表達式
例如
你可以用一個命令從一個HTML文件中查找並刪除所有的注釋
各種開發語言內置的一些簡單的文本查詢功能
如
IndexOf
函數或VB中經典的
InStr
函數或
Like
操作符
根本不能與正則表達式相提並論
現在
各種主要的開發語言都提供使用正則表達式的途徑
盡管正則表達式本身既難懂更難讀(是回到早期計算機時代的一種倒退)
但它卻是一個功能強大而且未被充分利用的工具
設計模式 正像OOP通過把對象分類以簡化編程一樣
設計模式對一些普遍的對象之間的交互進行分類
並賦予一個恰當的名稱
OOP用得越多
設計模式就越有用
一些最常用的模式的名稱已經變成了軟件開發領域共同使用的術語
所以要跟上信息的主流
你就要對設計模式有相當的理解
Flash MX 如果你需要在客戶端得到比HTML和CSS更多的圖形和更強的編程功能
Flash是你的答案
用Flash編程比開發Java applets或寫
NET代碼要快得多
也容易得多
在最新版本 (MX) 中
Flash不僅僅是畫圖和制造動畫的工具
它已經成為一個編程功能強大的開發環境
能調用SOAP Web服務
也能調用遠端服務器上的ColdFusion
Java或
NET程序
Flash無處不在
它的引擎存在於世界上大多數客戶端計算機
包括手持設備
置頂盒
甚至是新的書寫板電腦
所以使用Flash能大大擴展你的程序的應用范圍
Linux/Windows 熟悉Linux
在一台舊機器或新機器上安裝Linux
下載圖形用戶界面
在其基礎上寫一些程序
安裝Apache
寫一個Web應用程序
這個世界不再僅僅是屬於Windows
這種趨勢可能還會持續下去
如果你是一名中堅的Linux開發人員
那就拋棄你對Windows的憎惡
看看你能否做一些Windows編程
Windows能繼續在台式電腦上稱王是有其原因的
這不僅僅是因為Microsoft控制了這個市場
沒人知道你們公司會在什麼時候決定從Linux轉向Windows(或從Windows轉向Linux)
或者你想跳到一家用另一種平台的公司
或者你想出了開發一個殺手軟件的好主意
所以你要爭取擁有在不同操作系統上的編程經驗
SQL 盡管SQL不像本文討論的其它技術那樣新
而且SQL的重要性在未來
年內很可能降低
但它仍然是一項基本技能
很多開發人員還沒有掌握這門技術
或掌握得不夠
不足以有效率地使用它
不要依賴具有圖形用戶界面的SQL生成器替你做事情
你要自己手工地寫查詢命令
直到你熟悉基本的SQL語法為止
了解SQL不僅能幫助你日後學習XQuery
你還有可能馬上發現能簡化或改進目前項目的方法
培養好奇心 最後
(對
我意識到這是第
門技術)
好奇心是你最重要的技能
要去嘗試各種東西
新語言或新技術對你當前或將來的工作可能有用
也可能沒用
但並不是你所學的每一件事都是為了工作
不要害怕失敗
萬事開頭難
學新技術也是如此
大多數失敗是因為人們希望太快地學到太多的東西
要對每一點進步感到滿意
不要讓時間(或缺乏時間)妨礙你
相反
你要安排時間留心
研究
試驗新的開發技術和工具
你可能永遠也沒有必要成為這些技術的專家
而且我的選擇可能根本不適合你的特殊情況
但通過培養好奇心
你將會發現你應該了解的東西
From:http://tw.wingwit.com/Article/program/Java/JSP/201311/19405.html