2020-9-28
编程的一些抽象核心

编程的一些抽象核心

目录 一、程序、算法 本质 举例 二、面向对象、设计模式 面向接口编程 组合优于继承 三、依赖倒置和控制反转 (IoC/DIP) 钱 开关和灯 证券交易所 一、程序、算法 本质 程序=算法+数结结构算法=逻辑+控制 程序=算法+数结结构,这个是众所周知了,算法这个解释则比较清丽脱俗:1.逻辑 2. 控制。 逻辑用来解决实际的问题, 控制决定用什么策略来解决问题,逻辑是真正意义上的解决问题的算法 控制是一个程序流转的方式,即程序执行的方式,并......
技术分享 1795次浏览0条评论
2020-9-28
PPT画成这样,述职答辩还能过吗?

PPT画成这样,述职答辩还能过吗?

一、前言 标题有点凶,但内容很干! 大部分程序员并不会画PPT,也梳理不出架构图。工作的年头虽然多,但却不对自己的知识进行整理汇总,久而久之只能干,不会说。好,那么本文就带着你一起画画图,做个画画的baby! 数学好的一般代码写的好,那下象棋好的呢? 做程序猿多年后,经常会有家里的亲戚询问,自己家小孩报计算机行吗。他数学好、他英语好、他喜欢打游戏...,一般情况我也都推荐去学 java 了哈哈哈。 这也让我想到了自己为什么学计算机 · 软件工程,记得当时首先是权衡后没得选了,再者是学计算机家里还能给买个电脑。喜欢电脑,是我第一次在初中接触微机,打开win98界面时就开始的。但......
技术分享 2237次浏览0条评论
2020-9-28
每日一个知识点:Volatile 和 CAS 的弊端之总线风暴

每日一个知识点:Volatile 和 CAS 的弊端之总线风暴

每日一个知识点系列的目的是针对某一个知识点进行概括性总结,可在一分钟内完成知识点的阅读理解,此处不涉及详细的原理性解读。 一、什么是总线风暴 总线风暴,听着真是一个帅气的词语,但如果发生在你的系统上那就不是很美丽了,废话不多说,先看图说结论。 什么是总线风暴,先来看结论 在java中使用unsafe实现cas,而其底层由cpp调用汇编指令实现的,如果是多核cpu是使用lock cmpxchg指令,单核cpu 使用compxch指令。如果在短时间内产生大量的cas操作在加上 volatile的嗅探机制则会不断地占用总线带宽,导致总线流量激增,就会产生总线风暴。 ......
技术分享 2099次浏览0条评论
2020-9-28
java版app自动化测试初始化模板

java版app自动化测试初始化模板

项目目录介绍 目录结构如下: (包含:驱动的基础配置、全局异常处理、异常截图、报告自动生成、app常用操作方法封装、常用工具类封装) 各包分层关系 basepage包负责存放app公共操作方法、AndroidDriver基础配置、testNG公共执行顺序BaseTest,对外暴露驱动等。 BaseApp类包含app操作有:封装By类型的点击操作和输入框输入数据操作、切换到下一个窗口操作、上下左右滑动操作、具体坐标点击操作、直接使用adb命令的操作、前进后退刷新的操作等,其它方法可自行封住。 部分封装方法如下: /** * 通过元素定位拿到 ......
技术分享 11627次浏览0条评论
2020-9-28
Quartz.NET集成UI版

Quartz.NET集成UI版

Quartz.NET Quartz.NET是NET的开源作业调度系统。 Quartz.NET是一个功能齐全的开源作业调度系统,可用于从最小的应用程序到大型企业系统。 Quartz.NET目前支持NETFramework和NETCore。 Quartz.NET中文文档完善 文档地址 Quartz.NET集成UI版 目前开源作业调度系统还有Hangfire可以选择。 其他开源作者制作的带UI的Quartz.NET系统。 系统特点 将UI资源文件作为嵌入式资源集成在项目中,直接引用一个包就可以了,不管项目升级还是使用做到更简单。 增加了常用作业添加、删除、修改......
技术分享 1930次浏览0条评论
微信二维码