成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

老曹眼中的開發學習環境

開發 開發工具
Mac OS是類Unix操作系統,并且POSIX compliant,這意味著大量針對Linux編寫的程序可以在OS X直接編譯。也就是說,Mac下寫C、C++的系統程序一般情況下也可以直接移植到Linux下運行。

 [[177589]]

“工其事必先利其器”,對于一個全棧而言,一個與自己匹配的開發和學習環境,能夠極大地提高個人的工作效率,很多時候都可以做到事半而功倍。環境也是一個外延很廣的概念,這里我所涉及的包括硬件環境,集成開發環境與工具,數據庫環境,操作系統環境,溝通工具和個人筆記本。

硬件環境

MacBook Pro 是硬件環境的不二之選。

[[177590]]

筆記本電腦,至少要有i5 CPU、8G以上內存,SSD之類的,硬盤也最好在256G以上,在這樣的要求下,MacBook無疑是很好的選擇,和MacBook達到相同配置、具有相同續航水平的其它筆記本電腦基本都在和MacBook一樣的價位。但考慮到MacBook的工業設計水平,MacBook確實成了合適的選擇。

做iOS開發,那mac更是必須的。盡管xcode沒有vs好用,但是搞iOS開發,默認就得用它,不要談什么黑蘋果,那是得不償失的事。

更重要的是,Mac OS是類Unix操作系統,并且POSIX compliant,這意味著大量針對Linux編寫的程序可以在OS X直接編譯。也就是說,Mac下寫C、C++的系統程序一般情況下也可以直接移植到Linux下運行。在類Unix操作系統里,只有gcc和clang可以選擇,Linux選擇的是gcc,OS X和FreeBSD選擇的是clang。gcc的好處是在Linux下有最好的兼容性,系統內核、系統的library都是gcc編譯的。clang相比gcc的優勢大概就是編譯速度,和對標準支持的速度。clang的編譯速度是比gcc要快一些的,而且通常給出的錯誤信息更友好一些。在標準的支持方面,gcc 4.9才完全支持C++11標準(regex的bug到4.9才修正),而clang 3.3就已經完全支持C++11標準,clang 3.4已經完全支持C++14標準。gcc相比于clang也有一個優勢,在有些情況下gcc的優化器比clang更好。

除了Unix哲學,如果看youtube上的各類技術分享,常見到的也是mac,記得前幾年Hacker News上有個問卷,黑客們都用的什么操作系統,mac OS X 是排第一位的,甚至超越了linux 操作系統為用戶提供編程環境。

總之,Mac比Linux更舒服的界面,比Windows更簡潔的環境。

工具與IDE

Mac 上自帶了很多工具,使開發和學習更加便捷。比如自帶Git,可以直接從Terminal啟動Git服務。最好會使用命令行操作,如果實在不習慣的話,SourceTree 應該是目前比較好用的Git圖形化界面了。Mac 自帶了Vi和Emacs,自帶Apache服務器,配置wordpress做自己的博客是分分鐘的事情。Mac 還自帶了對Python、PHP等語言的支持,macport和homebrew 對應用的安裝下載也很方便。

XCode

Xcode 是運行在操作系統Mac OS X上的集成開發工具(IDE),由蘋果公司開發。Xcode是開發OS X 和 iOS 應用程序的最快捷的方式。Xcode 具有統一的用戶界面設計,編碼、測試、調試都在一個簡單的窗口內完成。

Xcode 8能夠方便創建漂亮的iPhone、iPad、Mac、Apple Watch和Apple TV 應用程序,是更快的一個IDE版本,使用編輯器擴展可以完全定制化自我的編碼經驗。新的運行時可以提醒隱藏的bug并部分指出內存泄漏,這都是蠻不錯的。

Eclipse

Eclipse 是一個開源的基于Java的可擴展開發平臺,本身只是一個框架和一組服務,用于通過插件組件構建開發環境。Eclipse 附帶了一個標準的插件集,包括Java開發工具等。

