be-a-professional-programmer
成為專業(yè)程序員路上用到的各種優(yōu)秀資料、神器及框架
View on GitHub
前言
成為一名專業(yè)程序員的道路上,需要堅(jiān)持練習(xí)、學(xué)習(xí)與積累,技術(shù)方面既要有一定的廣度,更要有自己的深度。
筆者作為一位tool mad,將工作以來用到的各種優(yōu)秀資料、神器及框架整理在此,畢竟好記性不如爛鍵盤,此項(xiàng)目可以作為自己的不時(shí)之需。
本人喜歡折騰,記錄的東西也比較雜,各方面都會(huì)有一些,內(nèi)容按重要等級(jí)排序,大家各取所需。
這里的東西會(huì)持續(xù)積累下去,歡迎Star,也歡迎發(fā)PR給我。
Thonatos.Yang整理的GitBook版本,閱讀體驗(yàn)更佳:https://thonatos.gitbooks.io/be-a-professional-programmer/
目錄
資料篇技術(shù)站點(diǎn)
必看書籍
大牛博客
GitHub篇
工具篇平臺(tái)工具
常用工具
第三方服務(wù)
爬蟲相關(guān)(好玩的工具)
安全相關(guān)
Web服務(wù)器性能/壓力測試工具/負(fù)載均衡器
大數(shù)據(jù)處理/數(shù)據(jù)分析/分布式工具
Web前端
語言篇Scala
Java
Python
Swift
.NET
C & C++
其他游戲開發(fā)相關(guān)
日志聚合,分布式日志收集
RTP,實(shí)時(shí)傳輸協(xié)議與音視頻
資料篇
技術(shù)站點(diǎn)
在線學(xué)習(xí):Coursera、edX、Udacity、MIT公開課、MOOC學(xué)院、慕課網(wǎng)
Hacker News:非常棒的針對(duì)編程的鏈接聚合網(wǎng)站
Techmeme:美國知名科技新聞和博客聚集網(wǎng)站,類似的還有(Panda, Hacker & Designer News)
Reddit - Programming板塊:同上
Java牛人必備:Program Creek
Stack Overflow:IT技術(shù)問答網(wǎng)站
SegmentFault:中文的技術(shù)問答社區(qū)
GitHub:全球最大的源代碼管理平臺(tái),很多知名開源項(xiàng)目都在上面,如Linux內(nèi)核,OpenStack等
碼云:支持中文可免費(fèi)創(chuàng)建私有項(xiàng)目的代碼托管平臺(tái),可作為備選
LeetCode:來做做這些題吧,看看自己的算法水平如何?這可比什么面試寶典強(qiáng)多了。
LintCode:支持中文的編程題在線訓(xùn)練平臺(tái),可作為備選
Kaggle,Topcoder: 機(jī)器學(xué)習(xí)、大數(shù)據(jù)競賽
掘金:高質(zhì)量的技術(shù)社區(qū)
開發(fā)者頭條
InfoQ:企業(yè)級(jí)應(yīng)用,關(guān)注軟件開發(fā)領(lǐng)域
V2EX: way to explore
國內(nèi)老牌技術(shù)社區(qū):OSChina、博客園、CSDN、51CTO
免費(fèi)的it電子書:http://it-ebooks.info/
在線學(xué)習(xí):http://www.udemy.com/
優(yōu)質(zhì)學(xué)習(xí)資源:http://plus.mojiax.com/
代碼練習(xí):http://exercism.io/ and https://www.codingame.com
DevStore:開發(fā)者服務(wù)商店
MSDN:微軟相關(guān)的官方技術(shù)集中地,主要是文檔類
谷歌開發(fā)者
碼庫 - 收錄了實(shí)用的開源項(xiàng)目及資源
Coding 基于Git的國內(nèi)代碼托管平臺(tái),支持私有項(xiàng)目,有項(xiàng)目管理相關(guān)功能
必看書籍
SICP(Structure and Interpretation of Computer Programs)
深入理解計(jì)算機(jī)系統(tǒng)
代碼大全2
人件
人月神話
軟件隨想錄
算法導(dǎo)論(麻省理工學(xué)院出版社)
離散數(shù)學(xué)及其應(yīng)用
設(shè)計(jì)模式
編程之美
黑客與畫家
編程珠璣
The Little Schemer
Simply Scheme_Introducing_Computer_Science
C++ Prime
Effective C++
TCP/IP詳解
Unix 編程藝術(shù)
技術(shù)的本質(zhì)
軟件隨想錄
計(jì)算機(jī)程序設(shè)計(jì)藝術(shù)
職業(yè)篇:程序員的自我修養(yǎng),程序員修煉之道,高效能程序員的修煉
《精神分析引論》弗洛伊德
《失控》《科技想要什么》《技術(shù)元素》凱文凱利
程序開發(fā)心理學(xué)
天地一沙鷗
搞定:無壓力工作的藝術(shù)
大牛博客
awesome-programmers - 各領(lǐng)域大牛,值得紀(jì)念的程序員們
云風(fēng)(游戲界大牛): http://blog.codingnow.com/
王垠(不少文章噴到蠻有道理):http://www.yinwang.org/
冰河-傘哥(Lisp大牛):http://tianchunbinghe.blog.163.com/
R大【干貨滿滿】RednaxelaFX寫的文章/回答的導(dǎo)航帖
陳皓-左耳朵耗子:http://coolshell.cn/
Jeff Atwood(國外知名博主): https://blog.codinghorror.com/
阮一峰(黑客與畫家譯者,Web):http://www.ruanyifeng.com/
廖雪峰(他的Python、Git教程不少人都看過):http://www.liaoxuefeng.com/
道哥的黑板報(bào)(安全):https://zhuanlan.zhihu.com/taosay
國內(nèi)GitHub上關(guān)注度較高的開發(fā)者
GitHub篇
** Awesome **
Awesome: 這是個(gè)Awesome合集,常見的資料這里面都能找到
Awesome2: 類似第一個(gè)Awesome
雜七雜八、有用沒用的Awesome合集
非常不錯(cuò)的語言類學(xué)習(xí)資料集合:Awesomeness
awesome-ios-ui
awesome-android-ui
Awesome-MaterialDesign
awesome-public-datasets
awesome-AppSec(系統(tǒng)安全)
awesome-datascience
awesome-dataviz - 數(shù)據(jù)可視化庫及資料
awesome-es
awesome-comment - 神注釋大全
** 書籍資料 **
system-design-primer: 系統(tǒng)設(shè)計(jì)入門
free-programming-books 中文版
免費(fèi)的編程中文書籍索引
《程序員編程藝術(shù) — 面試和算法心得》
GoBooks
Papers we love
自然語言處理NLP推薦學(xué)習(xí)路線及參考資料
超級(jí)棒的機(jī)器學(xué)習(xí)資料(框架,庫,軟件), 中文翻譯版
機(jī)器學(xué)習(xí)(Machine Learning)&深入學(xué)習(xí)(Deep Learning)資料
Docker資料合集
學(xué)習(xí)使用Strom
Hadoop Internals
Spark Internals
大數(shù)據(jù)時(shí)代的數(shù)據(jù)分析與數(shù)據(jù)挖掘 – 基于Hadoop實(shí)現(xiàn)
如何制作操作系統(tǒng)
借助開源項(xiàng)目學(xué)習(xí)軟件開發(fā)
幾個(gè)不錯(cuò)的開源游戲引擎
一起寫Python文章,一起看Python文章
R的極客理想系列文章
HTTP接口設(shè)計(jì)指南
分享自己長期關(guān)注的前端開發(fā)相關(guān)的優(yōu)秀網(wǎng)站、博客、以及活躍開發(fā)者
Readings in Databases
Data Science blogs
日志:每個(gè)軟件工程師都應(yīng)該知道的有關(guān)實(shí)時(shí)數(shù)據(jù)的統(tǒng)一概念
Android Code Path
Android Learn Notes
PHP 類庫框架,資料集合
** 優(yōu)秀項(xiàng)目 **
最值得關(guān)注的10個(gè)C語言開源項(xiàng)目
15款值得學(xué)習(xí)的小型開源項(xiàng)目
iOS-100個(gè)開源組件
十大Material Design開源項(xiàng)目
Android開源項(xiàng)目分類匯總
** 前端 & Node.js **
前端資源
前端開發(fā)指南
前端技能匯總
前端資源大導(dǎo)航
收集前端方面的書籍
2014年最新前端開發(fā)面試題
簡單清晰的JavaScript語言教程,代碼示例
JavaScript編程規(guī)范
JavaScript必看視頻
JavaScript標(biāo)準(zhǔn)參考教程(阮一峰的,整理的不錯(cuò))
JS必看
AngularJS Guide的中文分支
Angular2學(xué)習(xí)資料
AngularJS應(yīng)用的最佳實(shí)踐和風(fēng)格指南
React-Native學(xué)習(xí)指南
七天學(xué)會(huì)NodeJS
node.js中文資料導(dǎo)航
Nodejs學(xué)習(xí)路線圖
如何學(xué)習(xí)nodejs
** 工作,工具 **
系統(tǒng)管理員工具集合
Pro Git
Nginx開發(fā)從入門到精通
Google 全球 IP 地址庫
收集整理遠(yuǎn)程工作相關(guān)的資料
Color schemes for hackers
游戲開發(fā)工具集,MagicTools
開發(fā)者工具箱, free-for-dev
GitHub秘籍
Git風(fēng)格指南
Bast-App
工具篇
平臺(tái)工具
Swagger: RESTful API設(shè)計(jì)工具,前后端分離項(xiàng)目必備,順便推薦下Easy Mock
Phabricator: 軟件開發(fā)平臺(tái),F(xiàn)acebook出品,現(xiàn)已開源,CodeReview神器(從這個(gè)往下一直到GitLab之間的工具統(tǒng)統(tǒng)可以忽略了)
Redmine/Trac:項(xiàng)目管理平臺(tái)
Jenkins/Jira(非開源):持續(xù)集成系統(tǒng)(Apache Continuum,這個(gè)是Apache下的CI系統(tǒng),還沒來得及研究)
git,svn:源代碼版本控制系統(tǒng)
GitLab/Gitorious:構(gòu)建自己的GitHub服務(wù)器
AppVeyor - 云端持續(xù)集成工具,可以與GitHub搭配使用
Postman:RESTful,api測試工具,HTTP接口開發(fā)必備神器;可替代工具:Insomnia
Lottie: AE動(dòng)畫變?cè)a,設(shè)計(jì)師必備
Sonar:代碼質(zhì)量管理平臺(tái)
Nessus: 系統(tǒng)漏洞掃描器
gitbook:https://www.gitbook.io/寫書的好東西,當(dāng)然用來寫文檔也很不錯(cuò)的(發(fā)現(xiàn)不少產(chǎn)品的文檔就是用的它)
Travis-ci:開源項(xiàng)目持續(xù)集成必備,和GitHub相結(jié)合,https://travis-ci.org/
Trello:簡單高效的項(xiàng)目管理平臺(tái),注重看板管理
日志聚合:graylog、ELK(推薦新一代的graylog,基本上算作是開源的Splunk了)
開源測試工具、社區(qū)(Selenium、OpenQA.org)
Puppet:一個(gè)自動(dòng)管理引擎,可以適用于Linux、Unix以及Windows平臺(tái)。所謂配置管理系統(tǒng),就是管理機(jī)器里面諸如文件、用戶、進(jìn)程、軟件包這些資源。無論是管理1臺(tái),還是上萬臺(tái)機(jī)器Puppet都能輕松搞定。其他類似工具:CFEngine、SaltStack、Ansible
Nagios:系統(tǒng)狀態(tài)監(jiān)控報(bào)警,還有個(gè)Icinga(完全兼容nagios所有的插件,工作原理,配置文件以及方法,幾乎一模一樣。配置簡單,功能強(qiáng)大)
Ganglia:分布式監(jiān)控系統(tǒng)
fleet:分布式init系統(tǒng)
Ansible:能夠大大簡化Unix管理員的自動(dòng)化配置管理與流程控制方式。
GeoLite免費(fèi)數(shù)據(jù)庫
jsHint:js代碼驗(yàn)證工具
haproxy: 高可用負(fù)載均衡(此外類似的系統(tǒng)還有nginx,lvs)
linux OS性能分析工具:dstat,iostat,iotop,nmon
kimono:將網(wǎng)頁信息轉(zhuǎn)換為api接口的工具
集群管理工具:pdsh,ClusterSSH,mussh(可以用它快速管理Hadoop集群)ipa-server做統(tǒng)一的認(rèn)證管理
influxdb: 分布式時(shí)序數(shù)據(jù)庫,結(jié)合Grafana可以進(jìn)行實(shí)時(shí)數(shù)據(jù)分析
dot: 程序員繪圖利器(是種語言,也是個(gè)工具)
Graph::Easy: (Ascii Art工具)字符流程圖繪制,實(shí)乃程序員裝逼神器。其他類似的工具Asciiflow, vi插件:drawit!
spf13-vim: 讓你的vim飛起來!
Kubernetes: 容器集群管理系統(tǒng)
Gatling: 服務(wù)器性能壓力測試工具
systemtap: Linux內(nèi)核探測工具、內(nèi)核調(diào)試神器
Cygwin:Windows下的類UNIX模擬環(huán)境
MinGW:Windows下的GNU工具集
常用工具
EditorConfig: 讓我們?cè)诟鞣N不同IDE或編輯器下寫代碼保持風(fēng)格一致
Mac下的神兵利器
asciinema: 終端錄屏神器
Fiddler:非常好用的Web前端調(diào)試工具,當(dāng)然是針對(duì)底層http協(xié)議的,一般情況使用Chrome等自帶的調(diào)試工具也足夠了,特殊情況還得用它去處理
Charles: Mac上的Web代理調(diào)試工具,類似Fiddler
fir.im免費(fèi)的移動(dòng)App內(nèi)測托管平臺(tái)
wireshark:知名的網(wǎng)絡(luò)數(shù)據(jù)包分析工具
PowerCmd:替代Windows Cmd的利器
RegexBuddy:強(qiáng)大的正則表達(dá)式測試工具
Soure Insight:源代碼閱讀神器
SublimeText:程序員最愛的編輯器
Database.NET:一個(gè)通用的關(guān)系型數(shù)據(jù)庫客戶端,基于.NET 4.0開發(fā)的,做簡單的處理還是蠻方便的
Navicat Premium:支持MySql、PostgreSQL、Oracle、Sqlite和SQL Server的客戶端,通用性上不如Database.NET,但性能方面比Database.NET好很多,自帶備份功能也用于數(shù)據(jù)庫定時(shí)備份。
Synergy : 局域網(wǎng)內(nèi)一套鍵盤鼠標(biāo)控制多臺(tái)電腦
DameWare:遠(yuǎn)程協(xié)助工具集(我在公司主要控制大屏幕用)
Radmin: 遠(yuǎn)程控制工具,用了一段時(shí)間的DameWare,還要破解,對(duì)Win7支持的不好,還是發(fā)現(xiàn)這個(gè)好用
Listary:能極大幅度提高你 Windows 文件瀏覽與搜索速度效率的「超級(jí)神器」
Clover:給資源管理器加上多標(biāo)簽,我平時(shí)工作的時(shí)候就用它,像Chrome一樣使用資源管理器,甚是方便啊(這是Windows平臺(tái)的)
WinLaunch:模擬Mac OS的Launch工具
OllyDbg: OD大名鼎鼎的反匯編工具,Win平臺(tái)
Fritzing:繪制電路圖
LICEcap:gif教程制作
git,svn:版本控制系統(tǒng)
Enigma Virtual Box(將exe,dll等封裝成一個(gè)可執(zhí)行程序)
Open DBDiff(針對(duì)SqlServer)數(shù)據(jù)庫同步
SymmetricDS:數(shù)據(jù)庫同步
BIEE,Infomatica,SPSS,weka,R語言:數(shù)據(jù)分析
CodeSmith,LightSwitch:代碼生成
Pandoc:Markdown轉(zhuǎn)換工具,出書用的。以前玩過docbook,不過現(xiàn)在還是Markdown盛行啊。
Window Magnet[Mac]:增強(qiáng)Mac窗口管理功能,想Win7一樣具有窗口拖放到屏幕邊緣自動(dòng)調(diào)整的功能
log explorer:查看SqlServer日志
dependency walker:查詢Windows應(yīng)用程序dll依賴項(xiàng)
Shairport4w:將iPhone,iPad,iPod上的音頻通過AirPlay協(xié)議傳輸?shù)絇C上
ngrok:內(nèi)網(wǎng)穿透工具
Axure:快速原型制作工具,還有個(gè)在線作圖的工具國內(nèi)的一個(gè)創(chuàng)業(yè)團(tuán)隊(duì)做的,用著很不錯(cuò)http://www.processon.com/
Origami: 次世代交互設(shè)計(jì)神器
百度腦圖:http://naotu.baidu.com/
tinyproxy:(Linux)小型的代理服務(wù)器支持http和https協(xié)議
EaseUS Partition Master:超級(jí)簡單的分區(qū)調(diào)整工具,速度還是蠻快的,C盤不夠用了就用它從D盤劃點(diǎn)空間吧,不用重裝系統(tǒng)這么折騰哦。
CheatEngine:玩游戲修改內(nèi)存值必備神器(記得我在玩軒轅劍6的時(shí)候就用的它,超級(jí)方便呢)
ApkIDE:Android反編譯神器
翻、墻工具(自
由
門、天行瀏覽器,免費(fèi)的VPN:http://www.mangovpn.com/),發(fā)現(xiàn)最方便還屬Lantern,免費(fèi)用起來超級(jí)方便(更新于2015-08-22)
設(shè)計(jì)工具:Sketch、OmniGraffle
MindManger:思維導(dǎo)圖
MagicDraw:Uml圖工具
innotop:MySql狀態(tài)監(jiān)測工具
墨刀:比Axure更為簡單的原型工具,可以快速制作原型
Karabiner: Mac專用,修改鍵盤鍵位的神器,機(jī)械鍵盤必備
Timing:Mac專用,統(tǒng)計(jì)你的時(shí)間都花在哪了
f.lux: 護(hù)眼神器,過濾藍(lán)光,程序員護(hù)眼必備良品
LaTeX: 基于ΤΕΧ的排版系統(tǒng), 讓寫論文更方便
Antlr:開源的語法分析器,可以讓你毫無壓力的寫個(gè)小parser
第三方服務(wù)
DnsPod:一個(gè)不錯(cuò)的智能DNS服務(wù)解析提供商
DigitalOcean:海外的云主機(jī)提供商,價(jià)格便宜,磁盤是SSD的,用過一段時(shí)間整體上還可以,不過畢竟是海外的,網(wǎng)速比較慢。國內(nèi)的就是阿里云了。還有個(gè)比較知名的是:Linode,據(jù)說速度上比DigitalOcean好很多
移動(dòng)端推送服務(wù):個(gè)推、JPush、云巴
LeanCloud:移動(dòng)應(yīng)用開發(fā)服務(wù),包括:數(shù)據(jù)存儲(chǔ)、用戶管理、消息推送、應(yīng)用統(tǒng)計(jì)、社交分享、實(shí)時(shí)聊天等服務(wù)
Color Hunt: 漂亮炫酷的配色網(wǎng)站,程序員的福音
Heroku: PaaS平臺(tái)
爬蟲相關(guān)(好玩的工具)
Phantomjs(Web自動(dòng)化測試,服務(wù)端渲染等)
berserkJS(基于Phantomjs的改進(jìn)版本)
SlimerJS
CasperJS
selenium
HtmlUnit(開源的java 頁面分析工具,也是個(gè)Headless的瀏覽器)
安全相關(guān)
sql注入檢測:sqlmap、haviji
端口掃描:nmap
滲透測試:BurpLoader
sqltools: sql漏洞利用工具
snort: 入侵檢測
Web服務(wù)器性能/壓力測試工具/負(fù)載均衡器
ab: ab是apache自帶的一款功能強(qiáng)大的測試工具
curl-loader: 真實(shí)模擬、測試Web負(fù)載
http_load: 程序非常小,解壓后也不到100K
webbench: 是Linux下的一個(gè)網(wǎng)站壓力測試工具,最多可以模擬3萬個(gè)并發(fā)連接去測試網(wǎng)站的負(fù)載能力。
Siege: 一款開源的壓力測試工具,可以根據(jù)配置對(duì)一個(gè)WEB站點(diǎn)進(jìn)行多用戶的并發(fā)訪問,記錄每個(gè)用戶所有請(qǐng)求過程的相應(yīng)時(shí)間,并在一定數(shù)量的并發(fā)訪問下重復(fù)進(jìn)行。
squid(前端緩存),nginx(負(fù)載),nodejs(沒錯(cuò)它也可以,自己寫點(diǎn)代碼就能實(shí)現(xiàn)高性能的負(fù)載均衡器):常用的負(fù)載均衡器
Piwik:開源網(wǎng)站訪問量統(tǒng)計(jì)系統(tǒng)
ClickHeat:開源的網(wǎng)站點(diǎn)擊情況熱力圖
HAProxy:高性能TCP /HTTP負(fù)載均衡器
ElasticSearch:搜索引擎基于Lucene
Page Speed SDK和YSLOW
HAR Viewer: HAR分析工具
protractor:E2E(end to end)自動(dòng)化測試工具
大數(shù)據(jù)處理/數(shù)據(jù)分析/分布式工具
Hadoop:分布式的文件系統(tǒng),結(jié)合其MapReduce編程模型可以用來做海量數(shù)據(jù)的批處理(Hive,Pig,HBase啥的就不說了),值得介紹的是Cloudera的Hadoop分支CDH5,基于YARN MRv2集成了Spark可直接用于生產(chǎn)環(huán)境的Hadoop,對(duì)于企業(yè)快速構(gòu)建數(shù)據(jù)倉庫非常有用。
Spark:大規(guī)模數(shù)據(jù)處理框架(可以應(yīng)付企業(yè)中常見的三種數(shù)據(jù)處理場景:復(fù)雜的批量數(shù)據(jù)處理(batch data processing);基于歷史數(shù)據(jù)的交互式查詢(interactive query);基于實(shí)時(shí)數(shù)據(jù)流的數(shù)據(jù)處理(streaming data processing)),CSND有篇文章介紹的不錯(cuò)
除了Spark,其他幾個(gè)不錯(cuò)的計(jì)算框架還有:Kylin,F(xiàn)link,Drill
Ignite: In-Memory Data Fabric
CarbonData: 華為的孵化項(xiàng)目,支持索引的列式存儲(chǔ)
Ceph:Linux分布式文件系統(tǒng)(特點(diǎn):無中心)
Storm:實(shí)時(shí)流數(shù)據(jù)處理,可以看下IBM的一篇介紹 (還有個(gè)Yahoo的S4,也是做流數(shù)據(jù)處理的)
Druid: 實(shí)時(shí)數(shù)據(jù)分析存儲(chǔ)系統(tǒng)
Ambari: 大數(shù)據(jù)平臺(tái)搭建、監(jiān)控利器;類似的還有CDH
Tachyon:分布式內(nèi)存文件系統(tǒng)
Mesos:計(jì)算框架一個(gè)集群管理器,提供了有效的、跨分布式應(yīng)用或框架的資源隔離和共享
Impala:新一代開源大數(shù)據(jù)分析引擎,提供Sql語義,比Hive強(qiáng)在速度上
presto: facebook的開源工具,大數(shù)據(jù)分布式sql查詢引擎
SNAPPY:快速的數(shù)據(jù)壓縮系統(tǒng),適用于Hadoop生態(tài)系統(tǒng)中
Kafka:高吞吐量的分布式消息隊(duì)列系統(tǒng)
ActiveMQ:是Apache出品,最流行的,能力強(qiáng)勁的開源消息總線
MQTT:Message Queuing Telemetry Transport,消息隊(duì)列遙測傳輸)是IBM開發(fā)的一個(gè)即時(shí)通訊協(xié)議,有可能成為物聯(lián)網(wǎng)的重要組成部分
RabbitMQ:記得OpenStack就是用的這個(gè)東西吧
ZeroMQ:宣稱是將分布式計(jì)算變得更簡單,是個(gè)分布式消息隊(duì)列,可以看下云風(fēng)的一篇文章的介紹
開源的日志收集系統(tǒng):scribe、chukwa、kafka、flume。這有一篇對(duì)比文章
Zookeeper:可靠的分布式協(xié)調(diào)的開源項(xiàng)目
Databus:LinkedIn 實(shí)時(shí)低延遲數(shù)據(jù)抓取系統(tǒng)
數(shù)據(jù)源獲取:Flume、Google Refine、Needlebase、ScraperWiki、BloomReach
序列化技術(shù):JSON、BSON、Thrift、Avro、Google Protocol Buffers
NoSql:ScyllaDB(宣稱是世界上最快的NoSql)、Apache Casandra、MongoDB、Apache CouchDB、Redis、BigTable、HBase、Hypertable、Voldemort、Neo4j
MapReduce相關(guān):Hive、Pig、Cascading、Cascalog、mrjob、Caffeine、S4、MapR、Acunu、Flume、Kafka、Azkaban、Oozie、Greenplum
數(shù)據(jù)處理:R、Yahoo! Pipes、Mechanical Turk、Solr/ Lucene、ElasticSearch、Datameer、Bigsheets、Tinkerpop
NLP自然語言處理:Natural Language Toolkit、Apache OpenNLP、Boilerpipe、OpenCalais
機(jī)器學(xué)習(xí):TensorFlow(Google出品),WEKA、Mahout、scikits.learn、SkyTree
可視化技術(shù):GraphViz、Processing、Protovis、Google Fusion Tables、Tableau、Highcharts、EChats(百度的還不錯(cuò))、Rapha?l.js
Kettle:開源的ETL工具
Pentaho:以工作流為核心的開源BI系統(tǒng)
Mondrian:開源的Rolap服務(wù)器
Oozie:開源hadoop的工作流調(diào)度引擎,類似的還有:Azkaban
開源的數(shù)據(jù)分析可視化工具:Weka、Orange、KNIME
Cobar:阿里巴巴的MySql分布式中間件
數(shù)據(jù)清洗:data wrangler, Google Refine
Web前端
Material Design: 谷歌出品,必屬精品
Vue.js: 借鑒了Angular及React的JS框架,設(shè)計(jì)理念較為先進(jìn)
GRUNT: js task runner
Sea.js: js模塊化
knockout.js:MVVM開發(fā)前臺(tái),綁定技術(shù)
Angular.js: 使用超動(dòng)感HTML & JS開發(fā)WEB應(yīng)用!
Highcharts.js, ECharts, Flot: 常用的數(shù)據(jù)可視化庫
D3.js: 是一個(gè)基于JavaScript數(shù)據(jù)展示庫(類似的還有P5.js)
Vega: 基于D3的可視化語法
NVD3: 基于d3.js的圖表庫
Raw:非常不錯(cuò)的一款高級(jí)數(shù)據(jù)可視化工具
Rickshaw:時(shí)序圖標(biāo)庫,可用于構(gòu)建實(shí)時(shí)圖表
JavaScript InfoVis Toolkit:另一款Web數(shù)據(jù)可視化插件
Pdf.js,在html中展現(xiàn)pdf
ACE,CodeMirror:Html代碼編輯器(ACE甚好啊)
NProcess:絢麗的加載進(jìn)度條
impress.js:讓你制作出令人眩目的內(nèi)容展示效果(類似的還有reveal)
Threejs:3DWeb庫
Hightopo:基于Html5的2D、3D可視化UI庫
jQuery.dataTables.js:高度靈活的表格插件
Rapha?l:js,canvas繪圖庫,后來發(fā)現(xiàn)百度指數(shù)的圖形就是用它繪出來的
director.js:js路由模塊,前端路由,Nodejs后端路由等,適合構(gòu)造單頁應(yīng)用
pace.js:頁面加載進(jìn)度條
bower:Web包管理器
jsnice:有趣的js反編譯工具,猜壓縮后的變量名,http://www.jsnice.org/
Zepto.js:移動(dòng)端替代jQuery的東東,當(dāng)然也可以使用jquery-mobile.
UI框架:Foundation,Boostrap,Pure,EasyUI,Polymer
前段UI設(shè)計(jì)師必去的幾個(gè)網(wǎng)站:Dribbble,awwwards,unmatchedstyle,UIMaker
Mozilla 開發(fā)者中心:https://developer.mozilla.org/en-US/
圖標(biāo)資源:IcoMoon(我的最愛),F(xiàn)ont Awesome, Themify Icons,F(xiàn)reePik,Glyphicons
artDialog:非常漂亮的對(duì)話框
AdminLTE:github上的一個(gè)開源項(xiàng)目,基于Boostrap3的后臺(tái)管理頁面框架
Respond.js:讓不懂愛的IE6-8支持響應(yīng)式設(shè)計(jì)
require.js: js模塊加載庫
select2:比chosen具有更多特性的選擇框替代庫
AngularUI:集成angular.js的UI庫
normalize.css: 采用了現(xiàn)代化標(biāo)準(zhǔn)讓各瀏覽器渲染出的html保持一致的庫
CreateJS:Html5游戲引擎
Less,Compass:簡化CSS開發(fā)
emojify.js:用于自動(dòng)識(shí)別網(wǎng)頁上的Emoji文字并將其顯示為圖像
simditor:一個(gè)不錯(cuò)的開源的html編輯器,簡潔高效
Sencha: 基于html5的移動(dòng)端開發(fā)框架
SuperScrollorama+TweenMax+skrollr:打造超酷的視差滾動(dòng)效果網(wǎng)頁動(dòng)畫
jquery-smooth-scroll:同上,平滑滾動(dòng)插件
Animate.css:實(shí)現(xiàn)了各種動(dòng)畫效果的css庫
Emmet:前端工程師必備,前身為 Zen Coding
React: facebook出品的js UI庫
highlight.js:專門用來做語法高亮的庫
GoJS: Html5交互式圖表庫,看demo更適合層次結(jié)構(gòu)的圖表。
10 Pure CSS (Mostly) Flat Mobile Devices: http://marvelapp.github.io/devices.css/
CodePen: http://codepen.io/
jsfiddle: http://jsfiddle.net/ 前端js,html,css測試?yán)?/p>
語言篇
折騰中:Scala、Python、Lua、JavaScript、Go
待折騰:
Racket
OCaml
Rust
Julia
Scala
Scala Standard Library API
Scala School!: A Scala tutorial by Twitter
A Tour of Scala: Tutorial introducing the main concepts of Scala
Scala Overview on StackOverflow: A list of useful questions sorted by topic
Programming in Scala,最新的第3版,還沒有電子版,電子版是第一版
《Scala for the Impatient》
《Scala in Depth》
《Programming Scala》Dean Wampler and Alex Payne. O’Reilly 2009
Scala By Example
Scala Cheatsheet學(xué)習(xí)模式匹配的好資料
Glossary of Scala and FP terms
Metascala: A JVM written in Scala
LMS: Program Generation and Embedded Compilers in Scala
Java
常用的IDE:IntelliJ IDEA(強(qiáng)烈推薦),Eclipse,Netbeans
fastutil: 性能更好的Java集合框架
Guava: 谷歌的Java工具包,應(yīng)用廣泛
Curator:Netflix公司開源的一個(gè)Zookeeper client library,用于簡化Zookeeper客戶端編程,現(xiàn)在已經(jīng)是apache下的一個(gè)獨(dú)立項(xiàng)目了。Spark的HA也用的這貨。
Rx(Reactive Extensions)框架:Vert.x, RxJava(Android中用的比較多), Quasar
FindBugs: 代碼靜態(tài)分析工具,找出代碼缺陷
Java反編譯工具:Luyten,JD-Gui
Drools: 規(guī)則引擎
Jersey: Java RESTful 框架
canal: 阿里巴巴出品,binlog增量訂閱&消費(fèi)組件
Web開發(fā)相關(guān):Tomcat、Resin、Jetty、WebLogic等,常用的組件Struts,Spring,Hibernate
Netty: 異步事件驅(qū)動(dòng)網(wǎng)絡(luò)應(yīng)用編程框架,用于高并發(fā)網(wǎng)絡(luò)編程比較好(NIO框架,spark 1.2.0就用netty替代了nio)
MINA:簡單地開發(fā)高性能和高可靠性的網(wǎng)絡(luò)應(yīng)用程序(也是個(gè)NIO框架),不少手游服務(wù)端是用它開發(fā)的
jOOQ:java Orm框架
Janino: 超級(jí)小又快的Java編譯器,Spark的Tungsten引起用的它
Activiti:工作流引擎,類似的還有jBPM、Snaker
Perfuse:是一個(gè)用戶界面包用來把有結(jié)構(gòu)與無結(jié)構(gòu)數(shù)據(jù)以具有交互性的可視化圖形展示出來.
Gephi:復(fù)雜網(wǎng)絡(luò)分析軟件, 其主要用于各種網(wǎng)絡(luò)和復(fù)雜系統(tǒng),動(dòng)態(tài)和分層圖的交互可視化與探測開源工具
Nutch:知名的爬蟲項(xiàng)目,hadoop就是從這個(gè)項(xiàng)目中發(fā)展出來的
web-harvest:Web數(shù)據(jù)提取工具
POM工具:Maven+Artifactory
Akka:一款基于actor模型實(shí)現(xiàn)的 并發(fā)處理框架
EclEmma:覆蓋測試工具
Shiro:安全框架
joda-time:簡化時(shí)間處理
parboiled:表達(dá)式解析
dozer: 深拷貝神器
dubbo: 阿里巴巴出品的分布式服務(wù)框架
jackson databind: json序列化工具(fastjson,simplejson)
Atomikos: 分布式事務(wù)管理
BoneCP:性能很贊的數(shù)據(jù)庫連接池組件,據(jù)說比c3p0快好多
ProGuard: obconfuscation tool, 強(qiáng)大的混淆工具
S-99:Scala相關(guān)的99個(gè)問題
Python
PyCharm:最佳Python IDE
Eric,Eclipse+pydev,比較不錯(cuò)的Python IDE
PyWin:Win32 api編程包
numpy:科學(xué)計(jì)算包,主要用來處理大型矩陣計(jì)算等,此外還有SciPy,Matplotlib
GUI相關(guān):PyQt,PyQwt
supervisor:進(jìn)程監(jiān)控工具
PyGame: 基于Python的多媒體開發(fā)和游戲軟件開發(fā)模塊
Web框架: Django 開源web開發(fā)框架,它鼓勵(lì)快速開發(fā),并遵循MVC設(shè)計(jì)
Swift
Swift精選資料
43個(gè)優(yōu)秀的開源項(xiàng)目
客戶端
糗事百科 Swift
HackerNews Swift
知乎日?qǐng)?bào)app
Framework
Twitter框架
Mac下簡單HTTP Server Swifter
小工具
Swift Alarm
Swift Note
Swift RSS Reader
Swift-PM2.5查詢app
.NET
Xilium.CefGlue:基于CEF框架的.NET封裝,基于.NET開發(fā)Chrome內(nèi)核瀏覽器
CefSharp:同上,有一款WebKit的封裝,C#和Js交互會(huì)更簡單
netz:免費(fèi)的 .NET 可執(zhí)行文件壓縮工具
SmartAssembly:變態(tài)的.net代碼優(yōu)化混淆工具
NETDeob0:.net反混淆工具,真是魔高一尺道高一丈啊(還有個(gè)de4dot,在GitHub上,都是開源的)
ILMerge:將所有引用的DLL和exe文件打成一個(gè)exe文件
ILSpy:開源.net程序反編譯工具
Javascript.NET:很不錯(cuò)的js執(zhí)行引擎,對(duì)v8做了封裝
NPOI: Excel操作
DotRAS:遠(yuǎn)程訪問服務(wù)的模塊
WinHtmlEditor: Winform下的html編輯器
SmartThreadPool:使用C#實(shí)現(xiàn)的,帶高級(jí)特性的線程池
Snoop: WPF Spy Utility
Autofac: 輕量級(jí)IoC框架
HtmlAgilityPack:Html解析利器
Quartz.NET:Job調(diào)度
HttpLib:@CodePlex,簡化http請(qǐng)求
SuperSocket:簡化Socket操作,基于他的還有個(gè)SuperWebSocket,可以開發(fā)獨(dú)立的WebSocket服務(wù)器了
DocX:未安裝Office的情況下操作Word文件
Dapper:輕量級(jí)的ORM類,性能不錯(cuò)
HubbleDotNet:支持接入數(shù)據(jù)庫的全文搜索系統(tǒng)
fastJSON:@CodeProject,高性能的json序列化類
ZXing.NET:@CodePlex,QR,條形碼相關(guān)
Nancy:輕量級(jí)Http服務(wù)器,做個(gè)小型的Web應(yīng)用可以擺脫IIS嘍(Nancy.Viewengines.Razor,可以加入Razor引擎)
AntiXSS:微軟的XSS防御庫Microsoft Web Protection Library
Jint:JavaScript解釋器
CS-Script:將C#代碼文件作為腳本執(zhí)行
Jexus:Linux下 高性能、易用、免費(fèi)的ASP.NET服務(wù)器
Clay:將dynamic發(fā)揮的更加靈活,像寫js一樣寫C#
DynamicJSON:不必定義數(shù)據(jù)模型獲取json數(shù)據(jù)
SharpPcap:C#版的WinPcap調(diào)用端,牛逼的網(wǎng)絡(luò)包分析庫(自帶PacketNotNet用于包協(xié)議分析)
Roslyn:C#,VB編譯器
ImageResizer: 服務(wù)端自由控制圖片大小,真乃神器也,對(duì)手機(jī)端傳小圖,PC端傳大圖,CMS用它很方便
UI相關(guān):DevExpress, Fluent(Office 07風(fēng)格), mui(Modern UI for WPF)
NetSparkle:應(yīng)用自動(dòng)更新組件
ConfuserEx: 開源.net混淆工具
ServiceStack: 開源高性能Web服務(wù)框架,可用于構(gòu)建高性能的REST服務(wù)
Expression Evaluator:Eval for C#,處理字符串表達(dá)式
http://nugetmusthaves.com/
Reactive Extensions (Rx):異步,事件驅(qū)動(dòng)編程包, Rx = Observables + LINQ + Schedulers
C & C++
Thrift:用來進(jìn)行可擴(kuò)展且跨語言的服務(wù)的開發(fā)(類似的還有個(gè)Avro,Google protobuf)。
libevent:是一個(gè)事件觸發(fā)的網(wǎng)絡(luò)庫,適用于windows、linux、bsd等多種平臺(tái),內(nèi)部使用select、epoll、kqueue等系統(tǒng)調(diào)用管理事件機(jī)制。(對(duì)了還有個(gè)libev呢)
Boost:不多說了,準(zhǔn)C++標(biāo)準(zhǔn)庫
Valgrind\Ptmalloc\Purify: 調(diào)試工具
NetworkServer架構(gòu):acceptor->dispatcher->worker(這個(gè)不算工具哦)
POCO - 開源的C++類庫及應(yīng)用程序框架的集合,它主要提供簡單的、快速的網(wǎng)絡(luò)和可移植應(yīng)用程序
breakpad:崩潰轉(zhuǎn)儲(chǔ)和分析模塊,很多crashreport會(huì)用到
UI界面相關(guān):MFC、BCG和QT這類的就不說了,高端一點(diǎn)的還有Html和DirectUI技術(shù):libcef(基于chrome內(nèi)核的,想想使用html5開發(fā)頁面,還真有點(diǎn)小激動(dòng)呢)、HtmlLayout、Duilib、Bolt,非C++的,還有node-webkit也不錯(cuò),集成了node和webkit內(nèi)核。
其他
游戲開發(fā)相關(guān)
MINA:使用Java開發(fā)手游和頁游服務(wù)器(對(duì)了還有Netty,也很猛的,都是基于NIO的)
HP-Socket:見有有些頁游服務(wù)器使用這個(gè)構(gòu)建的
Unreal: 虛幻引擎,C++,基于這個(gè)引擎的游戲很多
OGRE:大名鼎鼎的3D圖形渲染引擎,天龍八部OL、火炬之光等不少游戲都用了這個(gè)引擎
OpenVDB:夢工廠C++的特效庫,開源的
cocos2d:跨平臺(tái)2D游戲引擎
unity3d:跨平臺(tái)3D游戲引擎,很火的哦
Nodejs:也有不少使用它來開發(fā)手游和頁游服務(wù)器(網(wǎng)易的Pomelo)
日志聚合,分布式日志收集
Scribe:Facebook的(nodejs + scribe + inotify 同步日志)
logstash:強(qiáng)大的日志收集系統(tǒng),可以基于logstash+kibana+elasticsearch+redis開發(fā)強(qiáng)大的日志分析平臺(tái)
log.io: nodejs開發(fā)的實(shí)時(shí)日志收集系統(tǒng)
Graylog: 易用、功能豐富的日志管理系統(tǒng), 部署、維護(hù)、搜索比ELK
簡單
RTP,實(shí)時(shí)傳輸協(xié)議與音視頻
RTP,RTCP,RTSP-> librtp,JRTPLIB(遵循了RFC1889標(biāo)準(zhǔn))
環(huán)形緩沖區(qū),實(shí)時(shí)數(shù)據(jù)傳輸用
SDL,ffmpeg,live555,Speex
Red5:用Java開發(fā)開源的Flash流媒體服務(wù)器。它支持:把音頻(MP3)和視頻(FLV)轉(zhuǎn)換成播放流; 錄制客戶端播放流(只支持FLV);共享對(duì)象;現(xiàn)場直播流發(fā)布;遠(yuǎn)程調(diào)用。
be-a-professional-programmer is maintained by stanzhai.This page was generated by GitHub Pages.