Java内存映射,上G大文件轻松处理

内存映射文件(Memory-mapped File),指的是将一段虚拟内存逐字节映射于一个文件,使得应用程序处理文件如同访问主内存(但在真正使用到这些数据前却不会消耗物理内存,也不会有读写磁盘的操作),这要比直接文件读写快几个数量级。 稍微解释一下虚拟内存(很明显,不是物理内存),它是计算机系统内存 ...

沉默王二 @ 2019/08/15

在苏州软件园培训的那俩月,我找到了生的希望

01、困惑的提问 读者冬在微信上问我: 二哥,听说你当年也培训过?能不能聊聊当年培训的那段岁月,特别感兴趣。我也是大专,感觉不太好找工作,不知道培训的意义大不大。网上有很多声音在批评培训班出身的程序员,看完后挺困惑的。 反复了看了好几遍冬的问题后,我竟然“无语凝噎”了。于是摘下眼镜,长叹了一口气,抬 ...

沉默王二 @ 2019/08/12

窝在二线城市很难受,要杀回一线城市重造吗?

01、困惑的提问 小伙伴焱在「Java极客技术」星球上提问,内容如下: 本人毕业一年多在广州工作了一年左右,因为一些原因离开广州到了二线城市工作,进了个小公司。虽然技术上也用到了 SpringCloud、Redis 这些,但是使用场景都非常简单,而且系统并发量很小。工作不是很忙,不怎么加班,但是觉得 ...

沉默王二 @ 2019/08/05

温故而知新,重温 Java 7 的那些“新”特性

2009 年 4 月 20 日,Java 的亲生父亲 Sun 被养父 Oracle 以 74 亿美元收购,这在当时可是一件天大的事。有不少同学都担心 Java 的前途,我当时傻不啦叽地也很担心:自己刚学会如何通过记事本编写 Java 代码,然后通过 cmd 打印 Hello World 呢,这一下难 ...

沉默王二 @ 2019/07/29

优秀的程序员都热爱写作

01、注释也是写作 据我所知,优秀的程序员都热爱写作(不止是狭义上的写博客)。如果你能举出一些例外,请一定转告我。 为什么这么说呢? 一个优秀的程序员想要分享一段开源的代码,假如别的程序员看不懂的话,他的挫败感一定会油然而生,除非他不想让别人看懂,但我觉得这样的话也没必要开源了吧。 为了能够让别的程 ...

沉默王二 @ 2019/07/25

你想成为什么级别的程序员?

作为一名程序员,不知道你是否考虑过这个问题:“你想成为什么级别的程序员?”假如你还没有考虑过,那真的是该闭上眼睛,用力地想一想了。 这个问题并不好回答,因为它多少有些严肃。假如我要问你:“你最喜欢的书是什么?”,虽然也有一点点严肃,但你没准会不假思索地回答:“《平凡的世界》。”这两种问题的难易指数显 ...

沉默王二 @ 2019/07/12

我竟然不再抗拒 Java 的类加载机制了

很长一段时间里,我对 Java 的类加载机制都非常的抗拒,因为我觉得太难理解了。但为了成为一名优秀的 Java 工程师,我决定硬着头皮研究一下。 01、字节码 在聊 Java 类加载机制之前,需要先了解一下 Java 字节码,因为它和类加载机制息息相关。 计算机只认识 0 和 1,所以任何语言编写的 ...

沉默王二 @ 2019/07/10

程序员,你自豪什么

老婆是一名建筑设计师,每天要盯着电脑画很长很长时间的图纸,有时候为了赶进度,还要熬夜加很长时间的班。特别累的时候,她就会抱怨说,“老公,你啥时候才能发财,那样的话,我就辞职不干了。” 我是一名程序员,每天也要盯着电脑敲很长很长时间的代码,虽然很少加班,但离发财还很遥远。于是,我老婆也没办法辞职不干, ...

沉默王二 @ 2019/07/05

你竟然没用 Maven 构建项目?

一年前,当我和小伙伴小龙一起做一个外包项目的时候,受到了严重的鄙视。我那时候还不知道 Maven,所以搭建项目用的还是最原始的方式,小龙不得已在导入项目的时候花了很长时间去下载项目依赖的开源类库。 出于对我的尊重,小龙没有破口大骂,而是非常委婉地说了一句:“二哥,你好歹也有一定的知名度了,竟然没用 ...

沉默王二 @ 2019/07/03

一名合格的程序员应该是什么样子

6 月 25 号,母亲打来电话,说妹妹的高考成绩离二本线差 9 分。我听完随口扔了一句,“在我的意料之中。”因为她平时的成绩也就在二本线上下徘徊。 这句话挺伤人的,尤其是对于高考失利的妹妹来说,她听完我的话,立马就哭了起来,情绪非常激动,质问母亲为什么要打电话告诉我(玻璃心)。 我参加高考了两次,两 ...

沉默王二 @ 2019/06/28

TDD(测试驱动开发)死了吗?