Eclipse 是個通用的集成開發環境,是應用開發的必備免費工具。不僅是java,通過插件形式可以行程各種開發語言的IDE,例如PyDev 用于Python開發的,ADT 支持Android 開發,遺憾的是,近來google停止了對ADT的支持。

Android Studio

Android Studio 是一個Android集成開發工具,基于IntelliJ IDEA. 類似 Eclipse ADT,Android Studio 提供了集成的 Android 開發工具用于開發和調試。

Android Studio基于Gradle的構建方式與ADT有著較大的不同,編譯和運行的速度都有了明顯的改善,是android 領域的XCode。

sublime Text

對于腳本話語言來說,尤其是Javascript,sublime 作為輕量級IDE還是不錯的。Sublime Text 支持多種編程語言的語法高亮、擁有優秀的代碼自動完成功能,還擁有代碼片段的功能,可以將常用的代碼片段保存起來,在需要時隨時調用。

Sublime 支持 VIM 模式,可以使用Vim模式下的多數命令。支持宏,播放錄制的操作或者命令。

數據庫

數據庫是全棧必須掌握的技能,數據庫的種類很多,除了關系型數據庫之外,還有各種的NoSQL, 擁有一個本地的數據庫環境,可以更方便地開發調試。

MySQL

MySQL 最流行的關系型數據庫管理系統,在 WEB 應用方面MySQL是最好的 RDBMS (Relational Database Management System,關系數據庫管理系統) 應用軟件之一。 MySQL所使用的 SQL 語言是用于訪問數據庫的最常用標準化語言。MySQL 軟件采用了雙授權政策,它分為社區版和商業版,由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型網站的開發都選擇 MySQL 作為網站數據庫。

MySQL也有mac客戶端---Sequel Pro ,可以輕松的進行MySQL的各種操作,關鍵還是免費的,有意思的是,可以通過一層SSH隧道進行MySQL的連接。

Redis

Redis 是一個高性能的key-value數據庫。 redis的出現,很大程度補償了memcached這類key/value存儲的不足,在部 分場合可以對關系數據庫起到很好的補充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客戶端,使用很方便。

在Mac環境中,使用 sudo brew install redis 命令可以一鍵安裝Redis。

MongoDB

MongoDB是一個基于分布式文件存儲的數據庫。由C++語言編寫,可以為WEB應用提供可擴展的高性能數據存儲解決方案。MongoDB 是NoSQL當中功能最豐富,最像關系數據庫的。他支持的數據結構非常松散,是類似json的bson格式,因此可以存儲比較復雜的數據類型。Mongo最大的特點是他支持的查詢語言非常強大,其語法有點類似于面向對象的查詢語言,幾乎可以實現類似關系數據庫單表查詢的絕大部分功能,而且還支持對數據建立索引。

在Mac環境中,使用 sudo brew install mongodb命令可以一鍵安裝mongodb。

另外,Mac自帶了SQLite數據庫,是一款輕型的數據庫,是遵守ACID的關系型數據庫管理系統,它包含在一個相對小的C庫中。它的設計目標是嵌入式的,而且目前已經在很多嵌入式產品中使用了它,它占用資源非常的低,在嵌入式設備中,可能只需要幾百K的內存就夠了,在iOS和Android 開發時是必備的選項。

多環境與多系統

對于多環境和多操作系統而言,不建議多分區的方式,用虛擬機比較好。VirtualBox號稱是最強的免費虛擬機軟件,它不僅具有豐富的特色,而且性能也很優異!它簡單易用,可虛擬的系統包括Windows系列、Mac OS X、Linux、OpenBSD、Solaris、IBM OS2甚至Android等操作系統。

可以方便地在VirtualBox上安裝并且運行上述的這些操作系統,與同性質的VMware相比,VirtualBox獨到之處包括遠端桌面協定(RDP)、iSCSI及USB的支持,VirtualBox在客戶端操作系統上已可以支持USB 2.0的硬件裝置了。

溝通與網絡

溝通與協作是必須的,微信和QQ成了首選的工具,Mac上都有對應的客戶端。

