原文链接: 如何在 GitHub 上高效阅读源码? 之前听说过一个故事,一个领导为了提高团队战斗力,把团队成员集中起来,搞封闭开发,重点还是在没有网的条件下. 结果就是一个月过去了,产出基本为零. 我发现,如果没有网,程序员基本上是写不出代码了.现在做什么功能之前,先到网上搜搜看,然后直接复制粘贴搞定. 最实用的技术就是这么朴实无华. 而大部分的代码都是在 GitHub 上找的,可以这么说,GitHub 基本上撑起了程序员一半的工资. 那如果不想把代码 clone 到本地,怎么在 GitHub…
序言:阅读JDK源码应该从何开始,有计划,有步骤的深入学习呢? 下面就分享一篇比较好的学习源码顺序的文章,给了我们再阅读源码时,一个指导性的标志,而不会迷失方向. 很多java开发的小伙伴都会阅读jdk源码,然而确不知道应该从哪读起.有些零零散散的学习,知识与知识之间没有相互联系起来,不成知识体系.以下为小编整理的通常所需阅读的源码范围. 标题为包名,后面序号为优先级1-4,优先级递减 1.java.lang 1) Object 1 2) String 1 3) AbstractStringBu…
上一篇我们回答了之前在梳理流程时遇到的一些问题,并思考了为什么要这么设计. 本篇是<如何高效阅读源码>专题的第十二篇,通过项目之间的联系来进行扩展阅读,通过项目与项目之间的联系更好的理解项目. 本节内容: TestRunner的执行流程 Spring如何整合JUnit 在我们使用Spring的项目中进行测试时,一般都需要添加下面一行注解: @RunWith(SpringRunner.class 为什么要使用这个注解呢?为了回答这个问题,我们先来了解一下TestRunner是如何执行的. Tes…
一.为何阅读源码 就是说,通过阅读源码能给你带来什么好处. 学习如何从需求-设计-实现,开阔你的思维,提升你的架构设计能力: 帮助更好地理解原理和架构设计: 帮助更快地定位线上问题BUG 可以根据自己的业务修改源码.定制功能 可以学习一些编程技能: 如何运用设计模式 Java各种类如何正确.合理.高效实用(锁,线程池等等) 用了什么数据结构和算法 提升个人经验值,经验一方面来自工作中项目的积累,另一方面来自阅读开源项目的积累.请问,你们公司的项目有常用的开源项目设计和实现的好吗? 二.如何阅读源…
spring源码编译流程:Spring5 源码下载 第 一 步 : https://github.com/spring-projects/spring-framework/archive/v5.0.2.RELEASE.zip 第二步: 下载 gradle http://downloads.gradle.org/distributions/gradle-4.1-bin.zip 第三步: 解压,配置 GRADLE_HOME 和 Path (如果下载依赖速度慢不能忍需要配置本地仓库.远程仓库)第四步:…
概述 开启博客分享已近三个月,感谢所有花时间精力和小编一路学习和成长的伙伴们,有你们的支持,我们继续再接再厉 **本人博客网站 **IT小神 www.itxiaoshen.com 定义 Tomcat官网 http://tomcat.apache.org/ Apache Tomcat软件是Jakarta Servlet.Jakarta Server Pages.Jakarta Expression Language.Jakarta WebSocket.Jakarta annotation和Jaka…
概述 开启博客分享已近三个月,感谢所有花时间精力和小编一路学习和成长的伙伴们,有你们的支持,我们继续再接再厉 **本人博客网站 **IT小神 www.itxiaoshen.com 定义 Tomcat官网 http://tomcat.apache.org/ Apache Tomcat软件是Jakarta Servlet.Jakarta Server Pages.Jakarta Expression Language.Jakarta WebSocket.Jakarta annotation和Jaka…
环境:CentOS 6.7 安全加固需求,由于某盟扫描系统主机有SSL系列漏洞,客户要求必须修复: 解决方案:将SSH/SSL升级到最新版本,删除SSL旧版本(实测不删除旧版本某盟扫描无法通过). 当前版本:OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 当前最新版本:OpenSSH_7.3p1, OpenSSL 1.0.2h 1.查看SSH/SSL当前版本 2.下载最新的SSH/SSL 3.源码编译安装SSL 4.源码编译安装SSH 5.删除SSL旧版本 6.写在后面 1…
说明:本教程由三部分组成如下: 1.      源码编译安装Nginx 2.      源码编译安装php以及mysql.redis扩展模块 3.      配置虚拟主机 文中所涉及安装包程序均提供下载链接,欢迎使用 执行环境以及前置条件:Ubuntu 12.04 LTS 已安装g++编译环境 全部源程序路径位于:root@ubuntu:/home/shihai/Desktop/Nginx目录下.例如以下图所看到的: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi…
测试系统:ubuntu16.04 server,debian8.7 netinstall,centos7 mini. 系统配置:使用virtualbox安装,内存1G,cpu单核,物理CPU  i5-4460 3.20GHz 测试目标:源码编译nginx-1.11.9,源码编译openresty/1.11.2.2,ubuntu apt nginx-1.10,debian apt nginx-1.6 测试工具:ab 2.3 测试方法:安装完成后,使用index.html内容为“helloworld…