存档在 ‘IT资源’ 分类

Apache 实现https+Apache http访问转到https

2016年9月1日

首先安装SSL,再编译安装APACHE,再配置证书即可

1. 下载安装apache和openssl

网址:http://www.apache.orghttp://www.openssl.org

#tar zxvf httpd-2.0.54.tar.gz
#tar zxvf openssl-0.9.7g.tar.gz

编译安装openssl,这个软件主要是用来生成证书:

# cd openssl-0.9.7g
# ./config
# make
# make test
# make install

把 openssl放进内核目录下,使其在任何目录下都能运行。

# cd /usr/local/bin
# ln -s /usr/local/ssl/bin/openssl openssl

编译安装apache

# cd /opt/httpd-2.0.54
# ./configure –prefix=”/opt/apache2″ –enable-so –enable-ssl –with-ssl=”/usr/local/ssl/bin”
# make
# make install

 

2. 安装完毕,生成证书

在/opt/apache2/conf下建立一个ssl.key目录

# cd ../apache2/
# cd conf/
# mkdir ssl.key

然后在该目录下生成证书:

#cd ssl.key/

生成服务器私钥:

#openssl genrsa -des3 -out server.key 1024

Generating RSA private key, 1024 bit long modulus

…………………..++++++

………………………………………….++++++

e is 65537 (0x10001)

Enter pass phrase for server.key: //密码

Verifying – Enter pass phrase for server.key: //确认和上面密码相同

生成服务器证书请求,并按要求填些相关证书信息:

#openssl req -new -key server.key -out server.csr

Enter pass phrase for server.key: //上面的密码

You are about to be asked to enter information that will be incorporated

into your certificate request.

What you are about to enter is what is called a Distinguished Name or a DN.

There are quite a few fields but you can leave some blank

For some fields there will be a default value,

If you enter ‘.’, the field will be left blank.

—–

Country Name (2 letter code) [AU]:CN

State or Province Name (full name) [Some-State]:BJ

Locality Name (eg, city) []:BJ

Organization Name (eg, company) [Internet Widgits Pty Ltd]:163

Organizational Unit Name (eg, section) []:TD

Common Name (eg, YOUR name) []:a.test.com//行使 SSL 加密的网站地址。请注意这里并不是单指您的域名,而是直接使 用 SSL 的网站名称 例如:pay.abc.com。 一个网站这里的定是:abc.com是一个网站;www.abc.com 是另外一个网站;pay.abc.com 又是另外一个网站。

Email Address []:lala@corp.netease.com
Please enter the following ‘extra’ attributes
to be sent with your certificate request
A challenge password []:**********
An optional company name []:126

签证:

# openssl x509 -req -days 700 -in server.csr -signkey server.key -out server.crt
Signature ok
subject=/C=AU/ST=Some-State/L=tyl/O=tz/OU=tz/CN=tyl/emailAddress=tangyl@ruyi.com
Getting Private key
Enter pass phrase for server.key:      // 输入创建key时的密码

 

3. 修改httpd.conf文件

Apache一般有2个版本下载,一个是带SSL模块的,一个是不带SSL的,请首先检查自己的SSL是包含了SSL模块的,否则就没法做了。 Apache的参数配置都在httpd.conf文件中,SSL配置也是如此,此外还可以通过include httpd-ssl.conf来包含一个专门配置SSL的配置文件,如果激活了httpd-include ssl.conf,则可以打开httpd-ssl.conf来配置相应参数。

一般,我们直接在httpd.conf文件中直接配置SSL参数:

#加载模块mod_ssl.so,此模块是启用SSL功能必须的。

LoadModule ssl_module modules/mod_ssl.so //静态编进apache内核的则不需要此段

#监听443端口

Listen 443

#建立一个SSL的虚拟站点,避免SSL配置影响原来HTTP的站点配置

<VirtualHost _default_:443>

DocumentRoot “C:/Program Files/Apache2/htdocs”

ServerName www.myssl.cn:443

SSLEngine on

#SSLCertificateFile /opt/apache2/conf/ssl.crt/server.crt  #108行

SSLCertificateFile /opt/apache2/conf/ssl.key/server.crt

 

#SSLCertificateFile /opt/apache2/conf/ssl.crt/server-dsa.crt

SSLCertificateKeyFile /opt/apache2/conf/ssl.key/server.key   #116行

 

#SSLCertificateKeyFile /opt/apache2/conf/ssl.key/server-dsa.key

#SSLCertificateChainFile “C:/SSL/chain.cer”

ErrorLog “C:/Program Files/Apache2/logs/error.log”

TransferLog “C:/Program Files/Apache2/logs/access.log”

</VirtualHost>

 

#说明主站是使用HTTP通信的,只有上面虚拟站点有SSL

SSLEngine off                               

    

配置参数说明如下(完整的SSL配置参数见这里):

    * Listen 443:

      SSL协议监听的端口,同下面 Virtualhost 中的端口需要匹配,SSL协议缺省使用443端口,也有使用8443的情况。

    * SSLEngine on:

      SSL功能打开,如果在Virtualhost 出现这句,则仅作用于虚拟机站点配置范围,这个虚拟机站点全部使用SSL通信,如果出现在Virtualhost外,则作用于全局,整个服务器都使用 SSL(HTTPS)通信,不能采用HTTP通信,所以通常都在Virtualhost中加这句。

    * SSLCertificateFile:证书文件,server.crt

    * SSLCertificateKeyFile:私钥文件,server.key

    * SSLCertificateChainFile:证书链文件,GeoTrust证书除了EV以外,都是单根证书,都不需要配置这个参数,如果是EV证书,则需要加入EV的证书链。

    * Errorlog,TranksferLog:日志文件

    * SSLEngine off:整个站点,除了虚拟站点外,关闭SSL,仍然支持HTTP通信

 

4. 重新启动Apache

如果是在Linux下,输入:

apachectl stop

apachectl startssl

Server a.test.com:443 (RSA)

Enter pass phrase://输入创建证书和密钥时的密码,正确输入后ssl就连同apache一起启动

在浏览器中输入:https://220.181.75.119

要求下载证书,https建立就完成了

 

注意:可以去掉每次启动时要输入证书私钥的 pass phrase

#cp server1.key  server1.key.secure 

#/usr/bin/openssl rsa -in aserver1.key.secure  -out server1.key

 

 

5. 客户端证书认证

(1)基本客户证书认证

强制客户对整个站点都必须采用客户证书认证的方式,可以在原来的配置下增加如下参数:

