国产毛片午夜福利,国产黄网,国产亚洲天堂,97国产精品

  •  
    Java傳說之風云再起
    發(fā)布時間:2005-03-17   瀏覽次數(shù):1184858
    Java傳說之風云再起 —————————獻給所有追求進步、熱愛和平、熱愛生命的朋友 胡德平(中國Java聯(lián)盟/www.javaunion.org) 一、Java語言的發(fā)展歷程Java語言(簡稱Java)的誕生對IT產(chǎn)業(yè)帶來了一次變革,從某些意義上講對人們的日常生活也產(chǎn)生了深遠的影響。Java作為一種類C/C++,但其平臺無關性和與互聯(lián)網(wǎng)發(fā)展緊密結合,預計未來必定成為互聯(lián)網(wǎng)和計算機應用的主流。Java當之無愧地被紐約時報評為1995年的十大科技成果之一,Java將作為一項重大發(fā)明載入科技史冊! 微軟總裁比爾.蓋茨曾在觀察了一段時間后,十分慚愧地說:“Java是長時間以來最卓越的程序設計語言”,并確定微軟整個軟件開發(fā)的戰(zhàn)略從PC單機時代向著以網(wǎng)絡為中心的計算時代轉移,而購買Java則是他的重大戰(zhàn)略決策的實施部署。當然微軟與SUN也曾為純Java對峙法庭,微軟必將直接或間接將Java技術融入到其產(chǎn)品體系中。SUN Microsoft公司的總裁Scott McNealy認為Java為Internet 和WWW開辟了一個嶄新的時代。 環(huán)球信息網(wǎng)WWW的創(chuàng)始人Berners-Lee說:計算機事業(yè)發(fā)展的下一個浪潮是Java,并且將很快發(fā)生。所以,使用Java已成大勢所趨! Microsoft和IBM兩大公司都在Internet上銷售用Java編寫的軟件,IBMJava開發(fā)集成環(huán)境Visual Age For Java、網(wǎng)站集成平臺Webspere,Microsoft的VJ++都是目前主要常見的Java開發(fā)環(huán)境或產(chǎn)品。 另外,Apple、HP、IBM、Microsoft、Novell、SGI、SCO、Tandem等公司均在各自開發(fā)的操作系統(tǒng)中加入了Java開發(fā)運行環(huán)境,而負責開發(fā)并推廣Java技術的Javasoft公司(這是SUN下屬的一個子公司),通過頒發(fā)許可證的辦法來允許各家公司把Java虛擬機和Java的Applets類庫嵌入他們開發(fā)的操作系統(tǒng), 這樣各類開發(fā)人員能更容易地選擇多種平臺來使用Java 語言編程, 不同的用戶也可以脫離Web瀏覽器來運行Java應用程序,這無疑是很受廣大用戶的歡迎的, 也為Java語言的應用開拓了極為廣闊的前景。 1996年6月7日,由SUN公司和臺灣經(jīng)濟事務部信息發(fā)展局、 臺灣信息技術研究所等單位牽頭,成立了一個“臺灣Java聯(lián)盟”,有多個臺灣計算機公司參與,并在臺北建立 “Java開發(fā)中心”,在新竹建立 “Java語言實驗室”,以掀起臺灣開發(fā)與應用Java語言的熱潮。香港則在1996年4月舉行了全島的Java杯比賽, 在計算機界掀起了學習Java的熱潮(尤其是在大學生中,出現(xiàn)了一批Java迷)。1996至1998年,SUN公司與國內(nèi)清華大學、北京大學的高校合作,成立10個“Java教育中心”;與中軟、郵電部等機構合作成立培訓中心、開發(fā)中心;在北京、天津和上海成立研究開發(fā)基地。每年一度的JavaOne大會幾乎都會推出讓Java更受人歡迎的新技術,曾經(jīng)有人預言:Java將是網(wǎng)絡上的“世界語”,將會被未來所證實。 1998年,由于Java在、性能等方面到了一個關鍵階段,甚至Java被列入了世紀末十大必然死亡的技術之一,十大科技成果被預言必將死亡實在是幽了一個默。1998至今,隨著Java2一系列新技術如JAVA2D、JAVA3D、 SWING、 JAVA SOUND、 EJB、 SERVLET、 JSP、 CORBA、XML、JNDI等等的引入以及JVM自身的策略完善、效率提高,新一輪Java熱潮再次被掀起。目前,國內(nèi)電子商務、金融、證券、郵電、電信等行業(yè)的大部分系統(tǒng)幾乎都正在或者準備采用部分Java技術來實現(xiàn)。此外國內(nèi)也出現(xiàn)了致力于Java技術推廣和開發(fā)的非盈利組織中國“Java陣線聯(lián)盟”(javaunion.org)以及一批作為該組織成員的個人Java技術網(wǎng)站,預計一兩年內(nèi)Java應用將被國內(nèi)廣大行業(yè)用戶所接受,Java技術水平也將逐步與世界同步。 二、Java語言的特點 Java語言具有能獨立于平臺而運行、面向對象、可對動態(tài)畫面進行設計與操作、堅固性等特點,又具有多線程、內(nèi)置校驗器用來防止病毒入侵等功能,所以用來在Internet上研制與開發(fā)軟件時,特別受到用戶的歡迎。 Java語言的有點主要表現(xiàn)在:簡單、面向對象、自動的內(nèi)存管理、分布計算、穩(wěn)定、、解釋執(zhí)行、結構中立、平滑移植、多線程、以及異常處理等方面。 1、 簡單由于Java的結構類似于C和C++,所以一般的熟悉C與C++語言的編程人員稍加學習不難掌握Java的編程技術了。Java所具有的自動內(nèi)存管理機制也大大簡化了Java程序設計開發(fā)。 2、 面向對象簡單的說,面向對象設計是一種以數(shù)據(jù)(對象)以及其接口為重心的程序設計技術,面向對象的設計可以說是定義程序模塊如何“即插即用”的機制。Java的面向對象機制實際上可以看作是C++面向對象機制的延伸。Java提供了簡單的類機制和動態(tài)的構架模型,對象中封裝了它的狀態(tài)變量和方法(函數(shù)、過程),實現(xiàn)了模塊化和信息隱藏;而類則提供了一類對象的原型,通過繼承和重載機制,子類可以使用或者重新定義父類或者超類所提供的過程,從而實現(xiàn)代碼的復用。 3、 自動內(nèi)存管理Java的自動無用內(nèi)存回收集(auto garbage collectino)實現(xiàn)了內(nèi)存的自動管理,因此簡化了Java程序開發(fā)的工作,早期的gc(garbage collectino)對系統(tǒng)資源搶占太多而影響整個系統(tǒng)的運行,Java2對gc進行的改良使Java的效率有了很大提高。Gc的工作機制是周期性的自動回收無用存儲單元。Java的自動內(nèi)存回收機制簡化程序開發(fā)的同時,提高了程序的穩(wěn)定性和可靠性。 4、 分布計算Java為程序開發(fā)提供了java.net包,該包提供了一組使程序開發(fā)者可以輕易實現(xiàn)基于TCP/IP的分布式應用系統(tǒng)。此外,Java還提供了專門針對互聯(lián)網(wǎng)應用的類庫,如URL、Java mail等等。 5、 穩(wěn)定性人們最常見的應用程序錯誤是“非法訪問xxx內(nèi)存”,其實質是程序指針使用出錯。Java擁有一種指針(pointer)模型,能夠排除發(fā)生內(nèi)存被覆蓋和毀損數(shù)據(jù)的可能性。Java不采用指針算術法,而是提供真正的數(shù)組(Array),運行程序下標檢查;另外,它也不會發(fā)生有對象類型轉換將一個任意數(shù)轉換成指針的情形。Java的自動內(nèi)存管理在減少編程工作的同時,大大減少了運行態(tài)錯誤。 6、 性Java的設計目的是提供一個用于網(wǎng)絡/分布式的計算環(huán)境。因此,Java強調性,如確保無病毒、小應用程序運行控制等等。Java的驗證技術是以公鑰(public-key)加密算法為基礎,而且從環(huán)境變量、類加載器、文件系統(tǒng)、網(wǎng)絡資源和名字空間等方面實施策略。 7、 解釋執(zhí)行Java解釋器(interpreter)可以直接在任何已移植的解釋器的機器上解釋、執(zhí)行Java字節(jié)代碼,不需重新編譯。當然,其版本向上兼容,因此如果是高版本環(huán)境下編譯的Java字節(jié)嗎到底版本環(huán)境下運行也許會有部分問題。 8、 跨異構環(huán)境Java是網(wǎng)絡空間的“世界語”,編譯后的Java字節(jié)碼是一種“結構中立性(architecture neutral)的目標文件格式,可以在所有提供Java虛擬機(JVM)的多種不同主機、不同處理器上運行。 9、 平滑移植“write once,run every where!”也許是Java最誘人的特點。用Java開發(fā)而成的系統(tǒng)其移植工作幾乎為零,一般情況下只需對配置文件、批處理文件作相應修改即可實現(xiàn)平滑移植。 10、 多線程Java的多線程(multithreading)機制使程序可以并行運行。Java還有一組同步化基本單元,他們是以廣泛使用的C.A.R.Hoare監(jiān)視器與條件變量圖為基礎的。同步機制保證了對共享數(shù)據(jù)的正確操作。多線程使程序設計者可以用不同的線程分別實現(xiàn)各種不同的行為,而不需要采用全局的事件循環(huán)機制,因此,使用Java語言可以非常輕松地實現(xiàn)網(wǎng)絡上的實時交互行為。 11、 異常處理C語言程序員大都有使用goto語句來做條件跳轉,Java編程中不支持goto語句。Java采用異常模型使程序的主流邏輯變得更加清晰明了,并且能夠簡化錯誤處理工作。 12、 可擴充Java目前發(fā)布的j2EE標準主要為采用Java技術為企業(yè)提供解決方案提供了一個技術規(guī)范框架,規(guī)劃了一個利用現(xiàn)有和未來各種java技術整合解決企業(yè)應用遠景藍圖。 三、Java語言對軟件開發(fā)技術的影響曾有人預言:“Java語言的出現(xiàn),將會引起一場軟件革命”,這是因為Java語言能在執(zhí)行碼(二進制碼)上兼容,這樣以前所開發(fā)的軟件能運行在不同的機器上,只要所用的機器能提供Java語言解釋器即可。時至,Java的優(yōu)勢已經(jīng)不再于跨平臺和動態(tài)頁面顯示,更多的優(yōu)勢逐步在支持CORBA、WEB服務器后端處理以及應用整合等方面的到體現(xiàn)。 Java語言對現(xiàn)在以及未來軟件工程和軟件發(fā)展可能產(chǎn)生影響,可以從以下幾個方面分析:1. 軟件工程Java適用于WEB的許多特征比如平滑移植、、健壯和可擴展等為面向對象軟件工程設計提供了實現(xiàn)工具和想向空間。遵循面向對象思想,軟件生命周期的各個部分都將從面向對象的角度出發(fā)實現(xiàn)。比如用戶需求分析將被劃分成具有不同狀態(tài)(數(shù)據(jù))和行為的模塊,不同模塊之間的聯(lián)系通過消息實現(xiàn)等等。 2.軟件的開發(fā)方法由于Java語言的面向目標的特性,越來越多的人在用O-O開發(fā)時都在選擇使用Java技術與方法來開發(fā),這與Java的面向對象特性、模塊化特性、性以及適應IT技術發(fā)展密不可分。 3.WEB技術Java提供的CGI、ASP替代方法servlet/jsp以及EJB都是與互聯(lián)網(wǎng)發(fā)展需求相呼應的,由此可見Java在未來必然緊跟互聯(lián)網(wǎng)發(fā)展趨勢,采用Java解決企業(yè)基于WEB的應用是明智選擇。 4.分布式計算Java對CORBA、RMI(遠程方法調用)、EJB、XML和網(wǎng)絡處理的支持和應用,將使未來企業(yè)分布計算向其傾斜。 5.圖形處理與多媒體效果Java2以及以后版本提供了Swing、2D、3D、Sound等圖形、圖象和多媒體支持類庫,彌補了早期Java版本在此方面的不足。Java的媒體處理能力使程序開發(fā)在的動畫效果遠比GUI技術更加逼真,尤其是利用WWW提供的巨大動畫資源空間,可以共享全世界的動態(tài)畫面的資源。 6. 產(chǎn)品開發(fā)目前Java產(chǎn)品主要有基于WEB的實時信息發(fā)布系統(tǒng)、WEB郵件系統(tǒng)、用于企業(yè)分布式計算的消息傳輸系統(tǒng)、基于servlet/jsp/ejb開發(fā)的電子商務平臺、提供servlet/jsp/ejb開發(fā)和運行環(huán)境的應用服務器、結合CORBA/XML等技術開發(fā)的分布計算支撐平臺等等。另外用Java開發(fā)的多媒體軟件可以實現(xiàn)集可視化、可聽化、可操作化于一體的效果。 四、Java未來前景 由于Java語言具有上述特性,所以其應用前景必然美好,未來發(fā)展肯定會與互聯(lián)網(wǎng)的發(fā)展需求綁定: 1. 所有面向對象的應用開發(fā); 2. 軟件工程中需求分析、系統(tǒng)設計、開發(fā)實現(xiàn)和維護;3. 中小型多媒體系統(tǒng)設計與實現(xiàn); 4. 消息傳輸系統(tǒng);5. 分布計算交易管理應用(JTS/RMI/CORBA/JDBC等技術應用);6. Internet的系統(tǒng)管理功能模塊的設計,包括Web頁面的動態(tài)設計、網(wǎng)站信息提供管理和交互操作設計等。7. Intranet(企業(yè)內(nèi)部網(wǎng))上完全基于Java和WEB技術的應用開發(fā);8. WEB服務器后端與各類數(shù)據(jù)庫連接管理器(隊列、緩沖池);9. 掃描系統(tǒng)(包括網(wǎng)絡掃描、數(shù)據(jù)庫掃描、用戶掃描等);10. 網(wǎng)絡/應用管理系統(tǒng);11. 其它應用類型的程序。 五、學習建議因為多種原因,目前我國對于Internet的研究與開發(fā)工作還是與國外尤其實美國有相對差距,但用Java語言進行開發(fā)的成功案例在各行各業(yè)還是有些,尤其實目前較為火熱的電子商務網(wǎng)站系統(tǒng)。許多程序員或非程序員希望能夠有目的、有步驟、系統(tǒng)的學習Java技術,我建議可以從以下層面來學習: 1、 Java語言基礎參加基礎技術培訓的目的在于此,該部分應該掌握內(nèi)容有面向對象基礎、Java語言基礎語法、Java規(guī)范、Java虛擬機規(guī)范、編程規(guī)范以及常用開發(fā)工具使用等。 2、 了解Java高級技術概貌了解Java高級技術概貌其實并不一定必須學習Java語言基礎,有時需要知道將來可以學習什么、做什么是最重要的。Java高級技術目前大致有AWT工具使用、Swing組件使用、JavaBeans、Java2D、Drag-and-Drop、RMI-IIOP、JavaIDL、JDBC、JNDI、 JMAIL、JTS、Servlet/Jsp等,學習的方法不是到書店買書看,而是到Javasoft公司和其推薦的資源網(wǎng)站去閱讀相關技術規(guī)范和API。 3、 有目的地選擇深入掌握工作所需或感興趣的技術方向通常情況下,學習Java是因為對某些方面感興趣或者是有方面的工作需求。因此無論為了個人興趣還是更好的完成工作,幾乎都只可能精于某幾方面的技術,其它方面兼顧即可。 (注:如需引用、出版、發(fā)行請與作者聯(lián)系,版權為中國Java陣線同盟所有) 胡德平公元00.08.10.21.30于北京清華園 來源:http://edu.chinaz.com
    上一篇: Jsp問答集一
    立即預約