天天看點

【福利】成為專業程式員路上用到的各種優秀資料、神器及架構

好東西不是随便收集下,發篇博文,騙些點贊的!積累了5年多的東西,是時候放出來跟大家見見面了。

或許有的園友在14年的時候收藏過我的一篇“工欲善其事、必先利其器”的博文,時隔3年,已經做了N多更新,那篇文章也已被我删除,遷移至GitHub,重新進行管理。

這篇文章,大家可以推薦、收藏,讓更多的人在園内看到,讓福利普照。

因為這篇文章,我以後不會更新。

但項目依舊會更新,是以,更好的做法是,請到GitHub上Star:be-a-professional-programmer

前言

成為一名專業程式員的道路上,需要堅持練習、學習與積累,技術方面既要有一定的廣度,更要有自己的深度。

筆者作為一位tool mad,将工作以來用到的各種優秀資料、神器及架構整理在此,畢竟好記性不如爛鍵盤,此項目可以作為自己的不時之需。

本人喜歡折騰,記錄的東西也比較雜,各方面都會有一些,内容按重要等級排序,大家各取所需。

這裡的東西會持續積累下去,歡迎Star,也歡迎發PR給我。

目錄

  • 資料篇
    • 技術站點
    • 必看書籍
    • 大牛部落格
    • GitHub篇
  • 工具篇
    • 平台工具
    • 常用工具
    • 第三方服務
    • 爬蟲相關(好玩的工具)
    • 安全相關
    • Web伺服器性能/壓力測試工具/負載均衡器
  • 大資料處理/資料分析/分布式工具
  • Web前端
  • 語言篇
    • Scala
    • Java
    • Python
    • Swift
    • .NET
    • C & C++
  • 其他
    • 遊戲開發相關
    • 日志聚合,分布式日志收集
    • RTP,實時傳輸協定與音視訊

  • 線上學習:Coursera、edX、Udacity、MIT公開課、MOOC學院
  • Hacker News:非常棒的針對程式設計的連結聚合網站
  • Techmeme:美國知名科技新聞和部落格聚集網站,類似的還有(Panda, Hacker & Designer News)
  • Programming reddit:同上
  • Java牛人必備:Program Creek
  • stackoverflow:IT技術問答網站
  • GitHub:全球最大的源代碼管理平台,很多知名開源項目都在上面,如Linux核心,OpenStack等
  • LeetCode:來做做這些題吧,看看自己的算法水準如何?這可比什麼面試寶典強多了。
  • Kaggle,Topcoder: 機器學習、大資料競賽
  • 掘金:高品質的技術社群
  • 開發者頭條
  • InfoQ:企業級應用,關注軟體開發領域
  • V2EX: way to explore
  • 國内老牌技術社群:OSChina、部落格園、CSDN、51CTO
  • 免費的it電子書:http://it-ebooks.info/
  • 線上學習:http://www.udemy.com/
  • 優質學習資源:http://plus.mojiax.com/
  • 代碼練習:http://exercism.io/ and https://www.codingame.com
  • DevStore:開發者服務商店
  • MSDN:微軟相關的官方技術集中地,主要是文檔類

  • SICP(Structure and Interpretation of Computer Programs)
  • 深入了解計算機系統
  • 代碼大全2
  • 人件
  • 人月神話
  • 軟體随想錄
  • 算法導論(麻省理工學院出版社)
  • 離線數學及其應用
  • 設計模式
  • 程式設計之美
  • 黑客與畫家
  • 程式設計珠玑
  • The Little Schemer
  • Simply Scheme_Introducing_Computer_Science
  • C++ Prime
  • Effective C++
  • TCP/IP詳解
  • Unix 程式設計藝術
  • 技術的本質
  • 計算機程式設計藝術
  • 職業篇:程式員的自我修養,程式員修煉之道,高效能程式員的修煉
  • 《精神分析引論》弗洛伊德
  • 《失控》《科技想要什麼》《技術元素》凱文凱利
  • 程式開發心理學
  • 天地一沙鷗
  • 搞定:無壓力工作的藝術

  • 雲風(遊戲界大牛): http://blog.codingnow.com/
  • 王垠(不少文章噴到蠻有道理):http://www.yinwang.org/
  • 冰河-傘哥(Lisp大牛):http://tianchunbinghe.blog.163.com/
  • R大【幹貨滿滿】RednaxelaFX寫的文章/回答的導航帖
  • 陳皓-左耳朵耗子:http://coolshell.cn/
  • Jeff Atwood(國外知名部落客): https://blog.codinghorror.com/
  • 阮一峰(黑客與畫家譯者,Web):http://www.ruanyifeng.com/
  • 廖雪峰(他的Python、Git教程不少人都看過):http://www.liaoxuefeng.com/
  • 道哥的黑闆報(安全):https://zhuanlan.zhihu.com/taosay
  • 國内GitHub上關注度較高的開發者

