哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

機(jī)器學(xué)習(xí)中最流行的10種編程語(yǔ)言

電子工程師 ? 來(lái)源:工程師李察 ? 2019-01-01 11:02 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在本文中,我們將會(huì)審視在機(jī)器人學(xué)習(xí)中最流行的10種編程語(yǔ)言,深入探討它們各自的優(yōu)缺點(diǎn)以及使用和棄用它們的原因。

這實(shí)際上是個(gè)很有道理的問(wèn)題——畢竟,如果你從不付諸實(shí)踐,那為什么要花大量的時(shí)間和精力去學(xué)習(xí)一種新的編程語(yǔ)言呢?如果作為一名機(jī)器人學(xué)新人,你當(dāng)然會(huì)想學(xué)習(xí)一種確實(shí)對(duì)你的職業(yè)生涯很有用的編程語(yǔ)言。

不幸的是,如果你去問(wèn)一屋子的機(jī)器人學(xué)專(zhuān)家,“什么是機(jī)器人學(xué)中最好編程語(yǔ)言?”,你永遠(yuǎn)不會(huì)得到一個(gè)直接的答案。

電氣工程師會(huì)從工業(yè)機(jī)器人技術(shù)這個(gè)角度給出不同的答案。計(jì)算機(jī)視覺(jué)程序員給出的答案會(huì)跟認(rèn)知機(jī)器人專(zhuān)家給出的不一樣。而且,每個(gè)人都會(huì)對(duì)什么是最好的編程語(yǔ)言有自己的看法。對(duì)于一個(gè)新入行正在試圖決定要先學(xué)哪種語(yǔ)言的機(jī)器人學(xué)者來(lái)說(shuō),這是一個(gè)相當(dāng)無(wú)用的答案。即使這是最現(xiàn)實(shí)的回答——因?yàn)樗拇_取決于你想要開(kāi)發(fā)的應(yīng)用程序和你在使用的系統(tǒng)。

對(duì)于機(jī)器人專(zhuān)家來(lái)說(shuō),最重要的事情是開(kāi)拓你的”編程思維”,而不是精通一種特定的編程語(yǔ)言。從很多方面來(lái)說(shuō),從哪種編程語(yǔ)言開(kāi)始學(xué)習(xí)真的無(wú)關(guān)緊要。你學(xué)習(xí)的每種語(yǔ)言提升了你的編程思維,擁有了這種思維,去學(xué)習(xí)一種新編程語(yǔ)言的時(shí)候會(huì)容易不少。

世界上有1500多種編程語(yǔ)言,都要學(xué)的話是太多了。目前,在機(jī)器人學(xué)中有這10種最流行的編程語(yǔ)言——如果你喜歡的不在這里,請(qǐng)?jiān)诹粞詤^(qū)告訴大家。對(duì)于機(jī)器人學(xué),每種編程語(yǔ)言有不同的優(yōu)點(diǎn)。我只是部分地按照重要程度從低到高對(duì)它們進(jìn)行了排序。

10、BASIC/Pascal

BASIC和Pascal是我最早學(xué)過(guò)的兩種編程語(yǔ)言。不過(guò)這并不是我把它們列在這里的原因。對(duì)于幾種工業(yè)機(jī)器人語(yǔ)言,它們是基礎(chǔ),下面說(shuō)明一下。BASIC是為初學(xué)者設(shè)計(jì)的(BASIC是縮寫(xiě),BeginnersAll-PurposeSymbolicInstructionCode),它讓初學(xué)者可以從一種非常簡(jiǎn)單的編程語(yǔ)言開(kāi)始學(xué)習(xí)。Pascal旨在鼓勵(lì)好的編程習(xí)慣,還引入了結(jié)構(gòu),例如指針,這讓Pascal成為從BASIC到更復(fù)雜語(yǔ)言的一塊“敲門(mén)磚”。如今,這兩種語(yǔ)言如果要說(shuō)是好的“日常使用”程序語(yǔ)言,那是有點(diǎn)過(guò)時(shí)了。不過(guò)如果你準(zhǔn)備做很多底層編碼或是想要熟悉一下其它工業(yè)機(jī)器人編程語(yǔ)言,學(xué)習(xí)一下還是有用的。

