《加速程式撰寫的工具 Library - 計算理論實驗室 台大電機所.ppt》由会员分享,可在线阅读,更多相关《加速程式撰寫的工具 Library - 計算理論實驗室 台大電機所.ppt(22页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、加速程式撰寫的工具Library,各種常用免費函示庫介紹,什麼是Library,函式庫將一些繁複或者牽涉到硬體層面的程式包裝成函式(Function)或物件(Object)收集在一起,編譯成二進位碼提供程式設計者使用。舉例:winsock API library winsock API是windows 將BSD socket API 移植 到 windows 下的函式庫,由於控制硬體必須使用組合語言, 為了避開難以理解的組 合語言, 因此用函式包裝組合語言, 方便程式設計師使用,控制硬體的函式庫,啦啦啦!,Example: Sound card control,Library,Program,
2、Developer,命令: 放音樂,複雜的機械語言,Sound card,圖形函式庫- Graphics Library,將描述轉換成實際的圖像 如向量、座標等。處理各種2D、3D圖形的特效提供快速的Layout演算法,SDL,Simple DirectMedia LayerSDL是一套全方位的多媒體函式,由現任的B社Sam Lantinga 開發維護,應用相當廣,連PS2都有軟體用它來開發網址: www.libsdl.org,openGL,Open graphic library這是個耳熟能詳的圖形軟體,最早由Silicon Graphics Inc. 開發,目前已經成為工業標準,所有市面上
3、的作業系統都支援OpenGL網址:www.opengl.org,openGL 範例1:quake3 雷神之槌,openGL範例2 3D方塊,#include , #includeglRotatef(rtri,0.0f,1.0f,0.0f); / Rotate The Pyramid On Its Y Axis glBegin(GL_TRIANGLES); / Start Drawing The Pyramid glColor3f(1.0f,0.0f,0.0f); / Red glVertex3f( 0.0f, 1.0f, 0.0f); / Top Of Triangle (Front)glTr
4、anslatef(1.5f,0.0f,-7.0f); / Move Right And Into The Screen Moretexture ,light ,transform,DriectX家族,Windows平台的API-專用於多媒體 由許多部分組成,包括 DriectDraw , DriectSound, DriectInput , DriectPlay, Driect3D(D3D),ClanLib,ClanLib是專門用在GAME開發的,包辦各種GAME所需要的函式,包括Audio、network、file、input、以及thread,使用簡便,非常容易學習。網址:www.clan
5、lib.org,Plib,Portable Game Library這個函式庫包含了許多其他函式庫,和ClanLib一樣,是整合型的函式庫,而且還在陸續擴展當中。網址:,GUI 函式庫和工具,用來製作GUI介面舉例: windows 的MFC 以及BCB 的VCL都是其中的一種。,User,User Interfacce,Library,Hardware(computer),examples,DOS/Unix console text user interfaceWindows/MacOS/Xwindows graphicsUser interface,GTK+,GTK+是用來設計X wind
6、ows的開發工具,最近在windows下也開始支援了。網址:www.gtk.org,Gtk+ 程式範例: gimp,Fltk,非常短小精悍的GUI函式庫,靜態連結檔案只有97k bytes大小,非常適合用來寫小程式,雖然容量很小,能做的事也不少。網站:www.fltk.org,其他種類的函式庫,File Handling函式庫用來處理各種影像、音訊等檔案格式Networking 函式庫就是用來寫網路程式的資料庫Script 語言,較容易撰寫並且具有跨語言相較於compiled平台的能力,File Handleing,libpng 及 libjpeg :用來處理png及jpg圖檔網址:www.l
7、ibpng.org , www.ijg.orgogg vorbis 有別於mp3的聲音壓縮軟體,為了發展出Free的音效壓縮程式。網址:http:/www.xiph.org/ogg/vorbis/index.htmlZlib處理gzip 壓縮檔按格式SMPEG為了配合SDL所增加的MPEG函式庫,Script 語言,Perl 歷久不衰的語言,可以說是懶人的C語言,在處理字串上非常方便,C語言要數十行才做得出的東西Perl兩行就夠了。PHP 配合mySQL使用,相較於ASP來說是窮人的架站利器許多商業網站也放棄昂貴的M$ server改用PHP+mySQL或是PostgreSqlPython perl的後繼者,將物件導向觀念導入script中,Networking,BSD socket全球幾乎唯一的TCP/IP函式庫,要寫TCP/IP程式幾乎擺脫不了它。IPX 和 SPX 原本用在Novell上的網路協定,在區域網路中常用,