首页
学习
活动
专区
工具
TVP
发布

听Allen瞎扯淡

专栏作者
22
文章
62951
阅读量
13
订阅数
解决mac升级10.11后,出现的 xcrun: error: invalid active developer path, missing xcrun 错误
前天把小mac升级到了10.11,结果今天在终端里使用git的时候,弹出一行莫名其妙的错误:xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun。去google了一圈,找到了一个github上homebrew issues里很老的帖子,按着里面说的,重装了一下xcode command line,结果就正常了……
Allen Cheng
2018-09-10
1.2K0
Spark 的惰性运算
作者的意图很简单,就是将RDD中的数据转换为新的数据格式,并统计非法数据的个数。咋一看代码,似乎没有什么问题,可是,这段代码真的能得到正确的结果么?答案是否定的,事实上,不管RDD中包含多少非法数据,if(DataTransformer.exceptionCount > 0)这个条件永远都不会为真。为什么?你现在肯定充满了疑惑,让我们先来看看 Spark 的文档上对 RDD 操作的解释:
Allen Cheng
2018-09-10
2.6K0
Fetch Size 与 JDBC 内存管理
接触到 JDBC 的 Fetch Size 这个属性缘起一个性能问题,项目中需要将一个有千万级数据量的表中的记录导出到文件中去。按照正常的路数,先初始化连接;接着写好 SQL 语句,比如SELECT * FROM DIM_USERS;然后启动查询,拿到 ResultSet,最后遍历 ResultSet 将每行记录输出到文件中去。可在接下来的测试中,发现性能并不理想,在表中数据量小的时候,执行速度尚可接受,可是在进行大数据量压力测试的时候,发现代码往往要执行40分钟以上,这在实际生产环境上是万万不可接受的。
Allen Cheng
2018-09-10
2.9K0
Integer的highestOneBit方法源码解析
在读HashMap源码的时候,遇到了Integer的highestOneBit静态方法不是太理解,所以就读了一下源码,这里记录一下。
Allen Cheng
2018-09-10
1.2K0
一起 Static 和 Synchronized 引发的血案
这两天在定位一个网上问题的时候发现一个很诡异的现象,系统夜间的汇总任务跑了很长一段时间才能结束,而且日志显示这些汇总任务的每个子任务都很快就结束了,但整体任务还是耗费了很长一段时间才结束。
Allen Cheng
2018-09-10
1.7K0
解决 Windows10 笔记本关上后仍会掉电的问题
一开始我只是想在谷歌上搜索一下,为啥我的 Win10 笔记本在盖上盖子以后放入背包中,每次拿出来之后电量都会有所下降,结果就一下子看到了很多很神奇的东西,包括 Win10 的几种节能状态,以及如何设置关闭盖子的行为。且听我一一道来。
Allen Cheng
2018-09-10
10.5K0
Github的正确使用方法
在了解了Git的基本用法后(如果你还未了解 Git 的基本使用方法,建议你先话点时间阅读下《 Pro Git 》这本书),相信你已经开始跃跃欲试了,那么我就说下如何正确的使用 Github。下面的图描述了使用 Github 的基本流程:
Allen Cheng
2018-09-10
5.3K0
由 Java 到 Scala:如何优雅的跳出循环
在开发过程中,我们经常会遇到这样的需求:循环执行某个操作,当满足一定条件的时候循环终止。最常见的场景就是累加数组中的元素,一直到大于某个值,用伪代码来描述就是:
Allen Cheng
2018-09-10
3.2K0
玩花招的PowerMock
当我们面对一个遗留系统时,常见的问题是没有测试。正如Michael Feathers在Working Effectively with Legacy Code一书中对“遗留代码”的定义。他将其简单归纳为“没有测试的代码”。真是太贴切了!正是因为没有测试,使得我们对遗留代码的任何重构都有些战战兢兢,甚至成为开发人员抵制重构的借口。从收益与成本的比例来看,对于这样的系统,我一贯认为不要盲目进行重构。因为重构的真正适用场景其实是发生在开发期间,而非维护期间。当然,提升自己的重构能力,尤其学会运用IDE提供的自动重构工具,可以在一定程度上保障重构的质量。然而,安全的做法,还是需要为其编写测试。
Allen Cheng
2018-09-10
1.2K0
为什么java.util.concurrent 包里没有并发的ArrayList实现?
问:JDK 5在 java.util.concurrent 里引入了 ConcurrentHashMap,在需要支持高并发的场景,我们可以使用它代替 HashMap。但是为什么没有 ArrayList 的并发实现呢?难道在多线程场景下我们只有 Vector 这一种线程安全的数组实现可以选择么?为什么在 java.util.concurrent 没有一个类可以代替 Vector 呢?
Allen Cheng
2018-09-10
8650
在多线程构建场景下Powermockito无法在不同类中Mock同一个静态方法
在修改单元测试的过程中,不幸踩了个坑,发现 Powermockito 的PowerMock.mockStatic(ClassThatContainsStaticMethod.class) 在多线程场景下是无法正常工作的,这再次验证了之前 ThrougthWorks 顾问说的那句话:
Allen Cheng
2018-09-10
5.4K0
Mock 与 Stub
这是软件大师Martin Fowler的一篇经典博文。Martin大师在文章中详细的解释了Mock与Stub的区别,以及怎样使用它们进行TDD实践等等一系列干货,强烈推荐阅读,猛击这里阅读原文。我无意把大师的话再复述一遍,所以在本文中我就聊聊我对Mock与Stub的理解以及一些实践。
Allen Cheng
2018-09-10
1.5K0
如何在单元测试中设置系统环境变量
有时我们需要通过读取系统环境变量来获取一些有用的信息,比如系统路径、临时目录等。在系统真正运行的时候我们可以通过启动命令行,如:java -Dxxx.xxx=xxxx …,或者使用System.setProperty(“xxx.xxx”, “xxx.xxx”)来设置系统环境变量。但在单元测试时如何设置这些系统环境变量又成了一个让人头疼的问题。有些小伙伴是在setUp方法里设置,比如:
Allen Cheng
2018-09-10
7.6K0
Allen's Blogs 创建历程(1)
很早很早以前我就开始玩博客,陆陆续续注册了很多平台,比如博客中国、cnblogs、javeeye(现在叫iteye)、csdn,也零零散散写了一些文章,不过没有坚持多久,工作忙起来后就不再更新,自我回顾一下好像还真没有什么干货,只算是给互联网里堆了一串01010101的数据罢了。那为什么最近又动了写 Blogs 的心思,原因是最近读了一本书,书名是:《软技能:代码之外的生存指南》,里面第二篇:自我营销中讲到程序员自我营销的重要性,其中一点就提到了写 Blogs。总结来说,程序员写写 Blogs 不仅是自我营销的一种方式,还是一种很好的学习方式,不是说知识能说出来才算学到了么。
Allen Cheng
2018-09-10
7050
没有更多了
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档