20145129 《Java程序设计》第10周学习总结
教材学习内容总结
- 网络编程
- 计算机网络概述: 网络编程的实质就是两个(或多个)设备(例如计算机)之间的数据传输。
- 网络中的每一个设备都会有一个惟一的数字标识,这个就是IP地址,在计算机网络中,如今命名IP地址的规定是IPv4协议,该协议规定每一个IP地址由4个0-255之间的数字组成.
- 一个IP地址能够对应多个域名,一个域名只能对应一个IP地址。
- 在网络中传输的数据,所有是以IP地址做为地址标识,因此在实际传输数据之前须要将域名转换为IP地址,实现这种功能的服务器称之为DNS服务器,也就是通俗的说法叫作域名解析。
- 每一个端口惟一的对应一个网络程序,一个网络程序可使用多个端口。
- 网络编程概述
- 网络编程就是两个或多个程序之间的数据交换
- 在网络通信中,第一次主动发起通信的程序被称做客户端(Client)程序,简称客户端,而在第一次通信中等待链接的程序被称做服务器端(Server)程序,简称服务器。
- 网络编程的结构被称做客户端/服务器结构,也叫作Client/Server结构,简称C/S结构。
- 使用浏览器做为客户端的结构被称做浏览器/服务器结构,也叫作Browser/Server结构,简称为B/S结构。
- 另外简单的介绍一下P2P(Point to Point)程序,常见的如BT、电驴等。P2P程序是一种特殊的程序,应该一个P2P程序中既包含客户端程序,也包含服务器端程序.
- 在实际进行数据交换时,为了让接收端理解该数据,那么就须要规定该数据的格式,这个数据的格式就是协议。
- 网络通信方式
- 在现有的网络中,网络通信的方式主要有两种: TCP(传输控制协议)方式、UDP(用户数据报协议)方式。
- TCP(传输控制协议)方式:使用该种方式进行网络通信时,须要创建专门的虚拟链接,而后进行可靠的数据传输,若是数据发送失败,则客户端会自动重发该数据。
- UDP方式:就相似于发送短信,使用这种方式进行网络通信时,不须要创建专门的虚拟链接,传输也不是很可靠,若是发送失败则客户端没法得到。
- TCP须要创建专用的虚拟链接以及确认传输是否正确,因此使用TCP方式的速度稍微慢一些,并且传输时产生的数据量要比UDP稍微大一些。
- 网络编程步骤:
- 客户端网络编程步骤:创建网络链接、交换数据、关闭网络链接
- 服务器端网络编程步骤:监听端口、得到链接、交换数据、关闭链接
- TCP编程
- 如何复用Socket链接?创建链接之后,将数据交换的逻辑写到一个循环中
- 如何使服务器端支持多个客户端同时工做?当服务器端接收到一个链接时,启动一个专门的线程处理和该客户端的通信。按照这个思路改写的服务端示例程序将由两个部分组成,MulThreadSocketServer类实现服务器端控制,实现接收客户端链接,而后开启专门的逻辑线程处理该链接,LogicThread类实现对于一个客户端链接的逻辑处理,将处理的逻辑放置在该类的run方法中
教材学习中的问题和解决过程
暂无java
代码调试中的问题和解决过程
暂无编程
其余(感悟、思考等,可选)
对学习网络编程更加具备逻辑性,了解基本知识,并熟知两种通信方式以及编写方法。浏览器
学习进度条
目标 |
3000行 |
15篇 |
300小时 |
|
第一周 |
50/50 |
2/2 |
14/14 |
|
第二周 |
100/150 |
1/3 |
10/24 |
|
第三周 |
300/450 |
1/4 |
15/39 |
|
第四周 |
350/800 |
1/5 |
50/74 |
|
第五周 |
200/1000 |
1/6 |
30/104 |
|
第六周 |
500/1500 |
2/8 |
26/130 |
|
第七周 |
200/1700 |
2/10 |
20/130 |
|
第八周 |
316/2016 |
2/12 |
20/150 |
|
第九周 |
316/2016 |
2/12 |
20/150 |
|
第十周 |
532/2548 |
2/14 |
20/170 |