计算机科学
文章平均质量分 52
王者之路001
解决问题才是王道!
展开
-
凤凰架构学习心得
最近一直没写博客,因为本人忙于申博而无暇顾及其他(最终终于上岸了)。整改完成之后,决定还是再进行一次技术总结,于是,就又学习了一遍技术方案,然后在网络上翻到了周志明博士的《凤凰架构》。学完之后,大为叹服。决定写几句有点心得体会。原创 2023-04-26 10:17:52 · 258 阅读 · 0 评论 -
Android中getActivity()为null
通过bugly,追踪到一个崩溃,发现问题为在Fragment里getActivity()为null后崩溃。于是,深层次找原因。发现根本原因为:JVM在内存不足的情况下,会把Activity回收;而Frament和Activity的声明周期不一致,此时Frament不一定会被回收;因此,才导致getActivity()为null的问题。Activity生命周期如下:Fragment的生命周期如下:因此,可以用的解决方法是:对Activity添加引用,保证Acitivit原创 2022-02-08 14:36:05 · 1751 阅读 · 0 评论 -
圈复杂度及其运用
1.圈复杂度的定义 圈复杂度是由Thomas J. McCabe, Sr. 在1976年提出的概念,用于判断代码复杂度。圈复杂度(Cyclomatic complexity)又称为条件复杂度或循环复杂度,用于衡量要给模块判定结构的复杂程度;数量上表现为独立的现行的路径条数,也可理解为覆盖所有的可能情况的最少使用的测试用例数。2.圈复杂度的计算方法 圈复杂度的概念计算方法有3种。 1)控制流程图 ...原创 2020-12-01 17:01:02 · 2034 阅读 · 1 评论 -
车牌识别综述
1.车牌识别车牌识别是智能识别的一种手段,可以用来对车牌进行识别。值得注意的是:车牌识别和文字识别不一样;文字识别具有通用性,而车牌识别具有场景的固定性。所以车牌识别所有到的算法和普通文字识别用到的算法,有不一致的地方。2.车牌识别的技术现状笔者查了下学界有关车牌识别的论文,包括英文论文License Plate Recognition,发现中国学者研究的比较多。笔者个人认为,应该是中国的车牌识别的用途比较多。在Github上,有多个比较成熟的技术方案。同时,在国内,百度、阿里、腾讯都提原创 2020-11-03 18:16:42 · 3701 阅读 · 0 评论 -
软件复杂度的控制方法
1.软件复杂度不可避免 在一个大型软件中,软件复杂度是不可避免的。由于软件要满足一定功能,甚至会为了满足要求,会不断添加各种功能;而一定的结构,是满足功能的基础;软件功能越来越多,功能越来越大,自然会结构越来复杂;软件的复杂度也越来越大。2.软件复杂度评价方法 关于软件复杂度,有不同概念。借用维基百科的话,程序复杂度(区别于计算复杂度)是对软件内部诸多影响内...原创 2019-10-17 23:45:45 · 2610 阅读 · 0 评论 -
转:程序员调代码访谈:Russ Cox
本文由 伯乐在线 - Janzou 翻译,黄利民 校稿。未经许可,禁止转载!英文出处:debuggers.co。欢迎加入翻译组。『程序员调代码访谈』是 Karim Hamidou 发起的一个程序员访谈系列,受访者分享他们遇到的最难/最有意思的Bug,以及如何解决。本文的受访者是�0�2Russ Cox,写过内核代码、网络服务器、文件系统和一点图形代码。他目前是GO语言的主要开发者之一。...转载 2019-06-11 15:14:14 · 932 阅读 · 0 评论 -
为什么变量命名不建议用汉语拼音
在进行编程时,变量通常不建议用拼音注释。但是,关于不建议用汉语拼音命名的原因,一般人只是说汉语拼音命名造成变量命名模糊,但没有分析过汉语拼音命名模糊的原因。从语言学角度来讲,汉语(象形文字)和英语(字母文字)走了两种不同的路径。英文通过26个简单的字母进行组合,组成了大量的字词。而汉语通过偏旁部首组成不同的字词,发音只是辅导。目前,汉语文字超过8万个,但汉语的发音,包括声母21个,韵母24...原创 2019-07-22 10:15:17 · 4529 阅读 · 0 评论 -
程序设计原则和要点
1.程序设计的思路 程序设计,是架构师和高级软件工程师的必备工作之一,也是项目经理的必须能力之一。 程序设计的思路是: 1)理解功能,保证功能实现; 2)让程序结构简单,容易维护; 3)去处冗杂; 4)考虑兼容性和外部使用性; 5)考虑用户的特点和软硬件的特点...原创 2019-09-25 23:23:50 · 1450 阅读 · 0 评论