** Awesome **

  • Awesome: 這是個Awesome合集,常見的資料這裡面都能找到
  • Awesome2: 類似第一個Awesome
  • 雜七雜八、有用沒用的Awesome合集
  • 非常不錯的語言類學習資料集合:Awesomeness
  • awesome-ios-ui
  • awesome-android-ui
  • Awesome-MaterialDesign
  • awesome-public-datasets
  • awesome-AppSec(系統安全)
  • awesome-datascience

** 書籍資料 **

  • free-programming-books 中文版
  • 免費的程式設計中文書籍索引
  • 《程式員程式設計藝術 — 面試和算法心得》
  • GoBooks
  • Papers we love
  • 自然語言處理NLP推薦學習路線及參考資料
  • 超級棒的機器學習資料(架構,庫,軟體), 中文翻譯版
  • 機器學習(Machine Learning)&深入學習(Deep Learning)資料
  • Docker資料合集
  • 學習使用Strom
  • Hadoop Internals
  • Spark Internals
  • 大資料時代的資料分析與資料挖掘 – 基于Hadoop實作
  • 如何制作作業系統
  • 借助開源項目學習軟體開發
  • 幾個不錯的開源遊戲引擎
  • 一起寫Python文章,一起看Python文章
  • R的極客理想系列文章
  • HTTP接口設計指南
  • 分享自己長期關注的前端開發相關的優秀網站、部落格、以及活躍開發者
  • Readings in Databases
  • Data Science blogs
  • 日志:每個軟體工程師都應該知道的有關實時資料的統一概念
  • Android Code Path
  • Android Learn Notes
  • PHP 類庫架構,資料集合

** 優秀項目 **

  • 最值得關注的10個C語言開源項目
  • 15款值得學習的小型開源項目
  • iOS-100個開源元件
  • 十大Material Design開源項目
  • Android開源項目分類彙總

** 前端 & Node.js **

  • 前端資源
  • 前端開發指南
  • 前端技能彙總
  • 前端資源大導航
  • 收集前端方面的書籍
  • 2014年最新前端開發面試題
  • 簡單清晰的JavaScript語言教程,代碼示例
  • JavaScript程式設計規範
  • JavaScript必看視訊
  • JavaScript标準參考教程(阮一峰的,整理的不錯)
  • JS必看
  • AngularJS Guide的中文分支
  • Angular2學習資料
  • AngularJS應用的最佳實踐和風格指南
  • React-Native學習指南
  • 七天學會NodeJS
  • node.js中文資料導航
  • Nodejs學習路線圖
  • 如何學習nodejs

