10 najpopularniejszych języków programowania do nauki w 2020 roku

Kiedy Guido van Rossum rozwijał Pythona w latach 90.jako swój projekt poboczny, nikt nie przypuszczał, że będzie on kiedyś najpopularniejszym językiem programowania. Biorąc pod uwagę wszystkie dobrze znane rankingi i trendy w branży, stawiam Pythona jako język programowania numer jeden ogólnie.

Python nie odnotował gwałtownego wzrostu popularności jak Java czy C/C++., Python nie jest również destrukcyjnym językiem programowania. Ale od samego początku Python skupiał się na doświadczeniach programistów i próbował obniżyć barierę dla programowania, aby dzieci w wieku szkolnym mogły również pisać kod produkcyjny.

w 2008 roku Python przeszedł gruntowną modernizację i ulepszenia, kosztem wprowadzenia znaczących zmian wprowadzając Pythona 3.

dziś Python jest wszechobecny i używany w wielu obszarach rozwoju oprogramowania, bez oznak spowolnienia.

3 Kluczowe cechy:

  • USP Pythona to jego konstrukcja językowa., Jest bardzo wydajny, elegancki, prosty, a jednocześnie potężny.
  • Python ma pierwszorzędną integrację z C / C++ i może bezproblemowo odciążyć ciężkie zadania CPU do C / C++.
  • Python ma bardzo aktywną społeczność i wsparcie.

popularność:

w ciągu ostatnich kilku lat, Python odnotował ogromny wzrost popytu bez oznak spowolnienia.,div>

Source: Octoverse

StackOverflow developer survey has listed Python as the second most loved programming language:

Source: StackOverflow Developer Survey, 2019

Most of the older and mainstream programming languages have stable or downward traction., Co więcej, Python jest tutaj wyjątkiem i ma coraz większą tendencję wzrostową w ciągu ostatnich pięciu lat, jak wynika z Google trends:

źródło: Google Trends

rynek pracy:

według indeed, Python jest najbardziej wymagającym językiem programowania na rynku pracy w USA, z najwyższą liczbą ogłoszeń 74 K w styczniu 2020 roku. Ponadto Python zajął trzecie miejsce z roczną pensją w wysokości 120 tysięcy dolarów.,div>

źródło: badanie programistów StackOverflow, 2019

główne przypadki użycia:

  • Data Science
  • Data Analytics
  • sztuczna inteligencja, głębokie uczenie
  • aplikacja dla przedsiębiorstw
  • tworzenie stron internetowych

JavaScript

podczas pierwszej wojny przeglądarkowej Netscape powierzył Brendanowi Eichowi opracowanie nowego języka programowania dla swojej przeglądarki., Brendan Eich opracował pierwszy prototyp w zaledwie dziesięć dni, a reszta to historia. Programiści często wyśmiewali JavaScript na początku jego istnienia ze względu na jego słabą konstrukcję językową i brak funkcji.

na przestrzeni lat JavaScript ewoluował w wielowymiarowy, dynamiczny język programowania wysokiego poziomu. Pierwszy znaczący przełom w JavaScript nastąpił w 2009 roku, kiedy Ryan Dahl wydał cross-platform JavaScript runtime Node.js i umożliwił uruchamianie JavaScript po stronie serwera.,

inny ogromny przełom w JavaScript przyszedł około 2010 roku, kiedy Google wydał JavaScript oparte web development framework AngularJS.

dziś JavaScript jest jednym z najczęściej używanych języków programowania na świecie i działa praktycznie wszędzie: przeglądarki, Serwery, Urządzenia Mobilne, Chmura, kontenery, mikrokontrolery.

3 najważniejsze cechy:

  • JavaScript jest niekwestionowanym królem w programowaniu przeglądarek.
  • dzięki Node.JS, JavaScript oferuje programowanie sterowane zdarzeniami, które jest szczególnie odpowiednie dla ciężkich zadań we/wy.,
  • JavaScript przeszedł masową modernizację i remonty w ciągu ostatnich kilku lat, szczególnie w 2015, 2016 i Później.

