網絡編程

網絡編程

使用套接字來達到進程間通信
網絡編程從大的方面說就是對信息的發送到接收,中間傳輸為物理線路的作用。近年來,網絡全面普及,信息時代來臨。在信息時代背景下,網站制作的主要目的就是為了及時傳遞信息,讓人們能夠找到所需信息内容。
    中文名:網絡編程 外文名:WINSOCK;LINUX 别名: 含義:使用套接字來達到進程間通信 代碼分類:靜态代碼、動态代碼等 性質:編程方式

代碼分類

靜态代碼

靜态代碼是服務器不解析直接發送給客戶端的部分,用做布局效果,一般不用于數據庫操作。

目前,網頁制作的方法很多,包括借助工具,還有使用HTML語言編寫。但是,無論,運用哪種工具制作網頁都需要由HTML當作基礎,隻有這樣才能夠确保網頁制作的質量。然而,在設計并制作網頁的過程中,出現問題是不可遵免的,不僅要考慮到網站風格和特點,同樣需要對其實用性與有效性進行思考。

靜态代碼分html,javascript,css等,其中html語言是基礎,要學網絡編程就先學html語言.javascript用于實現某些特效,css是樣式語言.這3個語言組合起來,可以設計出美妙的網頁效果。

動态代碼

動态代碼是服務器需要解析的部分,用作數據庫連接操作等.有php,jsp,asp這幾種語言你隻用先學一種就可.如果是想快速入門,建議先學asp,如果想學了找工作等,建議學php或jsp,開發工具有很多種,我推薦一種,網絡3劍客,其中dw是開發代碼的,fw是做圖的.flash是做動畫的。

數據庫要結合你學的動态語言來選擇,asp系列的,你可以使用access,大型點使用mySQL。

php和mySQL是很好的搭檔。

服務器架設也是結合你學的動态語言的,windows下安裝iis很方便,iis可以運行asp,安裝.net框架後能運行,這兩者架設相對簡單,也是我推薦你入門學asp的原因.php一般安裝apache服務器,jsp一般安裝tomcat服務器.隻有架設好服務器,才能浏覽動态語言編寫的程序。

雖然是編程,但是總會涉及到網頁設計部分,還是要去學學怎麼簡單的作圖和動畫。

編程語言

彙編語言

彙編語言的實質和機器語言是相同的,都是直接對硬件操作,隻不過指令采用了英文縮寫的标識符,更容易識别和記憶。它同樣需要編程者将每一步具體的操作用命令的形式寫出來。

彙編程序通常由三部分組成:指令、僞指令和宏指令。彙編程序的每一句指令隻能對應實際操作過程中的一個很細微的動作,例如移動、自增,因此彙編源程序一般比較冗長、複雜、容易出錯,而且使用彙編語言編程需要有更多的計算機專業知識,但彙編語言的優點也是顯而易見的,用彙編語言所能完成的操作不是一般高級語言所能實現的,而且源程序經彙編生成的可執行文件不僅比較小,而且執行速度很快。

高級語言

高級語言主要是相對于彙編語言而言,它并不是特指某一種具體的語言,而是包括了很多編程語言,這些語言的語法、命令格式都各不相同。高級語言所編制的程序不能直接被計算機識别,必須經過轉換才能被執行,按轉換方式可将它們分為兩類:

解釋類:執行方式類似于我們日常生活中的“同聲翻譯”,應用程序源代碼一邊由相應語言的解釋器“翻譯”成目标代碼(機器語言),一邊執行,因此效率比較低,而且不能生成可獨立執行的可執行文件,應用程序不能脫離其解釋器,但這種方式比較靈活,可以動态地調整、修改應用程序。

編譯類:編譯是指在應用源程序執行之前,就将程序源代碼“翻譯”成目标代碼(機器語言),因此其目标程序可以脫離其語言環境獨立執行,使用比較方便、效率較高。但應用程序一旦需要修改,必須先修改源代碼,再重新編譯生成新的目标文件(*.OBJ)才能執行,隻有目标文件而沒有源代碼,修改很不方便。大多數的編程語言都是編譯型的,例如Visual C++、Visual Foxpro、Delphi等。

語言種類

網絡編程語言主要包括PHP、ASP、NET、JSP。

1、PHP

PHP即Hypertext Preprocessor(超文本預處理器),它是當今Internet上最為火熱的腳本語言,其語法借鑒了C、Java、PERL等語言,但隻需要很少的編程知識你就能使用PHP建立一個真正交互的Web站點。它與HTML語言具有非常好的兼容性,使用者可以直接在腳本代碼中加入HTML标簽,或者在HTML标簽中加入腳本代碼從而更好地實現頁面控制。PHP提供了标準的數據庫接口,數據庫連接方便,兼容性強;擴展性強;可以進行面向對象編程。

