windows网络编程基础教程杨传栋(windows网络编程基础教程第二版)
想学IT应该买什么书看?
首先,我觉得你需要明确自己的发展方向,你想学习的课程起码串联起来是个完整的体系,以后能够帮助你就业
书籍整理如下:
C++开发
1.《C++ Primer》:全面学习C++的必备书籍
2.《Thinking in C++》:了解C++背后的一些机bai制
3.《深度探索C++对象模型》:深入了解C++,也是学习COM的必经之路
Windows平台
入门
1.《Windows程序设计》:这本书主要讲的是Windows API的使用,是Windows编程入门书籍。上册涉及到的知识基本上就够用了,时间不充裕的话阅读上册即可。
2.《Win32多线程程序设计》:Windows下多线程编程必备
3.《Windows核心编程》:Window平台基础知识:消息机制,内存管理,多线程,动态链接库等
4.《Windows网络编程》:介绍Windows下各种网络协议的开发和并发处理模型。
进阶
1.《深入浅出MFC》:Windows下编程,MFC虽然有些过时,但其机制还是有学习的价值。重点学习书中提到的MFC 6大机制
2.《COM本质论》:COM是Windows构建用户态的重要技术之一,Windows开发必修课,本书对COM的设计动机作了深入阐述
3.《深入解析ATL》:ATL全名Active Templete Library,是用C++的模版封装了COM,这本书主要讲的是对源码分析
4.《WTL White Paper》:WTL源自微软,基于ATL的一套开源模版库,主要用于界面编程和工具类的使用
5.《代码大全》:这边书主要讲的是工程编码规范
高级
1.《深入解析Windows操作系统》:Windows大牛书籍,讲的主要是Windows操作系统的内核原理
调试技术
1.《软件调试》
2.《Windows高级调试》
3.《windows用户态程序高效排错》
Linux平台
Linux内核
1.《Linux Kernel Development》/《Linux内核设计与实现》:Robert Love的著作,不厚的一本书,深入浅出地将Linux内核娓娓道来
Linux使用和Shell编程
1.《sed awk》/《sed与awk》:sed与awk都是Linux下常用的日志分析利器
Linux编程
1.《Beginning Linux Programming》/《Linux程序设计》:老牌的Linux编程入门书
2.《Advanced Programming in the Unix Environment》/《Unix环境高级编程》:对Unix编程环境做了细致的总结,涵盖了进程间通讯、网络通讯、文件系统等各方面的知识
网络编程
1.《TCP/IP Illustrated, Volume I》/《TCP/IP详解,卷一》:对理解TCP/IP协议的设计理念和协议细节有显著的帮助。
2.《Unix Network Programming》/《Unix网络编程》,卷一、卷二:网络编程方面难以逾越的著作,事无巨细、深入浅出,强烈推荐
对这些书目抱有100%的信心,全部掌握,融会贯通,即可打通奇经八脉,天下无双。
对了,你没有基础最好从c与c++基础开始。找些基础书开始看。
[C语言入门经典(第四版)].(美)霍顿.扫描版,《C++ Primer》就不错。
电脑编程入门书籍,应该先看什么
我转载的,感觉对你有用!!! 都是我看过或正要看的书,晾晾书架,希望对后来者也有一点作用,当年我也是浪费时间看了一些没有价值的书籍,颇为后悔,现将精华总结如下:
c语言篇:(虽有人说学C++不用先学c,但我颇不以为然,不知数据为何,又何来的封装继承多态)
1:c语言入门大学教程c语言谭浩强版足以。
2:windows c语言API编程基础,推荐《windows程序设计(第5版)》 Charles Petzold着,通过学习可对界面编程一览无遗,剩下的就是看怎样用c++进行包装,体会c++面向对象复用代码的威力了。
3:《TCP/IP协议及网络编程技术》 罗军舟等编着 清华大学出版社 国货上品,是应用c语言在windows下进行网络编程的好教材.也是使用c++进行网络编程的知识准备。
C++基础篇: 1:《C++Primer(3or4版)》入门第一部.
2:《深入浅出MFC》 侯捷着 国货精品,本应归入学习vc的范畴,但他实际是对widows API的c++框架介绍,用来做vc项目只能起辅助作用,对建立c++面向对象思想却多有启迪。
3: 《C++标准程序库》 侯捷/孟岩译 库是语言的延伸,学习c++不可不看。
4: 《C++实践之路》 周良忠译 一个计算器例子贯穿全书,几乎用到C++所有知识,真正的例子驱动教学法。
面向对象技术:
1: 《设计模式-可复用面向对象软件的基础》 美国四人帮的跨时代大作 230页却足以开启一个时代,真正体现了面向对象技术的价值,是代码复用的经典之作,不能不看。
2: 《UML Distilled》 UML建模很火欧,但对我来说看主要目的是看懂类关系草图,这本小书足以。
c++进阶篇
1: 《C++高级编程》 刘鑫等译 有对c++知识的精要总结其中包括如何更好地实现重用、如何有效地测试和调试等C++专业人员常用的一些技术与方法,值得了解。
2: 《Effective C++》,《必知必会》,《c++编程规范》 三本小书却足以检测你对c++知识掌握的真正情况。
c++高阶篇:(本人仍在阅读中)
1: 《深入探索c++对象模型》 侯捷译 对C++内存布局的深入介绍,是真正理解com/corba等组件技术的必备基础。
2: 《C++ Templates中文版》 陈伟柱译 模板圣经,现代c++发展的前沿泛型编程思想总结 (是看懂boost类库的知识储备)。
3:《C++设计新思维》 侯捷/於春景译 泛型编程与设计模式的综合应用,锻炼思维的好书,(已经买了半年多了,等我有空时一定看'_')。
其他:
C++编程思想,C++语言之父的c++语言特别版 等书本人只在书店里见过,没有阅读就不敢置评了。
(一)语言入门:
《C++ Primer》
最新版本:第三版(第四版国外已上架,国内一些网上书店也在预订中)
适合有丰富C经验,缺乏C++经验的。不过我个人一直认为此书带着过于强烈的C语言的痕迹,对于C++的学习未必是好事。
《The C++ Programming Language》/《C++程序设计语言》
最新版本:第三版特别版
简称TC++PL,有其他语言的丰富经验的。(也有人简称之为“TCPL”,但需与另一本《The C Programmer Language》区分开来)
《Essential C++》
《Accelerated C++》
这两本薄一些,都是不错的选择。《Accelerated C++》本人没有读过,从各方面的评价来看,完全值得推荐。
以上几本书都有相应的中文版,而且翻译的质量都不错。上面的书未必都需要读一遍,但无论如何,TC++PL是应该阅读的。
(二)进阶A:
这个路线侧重于语言本身
《Effective C++》
最新版本:第二版(第三版国外已上架,国内一些网上书店也在预订中)
简称EC。C++程序员必读!很多时候,我们说C++圣经不是指TC++PL,而是这一本。《The Pragmatic Programmer》一书中写到:“一旦你发现自己要参与C++项目的开发,赶快跑(不要走)到书店去购买Scott Mayer的《Effective C++》,可能还要《More Effective C++》”。
《C++ Coding Standards: 101 Rules, Guidelines, and Best Practices》/《C++ 编程规范》
个人认为此书应为C++程序员必备的案头书。几乎Effective系列和Exceptional系列都在这里得到了总结。最新的模版、异常的业界经验都在这里的到了体现。可能的唯一缺陷就是对一个新手而言,关于“为什么这么做”的问题,解释的不够。
我的看法是:如果你不理解其中的条款,记忆,并且照做;如果你理解其中的条款,我猜你一定会同意书中的观点。我认为这本书中的内容至少在2009年以前都不会过时,人们将广为传诵它制定的101条戒律。
还不知道他的简称,也许“101”会成为一个候选者?
提到《Effective C++》,那么另外三本书一一浮出水面:
《More Effective C++》
《Exceptional C++》
《More Exceptional C++》。
新书《Exceptional C++ Style》也是值得一看的好书。
上述几本书,一本也不应该放过。
个人建议上述书籍按顺序阅读。并且,在将来反复阅读这几本书。
如何学习网络编程
具体到编程,用java来实现网络编程是很容易的,可以作为网络编程的入门。使用C++和winsock相对复杂一些。总之看实际需要了。 你好初学网络编程者可以从以下几个步骤开展:1)下载一个可以互动的学习工具,通过这个与这个工具互动,我们可以及时的学到每个api的结果如果。我个人强烈推荐一个互动好工具,即python,下载地址
对于有c/c++或java基础的朋友通过一两个礼拜的时间就可以上手了,另外个人建议初学者可以学习dive into python。2)掌握网络编程中会用到的几个基本概念和内涵,比如IP地址,port号,socket等3)记住和消化网络编程C/S模型,把server和client端编程的常用模式理解和消化4)花几天时间学习socket api集,api集可以分为下面几大类:创建 socket bind listen accept收发 read/recv/recvfrom write/send/sendto关闭 close shutdown参数 getsockopt/setsockopt地址 gethostbyaddr getaddrbyhost,...在学习这些api时候,可以先关注在函数功能,参数意义上5)结合python互动平台,实践socket api的用法,比如socket函数怎么使用,bind怎么使用等等。在互动过程中,我们可以变换参数,看看调用结果如何。比如,创建一个tcp socket的语法如下:socket(AF_INET,SOCK_STREAM)创建一个udp socket的语法如下:socket(AF_INET,SOCK_DGRAM)6)学习socket server端编程实现简单规约比如echo,time等,然后通过cmd中的telnet来测试。7)学习I/O模型,比如阻塞、非阻塞和反应式(select,poll,WaitForMultipleObject)等8)学习Richard Stevens的《Unix网络编程》,深入学习其中的api原理以及服务端设计原理,并通过代码编写。9)下载高性能网络编程框架twisted,笔者强烈推荐,它将使你的网络编程效率提高10倍以上。10)学习设计模式、操作系统知识比如线程、进程、同步等。邻家阿呆 回答采纳率:29.0% 2008-12-18 09:55检举我是高手,我可以教你1.明确学习目的学习编程对大多数IT业人员来说都是非常有用的。学编程,做一名编程人员,从个人角度讲,可以解决在软件使用中所遇到的问题,改进现有软件,可以为自己找到一份理想的工作添加重要得砝码,有利于在求职道路上谋得一个好的职位;从国家的角度,可以为中国的软件产业做出应有的贡献,一名优秀的程序员永远是被争夺的对象。学习编程还能 锻炼思维,使我们的逻辑思维更加严密;能够不断享受到创新的乐趣,将一直有机会走在高科技的前沿,因为程序设计本身是一种创造性的工作。知识经济时代给我们带来了无限的机会,要想真正掌握计算机技术,并在IT行业里干出一番事业来,有所作为,具有一定的编程能力是一个基本条件和要求。2.打好基础学编程要具备一定的基础,总结之有以下几方面:(1)数学基础 从计算机发展和应用的历史来看计算机的数学模型和体系结构等都是有数学家提出的,最早的计算机也是为数值计算而设计的。因此,要学好计算机就要有一定的数学基础,出学者有高中水平就差不多了。(2)逻辑思维能力的培养 学程序设计要有一定的逻辑思维能力,“逻思力”的培养要长时间的实践锻炼。要想成为一名优秀的程序员,最重要的是掌握编程思想。要做到这一点必须在反复的实践、观察、分析、比较、总结中逐渐地积累。因此在学习编程过程中,我们不必等到什么都完全明白了才去动手实践,只要明白了大概,就要敢于自己动手去体验。谁都有第一次。有些问题只有通过实践后才能明白,也只有实践才能把老师和书上的知识变成自己的,高手都是这样成材的。
学网络编程需要学习那些课程?
这是网络编程的全部课程,要是感兴趣的话可以了解一下:
第一阶段
1、计算机操作基础
2、Office办公自动化
3、计算机组装与维护
4、C语言
第二阶段
1、SQL Server2005数据库设计
2、和高级查询
3、数据结构
4、C#面向对象程序设计
5、HTML5与CSS3开发
6、JavaScript
7、jQuery高级编程
8、PHP开发
第三阶段
APP Development
1、JavaScript特效制作
2、jQuery应用开发
3、HTML5与CSS3开发
4、Java面向对象程序设计
第四阶段
JAVAWEB Development
1、产品流程应用
2、移动平台界面设计
3、Oracle数据库开发
4、JavaWeb应用开发
Mobile APP Development
1、实训一:WEB前端设计与开发
2、实训二:J2EE项目开发
学网络编程要看哪些书?推荐一些网络编程方面的书籍
学习网络编程不建议用现成的库。就算要用也不推荐QT。
Windows下请看《windows网络与通信程序设计》
Linux请看《unix环境高级编程》(必读)、《Unix网络编程》、《TCP/IP详解》
另外一些著名的网络库:ACE, Boost::ASIO, libevent
中间件:ICE(ICE也提供了通信能力,但个人不太推荐使用)
至于基础方面,TCP/IP等理论还是必须要知道的,所以学习网络通信最好从socket开始。从Linux下着手最佳。
初学计算机编程语言推荐几本书
来自某互联网大咖的推荐与建议:对于想要进入IT行业的学习者来说,除了学习技术知识外、建议再学习思维能力以及了解职场。掌握意向岗位要求的技术,学习寻找问题、解决问题的思维能力,提前了解职场利于自身职业发展。精心挑选18本优秀书籍(技术与思维能力),送给当代大学生。
【10本】互联网类(与相关职位相匹配):
《人人都是产品经理》
作者:苏杰 - 电子工业出版社
知识匹配的岗位:产品经理
特点与推荐理由:
● 产品经理入门级书籍
● 丰富的工作经验分享
● 系统性梳理用户、需求、项目、团队、战略、修养六大话题
《HTML5布局之路》
作者:刘国利 - 清华大学出版社
知识匹配的岗位:HTML5 (WEB前端) 开发工程师
特点与推荐理由:
● 依照网站开发流程进行讲解,更易吸收
● 提供丰富的学习方法以及开发实战经验
● 理论与实践相结合,提供丰富的案例及面试真题
● 最适合初学者使用的HTML5技术入门书籍
《Head First》 系列书籍
作者:[美] 弗里曼(Freeman E.)等 - 中国电力出版社
知识匹配的岗位:计算机类IT开发岗位
特点与推荐理由:
● IT技术入门书籍系列
● 生动有趣、图文并茂
● 易理解入门
《程序员第二步——从程序员到项目经理》
作者:尹华山 - 人民邮电出版社
知识匹配的岗位:项目经理(技术经理)
特点与推荐理由:
● 技术思维到管理思维的改变
● 适用于技术人员开拓视野
● 从不同视角来审视工作、生活与自己
《SEO实战密码》
作者:昝辉 - 电子工业出版社
知识匹配的岗位:SEO工程师
特点与推荐理由:
● SEO百科全书类的入门指导
● 理论与实践相结合
● 从SEO原理到工具再到技巧解析
《乌合之众:大众心理研究》
作者:[法] 古斯塔夫·勒庞 - 新世界出版社
知识匹配的岗位:产品及运营基础理论
特点与推荐理由:
● 大众心理学
● 群体理论的经典著作
● 颠覆人们对群体的认知,对群体层层分析、逐步推进
《部落的力量》
作者:[美]戴夫·洛根 等 - 中国华侨出版社
知识匹配的岗位:产品及运营基础理论
特点与推荐理由:
● 互联网时代团队管理圣经
● 依靠部落的力量,掌握撬动团队飞跃的4个杠杆点
● 指导管理者如何激发每一个人内在潜能
《从零开始做运营》
作者:张亮 - 中信出版社
知识匹配的岗位:运营(新媒体运营等)
特点与推荐理由:
● 运营入门级书籍
● 运营工作相关内容广泛
● 全面科学的运营思维介绍与案例解析
● 介绍相关运营经验
《重新定义公司 谷歌是如何运营的》
作者:[美] 埃里克·施密特等 - 中信出版社
知识匹配的岗位:CEO
特点与推荐理由:
● 实用、易理解的公司管理指南
● 解读谷歌如何颠覆传统的MBA模式
● 一本充满能量、令人兴奋的创业入门书
《重新定义团队 谷歌如何工作》
作者:[美] 拉斯洛·博克 - 中信出版社
知识匹配的岗位:人事经理(人力资源管理)
特点与推荐理由:
● 揭秘谷歌的人才和团队管理的核心法则
● 《纽约时报》畅销榜第一名
● Business Insider 2015最佳商业书籍
● 以人为本企业的团队组建和管理原则
【8本】思维能力与职场知识类:
《谁动了我的奶酪》
作者:[美] 斯宾塞·约翰逊 - 中信出版社
相关思维能力:跳出适应区、目标
特点与推荐理由:
● 寓言故事
● 如何面对变化
● 在生活与工作中得到更多成就感
《致加西亚的信》
作者:[美] 阿尔伯特·哈伯德
相关思维能力:执行力
特点与推荐理由:
● 职场畅销书
● 提高执行力的方法
● 对自己负责
《把时间当作朋友》
作者:李笑来 - 电子工业出版社
相关思维能力:时间管理
特点与推荐理由:
● 时间管理是成功的关键所在
● 学会打开心智
● 从心智成长的角度谈时间管理
《杜拉拉升职记(共4册)》
作者:李可
相关思维能力:职场故事
特点与推荐理由:
● 职场故事
● 职场指南
● 帮助职场新人了解职场规则
《如何阅读一本书》
作者:[美] 莫提默·J.艾德勒 等
相关思维能力:阅读方法、学习方法
特点与推荐理由:
● 学习阅读方法与能力
● 学会梳理书籍骨架
● 不同书籍适用的不同阅读方法
《学会提问》
作者:[美] 尼尔·布朗 等 - 机械工业出版社
相关思维能力:提问方法、如何思考问题
特点与推荐理由:
● 批判性思维指南
● 锻炼批判性思维,提出好问题
● 学会理性分析推理
● 克服偏见对判断的影响
《金字塔原理 思考、表达和解决问题的逻辑》
作者:[美] 芭芭拉·明托 - 南海出版公司
相关思维能力:如何思考、表达、解决问题
特点与推荐理由:
● 学会问题思考的逻辑与练习
● 掌握语言表达的逻辑与练习
● 解决问题的方法论与练习
《卓有成效的管理者》
作者:[美] 彼得·德鲁克 - 机械工业出版社
相关思维能力:自我管理、团队管理
特点与推荐理由:
● 现代管理之父著作之一
● 管理者应如何做到卓有成效
● 管理者应具备哪些特征