<VirtualHost _default_:443>

……

# 需要客户有一个客户端证书,并由ca.cer这个CA证书签署

SSLVerifyClient require

SSLVerifyDepth 1

SSLCACertificateFile conf/ssl.crt/ca.cer 

</VirtualHost>

 

(2)如果只要求对特定目录采用客户证书认证方式,其他目录都不需要客户端证书,则可以采用如下配置:

<VirtualHost _default_:443>

……

# 需要客户有一个客户端证书,并由ca.cer这个CA证书签署

SSLVerifyClient none

SSLCACertificateFile conf/ssl.crt/ca.crt

<Location /secure/area>

SSLVerifyClient require

SSLVerifyDepth 1

</Location>

</VirtualHost>

 

6. 强制HTTPS访问

强制HTTPS访问,主要通过将用户访问的HTTP请求自动转换为HTTPS请求,有两种方式:一种是通过编程的方式,详见:”强制用户通过SSL访问网站” ; 另一种方式则是通过Apache强大的Rewrite功能。

如果要针对整个网站全部执行HTTP自动转为HTTPS的功能,可以在httpd.conf文件中,增加:

RewriteEngine on
RewriteCond   %{HTTPS} !=on
RewriteRule   ^(.*)  https://%{SERVER_NAME}$1 [L,R]

如果,仅要求对\secure目录下的内容强制采用HTTPS访问,可以在httpd.conf文件中加入如下语句:

<Directory “C:\Program Files\htdocs\secure”>
RewriteEngine on
RewriteCond   %{HTTPS} !=on
RewriteRule   ^(.*)  https://%{SERVER_NAME}/secure/$1 [L,R]
</Directory>

 

7. 访问控制举例

如何对来自Internet并要访问Intranet的客户强制采用强加密的HTTPS通信,并采用基本或者客户证书的认证方式?同时还要确保来自 Intranet的客户可以进行HTTP访问?

假设IntranetIP地址段是192.160.1.0/24,Intranet站点子区域的URL是/subarea ,则可以在HTTPS虚拟主机站点以外增加如下配置(这样可以同时作用于HTTPS和HTTP):

SSLCACertificateFile conf/ssl.crt/company-ca.crt


# subarea以外的区域只允许来自Intranet的访问
Order deny,allow
Deny from all
Allow from 192.168.1.0/24


# 在subarea以内,允许所有来自Intranet的访问,
# 但对来自Internet的访问,仅允许HTTPS+Strong-Cipher+Password
# 或者HTTPS+Strong-Cipher+Client-Certificate
# 如果使用了HTTPS,则确保使用高强度加密
# 同时允许客户以基本认证的形式认证

SSLVerifyClient optional
SSLVerifyDepth 1
SSLOptions +FakeBasicAuth +StrictRequire
SSLRequire %{SSL_CIPHER_USEKEYSIZE} >= 128

# 强制来自Internet的客户使用HTTPS
RewriteEngine on
RewriteCond %{REMOTE_ADDR} !^192\.168\.1\.[0-9]+$
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://%{SERVER_NAME}$1 [L,R]

# 允许网络访问和基本认证
Satisfy any

# 控制网络访问
Order deny,allow
Deny from all
Allow 192.168.1.0/24

# HTTP基本认证
AuthType basic
AuthName “Protected Intranet Area”
AuthBasicProvider file
AuthUserFile conf/protected.passwd
Require valid-user

https的传输原理

人们常常在使用网上银行时看到的连接都是以“https”开始的,那么这个https是什么呢?这其实是表示目前连接使用了SSL进行加密,能保证客户端到服务器端的通信都在被保护起来,那么浏览器是如果实现的呢?下面我们介绍一下SSL的基本实现方法。

首先我们有两种基本的加解密算法类型:对称加密,非对称加密(公私钥加密),现在介绍一下这两种加密算法的特点:

对称加密:密钥只有一个,加密解密为同一个密码,且加解密速度快,典型的对称加密算法有DES、AES等,示意图如下:

图1 对称加密

非对称加密:密钥成对出现(且根据公钥无法推知私钥,根据私钥也无法推知公钥),加密解密使用不同密钥(公钥加密需要私钥解密,私钥加密需要公钥解密),相对对称加密速度较慢,典型的非对称加密算法有RSA、DSA等,示意图如下:

图2 非对称加密

根据上面的两种加密方法,现在我们就可以设计一种无法让他人在互联网上知道你的通讯信息的加密方法:

  1. 在服务器端存在一个公钥及私钥

  2. 客户端从服务器取得这个公钥

  3. 客户端产生一个随机的密钥

  4. 客户端通过公钥对密钥加密(非对称加密)

  5. 客户端发送到服务器端

  6. 服务器端接受这个密钥并且以后的服务器端和客户端的数据全部通过这个密钥加密(对称加密)

    HTTPS通信过程的时序图如下:

    图3 HTTPS通信时序图

正如上图所示,我们能保证下面几点:

  1. 客户端产生的密钥只有客户端和服务器端能得到

  2. 加密的数据只有客户端和服务器端才能得到明文

  3. 客户端到服务端的通信是安全的

当然实际的SSL实现算法复杂的多,并有数据校验、身份验证等功能,如果需要更多了角请参看RFC2246及RFC4346文档。

 

Apache http访问转到https

Apache 实现http访问转到https ,可以用 Rewrite 模块。

配置经过如下:

1.httpd.conf中增加如下语句,如果有就不用加了

LoadModule rewrite_module modules/mod_rewrite.so

一、针对整站的

在 VirtualServer 加上如下语句:

RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)?$ https://%{SERVER_NAME}/$1 [L,R]

二、针对某些目录的

在这个目录内,添加如下

RewriteEngine on
RewriteBase /test
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

另也可以在.htaccess添加如下语句来实现

RewriteEngine on
RewriteBase /test
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

最后重新启动apache服务,访问http测试成功转换成httpd

/etc/init.d/httpd  restart

 

参考推荐:

httpd使用ssl模块配置HTTPS

HTTPS 升级指南

2016年8月1日

为了升级到 HTTP/2 协议,必须先启用 HTTPS。如果你不了解 HTTPS 协议(学名 TLS 协议),可以参考我以前的文章。
《HTTPS 协议概述》
《图解 HTTPS 协议》
《HTTPS 协议的七个误解》
《HTTPS 协议的延迟有多大?》

参考文献:
http://www.ruanyifeng.com/blog/2016/08/migrate-from-http-to-https.html?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io
http://blog.mimvp.com/2016/01/apache-httpsapache-http-access-go-to-https/

