Github 項目推薦 | 成為專業程式設計師路上用到的各種優秀資料、神器及框架

本文轉載自://github.com/stanzhai/be-a-professional-programmer(侵刪)

前言

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

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

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

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

Thonatos.Yang整理的GitBook版本,閱讀體驗更佳://thonatos.gitbooks.io/be-a-professional-programmer/

目錄

資料篇

技術站點

必看書籍

  • SICP(Structure and Interpretation of Computer Programs)

  • 深入理解電腦系統

  • 程式碼大全2

  • 人件

  • 人月神話

  • 軟體隨想錄

  • 演算法導論(麻省理工學院出版社)

  • 編程之美

  • 演算法之美,作者:[美]布萊恩·克里斯汀,湯姆·格里菲思

  • 離散數學及其應用

  • 設計模式

  • 黑客與畫家

  • 編程珠璣

  • The Little Schemer

  • Simply Scheme_Introducing_Computer_Science

  • C++ Primer

  • Effective C++

  • TCP/IP詳解

  • Unix 編程藝術

  • 技術的本質

  • 軟體隨想錄

  • 電腦程式設計藝術

  • 程式設計師的自我修養:鏈接、裝載與庫

  • 程式設計師修鍊之道

  • 高效能程式設計師的修鍊

  • 《精神分析引論》弗洛伊德

  • 《失控》《科技想要什麼》《技術元素》凱文凱利

  • 程式開發心理學

  • 天地一沙鷗

  • 搞定:無壓力工作的藝術

大牛部落格

GitHub篇

** Awesome **

** 書籍資料 **

** 優秀項目 **

** 前端 & Node.js **

** 工作,工具 **

工具篇

平台工具&框架

  • 云:Rancher > Kubernetes(k8s) > Docker(鏡像庫:registry,Harbor,JFrog Artifactory)

  • Jupyter: IPython Notebook, 有個子項目sparkmagic,可以和Spark集合在一起,類似spark-notebook項目

  • Swagger: RESTful API設計工具,前後端分離項目必備,順便推薦下Easy Mock

  • Flutter: Google出品,高性能跨平台移動應用開發框架

  • OpenZipkin: 分散式Trace系統,可用於分析服務調用鏈間的消耗

  • Sentry: 系統監控與錯誤日誌跟蹤系統

  • 基於Web技術的跨平台應用開發框架:Revery: facebook基於Reason開發,Native、Fasttauri:Rust開發,小而快sciterelectron

  • Phabricator: 軟體開發平台,Facebook出品,現已開源,CodeReview神器(從這個往下一直到GitLab之間的工具統統可以忽略了)

  • Redmine/Trac:項目管理平台

  • Jenkins/Jira(非開源):持續集成系統(Apache Continuum,這個是Apache下的CI系統,還沒來得及研究)

  • git,svn:源程式碼版本控制系統

  • GitLab/Gitorious:構建自己的GitHub伺服器

  • AppVeyor – 雲端持續集成工具,可以與GitHub搭配使用

  • Postman:RESTful,api測試工具,HTTP介面開發必備神器;可替代工具:Insomnia

  • Lottie: AE動畫變原生程式碼,設計師必備

  • Sonar:程式碼品質管理平台

  • JMeter: 測試框架,還有Locust

  • Nessus: 系統漏洞掃描器

  • gitbook://www.gitbook.io/寫書的好東西,當然用來寫文檔也很不錯的(發現不少產品的文檔就是用的它)

  • Travis-ci:開源項目持續集成必備,和GitHub相結合,//travis-ci.org/

  • Trello:簡單高效的項目管理平台,注重看板管理

  • 日誌聚合:graylog、ELK(推薦新一代的graylog,基本上算作是開源的Splunk了)

  • 開源測試工具、社區(Selenium、OpenQA.org)

  • Puppet:一個自動管理引擎,可以適用於Linux、Unix以及Windows平台。所謂配置管理系統,就是管理機器裡面諸如文件、用戶、進程、軟體包這些資源。無論是管理1台,還是上萬台機器Puppet都能輕鬆搞定。其他類似工具:CFEngine、SaltStack、Ansible

  • jumpserver: 開源堡壘機

  • Prometheus 監控系統+時序資料庫,一般搭配Grafana使用。類似的系統還有Nagios,Zabbix,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: 伺服器性能壓力測試工具,類似的還有wrk

  • systemtap: Linux內核探測工具、內核調試神器

  • Cygwin:Windows下的類UNIX模擬環境

  • MinGW:Windows下的GNU工具集

