1. 我看UNIX环境高级编程这本书,前面两章很难,看不懂.但后面就比较简单了,这是为什么
前两张应该是
Chapter 1. UNIX System Overview
Chapter 2. UNIX Standardization and Implementations
主要是 unix 操作系统的简单介绍和标准化的相关问题,和编程没有直接关系,如果你从来没用过 unix/linux, 可能会对第一章有些迷惑。 第二章是一些学院派的东西,对普通人来说没必要掌握,大概有个印象就行了。 由于之后几张才是真正介绍unix编程的实际内容,所以你能看懂很正常,都是c语言。
2. 《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、系统掌握计算机专业理论:最好的书就是大学里的理论教科书,这些书不会去讲解过于具体的计算机应用,而是从概念开始讲起,力图使学习者获得一个完整的知识体系。只要以后碰到的工作和这个知识体系相关,自然就能很快学会。这种方式比较适合没有基础,或者希望深入学习的人使用,优点是知识架构会逐渐趋于完整,理论功底扎实,后劲足。缺点是花费时间长,方向不明确所以学习效率低,初期会因缺少实践而进展缓慢。
3. 初学Linux,想买本书看看,《UNIX环境高级编程》和《鸟哥的Linux私房菜 基础学习篇》哪个好
<<UNIX环境高级编程>>是讲linux下的编程的.
<<鸟哥的Linux私房菜 基础学习篇>>是讲linux的系统管理的.
如果你是要学编程,那么两本书可能都需要,但是如果你只是要使用这个系统的话,那么<<私房菜>>这本书就足够了.
当你入门之后,你自然就知道你接下来需要的是什么鸟.咔咔!
4. UNIX环境高级编程
ubuntu是可以的。编译环境的话装好ubuntu之后就自带了,你可以打开终端输入gcc -v就知道你的编译器版本了。还有你可能需要装其他的库文件。
那本书的话建议你在没有了解linux系统的时候,最好从基础开始学起,不管怎么说,里面需要熟悉很多linux的命令,尽管他的名字是《 UNIX环境高级编程》,但是他在序言里面说了,第二版的书涉及linux。
你最好还是去了解一下系统的命令怎么用,然后再去学习。
5. UNIX环境高级编程(第2版) UNIX网络编程(卷2):进程间通信(第2版)这两本书哪个好
我把三本都买了
环境高级编程:讲解unix api的,所以会涉及到其他两本的一些api,但讲解不多。
网络编程卷一:讲解套接字socket编程的,重点讲网络编程的方方面面,比如协议、服务器架构、io使用。
网络编程卷二:讲解进程间通信的,这是相对于卷一的,卷一是网络通信,而卷二是单台机子的进程、线程之间的通信。
=========================================================================
所以这三本都有不同侧重,我一般以卷一卷二为主,高级编程为辅,这三本都是工作后常用的资料书,建议备齐。
另外如有兴趣可以读该作者的另外3本书:tcp/ip协议详解卷一、二、三,尤其是卷一超级有用
6. 看unix环境高级编程,对于学linux有帮助吗它们毕竟是两个系统,虽然是衍生来的。
看unix环境高级编程,对linux帮助微乎其微。。
对linux编程帮助很大。。
linux 系 类unix 系统,就是说,两个系统都是有联系的
我们学的都是unix编程,但用在linux上,当然会有不同,这个改改就好
7. 急!!!看完"unix环境高级编程"和"unix网络编程"两卷可以干什么
你这些疑问的结症在于,你没有理解什么是应用程序。
站在运行空间的角度来看,运行在内核空间的,我们称之为内核程序,运行在用户空间的,我们称之为应用程序。
如果把一个完整的应用程序产品再细分,其实还可以简单的分为系统层和业务逻辑层和界面(自底向上的顺序)。
你用QT来做界面,也就是位于应用程序的最高层。而"unix环境高级编程"和"unix网络编程"是讲的系统层的东西。
举个例子来说,你点开一个编辑器,写入几个字,然后保存。这个编辑器就是一个应用程序,你点开编辑器后看到的东西就是界面,你写几个字保存时,编辑器就会调用API——write函数来写磁盘,这个就是系统层的东西。这个write函数应该怎么用,用时要注意哪些情况,要不要使用缓冲等,如何使用缓冲等,这些知识就是"unix环境高级编程"就会告诉你。
8. UNIX环境高级编程怎么样
所有程序都在四个UNIX平台下测试过,兼容性不用多说! 讲述的内容非常全面,原理讲得很透彻。每读完一章都有很多收获。 对于有经验的程序员,拿来做参看书也很合......
9. 我想问一下,我只学过C,如果我把这本《unix环境高级编程》书学完了可以找工作吗
这本书我看了3遍了。
总结一下:这本书讲的都是皮毛,靠这本书找工作不现实。 而且这本书是讲的是系统级编程,在实际应用中并不多,搞嵌入式的话可能比较合适。 做应用软件则不搭边了,学这本书主要是理解Linux系统常见函数和一些机制。
路还很长,一本书远远不够。
10. 《UNIX环境高级编程》这本书怎么样,网上评论千篇一律都说好,但是也有人说并不是很经典啊
Linux 基础和C学玩之后才能看这本书,否则就把自己绕进去了 还打击了信心。就比如你至少要知道mian函数的两个参数的含义什么的,这确实是一本经典的书,研究透彻了工资1W应该没问题吧。所有unix系列操作系统到了这一层(shell下面一层)基本都差不多了,为内核的学习打下基础。所以好好学习这本书是很受用的