IO币的《码农周刊》(第 113 期)

2016年7月2日

程序设计

淘宝首页性能优化实践  小胡子哥的个人网站

本文从淘宝首页个性化引出的问题出发,从微观到宏观讲述了页面的优化实践。

拍照怎么搜题(上)  技术采拾

通俗易懂的解说

抓住六个点,谈唯品会的峰值系统应对实践  架构之美

闪购限时特卖业务特点决定了网站随时都需要处理高并发、大流量的用户请求

豆瓣混合开发实践  Android&iOS工程师之路

混合开发的直白的解释是 Native 和 Web 技术都要用

编程语言

Android 消息循环机制源码分析  学姐的技术成长之路

搞 Android 的不懂 Handler 消息循环机制,都不好意思说自己是 Android 工程师。

[译] 我眼中的 Android 架构  安卓黑科技

经验总结

Android Studio 2.0 正式版新特性  android开发小栈

尝鲜吧

Android 插件化原理解析  Android核心技术

插件加载机制

那些著名或非著名的 iOS 面试题:前编  iOS开发日常

系列文章

iOS 核心动画  iOS大牛之路

让开发更加酷炫

Swift 2.2 的新特性  SwiftCafe 快报

随着这次春季发布会,iOS 9.3,Swift 2.2 都已经发布。

Python 之生成器详解  fire烬的主题

从 Iterable, Iterator 知 Generator, Yield

Python 线程与协程  羽升笈

详细介绍

Python 模块受欢迎排行榜 Top 200  Python China

供参考

谁是最快的 Go Web 框架?  一亩三分地

供参考

[译] PHP 中的设计模式  王下 邀月熊的主题

本文主要讨论 Web 开发中的相关设计模式及其应用

[译] 深入理解 PHP 对象注入  PHP linux技术分享

代码详解

[译] 你好 ES2015  前端攻城狮

ES2015 是新版的 JavaScript

[译] 也许是你从未听过的在 CSS 领域最令人兴奋的发展  前端社区

发展趋势

[译] 看 Facebook 是如何优化 React Native 性能  工程师的星辰大海

Facebook 官方博文

【友盟+】猴年首场盛会:让我们聊聊 Alpha 狗、阿里 3 万亿、ROI、游戏出海的故事

工具资料

[译] Linux 系统调用权威指南  羽升笈

非常完整

一套完整的 Redis 入门 PPT  redis

实用

Linux 的进程优先级  Linux系统技术

细致讲解

Spark 在美团的实践  头条精选

经验分享

确保你网页的安全  SegmentFault 优质内容

深入解析

傅里叶分析之掐死教程完整版(2014)  白痴码农学做产品

生动讲解

ELK 在广告系统监控中的应用及 Elasticsearch 简介  有米科技研发团队

业界实战

[译] NPM 与 left-pad 事件:我们是不是早已忘记该如何好好地编程?  前端外刊评论君

值得思考

Freejam 通过用户友好型开发战略培养用户对 Robocraft* 的忠诚度 (英特尔开发人员专区)

开发人员所采用的方法离不开与玩家之间开放、透明的互动,如果没有各位玩家的反馈,他们根本无法改进这款游戏。

Node 读写 Excel 文件探究实践  NodeJs

主要阐述用 JS-XLSX、EXCEL-EXPORT 库来处理 Excel 文件

腾讯广州后台开发一面面经  牛客网精华贴

有点难

打造基于 GitHub 的 O2O 应用  Phodal

超炫的地图交互

Bash on Windows 抢鲜测试  微软技术相关

介绍及安装

Fetch 围观指南  Pikachu

XMLHttpRequest 的最新替代技术

连不通服务器服务怎么办  Yanmin

理论篇

程序员也需要了解期望值管理  Jim Liu的主题

你了解吗?

提升代码的可读性系列(一)  前端成长手册

基础篇

浏览器同源政策及其规避方法  PHP-前端

详细介绍

使用 Fragment 构建 Presenter(Android)  nekocode的主题

结合实例

用 Zabbix 和 Docker 搭建监控平台  杂说乱炖

Zabbix 是由 Alexei Vladishev 开发的一种网络监视、管理系统

ThoughtWorks 2016 年 4 月技术雷达发布  ThoughtWorks

技术参考

移动设备适配基础知识速成  淘宝开放平台精选

实用

Linux Shell Scripting Tutorial (LSST) v2.0  Awesome Qix

经典资料

可能是最接地气的 I/O 多路复用小结  周梦康的主题

言简意赅

用 Docker 做自动化持续集成  自动化测试

Macaca 部署完整版

创建和销毁对象的最佳实践  程序亦非猿的Android旅程

供参考

Native Page 与 Web View 之间的 JSBridge 实现方式  微软技术相关

为自己搭建一个鹊桥

基于内容和用户画像的个性化推荐  后端技术杂谈

基本介绍

Gradle 构建最佳实践  figotan的主题

结合具体应用场景

Sass (3.4.21) 中文文档  前端精要

一个 CSS 的扩展

大话程序猿眼里的高并发  大话程序猿眼里的WEB开发

个人观点

谈谈递归  Awesome Qix

通俗易懂

React + Redux todos 案例导读  K的全栈进击之路

实例

重新捡起你那吃灰的树莓派  关于python

试试吧

[译] 2016 年三大版式设计趋势  PHP-前端

供参考

webpack 入坑之旅  前端StepByStep

系列文章

运维知识体系 v0.6  运维精选

比较完整

[译] 15 个用于 GitHub 的 Chrome 插件  WEB资源网

收藏吧

深入浅出 Koa  NodeJs

主要针对 koa 的原理进行讨论

[译] 如何发布一个 Mac 应用并使其成为全球付费榜第一  _GET社区翻译计划

学习吧

如何设计实现一个 LRU Cache?  Awesome Coredump

结合代码

马尔科夫决策过程  algorithm&engineering

强化学习系列

解决使用 ShareSDK 第三方登录、分享遇到的坑  iOS大牛之路

经验之谈

Android 脸部识别官方 Demo  每日公开库@Juude-Song

留存备用

Surge 配置生成器  技术杂谈

快速生成属于你自己的 Surge 配置

React Native 实现的干货分享 App  react-native

很不错

tooltips:纯 CSS 打造的工具提示  JSdig

纯 CSS

一堆超赞的 JS 插件  web前端

收藏吧

idgo:兼容 Redis 协议的 ID 生成器  后端技术快报

Golang 实现

