20170908工作日记--UML画类图、HTTP协议、Volley源码走读

随手搜了一下,Android studio居然能够自动帮追我们生成UML的类图,简直太棒了http://www.gcssloop.com/course/UsePlantUMLInAS(Win),具体做法博客地址。

试了一下并不是根据Java文件自动生成的,而是需要自己写dot语法的相关代码,效果图如下,遂放弃

1.UML绘制类图

使用在线网站 https://www.processon.com/ 进行类图绘制。掌握基础绘制,如接口实现,继承关系等。

 类之间的几种关系:

1.泛化--子类和父类的继承关系

2.实现--类与接口的关系,表示类是接口的行为实现

3.聚合--是整体与部分的关系,部分可以脱离整体存在。例如:汽车和轮胎,轮胎是汽车的一部分,但是轮胎可以单独存在

4.组合--是整体与部分的关系,部分无法脱离整体存在。例如:脸和嘴唇,嘴唇无法脱离脸而单独存在。

总结:各种关系的强弱关系顺序如下:

参考博客http://www.360doc.com/content/13/0304/13/10504424_269223190.shtml,分类比较清楚

2. HTTP的User-Agent信息

在使用HTTP协议进行请求时,HTTP协议头部会添加User-Agent,该信息可以标识请求者的一些信息,如什么浏览器类型和版本、操作系统,使用语言等信息。例如:通过抓包分析,得知IE,Firefox,傲游几个浏览器中 User-Agent的信息都为 “Mozilla/....”开头

时间: 2024-10-29 04:31:13

20170908工作日记--UML画类图、HTTP协议、Volley源码走读的相关文章

Astah画类图——第八周作业

使用Astah画UML类图经验总结 从学习需求工程与UML开始,就开始接触到Astah这款软件,但是当时完全是为了对UML各种图的了解加深才使用了这款软件.当时画图,都是完全凭借自己想,并没有考虑实际情况,而且画的图都是很简单的,甚至有些图是已经给定的,只要在软件上再画一遍来了解软件的使用.所以当时,对与这款软件并没有很好的使用.在最近进行软件项目管理的时候,需要画类图,我再次使用了这个软件.由于这次的工程涉及的类很多(和我之前遇到的相比),所以画了比较长的的时间,我也从这个软件中,摸索到了一些

EA UML 建模——类图

Enterprise Architect(EA) 是一个功能比较强悍的建模工具,本篇文章仅使用其 UML 建模功能,其他更多功能,可以Google. 一.简单梳理C#中类与类.类与接口.接口与接口的关系 一.继承 (子类 : 父类.子接口 : 父接口) Is 子类 : 父类 abstract class Fruit{} class Apple : Fruit{} 子接口 : 父接口 interface IBase{} interface ISon : IBase{} 二.实现 (类 : 接口)

vscode用yuml画类图

vscode用yuml画类图 最近在找画类图的工具,发现vscode一款插件很好用,还支持markdown.vscode插件中直接搜索yuml安装即可. 文件后缀.yuml. 文件开头第一行这样写// {type:class},大概是表示类图的意思,不写会报错. 依赖 依赖关系在yuml中用"[A]1^*[B]"来表示 // {type:class} [A||A();Function(B b)]1-.-*>[B] 关联 关联关系在yuml中用"[A|B*b;|]1-*&

Qt Quick 图像处理实例之美图秀秀(附源码下载)

在<Qt Quick 之 QML 与 C++ 混合编程详解>一文中我们讲解了 QML 与 C++ 混合编程的方方面面的内容,这次我们通过一个图像处理应用,再来看一下 QML 与 C++ 混合编程的威力,同时也为诸君揭开美图秀秀.魔拍之类的相片美化应用的底层原理. 项目的创建过程请参考<Qt Quick 之 Hello World 图文详解>,项目名称为 imageProcessor ,创建完成后需要添加两个文件: imageProcessor.h 和 imageProcessor.

Netty工具类HashedWheelTimer源码走读

1. 简单介绍. A Timer optimized for approximated I/O timeout scheduling. 关于Timer的介绍可以看看这篇文章, 写得不错 :  http://novoland.github.io/%E5%B9%B6%E5%8F%91/2014/07/26/%E5%AE%9A%E6%97%B6%E5%99%A8%EF%BC%88Timer%EF%BC%89%E7%9A%84%E5%AE%9E%E7%8E%B0.html 可以看到, HashedWhe

【java项目实践】详解Ajax工作原理以及实现异步验证用户名是否存在+源码下载(java版)

一年前,从不知道Ajax是什么,伴随着不断的积累,到现在经常使用,逐渐有了深入的认识.今天,如果想开发一个更加人性化,友好,无刷新,交互性更强的网页,那您的目标一定是Ajax. 介绍 在详细讨论Ajax是什么之前,先让我们花一分钟了解一下Ajax做什么.如图所示: 如上图展示给我们的就是使用Ajax技术实现的效果.伴随着web应用的越来越强大而出现的是等待,等待服务器响应,等待浏览器刷新,等待请求返回和生成新的页面成为了程序员们的最最头疼的难题.随着Ajax的出现使web应用程序变得更完善,更友

spring启动component-scan类扫描加载过程---源码分析

有朋友最近问到了 spring 加载类的过程,尤其是基于 annotation 注解的加载过程,有些时候如果由于某些系统部署的问题,加载不到,很是不解!就针对这个问题,我这篇博客说说spring启动过程,用源码来说明,这部分内容也会在书中出现,只是表达方式会稍微有些区别,我将使用spring 3.0的版本来说明(虽然版本有所区别,但是变化并不是特别大),另外,这里会从WEB中使用spring开始,中途会穿插自己通过newClassPathXmlApplicationContext 的区别和联系.

死磕 Java 系列(一)&mdash;&mdash; 常用类(1) String 源码解析

写在前面 这是博主新开的一个 java 学习系列,听名字就可以看出来,在这一些系列中,我们学习的知识点不再是蜻蜓点水,而是深入底层,深入源码.由此,学习过程中我们要带着一股钻劲儿,对我们不懂的知识充满质疑,力求把我们学过的知识点都搞清楚,想明白. 一.引言 在 java 的世界里,存在一种特殊的类,它们的创建方式极为特别,不需要用到 new XXX(当然也可以用这种方式创建), 但是却大量出现在我们的代码中,那就是 String 类.作为日常中使用频率最高的类,它是那么普通,普通到我们从来都不会

【小白的java成长系列】——String类的深入分析(基于源码)

接着前面面向对象来说吧~今天来说说String类..其实String类也包含很多面向对象的知识的~ 首先来问一个问题:我们在开发过程中,如果要使用一个类的话,就要创建对象,这句话没什么问题吧~在实际开发的时候确实是这样的,只有创建了对象才能真正的去使用一个普通的类,我们一般创建对象,几乎所有的类创建对象都是要通过new关键字来创建的~ 问题就来了..为什么我们的String可以直接写成String str = "abc";这样子呢? 当然String类也可以通过new来创建对象的...