** 工作,工具 **

  • 系統管理者工具集合
  • Pro Git
  • Nginx開發從入門到精通
  • Google 全球 IP 位址庫
  • 收集整理遠端工作相關的資料
  • Color schemes for hackers
  • 遊戲開發工具集,MagicTools
  • 開發者工具箱, free-for-dev
  • GitHub秘籍
  • Git風格指南
  • Bast-App

  • Phabricator: 軟體開發平台,Facebook出品,現已開源,CodeReview神器(從這個往下一直到GitLab之間的工具統統可以忽略了)
  • Redmine/Trac:項目管理平台
  • Jenkins/Jira(非開源):持續內建系統(Apache Continuum,這個是Apache下的CI系統,還沒來得及研究)
  • git,svn:源代碼版本控制系統
  • GitLab/Gitorious:建構自己的GitHub伺服器
  • Postman:RESTful,api測試工具,HTTP接口開發必備神器
  • Sonar:代碼品質管理平台
  • Nessus: 系統漏洞掃描器
  • gitbook:https://www.gitbook.io/寫書的好東西,當然用來寫文檔也很不錯的(發現不少産品的文檔就是用的它)
  • Travis-ci:開源項目持續內建必備,和GitHub相結合,https://travis-ci.org/
  • Trello:簡單高效的項目管理平台,注重看闆管理
  • 日志聚合:graylog、ELK(推薦新一代的graylog,基本上算作是開源的Splunk了)
  • 開源測試工具、社群(Selenium、OpenQA.org)
  • Puppet:一個自動管理引擎,可以适用于Linux、Unix以及Windows平台。所謂配置管理系統,就是管理機器裡面諸如檔案、使用者、程序、軟體包這些資源。無論是管理1台,還是上萬台機器Puppet都能輕松搞定。其他類似工具:CFEngine、SaltStack、Ansible
  • Nagios:系統狀态監控報警,還有個Icinga(完全相容nagios所有的插件,工作原理,配置檔案以及方法,幾乎一模一樣。配置簡單,功能強大)
  • Ganglia:分布式監控系統
  • fleet:分布式init系統
  • Ansible:能夠大大簡化Unix管理者的自動化配置管理與流程控制方式。
  • GeoLite免費資料庫
  • jsHint:js代碼驗證工具
  • haproxy: 高可用負載均衡(此外類似的系統還有nginx,lvs)
  • linux OS性能分析工具:dstat,iostat,iotop,nmon
  • kimono:将網頁資訊轉換為api接口的工具
  • 叢集管理工具:pdsh,ClusterSSH,mussh(可以用它快速管理Hadoop叢集)ipa-server做統一的認證管理
  • influxdb: 分布式時序資料庫,結合Grafana可以進行實時資料分析
  • dot: 程式員繪圖利器(是種語言,也是個工具)
  • Graph::Easy: (Ascii Art工具)字元流程圖繪制,實乃程式員裝逼神器。其他類似的工具Asciiflow, vi插件:drawit!
  • spf13-vim: 讓你的vim飛起來!
  • Kubernetes: 容器叢集管理系統
  • Gatling: 伺服器性能壓力測試工具
  • systemtap: Linux核心探測工具、核心調試神器
  • Cygwin:Windows下的類UNIX模拟環境
  • MinGW:Windows下的GNU工具集

  • Mac下的神兵利器
  • asciinema: 終端錄屏神器
  • Fiddler:非常好用的Web前端調試工具,當然是針對底層http協定的,一般情況使用Chrome等自帶的調試工具也足夠了,特殊情況還得用它去處理
  • Charles: Mac上的Web代理調試工具,類似Fiddler
  • wireshark:知名的網絡資料包分析工具
  • PowerCmd:替代Windows Cmd的利器
  • RegexBuddy:強大的正規表達式測試工具
  • Soure Insight:源代碼閱讀神器
  • SublimeText:程式員最愛的編輯器
  • Database.NET:一個通用的關系型資料庫用戶端,基于.NET 4.0開發的,做簡單的處理還是蠻友善的
  • Navicat Premium:支援MySql、PostgreSQL、Oracle、Sqlite和SQL Server的用戶端,通用性上不如Database.NET,但性能方面比Database.NET好很多,自帶備份功能也用于資料庫定時備份。
  • Synergy : 區域網路内一套鍵盤滑鼠控制多台電腦
  • DameWare:遠端協助工具集(我在公司主要控制大螢幕用)
  • Radmin: 遠端控制工具,用了一段時間的DameWare,還要破解,對Win7支援的不好,還是發現這個好用
  • Listary:能極大幅度提高你 Windows 檔案浏覽與搜尋速度效率的「超級神器」
  • Clover:給資料總管加上多标簽,我平時工作的時候就用它,像Chrome一樣使用資料總管,甚是友善啊(這是Windows平台的)
  • WinLaunch:模拟Mac OS的Launch工具
  • Fritzing:繪制電路圖
  • LICEcap:gif教程制作
  • git,svn:版本控制系統
  • Enigma Virtual Box(将exe,dll等封裝成一個可執行程式)
  • Open DBDiff(針對SqlServer)資料庫同步
  • SymmetricDS:資料庫同步
  • BIEE,Infomatica,SPSS,weka,R語言:資料分析
  • CodeSmith,LightSwitch:代碼生成
  • Pandoc:Markdown轉換工具,出書用的。以前玩過docbook,不過現在還是Markdown盛行啊。
  • Window Magnet[Mac]:增強Mac視窗管理功能,想Win7一樣具有視窗拖放到螢幕邊緣自動調整的功能
  • log explorer:檢視SqlServer日志
  • dependency walker:查詢Windows應用程式dll依賴項
  • Shairport4w:将iPhone,iPad,iPod上的音頻通過AirPlay協定傳輸到PC上
  • ngrok:内網穿透工具
  • Axure:快速原型制作工具,還有個線上作圖的工具國内的一個創業團隊做的,用着很不錯http://www.processon.com/
  • Origami: 次世代互動設計神器
  • 百度腦圖:http://naotu.baidu.com/
  • tinyproxy:(Linux)小型的代理伺服器支援http和https協定
  • EaseUS Partition Master:超級簡單的分區調整工具,速度還是蠻快的,C槽不夠用了就用它從D盤劃點空間吧,不用重裝系統這麼折騰哦。
  • CheatEngine:玩遊戲修改記憶體值必備神器(記得我在玩軒轅劍6的時候就用的它,超級友善呢)
  • ApkIDE:Android反編譯神器
  • 翻、牆工具(自|由|門、天行浏覽器,免費的VPN:http://www.mangovpn.com/),發現最友善還屬Lantern,免費用起來超級友善(更新于2015-08-22)
  • 設計工具:Sketch、OmniGraffle
  • MindManger:思維導圖
  • MagicDraw:Uml圖工具
  • innotop:MySql狀态監測工具
  • 墨刀:比Axure更為簡單的原型工具,可以快速制作原型
  • Karabiner: Mac專用,修改鍵盤鍵位的神器,機械鍵盤必備
  • Timing:Mac專用,統計你的時間都花在哪了
  • f.lux: 護眼神器,過濾藍光,程式員護眼必備良品
  • LaTeX: 基于ΤΕΧ的排版系統, 讓寫論文更友善
  • Antlr:開源的文法分析器,可以讓你毫無壓力的寫個小parser

  • DnsPod:一個不錯的隻能DNS服務解析提供商
  • DigitalOcean:海外的雲主機提供商,價格便宜,磁盤是SSD的,用過一段時間整體上還可以,不過畢竟是海外的,網速比較慢。國内的就是阿裡雲了。還有個比較知名的是:Linode,據說速度上比DigitalOcean好很多
  • 移動端推送服務:個推、JPush、雲巴
  • LeanCloud:移動應用開發服務,包括:資料存儲、使用者管理、消息推送、應用統計、社交分享、實時聊天等服務
  • Color Hunt: 漂亮炫酷的配色網站,程式員的福音
  • Heroku: PaaS平台

  • Phantomjs(Web自動化測試,服務端渲染等)
  • berserkJS(基于Phantomjs的改進版本)
  • SlimerJS
  • CasperJS
  • selenium
  • HtmlUnit(開源的java 頁面分析工具,也是個Headless的浏覽器)

  • sql注入檢測:sqlmap、haviji
  • 端口掃描:nmap
  • 滲透測試:BurpLoader
  • sqltools: sql漏洞利用工具
  • snort: 入侵檢測

  • ab: ab是apache自帶的一款功能強大的測試工具
  • curl-loader: 真實模拟、測試Web負載
  • http_load: 程式非常小,解壓後也不到100K
  • webbench: 是Linux下的一個網站壓力測試工具,最多可以模拟3萬個并發連接配接去測試網站的負載能力。
  • Siege: 一款開源的壓力測試工具,可以根據配置對一個WEB站點進行多使用者的并發通路,記錄每個使用者所有請求過程的相應時間,并在一定數量的并發通路下重複進行。
  • squid(前端緩存),nginx(負載),nodejs(沒錯它也可以,自己寫點代碼就能實作高性能的負載均衡器):常用的負載均衡器
  • Piwik:開源網站通路量統計系統
  • ClickHeat:開源的網站點選情況熱力圖
  • HAProxy:高性能TCP /HTTP負載均衡器
  • ElasticSearch:搜尋引擎基于Lucene
  • Page Speed SDK和YSLOW
  • HAR Viewer: HAR分析工具
  • protractor:E2E(end to end)自動化測試工具

  • Hadoop:分布式的檔案系統,結合其MapReduce程式設計模型可以用來做海量資料的批處理(Hive,Pig,HBase啥的就不說了),值得介紹的是Cloudera的Hadoop分支CDH5,基于YARN MRv2內建了Spark可直接用于生産環境的Hadoop,對于企業快速建構資料倉庫非常有用。
  • Spark:大規模資料處理架構(可以應付企業中常見的三種資料處理場景:複雜的批量資料處理(batch data processing);基于曆史資料的互動式查詢(interactive query);基于實時資料流的資料處理(streaming data processing)),CSND有篇文章介紹的不錯
  • 除了Spark,其他幾個不錯的計算架構還有:Kylin,Flink,Drill
  • Ceph:Linux分布式檔案系統(特點:無中心)
  • Storm:實時流資料處理,可以看下IBM的一篇介紹 (還有個Yahoo的S4,也是做流資料處理的)
  • Druid: 實時資料分析存儲系統
  • Ambari: 大資料平台搭建、監控利器;類似的還有CDH
  • Tachyon:分布式記憶體檔案系統
  • Mesos:計算架構一個叢集管理器,提供了有效的、跨分布式應用或架構的資源隔離和共享
  • Impala:新一代開源大資料分析引擎,提供Sql語義,比Hive強在速度上
  • presto: facebook的開源工具,大資料分布式sql查詢引擎
  • SNAPPY:快速的資料壓縮系統,适用于Hadoop生态系統中
  • Kafka:高吞吐量的分布式消息隊列系統
  • ActiveMQ:是Apache出品,最流行的,能力強勁的開源消息總線
  • MQTT:Message Queuing Telemetry Transport,消息隊列遙測傳輸)是IBM開發的一個即時通訊協定,有可能成為物聯網的重要組成部分
  • RabbitMQ:記得OpenStack就是用的這個東西吧
  • ZeroMQ:宣稱是将分布式計算變得更簡單,是個分布式消息隊列,可以看下雲風的一篇文章的介紹
  • 開源的日志收集系統:scribe、chukwa、kafka、flume。這有一篇對比文章
  • Zookeeper:可靠的分布式協調的開源項目
  • Databus:LinkedIn 實時低延遲資料抓取系統
  • 資料源擷取:Flume、Google Refine、Needlebase、ScraperWiki、BloomReach
  • 序列化技術:JSON、BSON、Thrift、Avro、Google Protocol Buffers
  • NoSql:ScyllaDB(宣稱是世界上最快的NoSql)、Apache Casandra、MongoDB、Apache CouchDB、Redis、BigTable、HBase、Hypertable、Voldemort、Neo4j
  • MapReduce相關:Hive、Pig、Cascading、Cascalog、mrjob、Caffeine、S4、MapR、Acunu、Flume、Kafka、Azkaban、Oozie、Greenplum
  • 資料處理:R、Yahoo! Pipes、Mechanical Turk、Solr/ Lucene、ElasticSearch、Datameer、Bigsheets、Tinkerpop
  • NLP自然語言處理:Natural Language Toolkit、Apache OpenNLP、Boilerpipe、OpenCalais
  • 機器學習:TensorFlow(Google出品),WEKA、Mahout、scikits.learn、SkyTree
  • 可視化技術:GraphViz、Processing、Protovis、Google Fusion Tables、Tableau、Highcharts、EChats(百度的還不錯)、Raphaël.js
  • Kettle:開源的ETL工具
  • Pentaho:以工作流為核心的開源BI系統
  • Mondrian:開源的Rolap伺服器
  • Oozie:開源hadoop的工作流排程引擎,類似的還有:Azkaban
  • 開源的資料分析可視化工具:Weka、Orange、KNIME
  • Cobar:阿裡巴巴的MySql分布式中間件
  • 資料清洗:data wrangler, Google Refine

  • Material Design: 谷歌出品,必屬精品
  • Vue.js: 借鑒了Angular及React的JS架構,設計理念較為先進
  • GRUNT: js task runner
  • Sea.js: js子產品化
  • knockout.js:MVVM開發前台,綁定技術
  • Angular.js: 使用超動感HTML & JS開發WEB應用!
  • Highcharts.js,Flot:常用的Web圖表插件
  • NVD3: 基于d3.js的圖表庫
  • Raw:非常不錯的一款進階資料可視化工具
  • Rickshaw:時序圖示庫,可用于建構實時圖表
  • JavaScript InfoVis Toolkit:另一款Web資料可視化插件
  • Pdf.js,在html中展現pdf
  • ACE,CodeMirror:Html代碼編輯器(ACE甚好啊)
  • NProcess:絢麗的加載進度條
  • impress.js:讓你制作出令人眩目的内容展示效果(類似的還有reveal)
  • Threejs:3DWeb庫
  • Hightopo:基于Html5的2D、3D可視化UI庫
  • jQuery.dataTables.js:高度靈活的表格插件
  • Raphaël:js,canvas繪圖庫,後來發現百度指數的圖形就是用它繪出來的
  • director.js:js路由子產品,前端路由,Nodejs後端路由等,适合構造單頁應用
  • pace.js:頁面加載進度條
  • bower:Web包管理器
  • jsnice:有趣的js反編譯工具,猜壓縮後的變量名,http://www.jsnice.org/
  • D3.js: 是一個基于JavaScript資料展示庫(類似的還有P5.js)
  • Zepto.js:移動端替代jQuery的東東,當然也可以使用jquery-mobile.
  • UI架構:Foundation,Boostrap,Pure,EasyUI,Polymer
  • 前段UI設計師必去的幾個網站:Dribbble,awwwards,unmatchedstyle,UIMaker
  • Mozilla 開發者中心:https://developer.mozilla.org/en-US/
  • 圖示資源:IcoMoon(我的最愛),Font Awesome, Themify Icons,FreePik,Glyphicons
  • artDialog:非常漂亮的對話框
  • AdminLTE:github上的一個開源項目,基于Boostrap3的背景管理頁面架構
  • Respond.js:讓不懂愛的IE6-8支援響應式設計
  • require.js: js子產品加載庫
  • select2:比chosen具有更多特性的選擇框替代庫
  • AngularUI:內建angular.js的UI庫
  • normalize.css: 采用了現代化标準讓各浏覽器渲染出的html保持一緻的庫
  • CreateJS:Html5遊戲引擎
  • Less,Compass:簡化CSS開發
  • emojify.js:用于自動識别網頁上的Emoji文字并将其顯示為圖像
  • simditor:一個不錯的開源的html編輯器,簡潔高效
  • Sencha: 基于html5的移動端開發架構
  • SuperScrollorama+TweenMax+skrollr:打造超酷的視差滾動效果網頁動畫
  • jquery-smooth-scroll:同上,平滑滾動插件
  • Animate.css:實作了各種動畫效果的css庫
  • Emmet:前端工程師必備,ZenCode的前身
  • React: facebook出品的js UI庫
  • highlight.js:專門用來做文法高亮的庫
  • GoJS: Html5互動式圖表庫,看demo更适合層次結構的圖表。
  • 10 Pure CSS (Mostly) Flat Mobile Devices: http://marvelapp.github.io/devices.css/
  • CodePen: http://codepen.io/
  • jsfiddle: http://jsfiddle.net/ 前端js,html,css測試利器

