2006年,Amazon推出了对象存储服务Amazon Simple Storage Service,简称Amazon S3。经过多年的发展,S3协议已经成为对象存储事实上的标准,后续出现的对象存储服务都不同程度地兼容S3 API的访问。广泛兼容的好处在于Amazon S3丰富的社区软件,例如客户端工具、网盘存储工具、SDK等,都可以直接拿来在不同的数据存储服务上使用。因此,学习S3协议对于学习对象存储服务是十分必要的。本文将介绍如何通过抓包来直观地学习S3协议。
PMD 使用内置的编码规则对代码进行静态检查,它通过 JavaCC 和 JJTree 得到代码的抽象语法树(AST),然后对语法树的节点进行检查。
本文介绍了CPD代码复制粘贴检测的原理,该方法可以用于任意文本的复制粘贴检测。
这段时间在做代码分析相关的工作,所以想要了解一下相关工具的原理。PMD 是一个 Java 静态代码分析工具,主要包括重复代码检测和代码规则检查两个部分。
《黑客与画家》是硅谷创业之父保罗·格雷厄姆的文集,主要介绍黑客即优秀程序员的爱好和动机,讨论黑客成长、黑客对世界的贡献以及编程语言和黑客工作方法等所有对计算机时代感兴趣的人的一些话题。书中的内容不但有助于了解计算机编程的本质、互联网行业的规则,还会帮助读者了解我们这个时代,迫使读者独立思考。
《软件管理沉思录》首先深入讲解了计划类型和计划过程,接着分析了项目团队建设和激励,然后描写了如何与经理共事,如何说服他们采用最佳实践,最后探讨了个人职责、承诺和过程。这本书详细列举了软件管理中常见的误区,提出了许多优秀的管理思想和实践。这本书可以帮助开发人员形成自己的工作风格和开发习惯,帮助管理者从失败案例中吸取教训以避免错误,适合各个层次的开发人员和管理者阅读。
《人月神话》这本书探索了达成一致性的困难和解决方法,并探讨了软件工程管理的其他方面,既有很多发人深省的观点,又有大量软件工程的实践,为每个复杂项目的管理者给出了自己的真知灼见。虽然这本书编写时的背景和现在大不相同,但是它所表达的很多软件工程管理的思想在如今的软件开发中仍然受用。
RxJava 提供了非常方便的线程切换功能,这篇文章将探讨 RxJava 的线程调度是如何实现的。
本文将介绍 RxJava 的实现中几个比较重要的类。