10 沉默王二

尚未进行身份认证

《Web全栈开发进阶之路》作者;一个有趣的程序员。

等级
TA的排名 556

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

内存映射文件(Memory-mappedFile),指的是将一段虚拟内存逐字节映射于一个文件,使得应用程序处理文件如同访问主内存(但在真正使用到这些数据前却不会消耗物理内存,也不会有读写磁盘的操作),这要比直接文件读写快几个数量级。稍微解释一下虚拟内存(很明显,不是物理内存),它是计算机系统内存管理的一种技术。像施了妖法一样使得应用程序认为它拥有连续的可用的内存,实际上呢,它通常是被分隔成多个...

2019-08-14 16:12:12

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

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

2019-08-12 08:54:17

Java:控制反转(IoC)与依赖注入(DI)

很长一段时间里,我对控制反转和依赖注入这两个概念很模糊,闭上眼睛想一想,总有一种眩晕的感觉。但为了成为一名优秀的Java工程师,我花了一周的时间,彻底把它们搞清楚了。01、紧耦合在我们编码的过程中,通常都需要两个或者更多的类通过彼此的合作来实现业务逻辑,也就是说,某个对象需要获取与其合作对象的引用,如果这个获取的过程需要自己实现,代码的耦合度就会高,维护起来的成本就比较高。我们来通过实战...

2019-08-07 13:27:11

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

01、困惑的提问小伙伴焱在「Java极客技术」星球上提问,内容如下:本人毕业一年多在广州工作了一年左右,因为一些原因离开广州到了二线城市工作,进了个小公司。虽然技术上也用到了SpringCloud、Redis这些,但是使用场景都非常简单,而且系统并发量很小。工作不是很忙,不怎么加班,但是觉得自己技术提升很慢,现在十分纠结是杀回大城市重造,还是要跳槽进相对大一些的公司呢?或者各位大佬有什...

2019-08-05 08:57:08

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

2009年4月20日,Java的亲生父亲Sun被养父Oracle以74亿美元收购,这在当时可是一件天大的事。有不少同学都担心Java的前途,我当时傻不啦叽地也很担心:自己刚学会如何通过记事本编写Java代码,然后通过cmd打印HelloWorld呢,这一下难道白学了?但其实这种担心是多余的,因为Java并不会陪葬,毕竟行业内有太多基于Java的软...

2019-07-29 09:57:20

驱动你做一件事的动力来源是什么?

01、驱动力有哪几种你有没有想过,驱动你做一件事的动力来源是什么?1)原始驱动力,自然而然地驱动你吃饭睡觉打豆豆。2)外在驱动力,奖赏你的时候开心,惩罚你的时候担心,“萝卜加大棒”的做法可能会把事情做得更漂亮,比如说老板答应我们加薪,我们工作起来就格外卖力;迟到要扣薪水,我们就乖乖准时上班。但也可能会更差劲。因为仅仅依靠外部激励,人们就容易把注意力集中到获取激励上,而不是要达成的目标上。...

2019-07-26 12:31:07

送一波福利,给「沉默王二」的读者朋友们

喜欢就关注“沉默王二”,第一时间获取有趣有益的文字!从坚持写文章到现在,已经有一段时间(6年)了,在分享原创文章的同时也认识了很多志趣相投的朋友。一路走来,感觉颇不容易,能够坚持下来,多亏了读者朋友们的不离不弃。你们的每一次点赞、每一次留言、每一次转发都是二哥继续坚持下去的源动力。为了更好地服务于读者,现推出以下四项福利:福利一:技术交流微信群...

2019-07-24 08:24:00

Java:前程似锦的 NIO 2.0

Java之所以能够霸占编程语言的榜首,其强大、丰富的类库功不可没,几乎所有的编程问题都能在其中找到解决方案。但在早期的版本当中,输入输出(I/O)流并不那么令开发者感到愉快:1)JDK1.4之前的I/O没有缓冲区的概念、不支持正则表达式、支持的字符集编码有限等等;2)JDK1.4的时候引入了非阻塞I/O,也就是NIO1.0,但遍历目录很困难,不支持文件系统的非阻塞操作等等。...

