设计流程

[转]《吐血整理》系列-顶级程序员工具集

喜欢而已 提交于 2019-12-10 09:41:10
你知道的越多,你不知道的越多 点赞再看,养成习惯 GitHub 上已经开源 https://github.com/JavaFamily 有一线大厂面试点脑图、个人联系方式,欢迎Star和指教 前言 这期是被人才群交流里,还有很多之前网友评论强行顶出来的一期,就是让我介绍自己常用的一些工具给他们安利一下,我一听很高兴呀,帅丙我这么乐于奉献的人是吧。 主要是能水一篇文章就很开心,不过写下来发现花的时间完全不比写技术少, 点赞 !!! 千万不要白嫖, 真香警告 ⚠️。 但是我在构思这篇文章的时候发现我贴个标题,然后发下软件信息会不会太乏味了,于是创作鬼才我呀,准备用一个产品的研发流程,是的就是 用这样的一个思路 去写这个工具集的介绍文章。 因为读者很多还是学生,还有很多应届生,对一个需求的研发流程都不是很熟悉,还有可能对于以后自己需要使用到的工具都不是很熟悉,那我就一一罗列一下,帅丙我作为一个还算有点小经验的程序员都使用哪些工具呢? 那下面就跟随 暖男 的脚步,走进 顶级程序员的百宝箱 吧(我所有的标题都是噱头就为了夸大其词,我是低级程序员,大家看了也不能吊打面试官,笑笑就好了)。 注意 :下面的软件我都是简单的介绍下是干啥的,因为太多了,真正的功能需要大家深挖的,能力允许的朋友下载正版 正文 既然都说了 帅丙 是要用一个产品的研发流程角度去介绍软件,那我们先看看一个产品有哪些研发流程

RPA之AA

笑着哭i 提交于 2019-12-09 15:14:11
RoboticProcessAutomation(即机器人流程自动化),RPA机器人能够模仿大多数人类用户的行为, 比如可以登录应用程序,移动文件和文件夹,复制和粘贴数据,填写表单,从文档中提取结构化和半结构化数据,抓取并执行浏览器控件等等,这点其实C#、python语言也可以编出来,就像上文我提的VBA语言也一样,但是现在,RPA机器人为企业提供了第三种选择,并且优势明显:它既不像人工那样效率不高容易出错,也不像传统模式开发软件那样需要投入较大成本及较长的开发周期、且需求投入很大。同时,易于部署的特性以及为企业带来的开发效率上的提升可以大大节省成本支出,缩短投资回收期。目前为止,大多数成本优化和效率改进都是通过集中化和流程标准化来实现的,而RPA机器人对标准化流程的执行方面有天然的优势。 在RPA实施交付过程中,基本上很少需要编写代码。RPA的设计初衷是为企业内部业务人员提供流程上的自动化,通过控件拖拽的方式(RPA软件已经实现了封装)实现业务流程的自动化编排。RPA软件都提供了类似于流程图设计器的图形界面方式,只需要使用代表流程中步骤的图标来创建业务流程定义,我为何喜欢AA这款软件不仅源于以上,还因为黑色系的酷酷界面。 此图是打开Excel,选择Cell 来源: https://www.cnblogs.com/shiningleo007/p/12011126.html

多系统单点登录(sso)设计

和自甴很熟 提交于 2019-12-07 04:59:29
文章目录 问题提出 登录信息共享机制设计 简单实现 淘宝天猫登录信息共享(简化版) 登录流程 问题提出 多个系统中,如何做到其中一个系统登录了,在浏览器中打开其他系统也会成登录状态?比如在淘宝登陆了,打开天猫网页,也会显示已登录 网上有一种设计方案是通过二级域名来共享登录状态,本设计是针对不同域名下登录状态的信息共享。 登录信息共享机制设计 简单实现 实现原理: 通过在sso系统域名下存储信息,其他系统通过获取sso域下的cookie信息来获取登录信息 不过有个问题:出于安全的原因,当前域不能获取其他域的cookie信息,所以只能通过跨域访问sso系统,然后返回登录信息 在开始前我们设定两个变量: t_token 这个浏览器的一个标志, 在同一个浏览器中 ,所有相关系统内的网站共享同一个t_token access_token 用户真正的token 要实现上述功能,我们可以使用跨域机制来实现共享token。这里我们设置三个系统,两个客户端系统,一个sso系统。如图: 流程如下: 以上就是通过跨域来同步token的流程。 在上面的流程中,会存在一个跨域访问的问题,一般来说有两种解决方法: 使用jsonp来获取 使用CORS机制跨域获取数据 具体的可以看这两篇文章: CORS详解 跨域访问数据 淘宝天猫登录信息共享(简化版) 淘宝天猫token的获取原理是一样的,但是流程要稍复杂一些

资深安卓程序员带你用另一种角度学习 View 事件分发!

