学习网络编程的十个步骤

结合python互动平台,实践socket api的用法,比如socket函数怎么使用,bind怎么使用等等。在互动过程中,我们可以变换参数,看看调用结果如何。

  经过多年的网络编程实践之后,个人觉得初学网络编程者可以从以下几个步骤开展:

  1)下载一个可以互动的学习工具,通过这个与这个工具互动,我们可以及时的学到每个api的结果如果。我个人强烈推荐一个互动好工具,即python,下载地址http://www.python.org 对于有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)学习设计模式、操作系统知识比如线程、进程、同步等。

毕业后头五年决定你的一生                                       10类最急需IT人才:Java开发者居首       

海量Android教程、开发资料和源码                         给将成为“Android高手”的10个建议 

成为Java高手的25个学习目标--非常经典               Android 4.1果冻豆新特性详解 

Java侵权诉讼Google获胜,Android厚积薄发          面试必备:Android笔试总结 

Android高手必须掌握的28大内容和10个建议       Android平台研发人才缺口30万 

Android开发环境安装和配置步骤详细图解            2012国内移动App开发者大调查结果 

Windows 7下搭建android开发环境步骤图解        Android 4.0的30个突出的新特性 

Android高手要经过的6个阶段和6个境界               linux下搭建Android开发环境步骤 

从IT菜鸟变为“IT骨干开发者”的11个建议          程序员编程技术迅速提高的终极攻略 

2012世界各国人均GDP排名,中国超泰国              2012年全国各省平均工资排行 

2012年中国大学高校排行榜(580强排名)         中国各省市面积和人口数量排名 

中国百万开发者大调查:程序员的薪水不错         Java高手需要越过的10座高山

周立功谈嵌入式:我的25年嵌入式生涯                Android和Java语言的异同和关系 

华为中国区手机销量达千万,80%为智能机           谷歌Android碎片化严重

2012年中国各省GDP和人均GDP排名                 90后就业“钱景”:IT仍是最佳选择

2012全球城市竞争力500强,69个中国城市上榜   不要做浮躁的软件工程师 

2012年世界500强,79家大陆香港台湾公司上榜名单 给IT新兵的15个建议 

美国知名科技公司入门级软件工程师的薪水排名  回顾Java经过的风风雨雨 

71道经典Android面试题和答案--重要知识点都涉及到了 

芯片巨头海思和展讯:给中国芯片业带来信心    海量经典Java教程、学习资料和源码

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值