01、前言 很早之前,曾在网络上见到过 TDD 这 3 个大写的英文字母,它是 Test Driven Development 这三个单词的缩写,也就是“测试驱动开发”的意思——听起来很不错的一种理念。 其理念主要是确保两件事: 确保所有的需求都能被照顾到。 在代码不断增加和重构的过程中,可以检查所 ...

沉默王二 @ 2019/06/27

Java Serializable:明明就一个空的接口嘛

对于 Java 的序列化,我一直停留在最浅显的认知上——把那个要序列化的类实现 Serializbale 接口就可以了。我不愿意做更深入的研究,因为会用就行了嘛。 但随着时间的推移,见到 Serializbale 的次数越来越多,我便对它产生了浓厚的兴趣。是时候花点时间研究研究了。 01、先来点理论 ...

沉默王二 @ 2019/06/22

一个理想主义的程序员

01、 9 年前,我从象牙塔里走出来,正式踏入社会,懵懵懂懂地在一家日企开始了职业生涯。那时候,技术功底非常差,因为在学校的时候每天就一副吊儿郎当的样子,编程自然也没有好好学。 和我同一时间入职的新人有 19 个,大家都怀着一颗敬畏的心,因为生怕自己被淘汰出局。毕竟是实习期,如果工作表现不符合预期的 ...

沉默王二 @ 2019/06/18

教妹学 Java:动态伴侣 Groovy

​ 00、故事的起源 “二哥,听说上一篇《多线程》被 CSDN 创始人蒋涛点赞了?”三妹对她提议的《教妹学 Java》专栏一直很关心。 “嗯,有点激动。刚开始还以为是个马甲,没想到是真人!” “其实蒋涛点赞的文章很多很多了,二哥的只是其中一篇而已。”三妹出乎意料地泼起了冷水。 “你说得没错。但这的确 ...

沉默王二 @ 2019/06/15

@程序员,你还记得当年高考时的样子吗?

01、程序员天天 说实话,我高考的时候内心毫无波澜,因为自己啥水平能掂量出来的,想着就是考多少分都无所谓,反正开心就好,所以高考前几天也没复习,该玩玩、该吃吃、该喝喝。 父母很看不惯我当时一幅“漫不经心”的姿态,威胁我说如果考砸了,就辜负了他们十几年的心血。 考试的过程里确实也没解出让自己兴奋的题, ...

沉默王二 @ 2019/06/11

教妹学 Java:难以驾驭的多线程

00、故事的起源 “二哥,上一篇《集合》的反响效果怎么样啊?”三妹对她提议的《教妹学 Java》专栏很关心。 “这篇文章的浏览量要比第一篇《泛型》好得多。” “这是个好消息啊,说明更多人接受了二哥的创作。”三妹心花怒放了起来。 “也许没什么对比性。” “没有对比性?我翻看了一下二哥 7 个月前写的文 ...

沉默王二 @ 2019/06/06

二十九岁,刚读完了财富启蒙读物《小狗钱钱》

01、小狗钱钱 直白点说吧,我读《小狗钱钱》最主要目的是,不能在创造财富方面拖了女儿的后腿——假如女儿像这本书的小女主一样要理财,做为父母,咱不能嘲笑、不能阻拦。 之前已经读过了《小狗钱钱》的作者博多·舍费尔的《财务自由之路》,但很遗憾的是,我并没有因为读了这本书就走上财务自由之路——读一本书就能财 ...

沉默王二 @ 2019/06/05

@程序员,你需要点金融常识

01、对金融的偏见 常常听见一句俗话:“越靠近钱的地方越能挣钱。” 很遗憾,以前的我总是对这句充满铜臭味的话视若罔闻——我是一名程序员,所以我的核心工作就是钻进代码的世界里,把代码写得尽可能的完善,少出 bug。 这种思维的局限性,一直把我封闭在一个很狭隘的世界里。我不肯去了解代码之外的世界,比如说 ...

沉默王二 @ 2019/05/28

教妹学 Java:大有可为的集合

00、故事的起源 “二哥,上一篇《泛型》的反响效果怎么样啊?”三妹对她提议的《教妹学 Java》专栏很是关心。 “有人评论说,‘二哥你敲代码都敲出幻想了啊。’” “呵呵,这句话充斥着满满的讽刺意味啊。”三妹有点难过了起来。 “不过,也有人评论说,‘建议这个系列的文章多写啊,因为我花了半个月都没看懂《 ...

沉默王二 @ 2019/05/24

@程序员,你需要点财商

01、财商 很长一段时间内,我都保持着一种崇高的品格——视金钱如粪土,自以为是地认为金钱是生不带来死不带去的玩意儿。 所以我每个月 20 号领到工资,25 号就还给了信用卡,说得再明白点,我所有的积蓄仅限于这 5 天的利息总和。说得再直接点,就是以前的我总认为“挣多少,就花多少,存钱没啥用”。 但随 ...

沉默王二 @ 2019/05/23