Najlepsze języki programowania dla programistów Linuksa

poproś każdego doświadczonego programistę o wskazanie pierwszego języka programowania, który będzie kojarzył się z Linuksem, a on lub ona prawdopodobnie odpowie na C, biorąc pod uwagę ściśle powiązaną historię Uniksa i C.

ale w ciągu 24 lat od jego pojawienia się, Linux prawdopodobnie był domem dla każdego języka programowania znanego ludzkości: nie tylko oczywistych języków, takich jak C, C++, Python i Java, ale także C# (Mono), Fortran, Pascal, COBOL i Lisp i wiele innych.

Sprawdź najnowsze zadania związane z Linuksem.

w ankiecie przeprowadzonej w grudniu 2014 r.czytelnicy Linux Journal umieścili Pythona na szczycie listy najlepszych języków programowania (30,2 proc.), a następnie C++ (17,8 proc.), C (16,7 proc.), Perl (7,1 proc.) i Java (6,9 proc.). Rankingi te pozostały w dużej mierze niezmienione w ciągu ostatnich kilku lat—zaskakujące, biorąc pod uwagę, że świat Linuksa jest raczej konserwatywnym miejscem. (Jednym z języków szybko poruszających się w górę listy Linux Journal jest Google Go: wzrósł on z 1,8 proc. w 2013 r.do 2,4 proc. w ubiegłym roku.)

w przeciwieństwie do systemu Windows z wbudowanym GUI, Linux wykorzystuje dowolny zestaw narzędzi GUI, którego używasz (np. Ot, GTK+, wxWidgets), chyba że ograniczysz się do programowania terminali. Oczywiście, nie każdy rozwój Linuksa wymaga GUI: pomyśl o serwerach lub demonach, które są odpowiednikiem Linuksa dla usług Windows. Przyjrzyjmy się więc bliżej każdemu z pięciu najważniejszych języków Linux Journal, aby ocenić mocne i słabe strony każdego z nich dla rozwoju Linuksa.

Python i C++

Python wydaje się coraz bardziej popularny i jest prawdopodobnie najlepszym językiem ogólnego przeznaczenia obecnie. Jest łatwy do nauczenia się, dzięki interpreterowi (pypy) i kompilatorom takim jak cpython, Jython (generuje kod Javy) i innym, które biorą Python i produkują kod il (na.net) lub C, C++ lub JavaScript.

rozwój gier AAA i High Performance Computing (HPC) to miejsce, w którym Python nie radzi sobie tak dobrze. Obecnie C++ dominuje w tych przestrzeniach, a Python ma niewielki wpływ na rozwój urządzeń mobilnych poza open-source. Nie jestem pewien, czy kiedykolwiek zobaczymy rozwój gier AAA na Python, ale na pewno robi postępy w HPC arena. (Lubię C++ , ale zdobycie specjalistycznej wiedzy programistycznej w nim wydaje się wymagać bycia programistą w pełnym wymiarze czasu; porównaj to z Pythonem, który może być podchwycony przez małe dzieci.)

C

C jest tak blisko programowania metalu, jak nigdy nie dostaniesz, chyba że kodujesz w asemblerze; Linus Torvalds wymienia tę bliskość jako powód, dla którego go lubi. Łatwo się tego nauczyć, a gdy opanujesz wskazówki, możesz zrobić prawie wszystko. Musisz jednak napisać dużo kodu, aby robić rzeczy, które są standardowe w innych językach; obsługa łańcuchów znaków w szczególności jest żmudna i podatna na błędy. Jeśli chodzi o kodowanie niskopoziomowe, C jest trudne do pokonania i jest w nim napisane wiele programów (prawdopodobnie dużo bardziej na Linuksie, który jest w dużej mierze napisany w C).

Perl

przez wiele lat Perl—opisany przez wielu programistów jako „Swiss Army chainsaw” języków skryptowych—był językiem dla wyrafinowanych skryptów przetwarzania tekstu i został domyślnie zainstalowany na systemach Linux/Unix. Istnieje od 1987 roku, z ogromną bazą instalacji do dopasowania: zgodnie z niezawodną Wikipedią, kompleksowa sieć archiwów Perla (CPAN) zawiera ponad 140 776 modułów, autorstwa ponad 11 804 autorów i jest lustrzana na całym świecie w ponad 250 lokalizacjach.

pomimo (lub być może z powodu) wieku Perla, języki takie jak Python, PHP i Ruby stopniowo zaczęły go zastępować. Ale nie oczekuj, że to zniknie w najbliższym czasie.

Java

Linux zawsze wydawał się naturalnym domem dla Javy, przynajmniej jeśli chodzi o technologię po stronie serwera. Wzorzec aplikacji po stronie klienta Windows mówiący do serwerów Java Linux jest powszechny i bardzo popularny w przedsiębiorstwach. Technologia Java JSP Web server nie zbliżyła się do PHP czy ASP.NET jeśli chodzi o wskaźniki przyjęcia, ale można znaleźć (często kosztowny i zasobochłonny) hosting JSP. Java zasila wiele internetowych serwerów gier, przede wszystkim Minecraft.

dwa inne języki, które działają dobrze na Linuksie to JavaScript i Go. Po dziesięciu latach bycia potępionym za słabą wydajność, JavaScript stał się naprawdę fajny, gdy popularne strony internetowe, takie jak Mapy Google, zaczęły go wykorzystywać. JavaScript nadal się poprawiał; dzięki lepszym silnikom jest teraz w stanie uruchamiać graficznie intensywne gry przeglądarkowe.

gdyby tego było mało, JavaScript stał się poważnym językiem po stronie serwera, z węzłem.JS jest jednym z najbardziej znanych frameworków.

Google Go

mając mniej niż pięć lat, Google go zyskał swoich wielbicieli; Google, Dropbox i inne firmy używają go do swoich systemów wewnętrznych. Dzięki łatwej do nauczenia się składni C-like, kompiluje i wykonuje programy bardzo szybko i sprawia, że pisanie współbieżnego kodu jest o wiele łatwiejsze niż podejście wielowątkowe. Jest wyposażony w obszerną bibliotekę standardową, która jest uzupełniona przez wiele bibliotek innych firm. Chociaż jest to język programowania ogólnego przeznaczenia, jest silny jako język systemowy i przydatny do wdrażania serwerów internetowych.

podsumowanie

wszystkie języki programowania są tylko narzędziami pomagającymi rozwiązywać problemy programistyczne, a wybór, którego użyć, często zależy nie od mocnych stron języków, ale od zupełnie niepowiązanych czynników, takich jak dostępny sprzęt, polityka wewnętrzna, wcześniejsze doświadczenia i tym podobne. Sprzęt linuksowy różni się od prostych, tanich systemów do milionowych „żelaznych” mainframe ’ ów… ale niezależnie od kosztów, będzie działał w każdym z tych języków.

Prześlij swoje Cvpracownicy chcą kandydatów takich jak ty. Prześlij swoje CV. Pokaż im, że jesteś niesamowity.

Image: Mclek/. com