C++適合本地程序的開發(fā)。Go語言適合網(wǎng)絡(luò)程序和本地程序的開發(fā)。Go的優(yōu)點:垃圾回收,語意明確,格式統(tǒng)一。?Go的缺點:效率目前沒有C++高,但對于桌面程序而言,效率問題不大,因為硬件已經(jīng)很快了。c++過于復(fù)雜了,加入很多炫技的內(nèi)容。這些內(nèi)容脫離了事情的本質(zhì)。
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),石柱土家族企業(yè)網(wǎng)站建設(shè),石柱土家族品牌網(wǎng)站建設(shè),網(wǎng)站定制,石柱土家族網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,石柱土家族網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
最明顯的就是所謂的面向?qū)ο?。基于面向?qū)ο蟮墓こ倘绻銐虼蟮那闆r下,會帶來很大的耦合度,如果再加上內(nèi)存管理,多線程等等。項目后期基本上沒辦法維護和增加功能。
關(guān)于c++的語言復(fù)雜性,你可以問知乎上的任何一位高手。沒一個敢說自己精通c++。你也可以去看一下所有的c++編繹器,沒有任何一個敢說自己完全實現(xiàn)了c++的標(biāo)準(zhǔn)。不同的編繹器之間實現(xiàn)細節(jié)又不同。所以功能再強大沒有實用性,就失去了意義,只會制造更多的問題。
當(dāng)我們將一種功能用于多個地方的時候,就需要封裝這些功能,以便于多次使用,然而封裝就需要使用函數(shù)來進行封裝,因此本章我們就來說說函數(shù)的使用方法。我們先來看看涉及到函數(shù)的一些用法目錄。如下:
無參函數(shù)
有參函數(shù)
帶返回值的函數(shù)
帶多個返回值的函數(shù)
匿名函數(shù)
閉包
自調(diào)用
遞歸
本章內(nèi)容還是比較豐富的,請耐心往下看。
我覺得語言精通一兩門就夠了,現(xiàn)在語言那么多,是學(xué)不過來了的,更新速度又快,一門語言可能都要費很勁,真正的學(xué)好一門就夠了,其他的交給專業(yè)人士吧
語言無關(guān)類
操作系統(tǒng)
鳥哥的Linux私房菜 (簡體)
Linux 系統(tǒng)高級編程
The Linux Command Line (中英文版)
Linux 設(shè)備驅(qū)動 (第三版)
深入分析Linux內(nèi)核源碼
UNIX TOOLBOX
Docker中文指南
Docker —— 從入門到實踐
FreeRADIUS新手入門
Mac 開發(fā)配置手冊
FreeBSD 使用手冊
Linux 命令行(中文版)
智能系統(tǒng)
一步步搭建物聯(lián)網(wǎng)系統(tǒng)
web服務(wù)器
Nginx開發(fā)從入門到精通 (淘寶團隊出品)
版本控制
Git教程 (本文由 ?@廖雪峰 創(chuàng)作,如果覺得本教程對您有幫助,可以去 ?iTunes 購買)
git – 簡易指南
猴子都能懂的GIT入門
Git 參考手冊
Pro Git
Git Magic
GotGitHub
Git Community Book 中文版
Mercurial 使用教程
HgInit (中文版)
沉浸式學(xué) Git
Git-Cheat-Sheet (感謝 @flyhigher139 翻譯了中文版)
GitHub秘籍
NoSQL
NoSQL數(shù)據(jù)庫筆談 (PDF)
Redis 設(shè)計與實現(xiàn)
Redis 命令參考
帶有詳細注釋的 Redis 3.0 代碼
帶有詳細注釋的 Redis 2.6 代碼
The Little MongoDB Book
The Little Redis Book
Neo4j 簡體中文手冊 v1.8
Neo4j .rb 中文資源
MySQL
MySQL索引背后的數(shù)據(jù)結(jié)構(gòu)及算法原理
項目相關(guān)
持續(xù)集成(第二版) (譯言網(wǎng))
讓開發(fā)自動化系列專欄
追求代碼質(zhì)量
selenium 中文文檔
Joel談軟件
約耳談軟體(Joel on Software)
Web
關(guān)于瀏覽器和網(wǎng)絡(luò)的 20 項須知
前端知識體系
瀏覽器開發(fā)工具的秘密
Chrome 開發(fā)者工具中文手冊
Chrome擴展開發(fā)文檔
Grunt中文文檔
移動Web前端知識庫
正則表達式30分鐘入門教程
前端開發(fā)體系建設(shè)日記
移動前端開發(fā)收藏夾
JSON風(fēng)格指南
HTTP 接口設(shè)計指北
前端資源分享(一)
前端資源分享(二)
前端代碼規(guī)范 及 最佳實踐
w3school教程整理
大數(shù)據(jù)
大數(shù)據(jù)/數(shù)據(jù)挖掘/推薦系統(tǒng)/機器學(xué)習(xí)相關(guān)資源
編程藝術(shù)
程序員編程藝術(shù)
每個程序員都應(yīng)該了解的內(nèi)存知識(譯)【第一部分】
取悅的工序:如何理解游戲 (豆瓣閱讀,免費書籍)
其他
OpenWrt智能、自動、透明翻墻路由器教程
語言相關(guān)類 AWK
awk程序設(shè)計語言
C/C++
C++ 并發(fā)編程指南 (@傅海平ICT)
Linux C編程一站式學(xué)習(xí) (宋勁杉, 北京亞嵌教育研究中心)
CGDB中文手冊
100個gdb小技巧
100個gcc小技巧
ZMQ 指南
How to Think Like a Computer Scientist (中英文版)
跟我一起寫Makefile(PDF)
GNU make中文手冊
GNU make 指南
Google C++ 風(fēng)格指南
C/C++ Primer (by @andycai)
簡單易懂的C魔法
Cmake 實踐 (PDF版)
C++ FAQ LITE(中文版)
C++ Primer 5th Answers
CSS/HTML
學(xué)習(xí)CSS布局
通用 CSS 筆記、建議與指導(dǎo)
CSS參考手冊
Emmet 文檔
前端代碼規(guī)范 (騰訊alloyteam團隊)
Dart
Dart 語言導(dǎo)覽
Fortran
Fortran77和90/95編程入門
Java
實時 Java 系列
Apache Shiro 用戶指南
使用 Eclipse 和 Java SE 6 創(chuàng)建獨立 Web Services 應(yīng)用程序
第 1 部分: Web Services 服務(wù)端應(yīng)用程序
第 2 部分: Web 服務(wù)客戶端應(yīng)用程序
JavaServer Faces 1.2 入門
第 1 部分: 構(gòu)建基本應(yīng)用程序
第 2 部分: JSF 生命周期、轉(zhuǎn)換、檢驗和階段監(jiān)聽器
用 Eclipse Europa 進行 Web 開發(fā)
第 1 部分: Eclipse Java EE
第 2 部分: PHP 開發(fā)工具
第 3 部分: Ruby Development Toolkit 和 RadRails
使用 JavaServer Faces 構(gòu)建 Apache Geronimo 應(yīng)用程序
第 1 部分: 使用 Eclipse 和 Apache MyFaces Core 構(gòu)建基本的應(yīng)用程序
第 2 部分: 在 JavaServer Faces 中使用 Tomahawk
第 3 部分: 使用 ajax4jsf 添加 Ajax 功能
第 4 部分: 使用 Apache Trinidad 組件擴展 JSF
第 5 部分: 將 JSF 應(yīng)用程序與 Spring 集成
Apache Geronimo 和 Spring 框架
第 1 部分: 開發(fā)方法學(xué)
第 2 部分: 構(gòu)建第一個應(yīng)用程序
第 3 部分: 集成 DAO 與 ORM
第 4 部分: 混合使用 Spring AOP 和 Spring Web Flow
第 5 部分: Spring MVC
第 6 部分: Spring MVC:使用 Web 視圖技術(shù)
終極 mashup —— Web 服務(wù)和語義 Web
第 1 部分: 使用與組合 Web 服務(wù)
第 2 部分: 管理 Mashup 數(shù)據(jù)緩存
第 3 部分: 理解 RDF 和 RDFs
第 4 部分: 創(chuàng)建本體
第 5 部分: 切換 Web 服務(wù)
Jersey 2.x 用戶指南
MyBatis中文文檔
JavaScript
Google JavaScript 代碼風(fēng)格指南
Airbnb JavaScript 規(guī)范
JavaScript 標(biāo)準(zhǔn)參考教程(alpha)
Javascript編程指南 (源碼)
javascript 的 12 個怪癖
JavaScript 秘密花園
JavaScript核心概念及實踐 (PDF) (此書已由人民郵電出版社出版發(fā)行,但作者依然免費提供PDF版本,希望開發(fā)者們?nèi)ベ徺I,支持作者)
《JavaScript 模式》翻譯,此書中文版有售,但是紙質(zhì)書翻譯的還沒有這個版本翻譯的好
命名函數(shù)表達式探秘 (注:原文由為之漫筆翻譯,原始地址無法打開,所以此處地址為我博客上的備份)
學(xué)用 JavaScript 設(shè)計模式 (開源中國)
深入理解JavaScript系列
ECMAScript 6 入門 (作者:阮一峰)
jQuery
jQuery 解構(gòu)
簡單易懂的JQuery魔法
How to write jQuery plugin
Node.js
Node入門
七天學(xué)會NodeJS
Nodejs Wiki Book (繁體中文)
express.js 中文文檔
koa 中文文檔
使用 Express + MongoDB 搭建多人博客
Express框架
nodejs文檔
Node.js 包教不包會
Learn You The Node.js For Much Win! (中文版)
Node debug 三法三例
underscore.js
Underscore.js中文文檔
backbone.js
backbone.js入門教程 (PDF)
Backbone.js入門教程第二版
Developing Backbone.js Applications(中文版)
AngularJS
AngularJS最佳實踐和風(fēng)格指南
AngularJS中譯本
AngularJS入門教程
構(gòu)建自己的AngularJS
在Windows環(huán)境下用Yeoman構(gòu)建AngularJS項目
zepto 簡明中文手冊
Sea.js
Hello Sea.js
CoffeeScript
CoffeeScript Cookbook
The Little Book on CoffeeScript中文版
ExtJS
Ext4.1.0 中文文檔
Chrome擴展及應(yīng)用開發(fā)
JavaScript入門教程
PHP
PHP調(diào)試技術(shù)手冊(PDF)
XDebug 2中文手冊(譯) (CHM)
PHP之道
PHP 最佳實踐
PHP安全最佳實踐
深入理解PHP內(nèi)核
PHP擴展開發(fā)及內(nèi)核應(yīng)用
CodeIgniter 用戶指南
Laravel4 中文文檔
Laravel 入門
Symfony2中文文檔 (未譯完)
Phalcon中文文檔(翻譯進行中)
YiiBook幾本Yii框架的在線教程
簡單易懂的PHP魔法
swoole文檔及入門教程
iOS
iOS開發(fā)60分鐘入門
iOS7人機界面指南
Google Objective-C Style Guide 中文版
iPhone 6 屏幕揭秘
Apple Watch開發(fā)初探
馬上著手開發(fā) iOS 應(yīng)用程序
網(wǎng)易斯坦福大學(xué)公開課:iOS 7應(yīng)用開發(fā)字幕文件
Android
Android Design(中文版)
Google Android官方培訓(xùn)課程中文版
Android學(xué)習(xí)之路
Python
小白的Python教程
簡明Python教程
零基礎(chǔ)學(xué)Python
Python 2.7 官方教程中文版
Python 3.3 官方教程中文版
深入 Python 3
PEP8 Python代碼風(fēng)格規(guī)范
Google Python 風(fēng)格指南 中文版
Python入門教程 (PDF)
Python的神奇方法指南
笨辦法學(xué) Python (PDF版下載)
Django 文檔中文版
Django 最佳實踐
The Django Book 中文版
web.py 0.3 新手指南
Web.py Cookbook 簡體中文版
Dive Into Python 中文版
Bottle 文檔中文版 (需翻墻)
Flask 文檔中文版
Jinja2 文檔中文版
Werkzeug 文檔中文版
Flask之旅
Introduction to Tornado 中文翻譯
Python自然語言處理中文版 (感謝陳濤同學(xué)的翻譯,也謝謝 ?@shwley 聯(lián)系了作者)
Python 繪圖庫 matplotlib 官方指南中文翻譯
Scrapy 0.25 文檔
ThinkPython
Ruby
Ruby 風(fēng)格指南
Rails 風(fēng)格指南
笨方法學(xué) Ruby
Ruby on Rails 指南
Ruby on Rails 實戰(zhàn)圣經(jīng)
Ruby on Rails Tutorial 原書第 2 版 (本書網(wǎng)頁版免費提供,電子版以 PDF、EPub 和 Mobi 格式提供購買,僅售 9.9 美元)
編寫Ruby的C拓展
Ruby 源碼解讀
Shell
Shell腳本編程30分鐘入門
Go
Go編程基礎(chǔ)
Go入門指南
學(xué)習(xí)Go語言 (PDF)
Go Web 編程 (此書已經(jīng)出版,希望開發(fā)者們?nèi)ベ徺I,支持作者的創(chuàng)作)
Go實戰(zhàn)開發(fā) (當(dāng)我收錄此項目時,作者已經(jīng)寫完第三章,如果讀完前面章節(jié)覺得有幫助,可以給作者捐贈,以鼓勵作者的繼續(xù)創(chuàng)作)
Network programming with Go 中文翻譯版本
Groovy
實戰(zhàn) Groovy 系列
LaTeX
一份其實很短的 LaTeX 入門文檔
一份不太簡短的 LATEX 2ε 介紹 (PDF版)
LISP
ANSI Common Lisp 中文翻譯版
Lua
Lua編程入門
Haskell
Real World Haskell 中文版
R
R語言忍者秘笈
Scala
Scala課堂 (Twitter的Scala中文教程)
Effective Scala(Twitter的Scala最佳實踐的中文翻譯)
Scala指南
Swift
The Swift Programming Language 中文版
Perl
Modern Perl 中文版
Perl 程序員應(yīng)該知道的事
Prolog
笨辦法學(xué)Prolog
Vim中文文檔
Vimscript
笨方法學(xué)Vimscript 中譯本
Vim中文文檔
讀書筆記及其它 讀書筆記
編譯原理(紫龍書)中文第2版習(xí)題答案
把《編程珠璣》讀薄
Effective C++讀書筆記
Golang 學(xué)習(xí)筆記、Python 學(xué)習(xí)筆記、C 學(xué)習(xí)筆記 (PDF)
Jsoup 學(xué)習(xí)筆記
學(xué)習(xí)筆記: Vim、Python、memcached
圖靈開放書翻譯計劃–C++、Python、Java等
蒂姆·奧萊利隨筆 (由譯言網(wǎng)翻譯,電子版免費)
Octave 入門 (PDF版)
SICP 解題集
精彩博客集合
正則表達式簡明參考
Go 生態(tài)系統(tǒng)
學(xué)習(xí)基本上相當(dāng)直接的。我們之前在 C/C++/Java/Objective-C/PHP 的經(jīng)驗讓我們學(xué)習(xí) Go 相當(dāng)快,并且在幾天內(nèi)就開始開發(fā)了。當(dāng)然會有一些新的和不常見的東西需要學(xué)習(xí),包括 GOPATH 還有如何處理包,但這在我們的預(yù)期之內(nèi)。
幾天之內(nèi),我們意識到即使是一個以簡化為設(shè)計目的的語言,Go 也是非常強大的。它能夠做任何現(xiàn)代編程語言應(yīng)該能做的事:能夠處理 JSON、服務(wù)器之間通訊甚至訪問數(shù)據(jù)庫也沒問題(并且只需要幾行代碼)。
在構(gòu)建一個服務(wù)器時,你應(yīng)該首先決定是否使用任何第三方庫或者框架。對于 Bugfender,我們決定使用:
Martini
Martini 是一個強大的 Go 的 web 框架。我們開始這個實驗時,它是一個很棒的解決方案,至今也是,我們還沒遇到任何問題。然而如果我們今天再次開始這個實驗的話,我們會選擇一個不同的框架,因為 Martini 不在維護了。
Gorm
有些人喜歡 ORM,而有些人則不喜歡。我們決定使用 ORM,更確切地說是 GORM。我們的實現(xiàn)只針對 web 前端,對于日志提取 API 仍然繼續(xù)使用手工優(yōu)化的 SQL。在一開始,我們確實很喜歡它,但是隨著時間的推移,我們開始發(fā)現(xiàn)問題,并且我們很快將它從代碼中完全移除,并且使用 sqlx 這個標(biāo)準(zhǔn) SQL 庫。
GORM 的一個主要問題是 Go 的生態(tài)系統(tǒng)。作為一個新語言,自我們開始開發(fā)產(chǎn)品以來 Go 已經(jīng)有很多新版本。在這些新版本中的一些改變并不向后兼容,因此要使用最新的庫版本,我們要經(jīng)常重寫已有代碼并檢查我們?yōu)榻鉀Q版本問題所做的 hack。