3、Java虚拟机原理:JVM为什么被称为机器(machine)?

人们常说,Java是一种跨平台的语言,这意味着Java开发出来的程序经过编译后,可以在Linux上运行,也可以在Windows上运行;可以在PC、服务器上运行,也可以在手机上运行;可以在X86的CPU上运行,也可以在ARM的CPU上运行。 因为不同操...

2、数据结构原理:Hash表的时间复杂度为什么是O(1)?

大概十年前,我在阿里巴巴工作的时候,曾经和另一个面试官一起进行一场技术面试,面试过程中我问了一个问题:Hash表的时间复杂度为什么是O(1)?候选人没有回答上来。面试结束后我和另一个面试官有了分歧,我觉得这个问题没有回答上来是不可接受的。而他则觉得,...

1、程序运行原理:程序是如何运行又是如何崩溃的?

软件的核心载体是程序代码,软件开发的主要工作产出也是代码,但是代码被存储在磁盘上本身没有任何价值,软件要想实现价值,代码就必须运行起来。那么代码是如何运行的?在运行中可能会出现什么问题呢? 程序是如何运行起来的软件被开发出来,是文本格式的代码,这些代...

0、开篇词:掌握软件开发技术的第一性原理

计算机软件开发是一个日新月异的领域,几乎每天都有新的技术诞生。每隔几年,软件开发领域就会进行一次大的技术潮流变换,所以身处其中的软件开发技术人员也常常疲于奔命,不断学习各种新知识、新技术,生怕被这个快速变革的时代所抛弃。 但是每次从头开始学习一个新的...

23、结束语:真正的高贵,不是优于别人,而是优于过去的自己

你好,我是袁武林。 不知不觉中,在大家的耐心陪伴下,即时消息专栏的更新马上就要结束了。 首先,要感谢各位同学对我的信任和宽容,给我这个机会,让我能够在这段短暂的时间里,带领大家一起来学习即时消息这一门古老但又充满活力的技术。 对我来说,这是一段非常特...

19192939495243