9、工業(yè)機(jī)器人編程語(yǔ)言

幾乎每一個(gè)機(jī)器人制造商都開(kāi)發(fā)了他們自己專(zhuān)有的機(jī)器人編程語(yǔ)言,這成了工業(yè)機(jī)器人行業(yè)中的一個(gè)問(wèn)題。通過(guò)學(xué)習(xí)Pascal,你會(huì)熟悉它們中的一部分。但是每次開(kāi)始使用新的機(jī)器人時(shí),你還得學(xué)習(xí)一種新的編程語(yǔ)言。

最近幾年,ROS行業(yè)已經(jīng)開(kāi)始提供更標(biāo)準(zhǔn)化的替代語(yǔ)言給程序員。但是如果是一個(gè)技術(shù)人員,你仍然更可能不得不使用制造商的編程語(yǔ)言。

8、LISP

LISP是世界上第二古老的編程語(yǔ)言(FORTRAN更古老,但只早了一年)。相比今天提到很多其它編程語(yǔ)言,它的應(yīng)用并不廣泛。不過(guò)在人工智能編程領(lǐng)域它還是相當(dāng)重要的。ROS的一部分是用LISP寫(xiě)的,雖然你不需要掌握這個(gè)來(lái)使用ROS。

7、硬件描述語(yǔ)言(HDLs)

硬件描述語(yǔ)言一般是用來(lái)描述電氣的編程方式。這些語(yǔ)言對(duì)于一些機(jī)器人專(zhuān)家來(lái)說(shuō)是相當(dāng)熟悉的,因?yàn)樗麄兞?xí)慣FPGAs(FieldProgrammableGateArrays)編程。FPGAs能讓你開(kāi)發(fā)電子硬件而無(wú)需實(shí)際生產(chǎn)出一塊硅芯片,對(duì)于一些開(kāi)發(fā)來(lái)說(shuō),這是更快更簡(jiǎn)易的選擇。如果你沒(méi)有開(kāi)發(fā)電子原型產(chǎn)品,你也許永遠(yuǎn)不會(huì)用HDLs。即便如此,還是有必要了解一下這種編程語(yǔ)言,因?yàn)樗鼈兒推渌幊陶Z(yǔ)言差別很大。一個(gè)重點(diǎn):HDLs所有的操作是并發(fā)的,而不是基于處理器的編程語(yǔ)言的順序操作。

6、Assembly

Assembly讓你能在0和1數(shù)位上進(jìn)行編程?;旧线@是最底層的編程語(yǔ)言。就在最近,最底層的電子需要Assembly進(jìn)行編程。隨著Arduino和其它如微控制器的崛起,現(xiàn)在你可以使用C/C++在底層方便地編程了。這意味著Assembly對(duì)于大多數(shù)機(jī)器人專(zhuān)家來(lái)說(shuō)也許會(huì)變得更不必要了。

5、MATLAB

MATLAB以及和它相關(guān)的開(kāi)源資源,比如Octave,一些機(jī)器人工程師特別喜歡,它被用來(lái)分析數(shù)據(jù)和開(kāi)發(fā)控制系統(tǒng)。還有一個(gè)非常流行的機(jī)器人工具箱——MATLAB。我知道一些僅僅使用MATLAB就能開(kāi)發(fā)出整個(gè)機(jī)器人系統(tǒng)的專(zhuān)家。如果你想要分析數(shù)據(jù),產(chǎn)生高級(jí)圖像或是實(shí)施控制系統(tǒng),你也許會(huì)想學(xué)習(xí)MATLAB。

4、C#/.NET

C#是微軟提供的專(zhuān)用編程語(yǔ)言。我把C#/.NET放在這里,主要是因?yàn)槲④洐C(jī)器人開(kāi)發(fā)員工作包(Microsoft Robotics Developer Studio),這個(gè)包的主要開(kāi)發(fā)語(yǔ)言是C#。如果你準(zhǔn)備用這個(gè)系統(tǒng),那么你很可能必須要用C#。

3、Java

