幹掉 powerdesigner,設計數據庫表用它就夠了

每一個公司都喜好精通多種編程語言而且多才多藝的程序員。一個既能很麻利地寫腳本,也能編寫複雜的Java程序的程序員,確實至關有價值。因此實際上,對於高級開發者來講,學習不止一種編程語言,幾乎就是必然的要求。
目前而言,面試官愈來愈看重那些擁有多種編程語言經驗的工程師。好比,同時有C++ 和Java的經驗就很不錯,Python和Java也是。我我的喜歡那些在C++ 或者Java方面有着豐富經驗,並且能用Groovy、Perl或Python寫腳本的軟件工程師。
不少時候,寫一個小腳本就足以快速搞定一些專有任務。我不想個人程序員們花上一成天用Java去寫一個讀取CSV文件的程序,或者在TCP/UDP端口抓取信息的程序,這是很浪費時間的一件事情。

爲何我在文章中選擇下面5種語言呢?簡單實際。我是基於這些語言的用途、編程範式和流行度及表明性來選擇的。
例如,若是你想找一份應用開發的工做,就不能忽視Java。一樣,作與web相關的事情,就得知道無處不在的JavaScript。
在開發者職業生涯的早期,我強烈建議學習C語言。它能幫助開發者貼近系統底層,知曉那些編程的關鍵概念,這是隱藏在JVM或CLR底下的東西。
對於腳本語言,個人選擇是Python,儘管你也可用Perl或Groovy代替。但在擴展支持方面來看,Python的表現無疑是最棒的。有不少Python模塊可供選擇,幫你能分分種搞定各類任務。
學習一種面向對象的語言的同時,也學習一種像Haskell或Scala這樣的函數式編程語言,這能拓展你的思惟和編程認知。你能夠在本文找到學習這5種語言的更多理由。
言歸正傳,下面就是我列出的5種每一個程序員或軟件開發者都該嘗試學習的編程語言。
它包含了語言的大雜燴,好比[面向對象的]語言,函數式的語言,腳本語言,提供了對底層的控制,也涵蓋了普遍用於服務端開發的語言。

JavaJava是近二十年來最流行的語言之一。它統治着全球的服務端應用開發,同時在基於Anroid開發的移動應用市場,以及企業web開發領域,也佔有至關一部分比重。
Java最初的構想是一次編寫各類平臺均能運行(write once run anywhere)。隨着時間的推移,它確實作到了運行在各個平臺的各個角落。
你應該學習使用Java構建健壯的、可擴展的服務端應用。你能夠用Java構建多種複雜度的工程。與之相伴的,有很棒的工具、技術和社區支持。
爲何你應該學Java呢?你會學到若是專一於應用層面和代碼結構的設計,而不用關心特定系統的細節和內存管理。JVM幫你搞定了後面這些。

Java被許多世界上的大型組織所使用。並且可以向衆多用戶展現你用Java開發的Android應用。

Python
在全球範圍的學校和院系,Python是教授最多的語言之一。在美國,許多學術課程中,Python已經取代了Java成爲接觸編程的首選語言。你將從學習Python中獲得什麼呢?——那將很是多。
Python既能用於寫腳本,也能做爲一種面向對象的語言編寫大型工程。
許多流行的網站,好比Reddit,就使用基於Python的框架來構建,好比Django。近段時間,許多大型組織也轉向使用基於Python的框架了。
Python也愈來愈多地用於像機器學習、人工智能、數據科學這樣的新一代技術中。這也難怪,由於有基於Python的很是棒的機器學習庫,好比TensorFlow、Scikit-Learn以及其餘。

我我的卻是在用Python寫腳本。這能很快地完成一些有用的事情,好比,你能夠用Python花5分鐘寫一個UDP消息的監聽器,相比較,用Java可能就要花20分鐘。
忘掉「編譯、打包,而後才能使用」這些步驟。你能夠直接爲特定任務編寫Python腳本。

JavaScript你能夠用Java替代C++,用Pythont替代Ruby,可是,坦率地講,當前沒有JavaScript的替代品。在最近5年,JavaScript徹底統治了世界。
它再也不僅僅是客戶端腳本語言。有了Node.js這樣的庫,和Angular、React這樣的框架,你能夠在服務端作用戶界面的開發。
JavaScript的巨大成功,有一部分要歸功於jQuery。它真正改變了人們在客戶端使用JavaScript的方式。

做爲一個在工做中使用JSP和開發基於Servlet的應用的程序員,我有許多機會同時使用jQuery和JavaScript。
有了此語言的知識,能夠幫助咱們決定哪些功能應該在服務端實現,哪些該在客戶端實現。好比,許多服務端的校驗邏輯,就被咱們遷移到了客戶端。

C / C++
若是不知道C或C++,你就不能成爲真正的程序員。這聽起來有點苛刻,可是個人經驗之談。
瞭解C的工程師或者開發者,就是比不了解C的程序員要優秀。這可不是簡單的巧合。
這是你必需要了解的編程語言之一。我在求學期間學習的C語言,並在那時學到了關於編程的許多關鍵概念,好比結構體、數組、指針、內存管理等等。
C仍然是操做系統編程方面最受歡迎的語言,而且在這兩年,給排名榜首的Java帶來了強勁地衝擊。直至今年,超過了Java,排在了編程語言排行榜的第一位!

它一樣是最古老的主流語言之一,已經存在了近五十年。
C++ 和 C 很像,都容許你爲系統和驅動編寫底層代碼。若是你想學習C++ 而不是C,可看看我爲新手列出的C++學習路線。

ScalaScala是基於過去20年來的最佳實踐而創造的語言。它是一種函數式編程語言,提供了一種跟面嚮對象語言不一樣的編程範式。這能改進你的思惟和代碼認知。
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...://github.com/threeb1234/ayvzzxcvnm/discussions/72
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...://www.github.com/threeb1234/ayvzzxcvnm/discussions/80
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...
https://github.com/threeb1234...
https://www.github.com/threeb...
http://github.com/threeb1234/...

雖然有許多函數式編程可供選擇,好比Haskell。我選擇Scala,由於做爲一名Java開發者,我發現學習Scala比Haskell更容易。

有人也能夠把學習Haskell看成一個挑戰。可是從實際的角度講,我認爲學習Scala對於Java開發者來講更有意義。

對於C++程序員,學習Haskell可能更合理。坦率講,你能夠選擇任何一門函數式編程語言,但請選擇一門有商業需求的比較好。git

相關文章
相關標籤/搜索