分享干货的《码农周刊》(第 114 期)

2016年7月2日

程序设计

Hadoop NameNode 高可用 (High Availability) 实现解析  大数据那些事

从内部实现的角度对 NameNode 的高可用机制进行详细的分析

有赞 App IM SDK 组件架构设计  有赞技术精选

以 Android 客户端为例,记录有赞旗下 App 中使用自研 IM SDK 设计思路。

淘宝高可伸缩高性能架构的相关框架介绍  全栈工程师

简要介绍

编程语言

阿里巴巴、美团等各大互联网公司的 Java 类校招对本科生有什么要求?  猿blog

值得参考

关于 Android 进程保活,你所需要知道的一切  Android开发专题

本文不是教你做永生不死的进程

Objective-C Runtime 1 小时入门教程  iOS开发者.

适合入门

减小 ipa 体积之删除 frameWork 中无用 mach-O 文件  _iOS相关

新思路

这次 Swift 可能是真的要支持 Android 了  SwiftCafe

这项工作已经在进行了

[译] Python 导入模块的几种姿势  编程派

详细介绍

200 行 Python 代码实现简易版 2048  学算法的码农的主题

代码示例

使用 Go 构建命令行程序的快捷之道  golang神坛

介绍用于构建命令行程序的开源工具 mkideal/cli

在 Go 中使用面向对象 Web Servers  谢权blog

代码示例

[译] 展望 JavaScript 2016 年的趋势和生态发展  工程师的星辰大海

展望和梳理

JavaScript 被忽视的细节  小胡子哥的个人网站

《JavaScript 权威指南》笔记

[译] React Native 开源一年的总结  工程师的星辰大海

翻译自 Facebook 工程团队的官方博客

React Native 蛮荒开发生存指南  编码沉思录

踩坑和爬坑经验

工具资料

百度前端学院 2016 春季班任务  兔之技术笔记

收藏吧

[译] 面向程序员的数据挖掘指南  全栈工程师

一本用于学习基本数据挖掘知识的书籍

Mac 上自动配置好看易用的 Vim 环境  Barret李靖的主题

实用

Python 的练手项目有哪些值得推荐?  运维Linux&Python

收藏吧

一篇真正教会你开发移动端页面的文章(一)  HcySunYang前后左右端

详细介绍

前端打包工具 grunt 快速入门  NodeJs

大篇幅完整版

iOS 开发常用库  talisk斯温的技术博客

持续更新

Ansible 中文权威指南  Ansible

马哥 Linux 团队成员荣誉出品

面向英特尔 x86 平台的 Unity* 优化指南:第 1 部分 (英特尔开发人员专区)

展示 Unity* 软件中的多种工具和特性,以帮助您增强 Unity 项目的性能。

带你实现开发者头条(一):启动页实现  Android开发666

一步步教你

Facebook React Native 教程  全栈工程师

官方教程

第二届 Gopher China 大会幻灯片  程序员的朋友圈

干货

Vuex 源码阅读笔记  Lxxyx的主题

笔记中的 Vue 与 Vuex 版本为 1.0.21 和 0.6.2

优化高并发之协程  Edagarli’s Blog

简明介绍

深入理解信息安全领域相关术语  肥头的程序员之路

很完整

老司机使用 Redis 缓存复杂查询  阿毛的分享

经验分享

前端优化实践总结  Alexi的全栈之路

经验总结

我是怎么一个月将应用弄上 App Store 首页推荐的?  全栈

经验分享

一些酷炫的 Android loading 动画  211361的主题

收藏吧

自学 Sketch 整理  Node.js实战

作为全栈工程师,怎么可以不会点设计呢?

Sublime Text 特色插件推荐  Tong WANG的主题

持续更新

[译] 推荐 5 个值得学习 React Native 的开源项目  sugarball的前端分享

收藏吧

随谈 iOS 定制 UI 组件的过程  iOS开发随手记

详解

MySQL 5.7 对 JSON 的支持  杂说乱炖

实例介绍

妖怪和和尚过河问题  韩子迟的主题

一道有意思的编程思考题

webpack 实践最后一篇  前端Talk

系列文章

不带公式的机器学习算法整理  nicol_tao的主题

供参考

Spark 入门实例指南  初级程序猿的进化之路

适合新手

机器学习常见算法个人总结  小弧光黑板报

面试用

打造轻量级 ViewController 之抽离 DataSource/Delegate  iOS开发者.

结合代码

[译] 简约主义和字体排版  梦遥奇缘

最佳网页设计实践

推荐系统的典型推荐案例  nicol_tao的主题

通俗解释

[译] 将 Web 应用性能提高十倍的 10 条建议  Rover12421的主题

供参考

Awesome Python Books  不好奇的喵的主题

收藏吧

Learning Vue 1.0  杨进春的主题

Step By Step

跨域资源共享 CORS 详解  Lxxyx的主题

详细介绍 CORS 的内部机制

详细介绍 CORS 的内部机制  Android世界

通过代码更多了解 RN 的特性

使用 MVVM 架构实现的 iOS 头条 App  iOS干货分享

MVVM 架构的一次实践

LoginLib:对登录注册中发送验证码按钮和提交按钮的封装  安卓同学

使用方便

Cal-HeatMap:创建日历热点图的 JavaScript 模块  Awesomes-cn

用于可视化时间序列数据

React Native 最佳学习模版:F8 App 开源了  静逸秋水的主题

学习吧

Auto:Google 的 Java 代码生成器  每日公开库@Juude-Song

好东西

Web 前端助手  前端成长手册

浏览器插件

Voltron:Python 实现的黑客调试器前端  Python技术杂谈

可扩展

豆瓣 FM 第三方客户端 Murmur  ANDROID 可以这样开发哦

一个带白噪声效果的豆瓣电台第三方客户端

iBlog2:基于 Node.js 的个人开源博客系统  Node.js实战

响应式布局

WrapAPI: APIs for the whole web  _iOS相关

强大

鸟巢采集器:Web 版的网页数据采集工具  数据小白

功能强大

WeChatContacts:OC 实现的微信通讯录 UI  iOS干货分享

联系人按拼音首字母分组排序 A-Z,并且含联系人搜索功能。

KMNavigationBarTransition:无需代码统一管理导航栏转场(OC)  逐鹿 IT

同时支持竖屏和横屏

SimpleDeployer:基于 Git WebHook 的部署工具  技术杂谈

超简单

建立品牌的《码农周刊》(第 115 期)

2016年7月2日

程序设计

我在系统设计上犯过的 14 个错  只有干货