popularność:

JavaScript jest jednym z najwyżej ocenianych języków programowania ze względu na jego wszechobecne użycie na wszystkich platformach i masową adopcję.,

źródło: badanie programistów StackOverflow, 2019

trendowanie JavaScript jest stosunkowo stabilne, co pokazuje Google Trends:

źródło: Google Trends

rynek pracy:

na rynku pracy w USA, indeed uznał JavaScript za trzeci najbardziej wymagający język programowania z 57 K ogłoszeń pracy w styczniu 2020 roku.,v id=”72de1b20b6″>

Source: StackOverflow Developer Survey, 2019

Main Use Cases:

  • Web Development
  • Backend Development
  • Mobile App Development
  • Serverless Computing
  • Browser Game Development

Java

Java is one of the most disruptive programming languages to date., W latach 90. aplikacje biznesowe były tworzone głównie przy użyciu C++, który był dość skomplikowany i zależny od platformy. James Gosling i jego zespół w Sun obniżyli barierę w rozwoju aplikacji biznesowych, oferując znacznie prostszy, zorientowany obiektowo, interpretowany język programowania, który obsługuje programowanie wielowątkowe.

Java osiągnęła niezależność od platformy, rozwijając Java Virtual Machine (JVM), która wyodrębniła niskopoziomowy System Operacyjny od programistów i dała pierwszy język programowania „Write Once, Run anywhere”., Ponadto JVM oferowało generowanie garbage collection, które zarządza cyklem życia obiektu.

W ostatnich latach Java straciła część swoich rynków na rzecz bardzo przyjaznych dla programistów nowoczesnych języków i rozwoju innych języków, zwłaszcza Pythona, JavaScript. Ponadto JVM nie jest całkiem przyjazny dla chmury ze względu na jego nieporęczny rozmiar. Firma Oracle wprowadziła ostatnio wysokie opłaty licencyjne dla JDK, które jeszcze bardziej osłabią popularność Javy.

na szczęście Java pracuje nad swoimi wadami i sprawia, że Java nadaje się do chmury dzięki inicjatywie GraalVM., Ponadto w OpenJDK istnieje darmowa alternatywa dla własnościowego Oracle JDK.

Java jest wciąż numerem jeden w biznesie.

3 Kluczowe cechy:

  • Java oferuje potężny, bogaty w funkcje, wielowymiarowy, interpretowany język programowania o umiarkowanej krzywej uczenia się i wysokiej wydajności programistów.
  • Java jest ściśle wstecznie kompatybilna, co jest kluczowym wymogiem dla aplikacji biznesowych.
  • Java runtime JVM to arcydzieło inżynierii oprogramowania i jedna z najlepszych maszyn wirtualnych w branży.,

popularność:

Po pięciu latach od wydania, Java stała się trzecim najpopularniejszym językiem programowania i przez następne dwie dekady zawsze pozostawała w pierwszej trójce list.,

źródło: badanie programistów StackOverflow, 2019 r.

zgodnie z Google trends, Java stale traci swoją trakcję w ciągu ostatnich pięciu lat:

źródło: Google Trends

rynek pracy:

według firmy indeed, Java jest drugim najbardziej wymagającym językiem programowania w USA, z 69 tysiącami stanowisk pracy w styczniu 2020 roku.,v>

Source: StackOverflow Developer Survey, 2019

Main Use Cases:

  • Enterprise Application Development
  • Android App Development
  • Big Data
  • Web Development

C#

In 2000, Tech giant Microsoft decided to create their Object Oriented C like programming language C# as part of their .,NET initiative, które będą zarządzane (uruchamiane na maszynie wirtualnej takiej jak Java). Doświadczony projektant języka Anders Hejlsberg zaprojektował C# jako część platformy Microsoft ' s Common Language Initiative (Cli), gdzie wiele innych (głównie języków Microsoftu) skompilowało się do formatu pośredniego, który działa w środowisku uruchomieniowym o nazwie Common Language Runtime (CLR).

