摘要:我應(yīng)該先學(xué)習(xí)哪種編程語言這一切都取決于你想要完成的事情作為技術(shù)作家,我的任務(wù)是使復(fù)雜的主題易于理解,因此在本文中您將找不到太多技術(shù)術(shù)語。我應(yīng)該先學(xué)習(xí)哪種編程語言這是我自出版之前收到的最常見的問題。是一種后端語言。
我應(yīng)該先學(xué)習(xí)哪種編程語言?
這一切都取決于你想要完成的事情
作為技術(shù)作家,我的任務(wù)是使復(fù)雜的主題易于理解,因此在本文中您將找不到太多技術(shù)術(shù)語。我可以對面向?qū)ο蟮木幊毯蛿?shù)據(jù)結(jié)構(gòu)進行咆哮和狂熱,但如果你是編碼和計算機科學(xué)的新手,這對你來說并不是很重要。本文的目的是為您提供一個非常廣泛和簡單的編程世界介紹,并幫助您了解如何(和什么)開始學(xué)習(xí)。
我應(yīng)該先學(xué)習(xí)哪種編程語言?
這是我自出版之前收到的最常見的問題。在學(xué)習(xí)編碼之前,我希望知道這些問題。大多數(shù)人都認為有一個明顯的選擇,但答案并不總是那么清楚。
許多編碼bootcamp專注于JavaScript,可能假設(shè)每個想成為開發(fā)人員的人都應(yīng)該從前端工作開始。如果你想要進入前端開發(fā),JavaScript幾乎是不可避免的,但是許多人在考慮他們想要通過學(xué)習(xí)如何編碼來實現(xiàn)的目標之前就會跳過它。
許多計算機科學(xué)程序都是從Python開始的,也許是因為它具有簡單的語法和強大的文檔,使其成為初學(xué)者的理想語言。嘿,Python非常適合各種各樣的事情,包括數(shù)據(jù)科學(xué),所以為什么不先學(xué)習(xí)呢?畢竟,這是一種通用語言。
問題在于,很多人都認為他們想要“學(xué)習(xí)如何編碼”,但他們并沒有停下來思考他們想要學(xué)習(xí)如何制作的東西。
編程不是選擇一種語言,學(xué)習(xí)它的語法,然后弄清楚它以后可以做什么。
如果您想成為開發(fā)人員,并且您不確定從哪里開始,我強烈建議您從最后開始。最終的結(jié)果。你想什么做?
如果答案是“很多錢”,那么繼續(xù)瀏覽工作列表并選擇您首選公司正在尋找的任何語言。但祝你好運,在沒有明確目標的情況下學(xué)習(xí)。
畢竟,學(xué)習(xí)特定語言的“簡單”或“困難”并不重要。你知道什么是真的很難嗎?試圖將語言推出超出其限制的范圍,以創(chuàng)建不能(或不應(yīng)該)使用該語言創(chuàng)建的內(nèi)容。
我不確定我想做什么,但我知道我喜歡編程的挑戰(zhàn)。
足夠公平 - 但在某些時候,你必須意識到你正在努力學(xué)習(xí)一些具有挑戰(zhàn)性的東西。這就像試圖學(xué)習(xí)一門外語,但承認你甚至不知道它在哪里說話,而且你也沒有興趣大聲說出一句話。你可以學(xué)習(xí)所需的所有語境外語法,但你永遠不會成為語言學(xué)家。
從結(jié)束開始
你可以做些什么?
網(wǎng)站
電腦游戲
移動應(yīng)用(iOS?Android?)
您可以做些什么?
數(shù)據(jù)科學(xué)
人工智能
機器學(xué)習(xí)
網(wǎng)絡(luò)安全
技術(shù)寫作
數(shù)據(jù)庫管理
這個列表顯然不是包羅萬象,但你明白了。你究竟想做什么?在您選擇編程語言之前先了解一下。雖然有些人說你選擇哪一個并不重要,只要你學(xué)得很好,你可能會發(fā)現(xiàn)這不是最好的建議 - 特別是如果你已經(jīng)嘗試過并且失敗了。
如果您的夢想是設(shè)計下一個Fortnite,那么您可能不應(yīng)該花費數(shù)月和數(shù)月來應(yīng)對JavaScript挑戰(zhàn),就像您在嘗試成為Android開發(fā)人員時不需要參加Swift課程一樣。
另一方面,如果您的夢想是在一家大型科技公司擔(dān)任軟件工程職位,那么一旦您開始工作,您可能會期望學(xué)習(xí)新的編程語言。您對算法和計算機科學(xué)原理的理解可能比您在編碼面試中選擇使用的語言更重要。
毫無疑問,在你學(xué)好一門編程語言之后,更容易學(xué)習(xí)它,但是如果你剛剛開始,最好選擇一種與你的短期和長期目標很好地配合的語言,而不是隨意選擇一個,或選擇一個你認為會讓你賺錢最多的一個。
#wocintechchat
一些最流行的編程語言是什么?他們最常用的是什么?
HTML和CSS
如果您想對前端開發(fā)做任何事情,請假設(shè)HTML和CSS是給定的。無論您是否認為它們是編程語言(技術(shù)上HTML是標記語言而CSS是樣式表語言),您需要學(xué)習(xí)這些,并且您應(yīng)該能夠快速學(xué)習(xí)它們。有一個原因可以通過HTML和CSS編寫bootcamps輕松編程,有時使它們成為pre-bootcamp課程的一部分。
簡而言之,HTML用于在網(wǎng)站上放置文本,圖像和其他元素。使用HTML創(chuàng)建頁眉,頁腳,換行符,鏈接,斜體文本等。頁面的整個層次結(jié)構(gòu)都是使用HTML完成的。
CSS用于更改這些元素的外觀。從不透明度到邊框,從字體大小到網(wǎng)格,CSS允許您自定義頁面上每個元素的外觀。您甚至可以在想到JavaScript這個詞之前使用CSS 來創(chuàng)建動畫。
如果你想成為一名前端開發(fā)人員,花一兩個星期真正學(xué)習(xí)HTML和CSS,并在繼續(xù)之前從頭開始制作一些網(wǎng)站。學(xué)習(xí)Flexbox和網(wǎng)格以使頁面響應(yīng)(以便它們適應(yīng)不同的屏幕尺寸),并看看你可以推動CSS多遠,因為它可以比你想象的做得更多。使用Bootstrap,這是一個開源的前端框架。然后,一旦你達到這一點,你會發(fā)現(xiàn)你的編程之旅自然會引導(dǎo)你......
JavaScript
JavaScript可以在很多方面使用,但它最常用于前端開發(fā)。JavaScript用于使網(wǎng)站互動并使網(wǎng)絡(luò)元素發(fā)揮作用。您可以使用HTML為網(wǎng)站添加按鈕,使用CSS設(shè)置樣式,并使用JavaScript為其提供功能。如果沒有JavaScript,當(dāng)用戶點擊它時,您的按鈕將不會執(zhí)行任何操作。
您不需要使用終端來使用JavaScript。您將在代碼編輯器和瀏覽器中工作。
JavaScript可用于設(shè)計基于瀏覽器的游戲。(如果你曾嘗試在學(xué)校的計算機上玩基于瀏覽器的游戲并遇到麻煩,可能是因為學(xué)校的管理員阻止了JavaScript,試圖阻止你玩游戲。)
有許多庫和框架可以更輕松地使用JavaScript。你不會從這些開始,但你可能會在以后廣泛使用它們。
您甚至可以使用JavaScript來使用Node.js進行后端工作。
JavaScript相對容忍錯誤。相對。
如果您想成為前端開發(fā)人員,則需要學(xué)習(xí)HTML,CSS和JavaScript。真的沒辦法解決它。
僅在LinkedIn上就有超過100,000個與JavaScript相關(guān)的職位發(fā)布。
Python
Python是一種多功能,功能強大的通用語言。你可以將它用于幾乎任何東西,從網(wǎng)頁開發(fā)到游戲,這就是很多人選擇它作為第一語言的原因。
如果您只是對編碼感到好奇,可以從Python開始。這很容易學(xué)習(xí)。
但如果你的夢想是獲得一份數(shù)據(jù)科學(xué)家的工作......你現(xiàn)在也可以停止閱讀,因為你絕對可以從Python開始。
長話短說,Python是數(shù)據(jù)科學(xué)家的夢想。它的包和庫使得處理大量數(shù)據(jù)變得容易。您可以使用Matplotlib創(chuàng)建可視化,您可以使用Numpy和Pandas分析表格數(shù)據(jù)......等等。
Python擁有強大的文檔。如果您需要查找某些內(nèi)容,您將能夠快速找到答案。這對于任何獨立學(xué)習(xí)的人來說都是一個重要的考慮因素
但要注意你的縮進。縮進標記代碼塊,因此如果執(zhí)行此操作錯誤,您將收到錯誤。缺少空間或額外空間是一個問題。我之所以提到這是因為這是Python的一個顯著特征。使用JavaScript,您可以根據(jù)需要放置任意數(shù)量的空間 - 即使您弄得一團糟。不要試試Python。
Ruby
Ruby是一種后端語言。“Ruby on Rails”不是一種語言。Ruby是語言,Rails是框架。Ruby因Rails而變得流行。
Ruby是一種非常棒的語言,語法溫和。每行末尾沒有分號!大多數(shù)開發(fā)人員都認為使用起來很有趣,但是它非常容忍錯誤。只是一個抬頭。如果調(diào)試不是你的問題,那么你將不會很開心Ruby。
它是一種高級語言,只需幾行代碼即可完成相當(dāng)多的工作。Ruby在初創(chuàng)公司中越來越受歡迎,所以你可能已經(jīng)看過“Ruby on Rails開發(fā)人員”的職位發(fā)布。
如果您獨立學(xué)習(xí)并且不是Python的粉絲,Ruby可能是一個很好的第一語言。另一方面,Ruby旨在使經(jīng)驗豐富的開發(fā)人員盡可能地編程有趣和愉快,因此它不是編碼學(xué)院或計算機科學(xué)程序首先教授的語言。如果你希望在面對面的環(huán)境中學(xué)習(xí),那么找到一個專注于Ruby的“編程簡介”課程你將沒有多少運氣。
SQL
SQL(有些人發(fā)音為SQL而其他人說“續(xù)集” ;我們可以將這個論點保存一天)并不是真正的“編程”語言。您不會使用SQL制作整個應(yīng)用程序。您將使用它與數(shù)據(jù)庫進行通信或從數(shù)據(jù)庫獲取信息。
數(shù)據(jù)?;?。
如果您想從事數(shù)據(jù)科學(xué)工作,則必須學(xué)習(xí)SQL,否則您將無法獲得任何數(shù)據(jù)。如果你想做任何涉及數(shù)據(jù)庫的事情,你將不得不學(xué)習(xí)SQL。但是,如果你從未在生活中編寫過一行代碼,那么你可能不應(yīng)該從SQL開始。為什么?你不能用SQL開發(fā)一個獨立的應(yīng)用程序(它不是那種語言),所以你幾乎要學(xué)習(xí)倒退。
Swift
如果你想成為iOS開發(fā)人員,那么從Swift開始就完全沒問題了。Swift是一種相對較新的語言,但它很容易學(xué)習(xí)(孩子們可以做到),它實際上是為開發(fā)iOS應(yīng)用程序而制作的。
這里不需要說太多其他內(nèi)容。如果您的目標是成為iOS開發(fā)人員,那么Swift就沒有理由不能成為您的第一語言。
Java
[Java不是JavaScript的昵稱,就像汽車不是碳的昵稱。]
如果您想構(gòu)建Android應(yīng)用程序,Java就是您的語言。您也可以將它用于桌面應(yīng)用程序。還有一些游戲。Java曾經(jīng)是計算機科學(xué)課程中最常用的語言之一,但近年來Python已經(jīng)超越了它。Java仍然很受歡迎,但Python和Ruby可以說更容易學(xué)習(xí)。如果您已經(jīng)成為一名Android開發(fā)人員,那么請從Java開始 - 但如果沒有,您可能會發(fā)現(xiàn)通過首先學(xué)習(xí)Python可以獲得更多功能(并且可以說更多功能)。
C#
如果你想成為游戲開發(fā)者 - 特別是如果你想開發(fā)控制臺或桌面游戲 - 你可能已經(jīng)看過Unity。如果沒有,請在新窗口中打開此鏈接,并在讀完后立即瀏覽。
使用Unity,即使您是初學(xué)者,也可以構(gòu)建(并貨幣化)令人難以置信的游戲。你可能會使用C#。
雖然Unity曾經(jīng)支持UnityScript(基本上是JavaScript的“方言”),但它在2017年開始逐步取消對UnityScript的支持,使C#成為最強大的競爭者。
如果你的目標是成為一名游戲開發(fā)者,C#是一門很好的語言。這不一定很困難。Unity擁有一些我見過的最強大的文檔。他們有與眾不同的教程。
學(xué)習(xí)C#的另一個原因是:微軟。如果要構(gòu)建Microsoft應(yīng)用程序,C#就是您的語言。
PHP
PHP是一種腳本語言,考慮到80%的Web由PHP提供支持,它有點被低估了。它作為WordPress主題的基礎(chǔ)而聞名,因此如果您對創(chuàng)建自定義主題感興趣,那么您必須熟悉PHP。
你可以用PHP做很多事情。它只是作為第一個推薦的奇怪語言,因為它可能不足以滿足您的所有編程需求。PHP有其局限性,但實際上初學(xué)者很容易學(xué)習(xí)。
還有很多其他語言,這并不是一個包羅萬象的列表。
如果有足夠的興趣,我會用更多語言更新這篇文章。請記住一件事:每個開發(fā)人員都有一個喜歡的語言,每個開發(fā)人員都會告訴你先學(xué)習(xí)這門語言。
但你不是每個開發(fā)人員。
一旦你弄清楚你想要做什么,你應(yīng)該從對你最有意義的語言開始。如果您知道自己想要制作移動應(yīng)用程序,請不要在教授JavaScript的訓(xùn)練營中投入18,000美元(無論JavaScript多么令人驚訝)。
我們來談?wù)劜磺袑嶋H的編程語言。
我不打算給任何名字命名,但是如果你偶然發(fā)現(xiàn)了一個“酷語”并且你不知道它的用途是什么,那么很可能它不是一個好的第一語言。
這包括“遺留”語言。如果幾十年來沒有人使用過某種語言,那就不要把它作為你的第一種編程語言。這就像試圖學(xué)習(xí)阿拉姆語作為你的第一外語。您將找不到足夠的文檔來超越“初學(xué)者”級別,如果您在編碼面試中嘗試使用古老的語言,人們會睜大眼睛看著您。我只是說。
務(wù)實。
最好的第一語言是做你需要它做的事情。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/7131.html