作者回顾了自己近八年来所做的一些系统设计,看看犯的一些比较大的血淋淋的错误。

58 到家通用实时消息平台架构细节  FlamingTree的主题

第一手资料

银行先进的反欺诈是如何设计的  架构之美

通过建立行为模型灵活应对用户的各种行为,适应现在与未来。

编程语言

C++ 字符串处理小结  BetaCat

详细总结

如何准备阿里社招面试,顺谈 Java 程序员学习中各阶段的建议  全栈感知营的主题

实用

[译] 详解 Java 中的注解  技术小黑屋

详细介绍

Android 反编译:揭秘猎豹设置默认浏览器逻辑  Android开发进阶之路

本文主要分享,如何通过竞品分析的角度,解决我们在开发过程中遇到的问题。

拥抱 Android Studio 之五:Gradle 插件开发  杂说乱炖

实践出真知

React Native For Android:框架启动核心路径剖析  Android&iOS工程师之路

从源码出发,分析下 RN4A 的启动过程。

站在大神肩膀上看 RxJava  cyning开发历程

主要针对不熟悉 RxJava 的

敲一下 enter 键,完成 iOS 的打包工作  iOS开发者.

主要谈的是打单一的测试包,并不是在讲持续集成。

iOS 原生库对 https 的处理  SwiftCafe

如何使用 Swift 在 iOS 环境下处理 https 请求

总结一些 iOS 项目中组织代码的方法  _iOS相关

总结一些组织代码的方法

手把手编写自己的 PHP MVC 框架实例教程  Code Collection

一步步教你

手把手教你用 Python 爬虫煎蛋妹纸海量图片  python3

我们的目标是用爬虫来干一件略污事情

用 Python 理解服务器模型(下)  治城的主题

上篇

Golang 语言基础  java,php,ruby,go杂谈

系列文章

使用 Visual Studio Code 开发 Go 程序  一亩三分地

基本配置

Node.js 年度技术栈推荐  博客园

供参考

【小牛学堂】免费大数据实战服务器集群-实战云 内测申请中

英特尔开发人员专区

什么是代码现代化?

现代高性能计算机由下列资源组合构建而成:多核处理器、众核处理器、大型高速缓存、高带宽进程间通信结构和高速 I/O 功能。高性能软件需经过设计,以充分利用这些丰富的资源。

使用 HTML5 为移动设备开发游戏

游戏需要跨所有移动平台运行相同语言,而 HTML5 是跨平台移动游戏开发的理想之选。

英特尔实感 3D 扫描代码示例演示

F200 摄像头的面部扫描功能可用于验证身份,从而可以在安全甚至是游戏应用领域大有作为。R200 展示的头部扫描功能将支持多种应用,包括 “直接 3D 打印” 和医学应用等。

模拟和刺激: 轻松保持活跃思维,击败冬季忧郁症

在新的一年,人们似乎总是会制定各种健身计划,但最新的科学研究表明,大脑也同样重要。

工具资料

AWK 常用技法  saymagic的主题

供参考

微信为啥这么省流量  荣荣

一起聊聊时间戳的奇技淫巧

团队中的 Git 实践  Android&iOS工程师之路

供参考

使用 OpenCV 识别 QRCode  _iOS相关

详细介绍

细说 CA 和证书  小胡子哥的个人网站

供参考

开启漫漫的 agera 之旅  Android&iOS工程师之路

Google 开源的 Android 响应式框架

[译] 20+ 为前端程序员准备的文档、指南  WEB资源网

实用

有赞搜索引擎实践  有赞技术精选

算法篇

公司前端开发架构改造  Oldli’s note

工程化,模块化,组件化

PHP 资源列表  Code Collection

内容丰富

一名分布式存储工程师的技能树是怎样的?  Self-Driven Developer

供参考

如何评价 Uber 不用 Node.js,而用 Go 语言构建地理查询服务?  Node.js实战

比较 Node.js 和 Go 来谈架构演进过程

Flask 入门指南  Gevin share

适合新手

Atom 的 Web 开发设置  _haochuan的RandomNotes

主要针对 Web 前端的开发

日志系统之定时任务执行引擎  【消息】【日志】【搜索】

日志系统在定时任务这块的选型与设计

渗透 Facebook 的思路与发现  Kali 安全

详细介绍

简单易懂的 CSS Modules  PHP-前端

特指一种近期才出现的技术手段

斯坦福大学更新 iOS 9 编程开发新课程  iOS开发日常

更新啦

Online Learning 算法理论与实践  不同的分享

在美团移动端推荐重排序的应用

秒级处理海量数据,浙江移动大数据平台是怎么做到的?  Dbaplus.cn精选文章

实践总结

Mac 上 SVN 入坑小记(一)  iOS开发札记

供参考

一探前端开发中的 JS 调试技巧  Node.js实战

详解

Rest API 的那些事儿  学会分享

API 平台的那些事

前端性能优化最佳实践  前端成长手册

供参考

反编译与重打包 “疯狂大脑” 应用  saymagic的主题

一步步教你

如何使用 webpack 开始一个 React 项目?  相见恨晚系列

实战操作

十款 UX 设计应用工具  头条精选

总有一款你需要

Windows 服务端程序向 Linux 平台移植事项  nicol_tao的主题

经验分享

[译] 给自学游戏和图形开发者的数学符号指南  Coding – 让开发更简单!

实用参考

Saiku + Kylin 多维分析平台探索  星爷的主题

实践纪录

如何压缩 HTTP 请求正文  Jerry Qu 的原创文章

详细介绍

nginx-1.9.2 代码理解及详细注释  -流水若云-的主题

持续更新

Git 常用的不常用笔记  安卓star

供参考

OpenStack 入门笔记  胡写的笔记

系列文章

BaseRecyclerViewAdapterHelper:强大、灵活的 RecyclerViewAdapter  大圣归来学Android

集成了 RecyclerViewAdapter 的常用功能的基类

AKTLayout:高性能自动布局框架  IOS 高性能组件

服务于 iOS 平台

Pagekit:YOOtheme 出品的强大 CMS 系统  刘巍峰的技术收藏

轻量

fors:代码不足百行的轻量级 js  Node.js实战

让异步如 for 循环般执行

JASON:高速 JSON 解析类库  Swift 语言指南

Swift 实现

SCANNER-INURLBR:高级黑客搜索引擎工具  Kali 安全

利器

一款爬虫数据来源的美图客户端  android开发小栈

你懂的

Motan:新浪开源的的分布式远程服务调用框架  全栈工程师