折騰中:Scala、Python、Lua、JavaScript、Go

待折騰:

  • Racket
  • OCaml
  • Rust
  • Julia

  • 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學習模式比對的好資料
  • Glossary of Scala and FP terms
  • Metascala: A JVM written in Scala
  • LMS: Program Generation and Embedded Compilers in Scala

  • 常用的IDE:IntelliJ IDEA(強烈推薦),Eclipse,Netbeans
  • fastutil: 性能更好的Java集合架構
  • Guava: 谷歌的Java工具包,應用廣泛
  • Curator:Netflix公司開源的一個Zookeeper client library,用于簡化Zookeeper用戶端程式設計,現在已經是apache下的一個獨立項目了。Spark的HA也用的這貨。
  • Rx(Reactive Extensions)架構:Vert.x, RxJava(Android中用的比較多), Quasar
  • FindBugs: 代碼靜态分析工具,找出代碼缺陷
  • Java反編譯工具:Luyten,JD-Gui
  • Drools: 規則引擎
  • Jersey: Java RESTful 架構
  • canal: 阿裡巴巴出品,binlog增量訂閱&消費元件
  • Web開發相關:Tomcat、Resin、Jetty、WebLogic等,常用的元件Struts,Spring,Hibernate
  • Netty: 異步事件驅動網絡應用程式設計架構,用于高并發網絡程式設計比較好(NIO架構,spark 1.2.0就用netty替代了nio)
  • MINA:簡單地開發高性能和高可靠性的網絡應用程式(也是個NIO架構),不少手遊服務端是用它開發的
  • jOOQ:java Orm架構
  • Janino: 超級小又快的Java編譯器,Spark的Tungsten引起用的它
  • Activiti:工作流引擎,類似的還有jBPM、Snaker
  • Perfuse:是一個使用者界面包用來把有結構與無結構資料以具有互動性的可視化圖形展示出來.
  • Gephi:複雜網絡分析軟體, 其主要用于各種網絡和複雜系統,動态和分層圖的互動可視化與探測開源工具
  • Nutch:知名的爬蟲項目,hadoop就是從這個項目中發展出來的
  • web-harvest:Web資料提取工具
  • POM工具:Maven+Artifactory
  • Akka:一款基于actor模型實作的 并發處理架構
  • EclEmma:覆寫測試工具
  • Shiro:安全架構
  • joda-time:簡化時間處理
  • parboiled:表達式解析
  • dozer: 深拷貝神器
  • dubbo: 阿裡巴巴出品的分布式服務架構
  • jackson databind: json序列化工具(fastjson,simplejson)
  • Atomikos: 分布式事務管理
  • BoneCP:性能很贊的資料庫連接配接池元件,據說比c3p0快好多
  • ProGuard: obconfuscation tool, 強大的混淆工具
  • S-99:Scala相關的99個問題

  • PyCharm:最佳Python IDE
  • Eric,Eclipse+pydev,比較不錯的Python IDE
  • PyWin:Win32 api程式設計包
  • numpy:科學計算包,主要用來處理大型矩陣計算等,此外還有SciPy,Matplotlib
  • GUI相關:PyQt,PyQwt
  • supervisor:程序監控工具
  • PyGame: 基于Python的多媒體開發和遊戲軟體開發子產品
  • Web架構: Django 開源web開發架構,它鼓勵快速開發,并遵循MVC設計

  • Swift精選資料
  • 43個優秀的開源項目

