Met 'n visie vir 'n beter toekoms, het Tesla nie net die waardevolste motormaatskappy geword wat nog bestaan het nie, maar het homself ook as een van die toptegnologiemaatskappye ter wêreld oortref. Van outonome voertuie tot AI Robots, Tesla het dit alles gedoen. Maar watter programmeertale het die organisasie gehelp om sulke futuristiese produkte te skep? Kom ons vind uit.
Programmeertale wat by Tesla gebruik word
1. C & C++
In onlangse jare was daar 'n groot aantal nuwe programmeertale soos Elixir, Pony, Julia, ens. wat gebou is om take makliker te maak met so min kode as moontlik. Tesla maak egter steeds baie staat op een van die mees basiese tale: C & C++.
"Die meeste van die sagteware in Tesla motors is C of C++,” het Mehdi Amini, Ingenieursbestuurder by Tesla, gesê. Een van die grootste sterkpunte onder hierdie ou tale en waarskynlik die rede vir die voortbestaan daarvan deur tyd, is dat hierdie tale op byna enige soort stelsel kan werk. Toeskryf aan sy nabyheid aan die OS, hierdie lae-vlak programmeringstale word in die meeste IoT en ingebedde stelsels gebruik en help ingenieurs om sagteware te optimaliseer.
“Geen programmeertaal het naby C of C++ gekom wat doeltreffendheid betref nie. Die meeste moderne programmeertale met vullisverwyderaars is nie-deterministies wanneer dit kom by geheuebestuur, dit is eenvoudig nie geskik vir kritieke ingebedde stelsels soos dié in Tesla-motors nie,” het Mehdi gesê. Nog 'n groot tegnologiemaatskappy wat C & C++ baie gebruik, is Nvidia.
2. Python
Naas C & C++ maak Tesla ook sterk staat op moontlik die gewildste en mees gebruikte taal; Python. In 'n reeks tweets verduidelik Elon hoe hulle 'n kombinasie van C/C++ en Python gebruik om hul algoritmes te bou:
Ons NN is aanvanklik in Python vir vinnige iterasie, dan omgeskakel na C++/C/rou-metaalbestuurderkode vir spoed (belangrik!). Ook, tonne C++/C-ingenieurs benodig vir voertuigbeheer en die hele res van die motor. Opvoedkundige agtergrond is irrelevant, maar almal moet hardcore koderingstoets slaag.
- Elon Musk (@ elonmusk) 3 Februarie 2020
Hierdie tweet het baie ontwikkelaars aangespoor om die tekortkominge van die omskakeling van Python na C++/C uit te lig, maar kom ons hou in gedagte dat die tweet net 'n verkorte verduideliking is van 'n weldeurdagte proses, en nie reg laat geskied aan die werklike tegnieke wat gebruik word. Soumith Chintala, mede-skepper van PyTorch, verduidelik dat hulle heel waarskynlik outomatiese omskakeling van Python na C & C++ volg. Elon het ook gewys op hul afhanklikheid van PyTorch;
PyTorch is die eksterne gereedskapstel/biblioteek wat die meeste gebruik word
- Elon Musk (@ elonmusk) 3 Februarie 2020
PyTorch is 'n biblioteek wat gebou is vir masjienleer, rekenaarvisie en natuurlike taalverwerking. Dit is heeltemal oopbron en word gebou deur Facebook se KI-navorsingslaboratorium.
3. Java & Javascript
Gebaseer op 'n opname wat deur Burning Glass gedoen is, is Java en Javascript die volgende in terme van gebruik en belangrikheid vir tale by Tesla. Albei hierdie tale word baie gebruik om stelsels en toepassings vir hul motors te bou. C++, Python en Java is die tale wat in byna alle posposte by Tesla vereis word. Daarbenewens vereis Tesla 'n sterk vaardigheid in Javascript vir rolle wat front-end-programmering behels. Kom meer te wete oor Jobs by Tesla hier afgelaai word.
4. Ander tale
Tesla vereis ook uitnemendheid in ander programmeertale gebaseer op die spesifieke funksies wat elkeen van hulle verrig. reageer en Tikskrif is Javascript-gebaseerde tale wat op groot skaal deur Tesla gebruik word vir front-end ontwikkeling. Verder, Ruby, CSS en PHP word vereis in rolle wat webontwikkeling behels. Laastens word SQL op groot skaal vir databasisbestuur gebruik. Al sulke tale kombineer saam om die produkte te bou wat ons in verwondering laat.
Gevolgtrekking
Ten spyte daarvan dat dit een van die belangrikste tegnologiemaatskappye ter wêreld is, maak Tesla dus hoofsaaklik staat op ouskool-programmeertale. Python, C & C++ is 'n moet as jy vir maatskappye soos Tesla, SpaceX, Nvidia, Intel, ens wil werk. Tesla het egter meer as 300 ingenieurs aan die werk met uiteenlopende stelle vaardighede, wat almal saamkom om komplekse te skep netwerke om hul produkte te bestuur. Jou keuse van watter programmeertaal om te leer, moet heeltemal afhang van die soort funksie wat jy wil uitvoer. Kies sorgvuldig!
Lewer Kommentaar