常用工具

  • EditorConfig: 讓我們在各種不同IDE或編輯器下寫程式碼保持風格一致

  • Mac下的神兵利器

  • asciinema: 終端錄屏神器

  • Fiddler:非常好用的Web前端調試工具,當然是針對底層http協議的,一般情況使用Chrome等自帶的調試工具也足夠了,特殊情況還得用它去處理

  • Charles: Mac上的Web代理調試工具,類似Fiddler

  • fir.im免費的移動App內測託管平台

  • wireshark:知名的網路數據包分析工具

  • PowerCmd:替代Windows Cmd的利器,類似的還有cmder

  • MobaXterm: Windows下的全能終端神器

  • Xming: Windows下的X Window Server,結合putty可以實現linux的圖形化軟體直接跑在Windows上

  • RegexBuddy:強大的正則表達式測試工具

  • Source 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工具

  • OllyDbg: OD大名鼎鼎的反彙編工具,Win平台

  • Fritzing:繪製電路圖

  • LICEcap:gif教程製作

  • 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:快速原型製作工具,還有個在線作圖的工具中國的一個創業團隊做的,用著很不錯//www.processon.com/

  • Origami: 次世代交互設計神器

  • 百度腦圖://naotu.baidu.com/

  • tinyproxy:(Linux)小型的代理伺服器支援http和https協議

  • EaseUS Partition Master:超級簡單的分區調整工具,速度還是蠻快的,C盤不夠用了就用它從D盤劃點空間吧,不用重裝系統這麼折騰哦。

  • CheatEngine:玩遊戲修改記憶體值必備神器(記得我在玩軒轅劍6的時候就用的它,超級方便呢)

  • ApkIDE: Android反編譯神器(類似的還有apktool)

  • HandShaker: 鎚子的良心之作:為解決Android手機與Mac當中文件傳輸問題,專門開發的SmartFinder文件管理器改進版

  • 翻、牆工具(自|由|門、天行瀏覽器,免費的VPN://www.mangovpn.com/),發現最方便還屬Lantern,免費用起來超級方便(更新於2015-08-22)

  • 設計工具:Sketch、OmniGraffle

  • MindManger:思維導圖

  • MagicDraw: Uml圖工具

  • innotop:MySql狀態監測工具

  • 墨刀:比Axure更為簡單的原型工具,可以快速製作原型

  • Karabiner: Mac專用,修改鍵盤鍵位的神器,機械鍵盤必備

  • Timing:Mac專用,統計你的時間都花在哪了

  • LaTeX: 基於ΤΕΧ的排版系統, 讓寫論文更方便

  • Antlr:開源的語法分析器,可以讓你毫無壓力的寫個小parser

第三方服務

  • Let’s Encrypt: 免費、自動化、開放的證書籤發服務

  • 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,

  • masscan:據說可以6分鐘中掃遍整個互聯網的埠掃描器

  • 滲透測試:BurpLoader

  • sqltools: sql漏洞利用工具

  • snort: 入侵檢測

Web伺服器性能/壓力測試工具/負載均衡器

  • 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))

  • 除了Spark,其他幾個不錯的計算框架還有:Kylin,Flink,Drill

  • Ignite: In-Memory Data Fabric

  • CarbonData: 華為的孵化項目,支援索引的列式存儲

  • Ceph:Linux分散式文件系統(特點:無中心)

  • Storm:實時流數據處理,可以看下IBM的一篇介紹 (還有個Yahoo的S4,也是做流數據處理的)

  • Druid: 實時數據分析存儲系統

  • Ambari: 大數據平台搭建、監控利器;類似的還有CDH

  • Tachyon:分散式記憶體文件系統

  • Greenplum: 基於PostgreSQL的分散式MPP資料庫

  • 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

