職業PHP開發,想再學一門語言。GO or Python ,以備後面轉。那個更適合?
職業PHP開發,想再學一門語言。GO or Python ,以備後面轉。那個更適合?
這個之前就回答過,建議學GO,Python和PHP同樣都是動態語言,有很多重合的地方。而GO語言是靜態語言,編程體驗和PHP是完全不同的。學習過程可以讓你得到更大的提升,而且Go語言還可以與PHP優勢互補、動靜結合。
有很多國外的大師,都首推 Python 作為編程入門的語言,而 Python 本身的商業應用也非常廣泛,當需要完成一些碎片化的任務時,這種廣泛流行的腳本語言,是最好的選擇。
但說到未來的職業前景,從 PHP 過渡,如果開發網站的話,至少國內 PHP 就業前景更好。除了 PHP 成千上萬的模板和框架,還有各種雲服務商,對 PHP 的支持都比其他語言靠譜,而且價格也比較低廉。如果是去開發遊戲伺服器或者其他什麼的,我覺得或許從PHP,轉到 C/C++ 再轉別的好一點。Go 語言這種強類型,更接近底層的語言,對數據的控制對基礎要求更高,可能先搞搞 C/C++ 會更遂心應手一點。C/C++ 有無數的資料,而 Go 語言相對少一點。比如說碰到同一個主題,往 Go 語言方向查詢,可能一無所獲,但 C/C++ 一大堆詳盡專業的資料。轉JS吧,你會發現永遠學不完,這樣就不用糾結以後學什麼了。
學好英語
可以看一下F#。(Haxe用Ocaml開發,而Rust最早也用OCaml開發,而F#是OCaml的微軟升級版,可以無縫調用C#以及其它.net資源(這點類似於Scala是Java的函數式升級版),鑒於.net core 可以支持Windows/Linux/Mac,所以前景不錯。)
F#可以比較有效的用精簡的語句快速的正確的完成多種任務。其泛型和函數式開發導致比Golang的開發效率高許多,執行效率估計得看場合(估計C/C++/Rust等它是比不過,其它的應該無憂)。可以很容易的導入項目到Azure/Heroku等雲環境,也可以通過F#直接處理Azure storage。
不過需要英語好一點,因為中文資料少。最好可以翻牆,資料會更多一點。
資源: F# Software Foundation 官網http://www.tryfsharp.org/ 上手Home | F# for fun and profit 非常好的關於F#的學習網站,一個叫Scott的人搞的(不是我啦)Suave.IO 一個輕量級的web框架,2.0支持http2.0WebSharper 一個重量級的web解決方案,用F#寫全部前後端,可以支持直接編譯到JS
F# |&> BABEL - The compiler that emits JavaScript you can be proud of! 另外一個編譯到JS的好庫,最近比較火。Excel-DNA - Home Excell Add in by F# (Fcell更好,不過要收費)FsLab - Data science and machine learning with F# 大數據Welcome to Akka.NET F# akkaF# Videos and Posts Channel 9 F#視頻F# Videos | Page 1 其它F#視頻https://www.youtube.com/channel/UC4fWHxNVIxMFYIoLHS4RqSA Youtube F# TV視頻Tomas Petricek 牛人Phillip Trelford"s Array 牛人書籍可以參考Beginning F# 4.0 和 Expert F# 4.0
等等推薦學Go,比Python新多了,設計簡潔乾淨,歷史遺留問題少,標準庫質量高,這幾年湧現了好多有分量的開源項目,當做工作之餘學習的語言,會非常舒服。
我也是PHP開發的,也遇到過這個問題,最終選擇的是JS,從後端向全棧發展。
用golang做介面開發,用python做數據分析。
我也是php,現在正在學c c++,不錯。
Excuse the allegory, but…
「What tool should I learn to use in 2017, a hammer or a chainsaw?」
「Well… Do you intend to cut down trees or hammer nails?」
「I don』t know, I can only learn to use one, I need an answer!」
「Well, I suppose it is easier to bash a nail in with a chainsaw than to fell[1]a tree with a hammer…」
Golang and Python are about as similar as the above hammer and chainsaw. They are used for vastly different purposes and have very different trade-offs. Python is really good for data science, machine learning, and fast prototyping. Go is incredibly good at low level computations and distributed computing. These two usage areas have almost zero overlap.
Normally, you pick programming languages by what you intend to do. If you are just a newcomer trying to find a prospective language to learn, on the other hand, I have two exciting news for you:
- Your first programming language pretty much doesn』t matter. Mine was Pascal, and Pascal has been dead for over a decade.
- You need to learn programming first. That has nothing to do with languages and everything to do with problems, their solutions, and formal descriptions of these solutions.
Just pick whatever and get to work on your problem solving skills.
(轉自: Should I learn Golang or Python in 2017?)
Go+Python,黃金搭檔。
學GO好,因為GOは神。學Python也不錯,因為GOは屑。
go很好,但不推薦你學,主要用於系統編程,跟你的現領域差別比較大。換語言容易,但是幾年經驗之後換領域損失就比較大了
想學啥學啥,不要單純的為了學而學,這樣效果很差。結合工作去學一門新的語言。
首先,題主你在這裡問了,說明你是兩個都想學的,而且把GO反正Python的前面,說明你內心偏向go語言一點,但是我還是建議你學習Python
- 比go發行早,經過多次修改已經成熟了
- 項目多,對於入門想進階的話是非常快的
- 用的人多
Python大法好
趕時髦,跟潮流,學GO練內功,習本領,學C
個人覺得,語言從來都不是問題,如果想弄精一門語言,我倒是建議Java和JavaScript。除此以外,積累項目經驗甚至系統架構,比單純掌握一門語言重要得多,畢竟你不可能想做一輩子程序員。至於Go/Python以及其他答主提到的PHP,都是實現目標的一個工具而已,相同的地方是,這些語言有各自的應用場景,並且都非常容易學會,所以不值得問學誰好以及專門學一種語言,到後面做得項目多了你會發現,前後端涉及到的所有語言基本都能懂。
推薦閱讀:
※Python 中列表和元組有哪些區別?
※Python 中列表推導(list comprehension)相對於循環有什麼優勢?性能會更高嗎?
※如何在visual studio上寫 python?
※如何在用 Python 編程時添加中文注釋?
※零基礎小白學編程多久能達到接私活的水平?