高性能、易于使用

0opslab-utils:一些常用 Java 操作方法封装  Neptune的主题

方便

Office UI Fabric:微软 Office 前端团队的框架  Node.js实战

收了吧

基于 Material Design + MVP 的 GitHub 第三方客户端  Android沉思录

Android 版本

JSPatchX:JSPatch XCode 代码补全插件  头条精选

强大

slim-born:Slim 3 骨架  HavenShen

基本实现了 Authentication

Zipkin:分布式追踪系统  Scala Spark Go Akka Flume

Scala 实现

聊起来的《码农周刊》(第 116 期)

2016年7月2日

程序设计

亿级 Web 系统的容错性建设实践  微观世界

容错其实是系统健壮性的重要指标之一,本文主要聚焦于 “容错” 能力的实践。

高性能分布式 Mock 平台的框架与设计  Android&iOS工程师之路

本文所描述的 mock 平台设计初衷是完成一个高性能的分布式 mock 平台

移动直播技术秒开优化经验(含 PPT)  技术杂谈

现今移动直播技术上的挑战要远远难于传统设备或电脑直播,其完整的处理环节包括但不限于:音视频采集、美颜/滤镜/特效处理、编码、封包、推流、转码、分发、解码/渲染/播放等。

编程语言

另一份 Java 应用调优指南  江南白衣的小报

工具篇

如何优雅地设计 Java 异常  ﹏. big_sun ヤ的主题

经验之谈

[译] 在 Visual Studio 上用 C++ 写 Linux 程序  C/C++开发者

Linux 工程师新法宝

如何自学 Android  Gityuan的Android深度剖析

供参考

关于 Android N 的那些事  Android&iOS工程师之路

详细介绍

史上最用心的 iOS App 上架流程  iOS 开发点滴

从 0 到 1

聊聊 Swift 3.0  SwiftCafe

新版本对我们的影响

[译] GCD 最佳实践指南  _iOS相关

利用 GCD 提供的工具来达成高抽象层级的行为

JavaScript:一个屌丝的逆袭  码农翻身

通俗讲解

[译] 给 JavaScript 开发者讲讲函数式编程  前端外刊评论君

深入了解函数式语言中的一些核心概念和模式

JavaScript 实现 MVVM 之我就是想监测一个普通对象的变化  HcySunYang前后左右端

主要讲述 MVVM 实现中的一部分:如何监测数据的变化

Python Tips  TechShare

每天一条有用的 Python 小提示

Python 探针实现原理  WEB之路

简单讲述

使用 Golang 语言实现一个简单的 Bitcask 引擎的文件存储系统  [日常学习]

bitcask 是 bashro 的设计的一个底层存储引擎

[译] React Native 如何做跨平台设计  前端开发优质内容学习

构建 F8 2016 App 第二部分

[译] 使用 CSS3 的弹性布局写出 10 种常见的 UI 组件  达仔(*/ω\*)的前端分享

Flexbox 样式

工具资料

互联网服务端技术:如何学(上)  技术架构学习

通俗介绍

撰写安全合格的 REST API  杂说乱炖

供参考

Linux 内存中的 Cache 真的能被回收么?  Linux系统技术

深入分析

[译] 两百行代码教你写个超小编译器(Node.js)  Cheng Zheng的主题

可能是你见过最小的编译器

Google 镜像搜集 + 检测  头条精选

备用

[译] 如何在面试中优雅地回答 “Git 是什么”  Zhongyi Tong的主题

入门介绍

无线电硬件安全大牛都用哪些利器?  Kali 渗透安全

好东西

替代传统事务的并发建议  架构之美

供参考

将英特尔实感技术应用到 Unity 项目的 12 个步骤 (英特尔开发人员专区)

本指南可帮助您使用英特尔实感软件开发套件中的英特尔实感 Unity* 工具套件

比官方更好的 AndFix 教程及 Demo  大圣归来学Android

供参考

Swift 语言学习及速查手册  Hacker Thinking

实用参考

使用日志服务 LogHub 替换 Kafka  阿里云栖社区精选文章

简单解释为何建议从自搭 Kafka 换成使用 LogHub

BeeFramework:让开发更加简单  iOS大牛之路

一个 semi-hybrid(半混合)框架

[译] 50+ 四月设计圈优质干货大合集  优质设计开发资源分享

收了吧

Spark 在金融领域的应用:日内走势预测  初级程序猿的进化之路

实战案例

撸一撸 Vim(五)  不入流的码农

命令行模式

[译] 一个简单的网页配色指南  最佳实践

供参考

从日志统计到大数据分析(十六):元  精益编程

系列文字

去 model 化和数据对象  _iOS相关

去 model 化就是不使用数据对象

深度学习有哪些好玩的且易于实现的论文?  python3

有用

记阿里巴巴的一次面试  猿blog

供参考

打造一个自动化的前端项目  全栈整合

一步步教你

Web 前端性能优化  前端疯魔院

实用指南

简单使用 Google Agera 框架  APP开发者

一个类似 RxJava 的函数式编程框架

Mac.py:查询网卡所属厂商的 Python 库  在线工具

只有一个 Api 方法

Grafana + InfluxDB + Collectd 构建监控系统  运维精选

代码示例

中型存储架构实践探索  崔小拽的主题

如何在资源有限的情况下,实现一个稳定,高效,靠谱的存储方案

用 Google Cloud 打造你的私有免费 Git 仓库  Google开发者

简介

微信双开还是微信定时炸弹  WooYun知识库

关于非越狱 iOS 上微信分身高危插件 ImgNaix 的分析

Swift 开发者、项目、最佳实践  Swift 语言指南

持续更新

阿里移动端高性能动态化方案 Weex  阿里百川专区

深度揭秘

Git Commands and Best Practices Cheat Sheet  小弧光黑板报

供参考

初探 MySQL 的 Binlog  220664的主题

实践总结

Node + React 小爬虫  Pikachu

从开发到部署

[译] JavaScript 函数式编程手册  Node.js实战

ES6

[译] Vue 2.0 发布  全栈工程师

好消息

我不能再忍受你的代码风格了!  魅族科技开发团队

无论人数多少,代码都应该同出一门。

所有可以插入网页 <head> 部分的语句  杂说乱炖

你了解多少?

VS Code Tips and Tricks  Python技术杂谈

实用

GlitchLabel:俗称晃瞎你的眼文字标签  Swift 语言指南

Swift 实现

从菜鸟到卡厂运维总架构师  Dbaplus.cn精选文章