作為一位電子工程師,我總是對(duì)一些計(jì)算機(jī)科學(xué)學(xué)位課程將Java作為第一種編程語(yǔ)言讓學(xué)生們學(xué)習(xí)感到驚訝。Java對(duì)程序員隱藏了底層存儲(chǔ)功能,這讓它比起一些語(yǔ)言(如C語(yǔ)言)來(lái)說(shuō),編寫(xiě)要容易些,但這也意味著你會(huì)更少地理解底層代碼的運(yùn)行邏輯。如果你有計(jì)算機(jī)科學(xué)背景并轉(zhuǎn)到機(jī)器人學(xué)(很多人是這樣的,特別是在研究領(lǐng)域),你也許已經(jīng)學(xué)過(guò)Java。像C#和MATLAB,Java是一種解釋性語(yǔ)言,這意味著它不會(huì)被編譯成機(jī)器代碼。相反,Java虛擬機(jī)在運(yùn)行時(shí)解釋指令。使用Java,理論上讓你可以在不同的機(jī)器上運(yùn)行相同的代碼,這得感謝Java虛擬機(jī)。在實(shí)踐中,這不總是可行的,有時(shí)會(huì)導(dǎo)致代碼運(yùn)行緩慢。但是Java在一部分機(jī)器人學(xué)中非常流行,因此你也許需要它。

2、Python

近年來(lái),學(xué)習(xí)Python的人有一個(gè)巨大的回潮,特別是在機(jī)器人領(lǐng)域。其中一個(gè)原因可能是Python(和C++)是ROS中兩種主要的編程語(yǔ)言。與Java不同,Python的重點(diǎn)是易用性,Python不需要很多時(shí)間來(lái)做常規(guī)的事情,如定義和強(qiáng)制轉(zhuǎn)換變量類(lèi)型。這些在編程里面本是很平常的事。另外,Python還有大量的免費(fèi)庫(kù),這意味著當(dāng)你需要實(shí)現(xiàn)一些基本的功能時(shí)不必“重新發(fā)明輪子”。而且因?yàn)镻ython允許與C/C++代碼進(jìn)行簡(jiǎn)單的綁定。這就意味著代碼繁重部分的性能可以植入這些語(yǔ)言,從而避免性能損失。隨著越來(lái)越多的電子產(chǎn)品開(kāi)始支持“開(kāi)箱即用”P(pán)ython(與RaspberryPi一道),我們可能會(huì)在機(jī)器人中看到更多Python。

注:The Raspberry Pi Foundation:英國(guó)一個(gè)小型的慈善組織,成立的宗旨在于推廣科技,而非以銷(xiāo)售技術(shù)來(lái)營(yíng)利。

1、C/C++