用戶端

  • 糗事百科 Swift
  • HackerNews Swift
  • 知乎日報app

Framework

  • Twitter架構
  • Mac下簡單HTTP Server Swifter

小工具

  • Swift Alarm
  • Swift Note
  • Swift RSS Reader
  • Swift-PM2.5查詢app

遊戲

  • Flappy Swift
  • FanFan Swift

  • Xilium.CefGlue:基于CEF架構的.NET封裝,基于.NET開發Chrome核心浏覽器
  • CefSharp:同上,有一款WebKit的封裝,C#和Js互動會更簡單
  • netz:免費的 .NET 可執行檔案壓縮工具
  • SmartAssembly:變态的.net代碼優化混淆工具
  • NETDeob0:.net反混淆工具,真是魔高一尺道高一丈啊(還有個de4dot,在GitHub上,都是開源的)
  • ILMerge:将所有引用的DLL和exe檔案打成一個exe檔案
  • ILSpy:開源.net程式反編譯工具
  • Javascript.NET:很不錯的js執行引擎,對v8做了封裝
  • NPOI: Excel操作
  • DotRAS:遠端通路服務的子產品
  • WinHtmlEditor: Winform下的html編輯器
  • SmartThreadPool:使用C#實作的,帶進階特性的線程池
  • Snoop: WPF Spy Utility
  • Autofac: 輕量級IoC架構
  • HtmlAgilityPack:Html解析利器
  • Quartz.NET:Job排程
  • HttpLib:@CodePlex,簡化http請求
  • SuperSocket:簡化Socket操作,基于他的還有個SuperWebSocket,可以開發獨立的WebSocket伺服器了
  • DocX:未安裝Office的情況下操作Word檔案
  • Dapper:輕量級的ORM類,性能不錯
  • HubbleDotNet:支援接入資料庫的全文搜尋系統
  • fastJSON:@CodeProject,高性能的json序列化類
  • ZXing.NET:@CodePlex,QR,條形碼相關
  • Nancy:輕量級Http伺服器,做個小型的Web應用可以擺脫IIS喽(Nancy.Viewengines.Razor,可以加入Razor引擎)
  • AntiXSS:微軟的XSS防禦庫Microsoft Web Protection Library
  • Jint:JavaScript解釋器
  • CS-Script:将C#代碼檔案作為腳本執行
  • Jexus:Linux下 高性能、易用、免費的ASP.NET伺服器
  • Clay:将dynamic發揮的更加靈活,像寫js一樣寫C#
  • DynamicJSON:不必定義資料模型擷取json資料
  • SharpPcap:C#版的WinPcap調用端,牛逼的網絡包分析庫(自帶PacketNotNet用于包協定分析)
  • Roslyn:C#,VB編譯器
  • ImageResizer: 服務端自由控制圖檔大小,真乃神器也,對手機端傳小圖,PC端傳大圖,CMS用它很友善
  • UI相關:DevExpress, Fluent(Office 07風格), mui(Modern UI for WPF)
  • NetSparkle:應用自動更新元件
  • ConfuserEx: 開源.net混淆工具
  • ServiceStack: 開源高性能Web服務架構,可用于建構高性能的REST服務
  • Expression Evaluator:Eval for C#,處理字元串表達式
  • http://nugetmusthaves.com/
  • Reactive Extensions (Rx):異步,事件驅動程式設計包, Rx = Observables + LINQ + Schedulers

  • Thrift:用來進行可擴充且跨語言的服務的開發(類似的還有個Avro,Google protobuf)。
  • libevent:是一個事件觸發的網絡庫,适用于windows、linux、bsd等多種平台,内部使用select、epoll、kqueue等系統調用管理事件機制。(對了還有個libev呢)
  • Boost:不多說了,準C++标準庫
  • Valgrind\Ptmalloc\Purify: 調試工具
  • NetworkServer架構:acceptor->dispatcher->worker(這個不算工具哦)
  • breakpad:崩潰轉儲和分析子產品,很多crashreport會用到
  • UI界面相關:MFC、BCG和QT這類的就不說了,高端一點的還有Html和DirectUI技術:libcef(基于chrome核心的,想想使用html5開發頁面,還真有點小激動呢)、HtmlLayout、Duilib、Bolt,非C++的,還有node-webkit也不錯,內建了node和webkit核心。

  • MINA:使用Java開發手遊和頁遊伺服器(對了還有Netty,也很猛的,都是基于NIO的)
  • HP-Socket:見有有些頁遊伺服器使用這個建構的
  • Unreal: 虛幻引擎,C++,基于這個引擎的遊戲很多
  • OGRE:大名鼎鼎的3D圖形渲染引擎,天龍八部OL、火炬之光等不少遊戲都用了這個引擎
  • OpenVDB:夢工廠C++的特效庫,開源的
  • cocos2d:跨平台2D遊戲引擎
  • unity3d:跨平台3D遊戲引擎,很火的哦
  • Nodejs:也有不少使用它來開發手遊和也有伺服器(網易的Pomelo)

  • Scribe:Facebook的(nodejs + scribe + inotify 同步日志)
  • logstash:強大的日志收集系統,可以基于logstash+kibana+elasticsearch+redis開發強大的日志分析平台
  • log.io: nodejs開發的實時日志收集系統

  • RTP,RTCP,RTSP-> librtp,JRTPLIB(遵循了RFC1889标準)
  • 環形緩沖區,實時資料傳輸用
  • SDL,ffmpeg,live555,Speex
  • Red5:用Java開發開源的Flash流媒體伺服器。它支援:把音頻(MP3)和視訊(FLV)轉換成播放流; 錄制用戶端播放流(隻支援FLV);共享對象;現場直播流釋出;遠端調用。

據說看到好文章不推薦的人,伺服器容易當機!

本文版權歸翟士丹(Stan Zhai)和部落格園共有,原創文章,未經允許不得轉載,否則保留追究法律責任的權利。