14 年的蜕变

玩转 npm  前端Talk

简明

30 款高质量的 HTML5 / CSS3 响应式模板  Java、Android、HTML5

收藏吧

利用 handlebars 实现后端组件化  web前端=>js全栈=>前端架构=>……的成长之路

结合实例

功能强大的 StickyHeaderListView  孙福生

Android 实现

百度前端学院 2016 春季班总结  兔之技术笔记

供参考

Java 开发常用的在线工具  全栈感知营的主题

有用

全栈工程师的黑魔法  Phodal

文档篇

如何优雅地使用 PhpStorm  TechShare

一步步教你

这些年,你不能错过的 Spark 学习资源  MOBIN的大数据驿站

收了吧

底部导航栏规范指南  尤条子

Bottom navigation

不孤单的《码农周刊》(第 117 期)

2016年7月2日

程序设计

乐视秒杀:每秒十万笔交易的数据架构解读  Dbaplus.cn精选文章

作为商品购买的最后一环,保证用户快速稳定地完成支付尤为重要。

支付宝架构师:从工程师到架构师的成长之路  移动程序员(Android&iOS)

作者从自己的理解出发,阐述架构师这个角色的定位和个人发展的建议。

资深架构师总结的 7 条经验  码农翻身

作者的 15 年编程经验总结

编程语言

学会了 C 语言真的可以开发出很多东西吗?  C/C++开发者

当然可以

Java 多线程干货系列(四):volatile 关键字  嘟爷java超神学堂

系列文章

Android 多渠道打包这样做才酸爽!?  运维精选

针对多渠道如何快速打包

Android 热修复,没你想的那么难  开源实验室

一种动态加载最简单的实现方式

Node.js 背后的 V8 引擎优化技术  好文章不分享不舒服斯基

iOS 开发经验总结  iOS好文

经验总结

微信读书 iOS 性能优化总结  iOS干货分享

实战经验

将 Objc 库转换成更符合 Swift 语法风格的形式  SwiftCafe

Swift 3.0 预告

Python 类与元类的深度挖掘  羽升笈

深入挖掘 Python 中类与元类背后的机制

利用 Python + Selenium 自动化快速截图  编程派

代码示例

使用 Go 开发一个基于 Raft 算法的分布式 kv 系统  [日常学习]

详解

Go 性能优化技巧 10/10  雨痕学堂

系列文章

[译] 12 个 JavaScript 技巧  web开发的愚人之旅

实用

[译] 用 CSS 实现 Netflix Logo 动画  前端外刊评论君

一步步教你

工具资料

开发者头条 Mac 端插件发布啦!  _iOS相关

GitHub 地址

值得推荐的 C/C++ 框架和库(2014)  C/C++开发者

供参考

Java 程序员眼中的 Linux  bbear

供参考

《程序员必读之软件架构》读书笔记  非全栈攻城师

细致总结

一行代码解决各种 IE 兼容问题  全栈整合

供参考

Kafka vs RocketMQ:Topic 数量对单机性能的影响  阿里中间件博客

详细对比

关于启用 HTTPS 的一些经验分享(三)  Jerry Qu 的原创文章

无废话

如何选择开源项目?  AndroidDeveloper

详细介绍

Koa 在 Macaca 中的实践  自动化测试

一款优秀的、面向未来的 Web 框架

汽车之家配置管理系统 AutoCMS  PyLixm’Wiki 分享

详细介绍

线程并行化的概念及其用法 (英特尔开发人员专区)

为实现最佳性能和长期可持续性,可以考虑采用三个层面的并行编程方法:多线程化、分布式并行化和矢量化。

理解杀进程的实现原理  Gityuan的Android深度剖析

详解

[译] 常见的隐写工具介绍  信息安全杂选

供参考

周围的餐馆有哪些?GeoHash 算法  MikeTech

实例讲解

前端面试题(二)  01python

收藏吧

信息安全的一些截图及流程图  安全分析工具

很全面

Atom 飞行手册中文版  TechShare

GitBook

Awesome RxJava  janstk的主题

收藏吧

谈谈服务化体系中的异步(上)  江南白衣的小报

浅入浅出

[译] 全新 Apple iOS 设计规范指南  iOS开发日常

史诗级规范

Docker 入门  异步社区

学习第一个 Docker 容器

微信支付 SDK:两行代码解决支付  arccode的主题

让使用微信支付的朋友最快速度接入微信支付

Nginx 基础架构  时间停止瞬间的主题

Nginx 学习笔记

如何优雅地进行表结构设计  超越PHP

数据库杂谈

50 个设计简约的移动 App UI 设计作品  设计疯魔院

供参考

关于 CPU Cache  FindSpace博客

程序猿需要知道的那些事

阿里巴巴算法工程师四面详细面经  牛客网精华贴

三轮技术 + hr 面

API 返回结果设计经验与总结  来自巴格达的土土哥的主题

代码示例

egret 引擎初探  前端博客

一款优秀的开发游戏开发引擎

如何写出优雅的函数  KK笔记

Clean Code 读书笔记之二

搭建 IPython + Notebook + Spark 开发环境  spark | hadoop | python | big-data | finance|life

系列文章

Kafka 深度解析(2015)  运维精选

完整解析

使用 Graph Easy 绘制 ASCII 图  软件匠艺社区

一个很 geek 的绘图工具

最短路径算法总结  一派胡言的技术文章

梳理总结

30 套精美免费的 bootstrap 模板  优质设计开发资源分享

收藏吧

计算机从业者的技术成长学习之路  小弧光黑板报

供参考

一个全栈增长工程师的练手项目集  janstk的主题

一系列的练手项目

Android 开源项目及库  杂说乱炖

欢迎补充

莆田系医院网站提醒  在线工具

Chrome 插件

一个小而美的 CSS 3d 引擎  广告圈的前端开发之路

为方便工作需要制作

MyPlatform:文科生也会搭的微信个人号后台  LittleCoder的主题

是个阿姨也会配的个人微信平台后台

Laravel Valet:Mac 下极简的 PHP 开发环境  WEB资源网

详细介绍

yqthen.js:让 JS 性能飙到嗨的流程库  Node.js实战

async 的升级版

GitFame:用来统计项目成员贡献代码量的小工具  figotan的主题

实用

APlayer:HTML5 音乐播放器  DIYgod

超级好看

钉钉开放平台 Open API Golang SDK  go语言

备用

vConsole:针对手机网页的前端 console 调试面板  前端成长手册

微信前端团队出品