丶灬走出姿态 提交于 2019-12-06 21:09:20
我无法忘却 3 年前备受折磨的那个夜晚 —— 在我第一次学习 View 事件分发,却被网文折磨的那个夜晚。 是网上介绍 View 事件分发的文章不够多吗? 不是的,恰恰相反,网上的爆款文章不计其数,待你仔细阅读,却 颇有一种“外地人上了黑车”的感觉 —— 一言不合先上 30 张图表,带你在城市外围饶个上百圈,就是不直奔主题 解释一个现象为什么会存在、造成它存在的缘由为何、它如此设计是为了解决什么问题 …… 比起 拨开迷雾、明确状况、建立感性认识,他们更热衷于自我包装。 —— 有没有帮助我不管,先唬住人再说。 为了唬人,就算给他人徒添困扰、白费大量时间,也在所不惜! 正是对那次痛苦经历的念念不忘,于是我将这篇文章分享给大家。 在此,我向 3 年前的那个自己发誓,我必在 结尾 200 字 就讲明白,别人非要绕个 3000、5000 字都讲不明白的事件分发。 不仅如此,我还要额外地帮助大家理解,事件分发流程中的 3 个小细节:之所以如此设计,是出于什么考虑。通过“知其所以然”,来方便大家更好地加深印象。 还没阅读的小伙伴也请不要着急,正因为今天讲的是基础,光是看了这一篇,你也没白来! View 事件分发的本质是递归! 什么是递归呢?递归的本质是什么呢? 顾名思义,递归是一种包含 “递” 流程和 “归” 流程的算法。当我们在找寻目标时,便是处于 “递” 流程,当我们找到目标

Activiti使用总结

≡放荡痞女 提交于 2019-12-06 14:42:26
工作流在我们日常的工作中用得可谓相当普及,尤其在企业内部管理系统,如考勤、财务、合同等系统中更是离不开它。在我们金融科技领域,工作流主要用于贷款审批、风控审核等环节。早期工作流在企业信息化发挥着很重要的作用,随着信息化的初步完成,工作流核心技术也为国内很多大一点的系统集成的公司所掌握。比如我们合作过的宇信、神码、浪潮、企源等传统IT公司都拥有自主产权的的工作流框架。由于工作流具有一定的门槛,国内尚没有能满足企业级应用的工作流开源框架,一些国内CMS开源项目号称支持的工作流也只是对Activiti的简单引入或者是较简单的工作流实现,还不能完整的满足一般企业应用。 Activiti是目前最热门的开源工作流框架,由于中西方文化差异及组织架构上的不同,拿Activiti来做中国式的企业级应用难度很高,需要做大量的改造,这里记录下常见的思考点及解决思路,实际碰到的问题会更多且更复杂。 1 、待办已办在Activiti相关API中是面向任务的,需求是面向流程的 比如,如下图的需求 在Activit中一个流程是有多个Task组成,而我们中国式的审批需求是一个流程只允许出现一次,哪怕这个流程你在审批过程中参与过两次以上的审批任务,也仅需要显示一次。 这里就需要将TaskService查询出来的任务再按流程实例ID进行去重,去重后任务查询api的分页会变得不可用,对待办和已办未完结来说还好

设计模式之美学习(四):面向对象相比面向过程有哪些优势?面向过程真的过时了吗?

