UML建模图实战(全)

一、前言


UML:Unified Modeling Language(统一建模语言),是程序员和架构师进行交流的语言,使用UML进行建模的作用有哪些:

  1. 可以更好的理解问题

  2. 可以及早的发现错误或者被遗漏的点

  3. 可以更加方便的进行组员之间的沟通

  4. 支持面向对象软件开发建模,可以更好的描述显示编程的情景。

  5. 对于复杂的系统来说,如果概要模型做的好,那么整个系统的模型也就很清晰明了。

二、具体建模图使用介绍

UML建模(时序图)

UML建模(类图)

UML建模(状态图)

UML建模(活动图)

UML建模(用例图)

UML建模(组件图)

三、Java 并发编程之美,正连载中...

Java 并发编程之美-线程相关基础

本 Chat 作为 Java 并发编程之美系列的开篇,首先通过通俗易懂的方式先来和大家聊聊多线程并发编程线程有关基础知识(本文结合示例进行讲解,定会让你耳目一新-),具体内容如下:

  • 什么是线程?线程和进程的关系。

  • 线程创建与运行。创建一个线程有那几种方式?有何区别?

  • 线程通知与等待,多线程同步的基础设施。

  • 线程的虚假唤醒,以及如何避免。

  • 等待线程执行终止的 join 方法。想让主线程在子线程执行完毕后在做一点事情?

  • 让线程睡眠的 sleep 方法,sleep的线程会释放持有的锁?

  • 线程中断。中断一个线程,被中断的线程会自己终止?

  • 理解线程上下文切换。线程多了一定好?

  • 线程死锁,以及如何避免。

  • 守护线程与用户线程。当main函数执行完毕,但是还有用户线程存在的时候,JVM进程会退出?

640?wx_fmt=png

image.png

Java 并发编程之美:并发编程基础晋级篇

