Bästa programmeringsspråk för Linux Devs

be någon kunnig utvecklare att namnge det första programmeringsspråket de skulle associera med Linux, och han eller hon skulle sannolikt svara C, med tanke på Unix och C: S nära anpassade historia.

men under de 24 åren sedan det först uppträdde har Linux förmodligen varit hem för alla programmeringsspråk som är kända för mänskligheten: inte bara uppenbara språk som C, C++, Python och Java utan även C# (Mono), Fortran, Pascal, COBOL och Lisp och många fler.

kolla in de senaste Linux-jobben.

i en undersökning i December 2014 placerade läsare av Linux Journal Python högst upp på sin lista över bästa programmeringsspråk (30,2 procent), följt av C++ (17,8 procent), C (16,7 procent), Perl (7,1 procent) och Java (6,9 procent). Dessa rankningar har varit i stort sett oförändrade under de senaste åren—otroligt, med tanke på att Linux-världen är en ganska konservativ plats. (Ett språk som snabbt flyttar upp Linux Journals lista är Google Go: det hoppade från 1.8 procent i 2013 till 2.4 procent förra året.)

till skillnad från Windows med sin inbyggda GUI, använder Linux vilken GUI-verktygslåda du använder (t.ex. Ot, GTK+, wxWidgets) om du inte begränsar dig till terminalprogrammering. Naturligtvis kräver inte all Linux-utveckling ett GUI: Tänk på servrar eller demoner, som är Linuxs motsvarighet till Windows-tjänster. Så låt oss titta närmare på vart och ett av Linux Journals fem bästa språk för att bedöma styrkor och svagheter hos var och en för Linux-utveckling.

Python och C++

Python verkar bara bli mer och mer populärt, och är utan tvekan det bästa allmänna språket för närvarande. Det är lätt att lära sig, hjälpt av att ha en tolk (pypy) och kompilatorer som cpython, Jython (genererar Java-kod) och andra som tar Python och producerar il-kod (på.NET), eller C, C++ eller JavaScript.

utveckla AAA-spel och High Performance Computing (HPC) är där Python inte har gjort så bra. C++ dominerar för närvarande dessa utrymmen, med Python som har särskilt liten inverkan på mobilutveckling än i öppen källkod. Jag är inte säker på att vi någonsin kommer att se AAA-spelutveckling byta till Python men det gör verkligen inbrott i HPC-arenan. (Jag gillar C++ men att uppnå expertprogrammeringskunskap i det verkar kräva att vara en heltidsutvecklare; jämför det med Python, som kan hämtas av små barn.)

C

C är så nära metallprogrammeringen som du någonsin kommer att få om du inte kodar i assembler; Linus Torvalds listar denna närhet som en anledning till att han gillar det. Det är enkelt att lära sig, och när du behärskar pekare kan du göra nästan vad som helst. Du måste dock skriva mycket kod för att göra saker som kommer som standard på andra språk; stränghantering i synnerhet är tråkig och felbenägen. För kodning på låg nivå är C svår att slå och det finns massor av programvara skrivna i den (förmodligen mycket mer på Linux, som till stor del skrivs i C).

Perl

under många år Perl—beskrivs av många utvecklare som ”Swiss Army chainsaw” av skriptspråk—var språket för sofistikerade textbehandlingsskript, och kom installeras på Linux/Unix som system som standard. Det har funnits sedan 1987, med en massiv installationsbas som matchar: enligt den ständigt pålitliga Wikipedia har det omfattande Perl Archive Network (CPAN) över 140 776 moduler, av mer än 11 804 författare, och speglas över hela världen på mer än 250 platser.

trots (eller kanske på grund av) Perls ålder har språk som Python, PHP och Ruby gradvis kommit att ersätta det. Men förvänta dig inte att det försvinner när som helst snart.

Java

Linux har alltid verkat som det naturliga hemmet för Java, åtminstone när det gäller serverns teknik. Mönstret för Windows-applikationer på klientsidan som pratar med Linux Java-servrar är vanligt och mycket populärt i företag. Java JSP Web server-tekniken har inte kommit nära PHP eller ASP.NET när det gäller adoptionshastigheter, men du kan hitta (ofta dyra och resurskrävande) JSP webbhotell. Java driver många internetspelservrar, framför allt Minecraft.

två andra språk som fungerar bra på Linux är JavaScript och Go. Efter tio år av att vara lambasted för dålig prestanda blev JavaScript allvarligt coolt när populära webbplatser som Google Maps började utnyttja det. JavaScript fortsatte att förbättras; tack vare bättre motorer kan det nu köra grafiskt intensiva Webbläsarspel.

om det inte var tillräckligt, JavaScript har dykt upp som en allvarlig serversidan språk, med Node.js är en av de mest kända ramarna.

Google Go

vid mindre än fem år har Google Go fått sin andel av beundrare; Google, Dropbox och andra företag använder det för sina respektive interna system. Med en lättlärd C – liknande syntax sammanställer och kör den Program mycket snabbt och gör det mycket lättare att skriva samtidig kod än en flertrådad strategi. Den levereras med ett omfattande standardbibliotek som kompletteras av många tredjepartsbibliotek. Även om det är ett allmänt programmeringsspråk är det starkt som ett systemspråk och användbart för att implementera webbservrar.

slutsats

alla programmeringsspråk är bara verktyg för att lösa programmeringsproblem, och valet av vilka man ska använda bestäms ofta inte av språkens styrkor utan helt orelaterade faktorer som tillgänglig hårdvara, internpolitik, tidigare erfarenheter och liknande. Linux-hårdvara varierar från enkla, billiga system till miljoner dollar ”Big Iron” mainframes… men oavsett kostnaden kommer det att köra något av dessa språk.

Ladda upp din Resumearbetsgivare vill kandidater som du. Ladda upp ditt CV. Visa dem att du är fantastisk.

bild: Mclek/. com