《Java程序设计》第10周学习总结

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方法中

教材学习中的问题和解决过程

暂无

代码调试中的问题和解决过程

暂无

其他(感悟、思考等,可选)

对学习网络编程更加具有逻辑性,了解基本知识,并熟知两种通讯方式以及编写方法。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 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
posted @ 2016-05-08 15:52  20145129  阅读(178)  评论(1编辑  收藏  举报