unix環境編程
在linux或者unix環境下都可以進行各種編程,時代在進步,作為開源軟體的linux或者unix才是程序員的更好選擇,只不過linux或者unix某些地方比如圖形界面可能目前還沒有windows好,不過總有一天會趕上來的,成為最強大最健壯的操作系統的。
linux下的C\C++編程我比較熟悉,用gcc做編譯器;Java當然也能用,不過我沒用過,jdk應該是所有平台都有的吧。
Ⅱ 《UNIX環境高級編程》這本書怎麼看怎麼學習
W.Richard Stevens 先生所著之書比較適合有經驗的人進一步深入學習
W.Richard Stevens 先生所著的UNIX 環境高級編程、UNIX網路編程、TCP/IP詳解是難得的入門好書,但這里的入門指得是研究生級別的入門。Stevens 先生所著之書多半是為了給研究生上課時用做教材,因此 Stevens 先生假設閱讀這些書的人至少已經接受過了系統的計算機技術本科教育,已經擁有了比較系統的計算機相關基礎理論知識。在書中 Stevens 先生假設讀者擁有了最基礎的操作系統理論,網路技術理論,以及UNIX理論和實踐經驗,並擁有數種業界常用的UNIX系統作為學習環境(在國外的大學里很容易獲得),這樣才能體會書中所述的細節。因此這些書剛接觸時看似通俗易懂,但在閱讀細節上卻對讀者要求甚高,如果沒有足夠的專業理論和系統實踐是很難真正讀進去的。
所以,對於沒有接受過系統的計算機專業教育的愛好者,或者主要以 linux 系統維護,或以linux 桌面應用為主的普通用戶,Stevens 先生的書並不是很合適的閱讀對象。
因此,就我個人的看法,掌握任何一種知識都是需要投入的。我們需要花費金錢去得知識來源(花錢買書,花錢上網,花錢培訓),需要花費寶貴的時間去閱讀(人生匆匆幾十年,沒多少時間可以給我們去浪費),需要花費精力去理解書中的內容(基礎知識越扎實,理解所學內容越快,但累積基礎同樣需要大量時間和精力),需要找到合適的環境(光看不實踐心裡是不會有底的)去驗證自己掌握的東西。因此,如果在決定投入之前,先要摸清楚自己到底想要達到什麼樣的目標,這個目標是否切合自己的實際(相信一個在流水線上辛苦勞作的普通工人,即使學會了計算機編程也是沒有用武之地的,除非他有機會離開流水線)。自己是否有足夠的資源承載自己的理想(如對於溫飽問題尚未解決之人,要他花上千上萬的錢去學MBA顯然是不現實的)。
同時,任何一本書都會對讀者提出一個基本的知識架構和程度上的要求,比方說即使是文學博士,讓他去讀高能物理學方面的書也會要他的命的。因此在選擇所讀之書前,先要對自己的實際能力做一次詳細的評估,看自己目前到了哪種階段,是否有能力去掌握自己想要掌握的東西。千萬不要因為好高騖遠而勉力為之。選擇適合自己當前水平的書去閱讀並理解,遠好過拿著大師所著的神作乾瞪眼。
如果主要希望掌握UNIX下的編程技術,尤其是網路編程技術的話,可以有兩條路走:
1、以實際需要完善知識架構:為自己做一個項目,比方說自己寫個簡單的 Web 伺服器,因為現在 Web 應用非常豐富,既有成熟的客戶端如瀏覽器可以配合,又有足夠全的文檔如 RFC文檔可供參考,再加上最基本的 socket 編程經驗,就可以開始做自己的 Web 伺服器。一步一步的為 Web 伺服器添加流行的功能,如支持後台 FastCGI 介面,支持 WebDAV,支持流媒體等。在這個過程中不斷地學習和掌握相關的理論知識,有時在發覺設計上的不足時甚至需要推翻全盤重新架構。當最終一個完全符合自己心意且足夠實用的 Web 伺服器做成時,就擁有了可以由自己支配和修改的伺服器,同時也掌握了相關的專業理論。這種方式比較適合有一定專業基礎的人使用。優點是直觀,方向明確所以學習效率高。缺點是需求驅動,形成知識架構不容易完整。
2、系統掌握計算機專業理論:最好的書就是大學里的理論教科書,這些書不會去講解過於具體的計算機應用,而是從概念開始講起,力圖使學習者獲得一個完整的知識體系。只要以後碰到的工作和這個知識體系相關,自然就能很快學會。這種方式比較適合沒有基礎,或者希望深入學習的人使用,優點是知識架構會逐漸趨於完整,理論功底扎實,後勁足。缺點是花費時間長,方向不明確所以學習效率低,初期會因缺少實踐而進展緩慢。
Ⅲ unix環境高級編程 可以用linux學嗎
UNIX環境高級編程》這本書對於初學者來說還太難。建議從基礎開始學習。 linux: Linux是一套免費使用和自由傳播的類Unix操作系統,是一個基於POSIX和UNIX的多用戶、多任務、支持多線程和多CPU的操作系統。它能運行主要的UNIX工具軟體、應用程序和中國絡協議。它支持32位和64位硬體。Linux繼承了Unix以中國絡為核心的設計思想,是一個性能穩定的多用戶中國絡操作系統。 Linux操作系統誕生於1991 年10 月5 日(這是第一次正式向外公布時間)。Linux存在著許多不同的Linux版本,但它們都使用了Linux內核。Linux可安裝在各種計算機硬體設備中,比如手機、平板電腦、路由器、視頻游戲控制台、台式計算機、大型機和超級計算機。 嚴格來講,Linux這個詞本身只表示Linux內核,但實際上人們已經習慣了用Linux來形容整個基於Linux內核,並且使用GNU 工程各種工具和資料庫的操作系統
Ⅳ 急!!!看完"unix環境高級編程"和"unix網路編程"兩卷可以干什麼
你這些疑問的結症在於,你沒有理解什麼是應用程序。
站在運行空間的角度來看,運行在內核空間的,我們稱之為內核程序,運行在用戶空間的,我們稱之為應用程序。
如果把一個完整的應用程序產品再細分,其實還可以簡單的分為系統層和業務邏輯層和界面(自底向上的順序)。
你用QT來做界面,也就是位於應用程序的最高層。而"unix環境高級編程"和"unix網路編程"是講的系統層的東西。
舉個例子來說,你點開一個編輯器,寫入幾個字,然後保存。這個編輯器就是一個應用程序,你點開編輯器後看到的東西就是界面,你寫幾個字保存時,編輯器就會調用API——write函數來寫磁碟,這個就是系統層的東西。這個write函數應該怎麼用,用時要注意哪些情況,要不要使用緩沖等,如何使用緩沖等,這些知識就是"unix環境高級編程"就會告訴你。
Ⅳ 學UNIX環境高級編程需要什麼基礎
我們用這本書當教材的。。
教授一直強調去學 man page的
大多都講得挺透徹的,包括用法結構、相關函數啊都涵括在裡面了
我自己覺得看著還是挺有用的
書上一般不會講得這么詳細的
Ⅵ unix環境編程是什麼意思
你已經理解了70%,unix是一種語言、一個操作系統,linux就是它的一個山寨版。比windows等操作系統都要穩定。像一些銀行的伺服器都是unix的,安全穩定。
Ⅶ unix環境高級編程主要講什麼的
進程,線程,信號量編程; 資料庫開發; 底層通訊,太多了
Ⅷ unix高級環境編程 應該怎麼使用
Stevens著有三大本:UNIX環境高級編程、TCP/IP詳解、UNIX網路編程。
我是抱著學習網路編程進而閱讀web framework源碼來學習它們的。
另外也是想提升一下自己的編程素養,為以後看kernel源碼什麼的做鋪墊。
首先我是買了這本書,另外兩套暫時沒買。
開始也是各種不解,我就是想內核究竟幹些啥事,如何通過system_call與之通信?
其實讀這些書需要一些基礎的。
操作系統原理、gcc、shell等等。
其實我也沒全看完,建議先把環境裝好(編譯apue.h),然後一個一個運行書中示例。當然不是盲目的學,要知道自己差那一塊就補那塊。
Ⅸ unix環境高級編程,適合初學者嗎
我跟你說說我看APUE的經歷。在看APUE之前,我的Linux知識已經積累很多了,C也是特別熟悉,以及C++,但是第一次看APUE還是讓人很沮喪的,中途而廢,因為裡面的很多問題是完全之前沒想過,接觸過的,知識儲備不夠,所以我放了差不多半年,這半年我補了很多知識,看了基本Linux系統編程入門的書籍,了解了GCC、GDB的基本使用,學會了vim,學了些進程線程的東西。
第二次看APUE,我堅持看完了,收獲很大,但是不懂的東西還是很多。
第三次看APUE,對很多問題有自己的看法,並且開始去嘗試其中的一些常式。
第四次看APUE,我就能夠很順利的梳理APUE的結構了,如果開發中遇到什麼問題,我知道去哪兒找答案。
第五次看APUE,我粗略的翻翻就知道哪些地方由於長期不用變得生疏。
APUE是本聖經,可以說不多翻幾次是看不出它是個好東西的。幾年下來APUE被我都快翻爛了,確實學到不少東西。不管做不做系統看法,當看一些文檔時我都能游刃有餘了。
我的建議,早看。早看早入門,只要你的C語言知識足夠,Linux知識儲備足夠,早看!
Ⅹ unix環境高級編程第三版好不好
簡稱APUE, unix/linux 系統編程必備寶典, 第三版應該是2013的新版,據說有一些更新 (The new third edition supports today』s leading platforms, reflects new technical advances and best practices, and aligns with Version 4 of the Single UNIX Specification. )
如果你沒有之前的版本,又想了解 unix/linux 系統編程,那麼這本書絕對是要買的。 我目前手上的是第二版。
這絕對是聖經寶典級別的參考書,必備。