最后我們到了排名第1的機(jī)器人編程語(yǔ)言!許多人認(rèn)為C和C++對(duì)新入行的機(jī)器人學(xué)家是一個(gè)很好的起點(diǎn)。為什么?因?yàn)楹芏嘤布?kù)都使用這兩種語(yǔ)言。這兩種語(yǔ)言允許與低級(jí)別的硬件進(jìn)行交互,允許實(shí)時(shí)性能,是非常成熟的編程語(yǔ)言?,F(xiàn)如今,你可能會(huì)使用C++比C多,因?yàn)榍罢呔哂懈嗟墓δ堋++基本上是C的一種延伸。首先學(xué)一點(diǎn)C會(huì)很有用,特別是當(dāng)你發(fā)現(xiàn)一個(gè)硬件庫(kù)是用C編寫(xiě)的。C/C++并不是像Python或MATLAB那樣簡(jiǎn)單易用。同樣用C來(lái)實(shí)現(xiàn)相同的功能會(huì)需要大量時(shí)間,也將需要更多行代碼。但是,由于機(jī)器人非常依賴(lài)實(shí)時(shí)性能,C和C++是最接近我們機(jī)器人專(zhuān)家“標(biāo)準(zhǔn)語(yǔ)言”的編程語(yǔ)言。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 機(jī)器人
    +關(guān)注

    關(guān)注

    213

    文章

    31348

    瀏覽量

    223441
  • 編程
    +關(guān)注

    關(guān)注

    90

    文章

    3722

    瀏覽量

    97409
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    67

    文章

    8560

    瀏覽量

    137180
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    嵌入式單片機(jī)開(kāi)發(fā)學(xué)習(xí)路徑

    ,但是確是不可缺少的。 3. 實(shí)踐操作 3.1 學(xué)習(xí)并操作開(kāi)發(fā)板 選擇一款流行的單片機(jī)開(kāi)發(fā)板(如Arduino、STM32等),通過(guò)實(shí)際操作熟悉開(kāi)發(fā)環(huán)境、編程流程和調(diào)試方法。 3.2 完成簡(jiǎn)單
    發(fā)表于 02-09 15:42

    自然語(yǔ)言處理NLP的概念和工作原理

    自然語(yǔ)言處理 (NLP) 是人工智能 (AI) 的一個(gè)分支,它會(huì)教計(jì)算機(jī)如何理解口頭和書(shū)面形式的人類(lèi)語(yǔ)言。自然語(yǔ)言處理將計(jì)算語(yǔ)言學(xué)與機(jī)器
    的頭像 發(fā)表于 01-29 14:01 ?548次閱讀
    自然<b class='flag-5'>語(yǔ)言</b>處理NLP的概念和工作原理

    為什么單片機(jī)還在用C語(yǔ)言編程?

    最適合單片機(jī)開(kāi)發(fā)的編程語(yǔ)言實(shí)在太過(guò)晦澀難懂,學(xué)習(xí)起來(lái)非常的不方便,并且每一單片機(jī)的匯編指令有很大區(qū)別,所以想把一個(gè)程序從這種單片機(jī)移植到另一
    發(fā)表于 11-28 07:37

    C語(yǔ)言編程技巧

    設(shè)計(jì),分層開(kāi)發(fā)代碼,便于理解和維護(hù)。 ?8、避免使用GOTO語(yǔ)句?:盡管GOTO語(yǔ)句在某些情況下仍然有用,但現(xiàn)代編程更傾向于使用函數(shù)和循環(huán)控制結(jié)構(gòu),以提高代碼的可讀性和維護(hù)性。 ?9、利用C語(yǔ)言的靈活性
    發(fā)表于 11-27 06:46

    C語(yǔ)言和單片機(jī)C語(yǔ)言有什么差異

    匯編語(yǔ)言機(jī)器才能讀懂,所以每個(gè)平臺(tái)的編譯器編譯成對(duì)應(yīng)平臺(tái)匯編的程序,每個(gè)平臺(tái)的匯編不一樣,當(dāng)然編譯器也不一樣。 DOS上的TC2 TC3 WINDOWS上的VC 8051的C51都有自已的編譯器。具體
    發(fā)表于 11-14 07:55

    一文了解Mojo編程語(yǔ)言

    Mojo 是一由 Modular AI 公司開(kāi)發(fā)的編程語(yǔ)言,旨在將 Python 的易用性與 C 語(yǔ)言的高性能相結(jié)合,特別適合人工智能(AI)、高性能計(jì)算(HPC)和系統(tǒng)級(jí)
    發(fā)表于 11-07 05:59

    如何在機(jī)器視覺(jué)中部署深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)

    人士而言往往難以理解,人們也常常誤以為需要扎實(shí)的編程技能才能真正掌握并合理使用這項(xiàng)技術(shù)。事實(shí)上,這種印象忽視了該技術(shù)為機(jī)器視覺(jué)(乃至生產(chǎn)自動(dòng)化)帶來(lái)的潛力,因?yàn)樯疃?b class='flag-5'>學(xué)習(xí)并非只屬于計(jì)算機(jī)科學(xué)家或程序員。 從頭開(kāi)始:什么
    的頭像 發(fā)表于 09-10 17:38 ?1018次閱讀
    如何在<b class='flag-5'>機(jī)器</b>視覺(jué)中部署深度<b class='flag-5'>學(xué)習(xí)</b>神經(jīng)網(wǎng)絡(luò)

    開(kāi)發(fā)單片機(jī)需要學(xué)習(xí)什么?軟件編程的 4 個(gè)關(guān)鍵層次

    ? ? ? ? ? ? ? ? ? ? 開(kāi)發(fā)單片機(jī)需要學(xué)習(xí)什么?軟件編程的 4 個(gè)關(guān)鍵層次 單片機(jī)的 “智能” 全靠軟件實(shí)現(xiàn),編程技能需從基礎(chǔ)語(yǔ)法逐步進(jìn)階到復(fù)雜邏輯,每個(gè)層次對(duì)應(yīng)不同的開(kāi)發(fā)需求
    的頭像 發(fā)表于 08-25 11:32 ?1020次閱讀

    FPGA在機(jī)器學(xué)習(xí)中的具體應(yīng)用

    隨著機(jī)器學(xué)習(xí)和人工智能技術(shù)的迅猛發(fā)展,傳統(tǒng)的中央處理單元(CPU)和圖形處理單元(GPU)已經(jīng)無(wú)法滿足高效處理大規(guī)模數(shù)據(jù)和復(fù)雜模型的需求。FPGA(現(xiàn)場(chǎng)可編程門(mén)陣列)作為一靈活且高效
    的頭像 發(fā)表于 07-16 15:34 ?3041次閱讀

    梯形圖語(yǔ)言補(bǔ)充編程說(shuō)明書(shū)

    電子發(fā)燒友網(wǎng)站提供《梯形圖語(yǔ)言補(bǔ)充編程說(shuō)明書(shū).pdf》資料免費(fèi)下載
    發(fā)表于 07-09 14:14 ?3次下載

    C語(yǔ)言精彩編程百例-364頁(yè)

    內(nèi)容提要 C是一通用的程序設(shè)計(jì)語(yǔ)言,它包含了緊湊的表達(dá)式、豐富的運(yùn)算符集合、現(xiàn)代控制流以及數(shù)據(jù)結(jié)構(gòu)等四個(gè)部分。C語(yǔ)言功能豐富,衣達(dá)能力強(qiáng),使用起來(lái)靈活方便:它應(yīng)用面廣,可移植性強(qiáng),網(wǎng)時(shí)具有高級(jí)
    發(fā)表于 06-13 17:28

    跟老齊學(xué)Python:從入門(mén)到精通

    礎(chǔ)的學(xué)習(xí)者介紹一門(mén)時(shí)下比較流行、并且用途比較廣泛的編程語(yǔ)言,所以,本書(shū)讀起來(lái)不晦澀,并且在其中穿插了很多貌似與Python 編程無(wú)關(guān),但與
    發(fā)表于 06-03 16:10

    詳解TIA Portal SCL編程語(yǔ)言中的IF語(yǔ)句

    IF 語(yǔ)句是編程中最基本和最重要的控制結(jié)構(gòu)之一,它的主要作用是根據(jù)條件決定程序的執(zhí)行路徑,IF 語(yǔ)句是編程中實(shí)現(xiàn)邏輯判斷和決策的基礎(chǔ)。
    的頭像 發(fā)表于 05-24 15:01 ?2088次閱讀
    詳解TIA Portal SCL<b class='flag-5'>編程</b><b class='flag-5'>語(yǔ)言</b>中的IF語(yǔ)句

    單片機(jī)c語(yǔ)言編程實(shí)例大全

    單片機(jī)c語(yǔ)言編程實(shí)例大全_18
    發(fā)表于 04-30 16:11 ?7次下載

    深入理解C語(yǔ)言:C語(yǔ)言循環(huán)控制

    在C語(yǔ)言編程中,循環(huán)結(jié)構(gòu)是至關(guān)重要的,它可以讓程序重復(fù)執(zhí)行特定的代碼塊,從而提高編程效率。然而,為了避免程序進(jìn)入無(wú)限循環(huán),C語(yǔ)言提供了多種循環(huán)控制語(yǔ)句,如break、continue和
    的頭像 發(fā)表于 04-29 18:49 ?2180次閱讀
    深入理解C<b class='flag-5'>語(yǔ)言</b>:C<b class='flag-5'>語(yǔ)言</b>循環(huán)控制
    前郭尔| 浦城县| 霍林郭勒市| 平昌县| 巫山县| 仙游县| 富川| 封开县| 唐海县| 武鸣县| 鄂托克前旗| 长子县| 天峨县| 包头市| 桑植县| 温泉县| 泗阳县| 合山市| 汉中市| 金华市| 万盛区| 环江| 阜宁县| 儋州市| 永寿县| 遵化市| 宿松县| 宁陵县| 三穗县| 称多县| 时尚| 太谷县| 东台市| 马鞍山市| 阳新县| 常宁市| 什邡市| 红河县| 汉中市| 腾冲县| 永善县|