• 20155211 2016-2017-2 《Java程序设计》第十周学习总结


    20155211 2016-2017-2 《Java程序设计》第十周学习总结

    教材学习内容总结

    • 网络编程的实质就是两个(或多个)设备(例如计算机)之间的数据传输
    • 在实际传输数据以前需要将域名转换为IP地址,实现这种功能的服务器称之为DNS服务器,也就是通俗的说法叫做域名解析
    • 在现有的网络中,网络通讯的方式主要有两种:
      • TCP(传输控制协议)方式
      • UDP(用户数据报协议)方式
    • 客户端(Client)是指网络编程中首先发起连接的程序,客户端一般实现程序界面和基本逻辑实现,在进行实际的客户端编程时,无论客户端复杂还是简单,以及客户端实现的方式。
    • 客户端的编程主要由三个步骤实现:
      • 建立网络连接
      • 交换数据
      • 关闭网络连接
    • 服务器端(Server)是指在网络编程中被动等待连接的程序,服务器端一般实现程序的核心逻辑以及数据存储等核心功能。
    • 服务器端的编程步骤和客户端不同,是由四个步骤实现,依次是:
      • 监听端口
      • 获得连接
      • 交换数据
      • 关闭连接
    • InetAddress类的功能是代表一个IP地址,并且将IP地址和域名相关的操作方法包含在该类的内部
    • 在客户端网络编程中,首先需要建立连接,在JavaAPI中以java.net.Socket类的对象代表网络连接,所以建立客户端网络连接,也就是创建Socket类型的对象,该对象代表网络连接。
    • 客户端程序需要完成的处理为:
      • 客户端发送协议格式的生成
      • 服务器端反馈数据格式的解析
    • 网络程序的功能都分为客户端程序和服务器端程序实现,下面先描述一下每个程序分别实现的功能:
      • 客户端程序功能:

        • 接收用户控制台输入
        • 判断输入内容是否合法
        • 按照协议格式生成发送数据
        • 发送数据
        • 接收服务器端反馈
        • 解析服务器端反馈信息,并输出
      • 服务器端程序功能:

        • 接收客户端发送数据
        • 按照协议格式解析数据
        • 判断数字是否是质数
        • 根据判断结果,生成协议数据
        • 将数据反馈给客户端

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

    本周学习的不是教材而且计算机网络是我们正在学习的课程,因而没有出现什么难以理解的问题

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

    同上

    代码托管

    (statistics.sh脚本的运行结果截图)

    上周考试错题总结

    • 在下面,你将看到一堆杂乱的类与接口,这是取自一个动作冒险游戏。你将看到代表游戏角色的类,以及武器行为的类。每个角色一次只能使用一个武器,但是可以在游戏的过程中换武器。你的工作是要弄清楚这一切. . .

    a) 把下面散乱的类画成一个UML类图, 找出一个抽象类、一个接口、以及四个具体类,画出类之间的关系:继承,实现接口

    King,Queen继承Character抽象类, AxeBehavior BowAndArrayBehavior实现WeaponBehavior接口
    Character依赖WeaponBehavior

    b) 把s e t W e a p o n ( ) 方法放到正确的类中。(Character中)

    结对及互评

    点评过的同学博客和代码

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

    这周相对之前学习内容相对轻松了一些,五一假期也给了我们一些能够复习回顾之前

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
      |
    

    | 第四周 | 532/400 | 1/1 | 20/25 | |

    尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
    耗时估计的公式
    :Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

    参考:软件工程软件的估计为什么这么难软件工程 估计方法

    • 计划学习时间:25小时

    • 实际学习时间:20小时

    • 改进情况:

    (有空多看看现代软件工程 课件
    软件工程师能力自我评价表
    )

    参考资料

  • 相关阅读:
    替换空格
    centos虚拟机 服务器搭建
    Java 深度遍历和广度优先遍历
    idea热部署Devtools
    idea字符编码设置
    idea破解详细教程
    Java序列化
    60+Git常用命令行
    LeetCode 236. 二叉树的最近公共祖先
    08 讲解v-cloak,v-text,v-html的基本使用
  • 原文地址:https://www.cnblogs.com/xxy9712/p/6767016.html
Copyright © 2020-2023  润新知