Web前端

  • Material Design: Google出品,必屬精品

  • Vue.js: 借鑒了Angular及React的JS框架,設計理念較為先進

  • jsplumb: 流程圖可視化庫

  • cytoscape.js: 關係圖譜可視化庫

  • d3: 非常知名的數據可視化庫(類似的還有NVD3,P5.js,Highcharts,Echart,Flot等)

  • Vega: 基於D3的可視化語法

  • 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反編譯工具,猜壓縮後的變數名,//www.jsnice.org/

  • Zepto.js:移動端替代jQuery的東東,當然也可以使用jquery-mobile.

  • UI框架:Foundation,Boostrap,Pure,EasyUI,Polymer

  • 前端UI設計師必去的幾個網站:Dribbble,awwwards,unmatchedstyle,UIMaker

  • Mozilla 開發者中心://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:前端工程師必備,前身為 Zen Coding

  • React: facebook出品的js UI庫

  • highlight.js:專門用來做語法高亮的庫

  • GoJS: Html5互動式圖表庫,看demo更適合層次結構的圖表。

  • 10 Pure CSS (Mostly) Flat Mobile Devices: //marvelapp.github.io/devices.css/

  • CodePen: //codepen.io/

  • jsfiddle: //jsfiddle.net/ 前端js,html,css測試利器

語言篇

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

待折騰:

Scala

Java

  • 常用的IDE:IntelliJ IDEA(強烈推薦),Eclipse,Netbeans

  • fastutil: 性能更好的Java集合框架

  • Guava: Google的Java工具包,應用廣泛

  • JMH: Java Benchmark性能測試框架

  • Vert.x: 性能彪悍的非同步非阻塞編程框架

  • Lagom: 微服務框架,提供了Java、Scala API

  • jOOQ:java Orm框架

  • Janino: 超級小又快的Java編譯器,Spark的Tungsten引起用的它

  • Curator:Netflix公司開源的一個Zookeeper client library,用於簡化Zookeeper客戶端編程,現在已經是apache下的一個獨立項目了。Spark的HA也用的這貨。

  • Rx(Reactive Extensions)框架:RxJava(Android中用的比較多), Quasar

  • FindBugs: 程式碼靜態分析工具,找出程式碼缺陷

  • Java反編譯工具:Luyten,JD-Gui,Procyon-Decompiler

  • Drools: 規則引擎

  • Jersey: Java RESTful 框架

  • canal: 阿里巴巴出品,binlog增量訂閱&消費組件

  • Web開發相關:Tomcat、Resin、Jetty、WebLogic等,常用的組件Struts,Spring,Hibernate

  • Netty: 非同步事件驅動網路應用編程框架,用於高並發網路編程比較好(NIO框架,spark 1.2.0就用netty替代了nio)

  • MINA:簡單地開發高性能和高可靠性的網路應用程式(也是個NIO框架),不少手游服務端是用它開發的

  • 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個問題

Python

  • 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

客戶端

Framework

小工具

遊戲

.NET

  • 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#,處理字元串表達式

  • //nugetmusthaves.com/

  • Reactive Extensions (Rx):非同步,事件驅動編程包, Rx = Observables + LINQ + Schedulers

C & C++

  • Thrift:用來進行可擴展且跨語言的服務的開發(類似的還有個Avro,Google protobuf)。

  • libevent:是一個事件觸發的網路庫,適用於windows、linux、bsd等多種平台,內部使用select、epoll、kqueue等系統調用管理事件機制。(對了還有個libev呢)

  • Boost:不多說了,准C++標準庫

  • Valgrind\Ptmalloc\Purify: 調試工具

  • NetworkServer架構:acceptor->dispatcher->worker(這個不算工具哦)

  • POCO – 開源的C++類庫及應用程式框架的集合,它主要提供簡單的、快速的網路和可移植應用程式

  • 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開發的實時日誌收集系統

  • Graylog: 易用、功能豐富的日誌管理系統, 部署、維護、搜索比ELK簡單

RTP,實時傳輸協議與音影片

  • RTP,RTCP,RTSP-> librtp,JRTPLIB(遵循了RFC1889標準)

  • 環形緩衝區,實時數據傳輸用

  • SDL,ffmpeg,live555,Speex

  • Red5:用Java開發開源的Flash流媒體伺服器。它支援:把音頻(MP3)和影片(FLV)轉換成播放流; 錄製客戶端播放流(只支援FLV);共享對象;現場直播流發布;遠程調用。