2019-07-23 13:41:54

优秀的程序员都热爱写作

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

2019-07-19 13:46:48

Java 代码界 3% 的王者?看我是如何解错这 5 道题的

前些日子,阿里妹(妹子出题也这么难)发表了一篇文章《悬赏征集!5道题征集代码界前3%的超级王者》——看到这个标题,我内心非常非常激动,因为终于可以证明自己技术很牛逼了。但遗憾的是,凭借8年的Java开发经验,我发现这五道题自己全解错了!惨痛的教训再次证明,我是那被秒杀的97%的工程师之一。不过,好歹我这人脸皮特别厚,虽然全都做错了,但还是敢于坦然地面对自己。01、原始类型的...

2019-07-16 16:50:38

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

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

2019-07-12 12:14:24

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

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

2019-07-10 12:47:50

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

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

2019-07-07 15:32:09

程序员,你自豪什么

老婆是一名建筑设计师,每天要盯着电脑画很长很长时间的图纸,有时候为了赶进度,还要熬夜加很长时间的班。特别累的时候,她就会抱怨说,“老公,你啥时候才能发财,那样的话,我就辞职不干了。”我是一名程序员,每天也要盯着电脑敲很长很长时间的代码,虽然很少加班,但离发财还很遥远。于是,我老婆也没办法辞职不干,还得老老实实地去上班。洛阳的很多建筑物都出自于她的设计之手,偶尔开车路过的时候,她会特别自豪地给我...

2019-07-05 10:05:28

你竟然没用 Maven 构建项目?

一年前,当我和小伙伴小龙一起做一个外包项目的时候,受到了严重的鄙视。我那时候还不知道Maven,所以搭建项目用的还是最原始的方式,小龙不得已在导入项目的时候花了很长时间去下载项目依赖的开源类库。出于对我的尊重,小龙没有破口大骂,而是非常委婉地说了一句:“二哥,你好歹也有一定的知名度了,竟然没用Maven构建项目,真让我大开眼界啊。”作为一名富有上进心的程序员,不能忍啊。借此机会,有必要隆...

2019-07-03 09:08:14

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

6月25号,母亲打来电话,说妹妹的高考成绩离二本线差9分。我听完随口扔了一句,“在我的意料之中。”因为她平时的成绩也就在二本线上下徘徊。这句话挺伤人的,尤其是对于高考失利的妹妹来说,她听完我的话,立马就哭了起来,情绪非常激动,质问母亲为什么要打电话告诉我(玻璃心)。我参加高考了两次,两次都离二本差了6分,最后不得已上了大专——当时也陷入了人生的低谷,情绪很低落。一路走来,能体会到...

2019-06-28 10:01:05

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

01、前言很早之前,曾在网络上见到过TDD这3个大写的英文字母,它是TestDrivenDevelopment这三个单词的缩写,也就是“测试驱动开发”的意思——听起来很不错的一种理念。其理念主要是确保两件事:确保所有的需求都能被照顾到。在代码不断增加和重构的过程中,可以检查所有的功能是否正确。但后来很长一段时间里,都没再听过TDD的消息。有人说,TDD已经死了,...

2019-06-26 15:04:26

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

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

2019-06-21 11:29:59

一名理想主义的程序员

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

2019-06-18 07:13:36

教妹学 Java:动态伴侣 Groovy

00、故事的起源“二哥,听说上一篇《多线程》被CSDN创始人蒋涛点赞了?”三妹对她提议的《教妹学Java》专栏一直很关心。“嗯,有点激动。刚开始还以为是个马甲,没想到是真人!”“其实蒋涛点赞的文章很多很多了,二哥的只是其中一篇而已。”三妹出乎意料地泼起了冷水。“你说得没错。但这的确给我注入了新的能量,蒋涛毕竟是业界的大佬啊。”“那就让我们开始新的篇章吧!我继续来...

2019-06-14 13:38:21

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。