柔情痞子 提交于 2019-12-06 03:28:31
除了面向对象之外,被大家熟知的编程范式还有另外两种,面向过程编程和函数式编程。面向过程这种编程范式随着面向对象的出现,已经慢慢退出了舞台,而函数式编程目前还没有被广泛接受。 在工作中,很多人搞不清楚面向对象和面向过程的区别,总以为使用面向对象编程语言来做开发,就是在进行面向对象编程了。而实际上,他们只是在用面向对象编程语言,编写面向过程风格的代码而已,并没有发挥面向对象编程的优势。这就相当于手握一把屠龙刀,却只是把它当作一把普通的刀剑来用,相当可惜。 什么是面向过程编程与面向过程编程语言? 我们可以对比着面向对象编程和面向对象编程语言这两个概念,来理解面向过程编程和面向过程编程语言。还记得之前是如何定义面向对象编程和面向对象编程语言的吗?让我们一块再来回顾一下。 面向对象编程是一种编程范式或编程风格。它以类或对象作为组织代码的基本单元,并将封装、抽象、继承、多态四个特性,作为代码设计和实现的基石 。 面向对象编程语言是支持类或对象的语法机制,并有现成的语法机制,能方便地实现面向对象编程四大特性(封装、抽象、继承、多态)的编程语言。 类比面向对象编程与面向对象编程语言的定义,对于面向过程编程和面向过程编程语言这两个概念,给出下面这样的定义。 面向过程编程也是一种编程范式或编程风格。它以过程(可以为理解方法、函数、操作)作为组织代码的基本单元,以数据(可以理解为成员变量、属性

设计模式之美学习(四):面向对象相比面向过程有哪些优势?面向过程真的过时了吗?

强颜欢笑 提交于 2019-12-06 03:28:25
除了面向对象之外,被大家熟知的编程范式还有另外两种,面向过程编程和函数式编程。面向过程这种编程范式随着面向对象的出现,已经慢慢退出了舞台,而函数式编程目前还没有被广泛接受。 在工作中,很多人搞不清楚面向对象和面向过程的区别,总以为使用面向对象编程语言来做开发,就是在进行面向对象编程了。而实际上,他们只是在用面向对象编程语言,编写面向过程风格的代码而已,并没有发挥面向对象编程的优势。这就相当于手握一把屠龙刀,却只是把它当作一把普通的刀剑来用,相当可惜。 什么是面向过程编程与面向过程编程语言? 我们可以对比着面向对象编程和面向对象编程语言这两个概念,来理解面向过程编程和面向过程编程语言。还记得之前是如何定义面向对象编程和面向对象编程语言的吗?让我们一块再来回顾一下。 面向对象编程是一种编程范式或编程风格。它以类或对象作为组织代码的基本单元,并将封装、抽象、继承、多态四个特性,作为代码设计和实现的基石 。 面向对象编程语言是支持类或对象的语法机制,并有现成的语法机制,能方便地实现面向对象编程四大特性(封装、抽象、继承、多态)的编程语言。 类比面向对象编程与面向对象编程语言的定义,对于面向过程编程和面向过程编程语言这两个概念,给出下面这样的定义。 面向过程编程也是一种编程范式或编程风格。它以过程(可以为理解方法、函数、操作)作为组织代码的基本单元,以数据(可以理解为成员变量、属性

Selenium之用例流程设计

妖精的绣舞 提交于 2019-12-06 02:52:38
1.测试用例的流程设计 1.1 打开浏览器 1.2 提供url地址 1.3 查找元素 1.4 输入内容(可选) 1.5 查看结果 1.6 输出结果 2.测试用例的模块化 把各种测试模块都形成方法 3.测试用例的数据分离 把需要用到的参数统计一下,然后形成一个文档用于保存当前的数据,把数据字典话 4.使用excel管理用户数据 pip install xlrd # 读取 pip install xlwt # 写入 使用excel来保存数据字典 5.保存测试结果到excel中 除了Excel,也可以保存成HTML,PDF,看需求吧 6.测试用例模板参考 7.用例模板参考 总体信息 用例初始化 001用例 002用例 003用例 来源: https://www.cnblogs.com/sundawei7/p/11959199.html

pcb设计流程详细

有些话、适合烂在心里 提交于 2019-12-05 17:48:21
整个PCB设计的流程可分为5大部分,即原理图sch、布局layout、走线router、覆铜和验证、生产文件输出cam,每一部分又包含很多细节。需要指出的是 原理图和pcb布局布线一般意义上两个不同的工种,类似web开发中前端和后台开发。有经验的后台虽然也可以做些前端的工作,但毕竟不如专业的前端熟悉。同理原理图一般是由对电子和元器件很熟悉的硬件工程师完成,然后普通的layout工程师依据原理图进行布局布线,layout工程师一般都会了解些电路以看懂原理图,但一般并不专业去画原理图。 在一些小公司,就像web开发前后端不严格区分,都由一个人搞定类似,小公司的pcb原理图和layout一般也是个人完成。当然这其中很多是在方案公司给出的参考原理图之上修改。对于复杂的项目,让一个人去搞前后端或者一个人完全进行原理图和pcb布局布线就有些牵强了。 SCH 原理图即用一些符号和连接关系表示实际元件电气连接原理。该阶段仅用于表示元件间的连接关系,不涉及实际的电路板制造细节。基于此,该阶段需要和产出的内容为: 1、原理图符号封装和库 能够表示元器件的符号,由一个图形和连接在外面的管脚组成。需要注意的是,这时侯的符号形状和实际的元器件形状、大小没有直接关系,你可以随便画个形状表示实际的元件。唯一需要限定的是该符号的引脚数量必须和实际元件管脚数一致,这个符号是给人看的,只要方便人区分不同的元件即可

对几种设计模式的归纳理解

时光总嘲笑我的痴心妄想 提交于 2019-12-05 03:14:55
工厂模式 只对结果赋值,封装创建过程,保证独一无二 单例模式 保证过程中只有一个实例 原型模式 多个实例,一个原型派生多份数据 代理模式 找人办事,增强职责 委派模式 老板分配任务给管理人员 策略模式 管理人员根据不同情况分配任务给员工具体实现 模板模式 流程标准化,具体实现剥离主干 适配器模式 兼容转接头、支持不同支付方式 装饰器模式 奶茶加料 观察者模式 任务完成时触发通知事件 来源: https://www.cnblogs.com/erfsfj-dbc/p/11901952.html