通過講述軟件編程的算法和原理,由淺入深的帶領(lǐng)我們的學(xué)員進(jìn)入這個神秘的軟件編程世界,再通過講述過去畢業(yè)學(xué)員的開發(fā)作品來為我們的每一個學(xué)員打氣,讓我們每一位學(xué)員都有足夠的信心去成為真正的軟件工程師。
2使用Java語言理解程序邏輯及JAVA語言特性:
通過最簡單的第一個JAVA程序HelloWorld()來揭示JAVA語言的編程思路和語言邏輯方向,也會讓我們的學(xué)員真正的實(shí)際操作一次,來完成一個屬于自己的第一個java語言小程序。
然后我們會逐一講解JAVA語言的特性:
1、Java語言是簡單的。Java語言的語法與C語言和C++語言很接近,使得大多數(shù)程序員很容易學(xué)習(xí)和使用Java。另一方面,Java丟棄了C++ 中很少使用的、很難理解的、令人迷惑的那些特性,如操作符重載、多繼承、自動的強(qiáng)制類型轉(zhuǎn)換。特別地,Java語言不使用指針,并提供了自動的廢料收集,使得程序員不必為內(nèi)存管理而擔(dān)憂。
2、Java語言是一個面向?qū)ο蟮。Java語言提供類、接口和繼承等原語,為了簡單起見,只支持類之間的單繼承,但支持接口之間的多繼承,并支持類與接口之間的實(shí)現(xiàn)機(jī)制(關(guān)鍵字為implements)。Java語言全面支持動態(tài)綁定,而C++ 語言只對虛函數(shù)使用動態(tài)綁定?傊,Java語言是一個純的面向?qū)ο蟪绦蛟O(shè)計(jì)語言。
3、Java語言是分布式的。Java語言支持Internet應(yīng)用的開發(fā),在基本的Java應(yīng)用編程接口中有一個網(wǎng)絡(luò)應(yīng)用編程接口(java net),它提供了用于網(wǎng)絡(luò)應(yīng)用編程的類庫,包括URL、URLConnection、Socket、 ServerSocket等。Java的RMI(遠(yuǎn)程方法激活)機(jī)制也是開發(fā)分布式應(yīng)用的重要手段。
4、Java語言是健壯的。Java的強(qiáng)類型機(jī)制、異常處理、廢料的自動收集等是Java程序健壯性的重要保證。對指針的丟棄是Java的明智選擇。Java的安全檢查機(jī)制使得Java更具健壯性。
5、Java語言是安全的。Java通常被用在網(wǎng)絡(luò)環(huán)境中,為此,Java提供了一個安全機(jī)制以防惡意代碼的攻擊。除了Java語言具有的許多安全特性以外,Java對通過網(wǎng)絡(luò)下載的類具有一個安全防范機(jī)制(類ClassLoader),如分配不同的名字空間以防替代本地的同名類、字節(jié)代碼檢查,并提供安全管理機(jī)制(類SecurityManager)讓Java應(yīng)用設(shè)置安全哨兵。
6、Java語言是體系結(jié)構(gòu)中立的。Java程序(后綴為java的文件)在Java平臺上被編譯為體系結(jié)構(gòu)中立的字節(jié)碼格式(后綴為class的文件), 然后可以在實(shí)現(xiàn)這個Java平臺的任何系統(tǒng)中運(yùn)行。這種途徑適合于異構(gòu)的網(wǎng)絡(luò)環(huán)境和軟件的分發(fā)。
7、Java語言是可移植的。這種可移植性來源于體系結(jié)構(gòu)中立性,另外,Java還嚴(yán)格規(guī)定了各個基本數(shù)據(jù)類型的長度。Java系統(tǒng)本身也具有很強(qiáng)的可移植性,Java編譯器是用Java實(shí)現(xiàn)的,Java的運(yùn)行環(huán)境是用ANSI C實(shí)現(xiàn)的。
8、Java語言是解釋型的。如前所述,Java程序在Java平臺上被編譯為字節(jié)碼格式, 然后可以在實(shí)現(xiàn)這個Java平臺的任何系統(tǒng)中運(yùn)行。在運(yùn)行時(shí),Java平臺中的Java解釋器對這些字節(jié)碼進(jìn)行解釋執(zhí)行,執(zhí)行過程中需要的類在聯(lián)接階段被載入到運(yùn)行環(huán)境中。
9、Java是高性能的。與那些解釋型的高級腳本語言相比,Java的確是高性能的。事實(shí)上,Java的運(yùn)行速度隨著JIT(Just-In-Time)編譯器技術(shù)的發(fā)展越來越接近于C++。
10、Java語言是多線程的。在Java語言中,線程是一種特殊的對象,它必須由Thread類或其子(孫)類來創(chuàng)建。通常有兩種方法來創(chuàng)建線程:其一,使用型構(gòu)為Thread(Runnable) 的構(gòu)造子將一個實(shí)現(xiàn)了Runnable接口的對象包裝成一個線程,其二,從Thread類派生出子類并重寫run方法,使用該子類創(chuàng)建的對象即為線程。值得注意的是Thread類已經(jīng)實(shí)現(xiàn)了Runnable接口,因此,任何一個線程均有它的run方法,而run方法中包含了線程所要運(yùn)行的代碼。線程的活動由一組方法來控制。 Java語言支持多個線程的同時(shí)執(zhí)行,并提供多線程之間的同步機(jī)制(關(guān)鍵字為synchronized)。
11、Java語言是動態(tài)的。Java語言的設(shè)計(jì)目標(biāo)之一是適應(yīng)于動態(tài)變化的環(huán)境。Java程序需要的類能夠動態(tài)地被載入到運(yùn)行環(huán)境,也可以通過網(wǎng)絡(luò)來載入所需要的類。這也有利于軟件的升級。另外,Java中的類有一個運(yùn)行時(shí)刻的表示,能進(jìn)行運(yùn)行時(shí)刻的類型檢查。Java語言的優(yōu)良特性使得Java應(yīng)用具有無比的健壯性和可靠性,這也減少了應(yīng)用系統(tǒng)的維護(hù)費(fèi)用。Java對對象技術(shù)的全面支持和Java平臺內(nèi)嵌的API能縮短應(yīng)用系統(tǒng)的開發(fā)時(shí)間并降低成本。Java的編譯一次,到處可運(yùn)行的特性使得它能夠提供一個隨處可用的開放結(jié)構(gòu)和在多平臺之間傳遞信息的低成本方式。特別是Java企業(yè)應(yīng)用編程接口(Java Enterprise APIs)為企業(yè)計(jì)算及電子商務(wù)應(yīng)用系統(tǒng)提供了有關(guān)技術(shù)和豐富的類庫。
3使用HTML語言開發(fā)商業(yè)站點(diǎn):
教授大家如何使用工具進(jìn)行簡單的HTML語言開發(fā),并利用工具和語言邏輯來完成自己的第一個小型商業(yè)站點(diǎn)的設(shè)計(jì)和開發(fā)。
4使用SQL Server管理和查詢數(shù)據(jù):
在這個階段老師會首先告訴大家何為數(shù)據(jù)庫。并且讓大家理解數(shù)據(jù)庫對于我們今后網(wǎng)站與軟件開發(fā)之間的關(guān)系和作用。其次我們的課程會安排大家從最基本的小型數(shù)據(jù)庫Access數(shù)據(jù)庫進(jìn)行講解,并會讓學(xué)員學(xué)習(xí)什么叫做數(shù)據(jù)庫語言----(sql文),并且要求學(xué)員通過學(xué)習(xí)后可以獨(dú)立的完成簡單數(shù)據(jù)庫的設(shè)計(jì)與開發(fā)。而后我們會為大家講解一般企業(yè)級應(yīng)用數(shù)據(jù)庫SQL SERVER數(shù)據(jù)庫的講解。并最終利用我們學(xué)員的所學(xué)知識獨(dú)立完成一個SQL SERVER數(shù)據(jù)庫的應(yīng)用設(shè)計(jì)開發(fā)及管理查詢等。
5使用J2EE開發(fā)數(shù)據(jù)庫網(wǎng)絡(luò)應(yīng)用程序:
在這一環(huán)節(jié)中我們會加大學(xué)習(xí)力度和教學(xué)時(shí)間,因?yàn)榍懊娴乃袑W(xué)習(xí)課程都是為了這一章節(jié)打基礎(chǔ)的,在這一章節(jié)中我們會學(xué)習(xí)到什么是企業(yè)級JAVA應(yīng)用開發(fā)即------J2EE的設(shè)計(jì)開發(fā)。我們會從技術(shù)應(yīng)用的角度來深入講解如何掌握J(rèn)AVA的特性,并利用這些特性來實(shí)際設(shè)計(jì)開發(fā)一個企業(yè)級的商業(yè)應(yīng)用網(wǎng)站。
1、JDBC(Java Database Connectivity)提供連接各種關(guān)系數(shù)據(jù)庫的統(tǒng)一接口,可以為多種關(guān)系數(shù)據(jù)庫提供統(tǒng)一訪問,它由一組用Java語言編寫的類和接口組成。JDBC為工具/數(shù)據(jù)庫開發(fā)人員提供了一個標(biāo)準(zhǔn)的API,據(jù)此可以構(gòu)建更高級的工具和接口,使數(shù)據(jù)庫開發(fā)人員能夠用純 Java API 編寫數(shù)據(jù)庫應(yīng)用程序,同時(shí),JDBC也是個商標(biāo)名。
2、EJB(Enterprise JavaBeans)使得開發(fā)者方便地創(chuàng)建、部署和管理跨平臺的基于組件的企業(yè)應(yīng)用。
3、Java RMI(Java Remote Method Invocation)用來開發(fā)分布式Java應(yīng)用程序。一個Java對象的方法能被遠(yuǎn)程Java虛擬機(jī)調(diào)用。這樣,遠(yuǎn)程方法激活可以發(fā)生在對等的兩端,也可以發(fā)生在客戶端和服務(wù)器之間,只要雙方的應(yīng)用程序都是用Java寫的。
4、Java IDL(Java Interface Definition Language) 提供與CORBA(Common Object Request Broker Architecture)的無縫的互操作性。這使得Java能集成異構(gòu)的商務(wù)信息資源。
5、JNDI(Java Naming and Directory Interface)提供從Java平臺到的統(tǒng)一的無縫的連接。這個接口屏蔽了企業(yè)網(wǎng)絡(luò)所使用的各種命名和目錄服務(wù)。
6、JMAPI(Java Management API)為異構(gòu)網(wǎng)絡(luò)上系統(tǒng)、網(wǎng)絡(luò)和服務(wù)管理的開發(fā)提供一整套豐富的對象和方法。
7、JMS(Java Message Service)提供企業(yè)消息服務(wù),如可靠的消息隊(duì)列、發(fā)布和訂閱通信、以及有關(guān)推拉(Push/Pull)技術(shù)的各個方面。
8、JTS(Java transaction Service)提供存取事務(wù)處理資源的開放標(biāo)準(zhǔn),這些事務(wù)處理資源包括事務(wù)處理應(yīng)用程序、事務(wù)處理管理及監(jiān)控。
9、JMF(Java Media Framework API), 她可以幫助開發(fā)者把音頻、視頻和其他一些基于時(shí)間的媒體放到Java應(yīng)用程序或applet小程序中去,為多媒體開發(fā)者提供了捕捉、回放、編解碼等工具,是一個彈性的、跨平臺的多媒體解決方案。
10、Annotation(Java Annotation),在已經(jīng)發(fā)布的JDK1.5(tiger)中增加新的特色叫 Annotation。Annotation提供一種機(jī)制,將程序的元素如:類,方法,屬性,參數(shù),本地變量,包和元數(shù)據(jù)聯(lián)系起來。這樣編譯器可以將元數(shù)據(jù)存儲在Class文件中。這樣虛擬機(jī)和其它對象可以根據(jù)這些元數(shù)據(jù)來決定如何使用這些程序元素或改變它們的行為。
在Java技術(shù)中,值得關(guān)注的還有JavaBeans,它是一個開放的標(biāo)準(zhǔn)的組件體系結(jié)構(gòu),它獨(dú)立于平臺,但使用Java語言。一個JavaBean是一個滿足JavaBeans規(guī)范的Java類,通常定義了一個現(xiàn)實(shí)世界的事物或概念。一個JavaBean的主要特征包括屬性、方法和事件。通常,在一個支持JavaBeans規(guī)范的開發(fā)環(huán)境(如Sun Java Studio 和IBM VisualAge for Java)中,可以可視地操作JavaBean,也可以使用JavaBean構(gòu)造出新的JavaBean。JavaBean的優(yōu)勢還在于Java帶來的可移植性,F(xiàn)在,EJB (Enterprise JavaBeans) 將JavaBean概念擴(kuò)展到Java服務(wù)端組件體系結(jié)構(gòu),這個模型支持多層的分布式對象應(yīng)用。除了JavaBeans,典型的組件體系結(jié)構(gòu)還有DCOM和CORBA,關(guān)于這些組件體系結(jié)構(gòu)的深入討論超出了本書的范圍。
11、javaFX Sun剛剛發(fā)布了JavaFX技術(shù)的正式版,它使您能利用 JavaFX 編程語言開發(fā)富互聯(lián)網(wǎng)應(yīng)用程序(RIA)。JavaFX Script編程語言(以下稱為JavaFX)是Sun微系統(tǒng)公司開發(fā)的一種declarative, staticallytyped(聲明性的、靜態(tài)類型)腳本語言。JavaFX技術(shù)有著良好的前景,包括可以直接調(diào)用Java API的能力。因?yàn)?JavaFXScript是靜態(tài)類型,它同樣具有結(jié)構(gòu)化代碼、重用性和封裝性,如包、類、繼承和單獨(dú)編譯和發(fā)布單元,這些特性使得使用Java技術(shù)創(chuàng)建和管理大型程序變?yōu)榭赡堋?/p>
12、JMX(Java Management Extensions,即Java管理擴(kuò)展)是一個為應(yīng)用程序、設(shè)備、系統(tǒng)等植入
管理功能的框架。JMX可以跨越一系列異構(gòu)操作系統(tǒng)平臺、系統(tǒng)體系結(jié)構(gòu)和網(wǎng)絡(luò)傳輸協(xié)議,靈活的開發(fā)無縫集成的系統(tǒng)、網(wǎng)絡(luò)和服務(wù)管理應(yīng)用。
13、JPA (Java Persistence API), JPA通過JDK 5.0或XML描述對象-關(guān)系表的映射關(guān)系,并將運(yùn)行期的實(shí)體對象持久化到數(shù)據(jù)庫中。