本 Chat 作为 Java 并发编程之美系列的并发编程必备基础晋级篇,通过通俗易懂的方式来和大家聊聊多线程并发编程中涉及到的高级基础知识(建议先阅读Java 并发编程之美:线程相关的基础知识

  • 什么是多线程并发和并行。

  • 什么是线程安全问题。

  • 什么是共享变量的内存可见性问题。

  • 什么是Java中原子性操作,AtomicLong实现原理。

  • 什么是Java中的CAS操作。

  • 什么是Java指令重排序。

  • Java中Synchronized关键字的内存语义是什么。

  • Java中Volatile关键字的内存语义是什么。

  • 什么是伪共享,为何会出现,以及如何避免

  • 什么是可重入锁、乐观锁、悲观锁、公平锁、非公平锁、独占锁、共享锁。

识别下面二维码进入chat

640?wx_fmt=jpeg

121.jpg

Java 并发编程之美:并发编程高级篇之一

本 Chat 作为 Java 并发编程之美系列的高级篇之一,主要讲解内容如下:

  • ThreadLocal 的实现原理,ThreadLocal 作为变量的线程隔离方式,其内部是如何做的?

  • InheritableThreadLocal 的实现原理,InheritableThreadLocal 是如何弥补 ThreadLocal 不支持继承的特性?

  • JDK 并发包中 ThreadLocalRandom 类原理剖析,经常使用的随机数生成器 Random 类的原理是什么?及其局限性是什么?ThreadLocalRandom 是如何利用 ThreadLocal 的原理来解决 Random 的局限性?

  • 最后 ThreadLocal 的一个使用场景,Spring 框架中 Scope 作用域 Bean 的实现原理。

    640?wx_fmt=jpeg

    121.jpg

Java 并发编程之美-高级篇之二

本 Chat 作为 Java 并发编程之美系列的高级篇之二,主要讲解内容如下:

  • rt.jar 中 Unsafe 类主要函数讲解, Unsafe 类提供了硬件级别的原子操作,可以直接操作内存变量,其在 JUC 源码中被广泛的使用,了解其原理为研究 JUC 源码奠定了基础。

  • rt.jar 中 LockSupport 类主要函数讲解,LockSupport 是个工具类,主要作用是挂起和唤醒线程,是创建锁和其它同步类的基础,了解其原理为研究 JUC 中锁的实现奠定基础。

  • 讲解 JDK8 新增原子操作类 LongAdder 实现原理,并讲解 AtomicLong 的缺点是什么,LongAdder 是如何解决 AtomicLong 的缺点的,LongAdder 和 LongAccumulator 是什么关系?

  • JUC 并发包中并发组件 CopyOnWriteArrayList 的实现原理,CopyOnWriteArrayList 是如何通过写时拷贝实现并发安全的 List?

欢迎微信识别二维码加入

640?wx_fmt=jpeg

121.jpg

Java 并发编程之美-高级篇之三

本 Chat 作为 Java 并发编程之美系列的高级篇之三,主要讲解锁,内容如下:

  • 抽象同步队列 AQS (AbstractQueuedSynchronizer)概述,AQS 是实现同步的基础组件,并发包中锁的实现底层就是使用 AQS 实现,虽然大多数开发者可能从来不会直接用到 AQS,但是知道其原理对于架构设计还是很有帮助的。

  • 独占锁 ReentrantLock 原理探究,ReentrantLock 是可重入的独占锁或者叫做排它锁,同时只能有一个线程可以获取该锁,其实现分为公平与非公平的独占锁。

  • 读写锁 ReentrantReadWriteLock 原理,ReentrantLock 是独占锁,同时只有一个线程可以获取该锁,而实际情况下会有写少读多的场景,显然 ReentrantLock 满足不了需求,所以 ReentrantReadWriteLock 应运而生,本文来介绍读写分离锁的实现。

  • StampedLock 锁原理探究,StampedLock 是并发包里面 jdk8 版本新增的一个锁,该锁提供了三种模式的读写控制。

欢迎微信识别二维码加入,另外敬请期待并发编程之美一书的出版

640?wx_fmt=jpeg


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第1章课程定位与教学案例综述. 1.1职业岗位能力需求分析 1.2课程设置和课程定位分析 1.3WebShop电子商城介绍 1.3.1电子商城需求分析 1.3.2电子商城系统设计 1.3.3电子商城数据库设计 1.4LibraryMIS书管理系统介绍 1.4.1书管理系统需求分析 1.4.2书管理系统系统设计 1.4.3书管理系统数据库设计 习题 第2章面向对象技术和建模基础 2.1面向对象方法 2.1.1面向对象方法的基本思想 2.1.2面向对象方法的发展 2.2面向对象的基本概念与特征 2.2.1面向对象的基本概念 2.2.2面向对象的主要特征 2.3面向对象分析 .2.3.1处理复杂问题的原则 2.3.200A方法的基本步骤 2.4面向对象设计 2.5面向对象实现 2.6面向对象方法的内涵 2.7软件建模概述 2.7.1软件建模的概念 2.7.2软件建模的用途 2.7.3软件建模的优点 习题 第3章UML简介 3.1UML的发展 3.1.1UML的发展历程 3.1.2理解UML建模 3.2UML的特点 3.3UML的结构 3.3.1UML的事物 3.3.2UML的关系 3.4UML的视 3.4.1用例视 3.4.2逻辑视 3.4.3并发视 3.4.4组件视 3.4.5部署视 3.5UML形符号 3.5.1用例 3.5.2类 3.5.3对象 3.5.4状态 3.5.5活动 3.5.6顺序 3.5.7协作 3.5.8组件 3.5.9部署 3.5.10UML 2.0新特性 3.6UML建模基本流程 习题 第4章UML建模工具简介 4.1常用UML建模工具 4.1.1 Rational Rose 4.1.2Enterprise Architect 4.1.3Together 4.1.4PowerDesigner 4.1.5 Visi0 4.1.6Tnffun Plat0 4.2Rational Rose安装与配置 4.2.1Rational Rose的运行环境 4.2.2Rational Rose的安装 4.2.3Rational Rose的配置 4.3使用Rational Rose建模 4.3.1Rational Rose主菜单 4.3.2Rational Rose的视 4.3.3 Rational Rose建模的基本过程 习题 第5章需求建模 5.1用例模型概述 5.2用例组成 5.2.1参与者 5.2.2系统 5.2.3用例 5.3识别和描述用例.. 5.3.1识别用例 5.3.2绘制WebShop电子商城用例 5.3.3通过包对用例进行合理规划 5.3.4WebShop电子商城用例(不含关系) 5.3.5用例描述 5.4用例间的关系 5.4.1泛化关系 5.4.2使用关系 5.4.3包含关系 5.4.4扩展关系 5.4.5关系小结 5.4.6WebShop电子商城用例(含关系) 习题 第6章静态建模 6.1静态建模概述 6.2类概述 6.3类的基本组成 6.3.1类的概述 6.3.2绘制带属性的实体类 6.3.3绘制带操作的实体类 6.3.4绘制边界类 6.3.5绘制控制类 6.3.6UML中的类与语言中的类 6.4类之间的关系 6.4.1关联关系 6.4.2聚合关系 6.4.3组合关系 6.4.4泛化关系 6.4.5实现关系 6.4.6依赖关系 6.5对象 6.5.1对象概述 6.5.2对象组成 6.5.3类和对象的比较 习题 第7章数据库建模 7.1PowerDesigner简介 7.2PowerDesigner安装和启动 7.2.1PowerDesigner的安装 7.2.2PowerDesigner的启动 7.3PowerDesigner概念数据模型 7.3.1概念数据模型概述 7.3.2PowerDesigner概念数据模型概述 7.4 PowerDesigner物理数据模型 习题 第8章动态建模 8.1动态建模概述 8.2状态 8.2.1状态概述 8.2.2状态组成 8.2.3绘制员工下班回家状态 8.3活动 8.3.1活动概述 8.3.2活动组成 8.3.3绘制WebShop电子商城活动 8.4活动拾遗 8.4.1活动与流程的比较 8.4.2活动与状态的比较 8.5顺序 8.5.1顺序概述 8.5.2顺序组成 8.5.3绘制WebShop电子商城顺序 8.6协作 8.6.1协作概述 8.6.2协作组成 8.6.3绘制WebShop电子商城协作 8.7 顺序拾遗 8.7.1 顺序与协作的比较 8.7.2 顺序与协作的互换 习题 第9章物理建模 9.1物理建模概述 9.1.1硬件 9.1.2软件 9.2组件 9.2.1组件概述 9.2.2组件组成 9.2.3绘制WebShop电子商城组件 9.3部署 9.3.1部署概述 9.3.2部署组成 9.3.3绘制WebShop电子商城部署 习题 第10章双向工程 10.1双向工程简介 10.2正向工程(生成Java代码) 10.3逆向工程 习题 第11章统一软件过程RUP 11.1RUP简介 11.2RUPT作流程 11.2.1业务建模 11.2.2需求 11.2.3分析设计 11.2.4实施 11.2.5测试 11.2.6部署 11.2.7配置与变更管理 11.2.8项目管理 11.2.9环境 11.3RUP迭代过程 11.3.1初始 11.3.2细化 11.3.3构造 11.3.4移交 11.3.5迭代计划示例(构造阶段) 习题 附录A综合实训 附录B Rational Rose2003主菜单 参考文献...
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值