na początku C# był krytykowany jako imitacja Javy. Później jednak oba języki się rozeszły. Ponadto licencjonowanie przez Microsoft C # compiler / runtime nie zawsze jest jasne., Chociaż Microsoft obecnie nie egzekwuje swoich patentów w ramach projektu Microsoft Open Specification, może się to zmienić.

obecnie C# jest wielowymiarowym językiem programowania szeroko stosowanym na platformie Windows i IOS/Android (dzięki Xamarin) oraz platformie Linux.

3 najważniejsze cechy:

  • Anders Hejlsberg wykonał świetną robotę, wydobywając C# z cienia Javy i nadając jej własną tożsamość.
  • wspierany przez Microsoft i będąc w branży od 20 lat, C# ma duże ekosystemy bibliotek i frameworków.,
  • podobnie jak Java, C# jest również niezależny od platformy (dzięki CLR) i działa na systemach Windows, Linux, urządzeniach mobilnych.,c130e”>
    źródło: badanie programistów StackOverflow, 2019

    jak wynika z Google trends, C# nie jest zbyt hiper w ciągu ostatnich kilku lat, jak pokazano poniżej:

    źródło: Google Trends

    rynek pracy:

    indeed opublikował 32 K dla programistów C# w USA, czyniąc c# piątym najbardziej wymagającym językiem programowania na tej liście.,div>

    Source: StackOverflow Developer Survey, 2019

    Main Use Cases:

    • Server-Side programming
    • App development
    • Web Development
    • Game Development
    • Software for Windows Platform

    C

    During the 1960s and 1970s, every cycle of the CPU and every byte of memory was expensive., Dennis Ritchie, inżynier Bell lab, opracował proceduralny, ogólnego przeznaczenia język programowania skompilowany bezpośrednio do języka maszynowego w latach 1969-1973. Programowanie w języku C oferuje dostęp do pamięci na niskim poziomie i daje pełną kontrolę nad podstawowym sprzętem.

    z biegiem lat C stał się jednym z najczęściej używanych języków programowania. Poza tym C jest prawdopodobnie najbardziej destrukcyjnym i wpływowym językiem programowania w historii i ma wpływ na prawie wszystkie inne języki na tej liście.

    chociaż C jest często krytykowany za przypadkową złożoność, niebezpieczne programowanie i brak funkcji., Ponadto C jest zależne od platformy, tzn. kod C nie jest przenośny. Ale jeśli chcesz jak najlepiej wykorzystać swój sprzęt, to C / C++ lub Rust jest twoją jedyną opcją.

    3 najważniejsze cechy:

    • ponieważ C dawał dostęp do pamięci niskiego poziomu i kompilował do instrukcji maszynowych, jest jednym z najszybszych i najpotężniejszych języków programowania.
    • C daje pełną kontrolę nad podstawowym sprzętem.
    • C jest jednym z „języków programowania”, tzn. Kompilatory wielu innych języków programowania, takich jak Ruby, PHP, Python zostały napisane w C.,

    popularność:

    C jest najstarszym językiem programowania na tej liście i dominuje w branży od 47 lat.,div>

    Source: Octoverse

    StackOverflow developer survey has also ranked C in 12th (8th considering programming language) place:

    Source: StackOverflow Developer Survey, 2019

    Google trending also shows a relatively stable interest in C over the last five years.,

    Source: Google Trends

    Job Market:

    According to Indeed, there are 28K job postings for C developers in the USA, making C the 6th most demanding programming language., Jeśli chodzi o wynagrodzenie, C zajmuje 6. miejsce w rankingu Java ($104 K):

    Source: indeed

    badanie programistów stackoverflow wykazało, że programiści C mogą zarabiać średnio, ale potrzebują dłuższego czasu, aby to osiągnąć w porównaniu z np.,iv id=”3ff7ba4e03″>

    źródło: badanie programistów StackOverflow, 2019

    główne przypadki użycia:

    • programowanie systemu
    • Tworzenie gier
    • IoT i Real-systemy czasu
    • uczenie maszynowe, Uczenie Głębokie
    • systemy wbudowane

    C++

    Bjarne Stroustrup współpracował z Dennisem Ritchie (twórcą c) w Bell Lab w latach 70., Po raz pierwszy stworzył C++ jako rozszerzenie C, dodając funkcje zorientowane obiektowo. Z czasem C++ przekształcił się w wielodyscyplinarny, uniwersalny język programowania. Podobnie jak C, C++ oferuje również dostęp do pamięci niskiego poziomu i jest bezpośrednio kompilowany do instrukcji maszynowych.

    C++ oferuje również pełną kontrolę nad sprzętem, ale kosztem przypadkowej złożoności i nie zapewnia obsługi na poziomie języka dla bezpieczeństwa pamięci i bezpieczeństwa współbieżności. Ponadto C++ oferuje zbyt wiele funkcji i jest jednym z najbardziej skomplikowanych języków programowania do opanowania.,

    ze względu na wszystkie te czynniki i zależność od platformy, C++ stracił swoją popularność na rzecz Javy w szczególności w rozwoju oprogramowania dla przedsiębiorstw i domenie Big Data we wczesnych latach 2000.

    C++ zyskuje popularność wraz ze wzrostem GPU, konteneryzacji, przetwarzania w chmurze, ponieważ może szybko dostosować się do korzystania ze sprzętu lub zmian ekosystemu.

    dziś C++ jest jednym z najważniejszych i najczęściej używanych języków programowania w branży.

    3 najważniejsze cechy:

    • podobnie jak Java, C++ stale się modernizuje i dostosowuje do zmian w sprzęcie lub ekosystemie.,
    • C++ daje również pełną kontrolę nad podstawowym sprzętem i może działać na każdej platformie i korzystać z każdego rodzaju sprzętu, GPU, TPU, kontenera, chmury, urządzeń mobilnych lub mikrokontrolera.
    • C++ jest niesamowicie szybki i intensywnie wykorzystywany w systemach o krytycznym znaczeniu i ograniczonych zasobami.,v>
      źródło: badanie programistów StackOverflow, 2019

      chociaż C++ stoi w obliczu ogromnej konkurencji ze strony nowoczesnych języków programowania, takich jak Rust lub Go, nadal generuje stabilne zainteresowanie w ostatnich pięciu lata:

      rynek pracy:

      indeed uznał c++ za 4.najbardziej wymagający język programowania z 41-kilometrowym ogłoszeniem pracy.,

      źródło: badanie programistów StackOverflow, 2019

      główne przypadki użycia:

      • programowanie systemu
      • Tworzenie gier
      • IoT i systemy czasu rzeczywistego
      • Uczenie maszynowe, głębokie uczenie
      • Systemy wbudowane, systemy rozproszone

      PHP

      podobnie jak Python, PHP to kolejny język programowania opracowany przez jednego dewelopera jako projekt poboczny w latach 90., Inżynier oprogramowania Rasmus Lerdorf początkowo stworzył PHP jako zbiór wspólnych binariów interfejsu bramy napisanych w języku C do tworzenia dynamicznych aplikacji internetowych. Później dodano więcej funkcjonalności do produktu PHP i organicznie ewoluował w pełni rozwinięty język programowania.

      obecnie PHP jest ogólnym, dynamicznym językiem programowania używanym głównie do tworzenia aplikacji internetowych po stronie serwera.

      PHP traci swoją atrakcyjność i popularność wraz z rozwojem aplikacji internetowych opartych na skrypcie JavaScript, a PHP ma już za sobą swoją świetność., Wbrew powszechnemu przekonaniu PHP nie umrze szybko, choć jego popularność stopniowo maleje.

      3 Kluczowe cechy:

      • PHP jest jednym z wysoce wydajnych języków programowania programistycznego po stronie serwera.
      • ponieważ PHP jest używany w tworzeniu stron internetowych przez ostatnie 35 lat, istnieje wiele udanych i stabilnych frameworków PHP na rynku.
      • wiele gigantycznych firm korzysta z PHP (Facebook, WordPress), co prowadzi do doskonałej obsługi narzędzi dla niego.,

      popularność:

      strona rankingu języków programowania TIOBE uznała PHP za 8.najpopularniejszy język programowania w styczniu 2020 roku.,: StackOverflow Developer Survey, 2019

      chociaż PHP jest nadal jednym z najczęściej używanych języków programowania, jego trendy powoli spadają, jak wynika z Google Trends:

      Źródło: Google Trends

      rynek pracy:

      strona wyszukiwania ofert pracy rzeczywiście uplasowała PHP na 7.najbardziej wymagający język programowania na rynku pracy w USA z 18 stanowiskami k w styczniu 2020 roku.,v id=”b2f1b32200″>

      Source: Indeed

      StackOverflow developer survey shows PHP as the lowest-paid programming language in 2019:

      Source: StackOverflow Developer Survey, 2019

      Main Use Cases:

      • Server-side Web Application Development
      • Developing CMS systems
      • Standalone Web Application Development.,

      Swift

      Swift jest jednym z dwóch języków programowania, które również pojawiły się na mojej liście: „top 7 nowoczesnych języków programowania do nauki teraz”. Grupa inżynierów Apple pod kierownictwem Chrisa Lattnera opracowała nowy język programowania Swift, który ma zastąpić Objective – C na platformach Mac i iOS.

      jest to wieloparadygmat, ogólnego przeznaczenia, skompilowany język programowania, który oferuje również wysoką wydajność programistów., Swift obsługuje LLVM (developer by Chris Lattner) kompilator toolchain jak C/C++, Rust.

      Swift ma doskonałą interoperacyjność z bazą kodową Objective-C i już stał się podstawowym językiem programowania w tworzeniu aplikacji na iOS. Jako skompilowany i potężny język, Swift zyskuje coraz większą popularność również w innych domenach.

      3 Główne cechy:

      • jednym z głównych USP Swift jest jego konstrukcja językowa., Oferuje bardziej produktywną i lepszą alternatywę dla Objective – C w ekosystemie Apple z prostszą, zwięzłą i czystą składnią oraz ergonomicznymi funkcjami programisty.
      • Swift oferuje również funkcje współczesnych języków programowania: null safety. Ponadto dostarcza syntaktycznego cukru, aby uniknąć ” piramidy Zagłady.”
      • jako język skompilowany, Swift jest niesamowicie szybki jak C++. Zyskuje również coraz większą popularność w programowaniu systemowym i innych dziedzinach.,v>

        Source: StackOverflow Developer Survey, 2019

        Google trends also show a sharp rise in the Popularity of Swift:

        Source: Google Trends

        Job Market:

        Indeed has ranked Swift as the 9th most demanding language in the USA with 6 K openings.,”>

      • programowanie systemowe
      • programowanie po stronie klienta (przez WebAssembly)
      • deep learning
      • IoT

      go

      iv go jest drugim językiem programowania z ostatniej dekady na tej liście, podobnie jak SWIFT., Również, podobnie jak Swift, Go jest tworzony przez giganta technologicznego.

      w ostatniej dekadzie Google frustrująco odkryło, że istniejące języki programowania nie mogą przyjmować pozornie nieograniczonego sprzętu, zasobów ludzkich Google. Na przykład kompilowanie kodu C++ Google zajęło pół godziny. Chcieli również rozwiązać problem skalowania rozwoju w nowym języku.

      znani inżynierowie oprogramowania Rob Pike (UTF-8) i Ken Thompson (UNIX OS) w Google stworzyli nowy, pragmatyczny, łatwy do opanowania, wysoce skalowalny język programowania systemu Go i wydany w 2012 roku., Go ma tryb runtime i Garbage collector (kilka megabajtów), ale ten tryb runtime jest spakowany w wygenerowany plik wykonywalny.

      chociaż Go jest nieco anemiczny, szybko stał się głównym językiem programowania.

      3 najważniejsze cechy:

      • Go ma obsługę współbieżności na poziomie języka. Oferuje współbieżność opartą na CSP poprzez Goroutine (lightweight Green thread) I Channel.
      • największym USP Go jest jego konstrukcja językowa i prostota. Z powodzeniem połączył prostotę i produktywność Pythona z mocą C.,
      • Go ma wbudowany Garbage Collector (choć nie tak dojrzały jak JVM garbage collector). Programiści Go mogą pisać programowanie systemowe z bezpieczeństwem Java, Python.

      popularność:

      podobnie jak Swift, Go również odnotował gwałtowny wzrost popularności.

      w prawie wszystkich popularnych językach programowania porównujących strony internetowe, Go plasuje się wysoko i wyprzedził wiele istniejących języków.,

      źródło: Octoverse

      rosnąca popularność Go znajduje również odzwierciedlenie w Google trends, które pokazują rosnącą trakcję Dla Go w ciągu ostatnich pięciu lat:

      źródło: Google Trends na rynku pracy:

      firma indeed uplasowała go na 10.miejscu najbardziej wymagającego języka z 4 punktami na koncie w styczniu 2020 roku.,iv>

      źródło: badanie programistów StackOverflow, 2019

      główne przypadki użycia:

      • programowanie systemu
      • obliczenia Bezserwerowe
      • aplikacje biznesowe
      • programowanie natywne w chmurze
      • IoT

      Ruby

      iv id=”0a24829e5e”

      Ruby jest trzecim językiem programowania na tej liście opracowanym przez indywidualnego programistę w latach 90., Japoński informatyk Yukihiro Matsumoto stworzył Ruby jako „obiektowy język skryptowy” i został wydany w 1995 roku.

      Ruby rozwinął się później w interpretowany, dynamicznie typowany, wysokopoziomowy, wielodyscyplinarny język programowania ogólnego przeznaczenia. Ruby jest zaimplementowany w C i oferuje garbage collection.

      podobnie jak Python, Ruby skupiał się głównie na produktywności programistów i szczęściu programistów. Chociaż Ruby nie jest jednym z języków hyped, jest doskonałym językiem dla nowych programistów dla płaskiej krzywej uczenia się.,

      3 Kluczowe cechy:

      • Ruby z powodzeniem połączył jedne z najlepszych cech języków programowania: dynamiczne, obiektowe, funkcjonalne, zbierane śmieci i zwięzłe.
      • chociaż sam Ruby nie jest uciążliwy, jego Framework do tworzenia stron internetowych Ruby on Rails jest prawdopodobnie najbardziej uciążliwym i wpływowym frameworkiem do tworzenia stron internetowych po stronie serwera.
      • Ruby jest używany przez niektóre z największych projektów programistycznych, takich jak Twitter, GitHub, Airbnb, i ma doskonałą obsługę narzędzi i frameworków.,070″>
      źródło: StackOverflow Developer Survey, 2019

      Ruby nie był językiem hiped w ostatnich latach, ale utrzymał swoją trakcję zgodnie z Google Trends:

      źródło: Google Trends

      rynek pracy:

      na rynku pracy w USA Programiści Rubiego mogą czerpać ogromne zarobki i zająć pierwsze miejsce w rankingu indeed., W styczniu 2020 roku Indeed opublikował 16 prac dla programistów Ruby, co umieściło Ruby na 8. miejscu najbardziej wymagającego języka programowania na tej liście.,

      Source: Indeed

      StackOverflow developer survey 2019 has also shown that Ruby developers can earn a high salary with relatively low experience:

      Source: StackOverflow Developer Survey, 2019

Leave a Comment