對于團隊溝通而言,Trello 是個不錯的云服務,國內的worktile 也很贊,其它的工具就因人而異了。近年來比較火爆的slack,最看好的是它web hook 特性,是工具化中的一種趨勢。

對于上網查看資料而言,chrome 和mac 自帶的safari 都很好。對開發者而言,更喜歡google,如果自己不購買VPN的話,lantern 就是一個無奈的選擇了。

email 更是必備,有了VPN, gmail就可以作為一個郵件服務的候選。

國內的郵件服務商,163郵箱非常不錯,當然QQ郵箱也是勉強可用的。

隨手筆記

“好記性不如爛筆頭”,不論是網絡上的知識,還是自己的感悟都最好紀錄下來,Evernote 是我的最愛。

[[177602]]

EverNote界面類似于微軟的OneNote,以超強的內容捕捉,實時搜索,標簽分類,支持大數據庫,圖像內文字的識別和手寫圖形的識別而著稱。EverNote支持多終端同步,可以隨時隨地訪問自己的筆記,使在地鐵上梳理心得變成了一段快樂的時光。

紀錄的內容多了,就需要使用云盤,百度云盤不錯。但是如果服務商關了服務,導出的成本還是蠻高的,360云盤的關閉估計倒霉了一批人。保險起見,還是要有自己的大型移動硬盤作為備份工具。

通過隨手筆記和云盤等存儲,逐步整理的所學所用,就可以初步形成自己的知識體系,完成個人的知識管理了。開發學習環境中還包括很多的工具集, 以后再逐一補充吧。

【本文來自51CTO專欄作者老曹的原創文章,作者微信公眾號:喔家ArchiSelf,id:wrieless-com】

責任編輯:武曉燕 來源: 喔家ArchiSelf
相關推薦

2016-12-19 09:43:59

軟件開發架構

2016-12-01 14:16:18

GitSCM配置

2016-12-01 15:03:36

緩存技術客戶端

2016-12-01 14:47:05

負載均衡DNS

2016-12-02 08:55:18

Linux系統

2017-05-18 14:11:22

CRM圖解交付

2016-12-02 08:54:18

Lambda代碼云計算

2017-02-05 16:51:35

網絡編程網絡系統

2016-12-02 09:09:18

MySQL調優數據庫

2016-12-06 20:01:56

數據架構數據機器學習

2024-01-15 15:11:03

物聯網5G數字孿生

2016-12-08 15:52:09

互聯網數據計算

2018-10-17 22:01:06

2017-09-18 08:21:42

碼農AI人工智能

2017-03-27 08:45:47

全棧技術管理

2017-04-17 08:44:43

構造函數線程安全

2018-01-16 15:02:20

存儲RAIDSAN

2018-01-09 15:35:54

Python編程基礎

2012-03-09 09:45:50

2009-05-12 09:35:40

移動MoblinAndroid
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 婷婷狠狠 | 欧美国产日韩精品 | 二区三区视频 | 欧美中文字幕一区二区三区亚洲 | 一区二区精品 | 国产aⅴ爽av久久久久久久 | 国产精品久久久久久吹潮 | 欧美日韩a| 91精品国产综合久久福利软件 | 成人免费观看男女羞羞视频 | 日韩精品一区二区三区在线播放 | 日本精品久久久一区二区三区 | 国产精品久久久久久久久久久久久 | 欧美国产日韩精品 | 国内精品伊人久久久久网站 | 天天玩天天操天天干 | 波多野结衣二区 | 亚洲精品大片 | 国产日韩欧美激情 | www.日韩在线| 日日干日日操 | 日韩伦理一区二区 | 免费黄色大片 | 久草电影网 | 日韩欧美一区二区三区四区 | 精品国产一区二区三区成人影院 | 日韩精品在线免费 | 毛片大全| 久久久久久久久久久高潮一区二区 | 天天干人人 | 黄色片av| 色女人天堂 | 久久久女 | 日本中文字幕一区 | 国产精品一区二区三级 | 精品网站999www | 日本精品视频在线观看 | 久久精品无码一区二区三区 | 中文字幕国产精品视频 | www.一级毛片 | 亚洲成人中文字幕 |