![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
工程管理
文章平均质量分 51
王者之路001
解决问题才是王道!
展开
-
Android APP息屏状态下收到通知解决方案
Android APP息屏接收通知解决方案原创 2022-06-29 15:20:37 · 4295 阅读 · 15 评论 -
IDEA进行Maven同步的时候显示“Cannot resolve ***”
在用IDEA进行Sync同步时(同步工具用Maven),发现总提示“Cannot resolve ***”相关操作。最开始,以为是相关库没有同步下来,最后发现原因为:不同库之间,相互依赖库存在版本冲突。解决方法:1)逐渐寻找无法同步的库;2)去除冲突的库。具体为,在pom.xml里添加exclusions和exclusion,保证依赖不冲突。样例如下:<dependency> <groupId>org.springframework.boot</原创 2022-04-06 14:24:48 · 1670 阅读 · 0 评论 -
使用Bugly 作为APP异常上报工具
0.需求最近发布的APP,用户反馈遇到了一些稀奇古怪的崩溃。本地测试,一定程度上无法覆盖所有的case。加之用户使用场景和本地场景存在一定差异性。这难免会造成一些稀奇古怪的崩溃,且不易复现。突然想到,微软也在做一件事,就是每当程序崩溃以后,总要把一些崩溃上报。显然,APP也把崩溃进行上报,也是一个好思路。继续发现,好些大厂都已经提供了完整的APP上传工具和机制。但如果是站在工程师的角度,如果资源不够的话,重新设计一套工具,显然是不合适的。于是,想到了是否有公开的可以直接用APP异常上传工具和“轮原创 2022-01-07 16:38:28 · 4502 阅读 · 5 评论 -
BS客户端安全使用解决方案
一、 引言BS客户端是很多公司产品的重要载体,很多产品,都是基于浏览器客户端(BS客户端)的。BS客户端的优点是简洁高效,但会存在明文传播,无法防止复制等一系列问题。本文试图提供一系列解决方案,从而尽可能减少BS客户端的明文传播、直接进行复制的问题。二、 几个要点BS客户端安全使用,目前有几个要点:1) 网络传输用密文传播;2) 登录状态验证,防止登录过期;3) 网页界面使用防复制粘贴命令。同时,要说明的是,由于BS客户端(浏览器)自身的特点,本解决方案并不能保证安...原创 2021-11-26 14:18:47 · 1811 阅读 · 0 评论 -
MAC下读写U盘
一般人用的U盘,都在Windows下;目前相当一部分U盘,都已经用NFTS格式,而MAC不支持NFTS格式。这样,就必须装一定的软件来加载U盘。加载U盘,可以用Mounty或者NTFS for Mac。...原创 2019-08-11 15:09:04 · 1468 阅读 · 0 评论 -
python的http发送JSON包传输以及中文问题
几天做一个很小的测试Demo,任务为调用HTTP的post方法,测试HTTP服务的几个接口的功能,并进行极限测试。程序很快写完了,但发现几个接口测试一直出问题,最关键的是:JSON校验一直出问题。JSON校验的原理是网络传输的校验的通用方法:JSON数据+密钥,统一为UTF8形式,然后进行MD5加密,生成数据签名。在服务端进行校验数据是否被修改了。对JSON进行加密的方法如下所示:def produce_sign(data): sign_src = (json.dumps(data原创 2020-10-16 09:57:02 · 1189 阅读 · 0 评论 -
python字典与json互相转换
在python中,字典和json都是树形结构,本身具有很强的相似性。但字典与json互相转换,还是需要一定方法的,这个方法就是调用json库(模块)。1.字典转json字典到JSON转化:jsoninfo = json.dumps(dict) # 输出str类型2.json转字典#JSON到字典转化:dictinfo = json.loads(json_str) # 输出dic...原创 2019-06-27 18:35:24 · 5325 阅读 · 0 评论 -
git 合并两个仓库
1.背景 由于原来有一个git库;但原来的git库无法满足新的要求。故又搭建了一个Gerrit库。在Gerrit库安装并上传代码后,原来的版本库又进行了修改。于是,产生了合并代码库的需求。2.做法 1)下载Gerrit库(合并目标) git clone (目标库地址) 2)增加需要合并的地址 git remote ad...原创 2019-12-10 19:06:39 · 165 阅读 · 0 评论 -
由高铁故障谈软件缺陷管理和危机应对
1.引言 2021年的五一假期,是一个不平凡的假期;由于疫情,好多人都没有出行;2021年的五一,北京西站迎来了大规模的人流。然而,不幸的是,在北京西站候车的人发现,北京西站发生了大规模高铁厌恶,很多人怎么也进不了北京西站。最后,人们发现:由于一块地膜导致高铁通信故障,从而导致高铁大规模晚点。 由此可见,一个重要系统的故障,会引起重大危机。笔者本职工作是软件开发,并长期从事软件项目管理工作,想趁机谈一谈软件缺陷管理和危机应对。2.软件缺陷管理2.1 系统论、风险...原创 2021-05-06 14:38:51 · 454 阅读 · 0 评论 -
org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1
在用IDEA编辑Spring项目的时候,出现如下错误“org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1”。最奇怪的是,我按照代码的样例提供的。找解决方案,发现配置文件改为UTF-8就好了。PS:由于各种编辑器基本上都来自于字母文字的国家,中文字符的格式有多种,这造成在开发的时候问题很多,得多注意。...原创 2021-03-16 09:07:19 · 232 阅读 · 0 评论 -
数据同步及其策略
1.同步的概念 同步是计算机科学中的很重要的一个概念。同步一般指不同实体获得一致的过程。一般来说,在计算机科学与工程中,涉及的同步主要有过程同步和数据同步。 过程同步一般通过进程(或线程)同步来实现,这一般是多进程的知识点,也是很多公司面试的必考题。 对于很多业务来说,涉及比较多的是数据同步,因为数据是企业最优价值的财产之一。2.数据同步 数据同步是几个数据实体获得一致的过程。计算机科学和工程中主要的数据载体为数据库的表,同步一般在不同数据库或相同...原创 2021-01-26 15:05:47 · 989 阅读 · 0 评论 -
Eclipse导入gradle项目
最近,要对一个github上的项目进行学习,赫然发现,该项目竟然是用gradle进行了管理。我对gradle并不熟悉,于是准备硬性导入,查看相应文件,发现整个JAVA工程缺失的版本库为httpclient-4.5.12.jar,去http://hc.apache.org/downloads.cgi下载,发现根本不存在该版本。下载其他版本库以后,添加发现整个项目依然有缺失。我把所有的依赖jar包导入,发现整个项目存在依赖冲突。一个思路是,逐个看依赖,然后,一个一个把需要的依赖进行添加,但这个显然非..原创 2021-01-05 11:35:44 · 1039 阅读 · 0 评论 -
圈复杂度及其运用
1.圈复杂度的定义 圈复杂度是由Thomas J. McCabe, Sr. 在1976年提出的概念,用于判断代码复杂度。圈复杂度(Cyclomatic complexity)又称为条件复杂度或循环复杂度,用于衡量要给模块判定结构的复杂程度;数量上表现为独立的现行的路径条数,也可理解为覆盖所有的可能情况的最少使用的测试用例数。2.圈复杂度的计算方法 圈复杂度的概念计算方法有3种。 1)控制流程图 ...原创 2020-12-01 17:01:02 · 2034 阅读 · 1 评论 -
转:高级软件工程师成长秘诀(文末有笔者自己的小评论)
作者:Neil Kakkar 译者 | 张健欣 身为软件工程师,你要如何进一步成长? 2018 年的时候,我开始在彭博社(Bloomberg)工作。从那之后,事情发生了很大变化。我不再是公司里最初级的成员了,而且我还指导过几个工程师,这真是太棒了。这有助于我观察自己与其他人的差别,吸收他们的最佳实践,并发现我不知不觉中已经做得很好的事。 每年的工作回顾是一个很好的方式来提炼我学到的经验教训。它们对于模式匹配也很有价值。只有我从特定模式观察时,才会发现...原创 2020-11-17 15:53:39 · 680 阅读 · 0 评论 -
转:工程师比科学家低一等吗? (末尾有本人的微小评论)
图灵奖与诺贝尔经济学奖得主、20 世纪最具有影响力的思想家之一赫伯特·西蒙(Herbert Alexander Simon)认为,设计就是“将现有情况转变为优选情况”。但是我们所说的“优选”情况是什么意思呢?在政治体系中,这可能是非常主观的。在工程系统中,其可能更加客观。一个政治领袖可能更喜欢将所有的移民拒于门外的局面,即使没有客观证据表明这样做会给任何人带来什么好处。相比之下,工程师则常常被要求以客观的标准来实现他们所希望的“优选”情况,例如降低成本或降低能耗等。西蒙所说的“优选情况”是开放性的。但在大.原创 2020-11-17 15:41:42 · 1105 阅读 · 2 评论 -
git reset --hard后恢复
git reset --hard 是强制覆盖命令,在这之后,本地将会强制覆盖。今天不小心执行了这个命令,然后,本地程序强制覆盖;当时,我立马哭了。当时就想了下:git 命令,虽然强制覆盖了,但本地硬盘有相应文件,肯定是可以恢复的。于是,开始找相应操作。找到一片文章(https://juejin.im/post/5af0438f5188251b8015967e),给出的方法是git fsck。在git命令行里执行git fsck --lost-found,果然,在.git/lost-found原创 2020-06-15 16:17:41 · 575 阅读 · 0 评论 -
定时构建脚本创作
这几天一直试图搞定Jenkins,最后发现Jenkins最后还是要执行Shell语句。笔者想了想,还不如自己制作一个Shell脚本简单。需要构建的工程为QT工程,因此,自己制作的脚本应该有以下几个目的:1)对QT工程进行构建;2)可以把构建过程的日志进行输出;3)保证按周期获得最新版本;4)记录程序运行的日期;5)定时执行。QT的构建,本身就是qmake和 make ...原创 2020-04-26 19:13:29 · 255 阅读 · 0 评论