2、ASP

ASP即Active Server Pages,它是微軟開發的一種類似HTML(超文本标識語言)、Script(腳本)與CGI(公用網關接口)的結合體,它沒有提供自己專門的編程語言,而是允許用戶使用許多已有的腳本語言編寫ASP的應用程序。ASP的程序編制比HTML更方便且更有靈活性。它是在Web服務器端運行,運行後再将運行結果以HTML格式傳送至客戶端的浏覽器。ASP程序語言最大的不足就是安全性不夠好。ASP的最大好處是可以包含HTML标簽,也可以直接存取數據庫及使用無限擴充的ActiveX控件,因此在程序編制上要比HTML方便而且更富有靈活性。通過使用ASP的組件和對象技術,用戶可以直接使用ActiveX控件,調用對象方法和屬性,以簡單的方式實現強大的交互功能。但ASP技術也非完美無缺,由于它基本上是局限于微軟的操作系統平台之上,主要工作環境是微軟的IIS應用程序結構,又因ActiveX對象具有平台特性,所以ASP技術不能很容易地實現在跨平台Web服務器上工作。

3、JSP

JSP即Java Server Pages,它是由Sun Microsystem公司于1999年6月推出的新技術,是基于Java Servlet以及整個Java體系的Web開發技術。JSP和ASP在技術方面有許多相似之處,不過兩者來源于不同的技術規範組織,以至ASP一般隻應用于Windows NT/2000平台,而JSP則可以在85%以上的服務器上運行,而且基于JSP技術的應用程序比基于ASP的應用程序易于維護和管理,所以被許多人認為是未來最有發展前途的動态網站技術。

4、.NET

NET是ASP的升級版,也是由微軟開發,但是和ASP卻有天壤之别。NET的版本有1.1、2.0、3.0、3.5、4.0。是網站動态編程語言裡最好用的語言,不過易學難精。NET2.0開始,NET把前台代碼和後台程序分為兩個文件管理,使得NET表現和邏輯相分離。NET網站開發跟軟件開發差不多。NET的網站是編譯執行的,效率比ASP高很多。NET在功能性、安全性和面向對象方面都做的非常優秀,是非常不錯的網站編程語言。

編程介紹

網絡模型

網絡模型:描述網絡的結構原理和工作原理

OSI參考模型:七層

Internet網絡模型:四層

網絡協議:指定層上進行數據交換的規則。

Internet的網絡層協議:IP協議;DNS協議(輔助協議)

Internet的傳輸層協議:TCP協議;UDP協議。

套接字

套接字(Sockets):應用程序和網絡協議的接口。

Java Sockets:Java應用程序和網絡協議的接口,提供若幹個類的定義。

Java應用程序利用這些類繼承網絡協議的行為,實現網絡通信。

TCP Sockets:使用TCP協議實現可靠的網絡通信。

UDP Sockets:使用UDP協議實現效率較高的網絡通信。

數據包

數據包是網絡通信編程的一個重要概念,也稱為組裝包,指在應用層數據或報文按照一定事先規定好的規則整合的數據集合,實際操作包括組包(打包),數據包傳送,解包。組包(打包),指按照協議把零散的數據或報文按照組合起來,實際應用中,比如在C++編程中,往往定義一種新的數據類型用來存儲數據包的結構。數據包傳送,指數據包的電氣物理傳輸。解包,指接收端對接收的數據進行解析,獲得有用信息和數據。

數據包經常通過套接字來傳送。

參考書籍

《Windows網絡編程技術》(推薦指數:五星)中文版高清PDF格式486頁,極力推薦,含目錄書簽,是一本内容豐富,講解詳細的Windows網編。

《TCP/IP詳解》共三卷,《TCP/IP詳解卷1:協議》描述了屬于每一層的各個協議以及它們如何在不同操作系統中運行。作者LawrenceBerkeley實驗室的tcpdump程序來捕獲不同操作系統和TCP/IP實現之間傳輸的不同分組。對tcpdump輸出的研究可以幫助理解不同協議如何工作。

《C++網絡編程卷1》《C++網絡編程,卷2》本書将向你描述這些框架的設計,以及它們可怎樣幫助你克服較低級的本地操作系統API與較高級的分布式計算中間的各種局限,高效地開發出高質量、可移植的C++網絡化應用。

《Unix網絡編程》這本書是一部UNIX網絡編程的經典之作。附錄中給出了測量各種IPC形式性能的方法。本書内容詳盡且具權威性,幾乎每章都提供精選的習題,并提供了部分習題的答案,是網絡研究和開發人員理想的參考書。

上一篇:韓信點兵

下一篇:漢諾塔

相關詞條

相關搜索

其它詞條