PPMessage:开源的在线客服平台  ppmessage开源前端开发者

即插即用

周四见的《码农周刊》(第 118 期)

2016年7月2日

程序设计

Log4j2 架构分析与实战  非全栈攻城师

Log4j2 是 Log4j 的升级版,在修正了 Logback 固有的架构问题的同时,改进了许多 Logback 所具有的功能。

互联网服务端技术:如何学(下 B)  技术架构学习

聊聊分布式组件

小王的架构师之路  码农翻身

架构师之路,可能和你想的不一样。

编程语言

C 与 C++ 的真正区别在哪里?  Will的收藏集

简要对比

[译] 2016 年排名 Top 100 的 Java 类库  JAVA干货

在分析了 47251 个依赖之后得出的结论

谈谈 Android 上的热修复  后端疯魔院

从 Instant Run 出发

[译] 理解 Android 命名规范  安卓黑科技

通过每个 Android 组件的名字就可以清晰地理解其功能

Android Tips 6  Android世界

一些有趣的小知识点

iOS 碎片动画  iOS大法好

代码详解

React Native 移植原生 iOS 平台项目  江清清的技术专栏

系列文章

一起聊聊 Swift 3.0  TechShare

带来的新改变

响应式编程思想(Scala)  后端疯魔院

简明介绍

Python 面试题总结  运维Linux&Python

分门别类

Python 技巧总结  spark | hadoop | python | big-data | finance|life

代码示例

[译] 全栈 JavaScript 程序员的崛起  web开发的愚人之旅

JavaScript 无处不在

这可能是史上最全的 CSS 自适应布局总结  全栈

实用参考

工具资料

Shell 编程之语法基础  Linux系统技术

用一个全新的角度对 bash 编程的知识进行体系化

小公司的前端应该怎么做?  前端疯魔院

经验分享

iOS 开发大神必备的 Xcode 插件  iOS开发日常

收藏吧

设计师如何自学创意编程  创意编程

入门篇

Mac 下提升工作效率的方式  peak技术分享

一些方法

保护你的 API(下)  轻量级Web应用开发 – icodeit

使用基础设施(反向代理)的一些配置,来完成保护未授权资源的目的。

我的现代代码学习之旅 (英特尔开发人员专区)

经过一段时间的学习后,我发现代码现代化非常适用于 CPU 处理器。因为它们都是多核处理器,而我们很少能够利用 CPU 的所有内核。

闯过这 54 关,点亮你的 Git 技能树(四)  软件匠艺社区

系列文章

写给想成为前端工程师的同学们  Alexi的全栈之路

经验分享

腾讯游戏数据自愈服务方案简介  全栈感知营的主题

引入了 Percona 公司的 pt-table-sync

频频卡顿崩溃?移动应用如何跟踪定位性能问题 (云智慧)

用户从哪里来?在 App 中的体验如何?本文帮您解密移动应用性能的技术原理。

JavaScriptCore 简介  terry.king开发博客

JavaScriptCore 是一种 JavaScript 引擎,主要为 webkit 提供脚本处理能力。

Flume + Kafka 收集 Docker 容器内分布式日志应用实践  Java技术路

详细介绍

Redis 字符串类型实现内幕  JAVA程序员技术分享

主要介绍 Redis 的 string 类型的实现内幕

[译] 五月设计圈新鲜干货大合集  全栈技术学院

收藏吧

一些有趣且好用的 Atom 编辑器插件  kompasim

好东西

Retrofit2 完全教程  怪盗kidou的头条

你真的会用 Retrofit2 吗?

理解 CORS  魅族科技开发团队

Cross-Origin Resource Sharing

优化 Linux NAT 网关  有赞技术精选

详解

简述 App 设计  IOS技术杂谈

经验总结

抛硬币十次正面,第十一次正面的概率是多少?  AlgorithmDog

你知道吗?

Espresso for Android 中文版  Android Testing

基于 Android 官方说明文档

前端开发中的字符编码  Coding大杂烩

详细介绍

可靠分布式系统基础 Paxos 的直观解释  MOBIN-大数据

paxos 入门教程

Linux 进程管理  Nplus Jun

Linux 下的工作都是依靠进程来执行的

数据结构之字典树  zzk的技术工坊

一种树形结构

[译] 从微服务同步 REST 的天然缺陷说起  Mesos

新瓶装旧酒?

线程池的原理  Tomcat那些事儿

以 Tomcat 的线程池为例,来分析一下线程池的工作原理。

你可能想不到的归并排序的神奇应用  韩子迟的主题

LeetCode 327. Count of Range Sum

几种常见的 Hybrid 通信方式  前端早读课

好好和 H5 沟通

独立开发者必知的一些总结  Jamesfuxk的主题

赚钱必看

基于 TLS 1.3 的微信安全通信协议 mmtls 介绍  _iOS相关

详细介绍

API 自动化测试与持续集成  测试之自动化

使用SuperTest测试框架

那些年我们用过的显示性能指标  【Bugly干货分享】

流畅度绝对是 Android 众多性能维度中最为奇葩的一个

吐槽前端组件化的踩坑之路  web前端=>js全栈=>前端架构=>……的成长之路

失败的教训

多线程系列之学习多线程下载的基本原理和基本用法(一)  非著名程序员

系列文章

[译] 手把手教你如何搭建自己的渗透测试环境  技术情结

详细介绍

代码的颜值:格式化  KK笔记

clean code 阅读笔记之四

神奇的服务容器  laravel学习

Laravel 学习笔记

一个很赞的 RecyclerView Adapter 辅助类  技术小黑屋

BaseRecyclerViewAdapterHelper

我写的那六本开源计算机书  Phodal

收藏吧

基于热替换技术推想未来的 Web 开发技术  前端与Node.js

一些思考

360 开源的类 Redis 存储系统 Pika  360 infrastructure

GitHub 地址

Facebook 开源免费测试和练习黑客技能的 CTF 平台  最佳实践

GitHub 地址

干货集中营 Mac 端应用  潇涧分享

小巧

豆芽:开源的豆瓣客户端  大圣归来学Android

Material Design

jQuery WeUI:微信官方 H5 UI 库 WeUI 的 jQuery 实现版  WEB之路

使用的是官方 WeUI 的 CSS 代码,并提供了 jQuery/Zepto 版本的 API 实现。

KeepAccounts:高仿 TIMI 记账  iOS开发技巧

iOS 实现

PHP-DS: Data structures for PHP 7  超越PHP

有用

高仿下厨房 App  iOS开发者.

Objective-C 实现