Hangi modern programlama dili daha iyidir? 2020'de muhtemelen bu 7 programlama dilini bilmelisiniz

Unsplash üzerinde h heyerlein tarafından paylaşılan resim

İnsanlığın modern uygarlığını bir araba olarak kabul edersek, yazılım geliştirme endüstrisi bir arabanın motoru, programlama dilleri de motorun yakıtı gibidir. Öyleyse soru şu, hangi programlama dilini öğrenmelisiniz?

Yeni bir programlama dili öğrenmek, büyük bir zaman, enerji ve beyin gücü yatırımı gerektirir, ancak başka bir blogda yazdığım gibi, yazılım geliştirme becerilerinizi ve kariyerinizi geliştirebilir. nın-nin:

Blog URL'si: https://medium.com/@md.kamaruzzaman/5-reasons-to-learn-a-new-programming-language-in-2020-bfc9a4b9a763

Genel olarak, kariyerinizin gelişmesine yardımcı olabilecek bir programlama dili seçmelisiniz. Ek olarak, popülaritesi artan bir dili de öğrenebilirsiniz.

Genel programlama dillerine büyük saygım var. Ancak burada, iş verimliliğinizi artırabilecek ve sizi daha iyi bir geliştirici yapabilecek modern programlama dillerini listeliyorum. Ek olarak, daha geniş bir alan yelpazesini de ele alacağım: sistem programlama, uygulama geliştirme, ağ geliştirme, bilimsel hesaplama.

"Modern programlama dili" terimi belirsizdir. Pek çok insan Python ve JavaScript gibi dillerin modern programlama dilleri olduğunu düşünüyor. Ama aynı zamanda Java'nın eski bir programlama dili olduğunu düşünüyorlar. Aslında hepsi aynı anda ortaya çıktı: 1995.

En yaygın programlama dilleri geçen yüzyılda, özellikle 1970'lerde (C gibi), 1980'lerde (C ++ gibi) ve 1990'larda (Java, Python, JavaScript gibi) geliştirildi. Bu diller, modern yazılım geliştirme ekosisteminden yararlanmak için tasarlanmamıştır. Bu dillerin çoğu, eşzamanlılık ve kendi kendine ayarlama gibi gelişmiş özelliklere sahip olsa da, aynı zamanda geriye dönük uyumluluk sağlarlar ve eski, güncel olmayan özellikleri atamazlar.

Bu noktada, Python iyi bir iş çıkarır ve Python 2 ile Python 3 arasında net bir ayrım yapar. Bu diller, geliştiriciler için uygun olup olmadığına bakılmaksızın genellikle aynı şeyi yapmanın 10 yolunu sağlar. StackOverflow geliştiricisinin yaptığı bir ankete göre, ana akım eski programlama dillerinin çoğu "en korkunç dil" kategorisinde en üst sırada yer alıyor:

Resim kaynağı: Stackoverflow

Yeni ve eski programlama dilleri arasındaki sınır olarak 29 Haziran 2007 olan ilk iPhone'un piyasaya çıktığı zamanı kullanacağım. İPhone piyasaya sürüldükten sonra her şey değişti. Bu listede ağırlıklı olarak 2007 sonrası programlama dillerini ele alıyorum.

Her şeyden önce, modern bilgisayar donanımı (çok çekirdekli CPU'lar, GPU'lar, TPU'lar), mobil cihazlar, büyük veri setleri, hızlı ağlar, kapsayıcılar ve bulutlardan tam olarak yararlanmak için modern programlama dilleri geliştirildi. Ek olarak, çoğu modern programlama dilinin kullanımı daha kolaydır, özellikle de:

  • Kısa kod

  • Yerleşik eşzamanlılık desteği

  • Boş işaretçi güvenliği

  • Çıkarım türü

  • Daha basit özellik seti

  • Düşük bilişsel yük

  • Tüm programlama paradigmalarının en iyi özelliklerini karıştırın

İkinci olarak, listedeki programlama dillerinin çoğu yıkıcıdır ve yazılım endüstrisini sonsuza dek değiştirecektir. Bazıları ana akım programlama dilleri haline gelirken, diğerleri atılımlar bekliyor. Bu dilleri en azından ikinci bir programlama dili olarak öğrenmek akıllıca olacaktır.

Bir önceki blog gönderisinde "2020'de Yazılım Geliştirme Trendlerinin 20 Tahmini" yazısında, 2020'de modern programlama dillerinde birçok atılım öngörmüştüm:

Makale URL'si: https://towardsdatascience.com/20-predictions-about-software-development-trends-in-2020-afb8b110d9a0

Pas, paslanma

Resim kaynağı: Thoughtram

Sistem programlama dillerine C, C ++ vb. Hakimdir. Programları ve donanımı tamamen kontrol edebilmelerine rağmen, bellek güvenliğinden yoksundurlar. Eşzamanlılığı destekleseler bile, eşzamanlılık güvenliğini sizden garanti ederken C / C ++ dilinde eşzamanlı programlar yazmak çok zordur. Diğer popüler programlama dilleri, güvenlik sağlayan ancak çok sayıda çalışma zamanı veya sanal makine gerektiren Java, Python, Haskell gibi yorumlanabilir dillerdir. Büyük çalışma süresi nedeniyle, Java gibi diller sistem programlaması için uygun değildir.

Birçok kişi C / C ++ özelliklerini Haskell ve Java'nın güvenliğiyle birleştirmeye çalıştı, ancak görünen o ki Rust, bu amaca ulaşmak için ilk ürün düzeyinde programlama dili.

Graydon Hoare ilk olarak Rust'u bir yan ürün olarak geliştirdi. Araştırma programlama dili Cyclone'dan ilham aldı. Rust açık kaynaktır ve Mozilla, dili geliştirmek için diğer birçok şirket ve toplulukla birlikte çalışır. Rust, ilk olarak 2015 yılında piyasaya sürüldü ve hızlı bir şekilde hayatın her kesiminin dikkatini çekti. Önceki makalelerde Rust'u derinlemesine inceledim ve neden büyük veri alanında C ++ ve Java yerine Rust kullanmanın daha iyi bir seçim olduğunu gösterdim:

Makale URL'si: https://towardsdatascience.com/back-to-the-metal-top-3-programming-language-to-develop-big-data-frameworks-in-2019-69a44a36a842

Ana Özellikler:

  • Sahiplik ve ödünç alma konseptiyle bellek güvenliği ve eşzamanlılık güvenliği sağlar.

  • Bellek güvenliği ve eşzamanlılık güvenliğinin derleme zamanı garantisi, yani bir program kodu derlenmişse, o zaman bellek güvenlidir ve veri rekabeti yoktur. Rust'un en çekici özelliği budur.

  • Aynı zamanda ML, Haskell temsilini de sağlar. Rust, değişmemiş veri yapılarına ve işlevsel programlama özelliklerine sahiptir, işlevsel eşzamanlılık ve veri eşzamanlılığı sağlar.

  • Pas çok hızlıdır.

  • Çalışma zamanı olmadığı için Rust, modern donanımın (TPU, GPU, çok çekirdekli CPU) tam kontrolünü sağlar.

  • Rust, LLVM desteğine sahiptir.

Popülerlik:

Rust, 2015'teki ilk çıkışından bu yana geliştiriciler tarafından sevildi ve StackOverflow geliştirici anketinde arka arkaya dört yıl boyunca (2016, 2017, 2018, 2019) en popüler dil olarak derecelendirildi:

Resim kaynağı: Stackoverflow

GitHub Octoverse'e göre Rust, Dart'tan sonra en hızlı büyüyen ikinci dildir:

Resim kaynağı: Octoverse

Popüler programlama dili web sitesi PyPl de Rust 18'inci sırayı alıyor ve yükselişte:

Resim kaynağı: PyPl

Sağladığı özellik seti karşılaştırıldığında, Microsoft, Amazon ve Google gibi teknoloji devlerinin nihayet Rust'u uzun vadeli bir sistem programlama dili olarak duyurması şaşırtıcı değil.

Geçtiğimiz 5 yılda Rust'un çekiciliği her yıl arttı:

Resim kaynağı: Google Trendler

Esas olarak şu alanlarda kullanılır:

  • Sistem programlama

  • Sunucusuz bilgi işlem

  • İş başvurusu

Ana rekabet dili:

  • C

  • C ++

  • Git

  • Swift

Git

Resim kaynağı: Wikimedia

Google, en büyük İnternet şirketlerinden biridir. Bu yüzyılın başında, Google iki genişleme sorunuyla karşılaştı: geliştirme genişlemesi ve uygulama genişletme. Uzantı geliştirmek, geliştiriciler ekleyerek daha fazla işlev ekleyemeyecekleri anlamına gelir. Uygulama uzantısı, "Google" düzeyinde bir makine kümesine genişletilebilecek bir uygulamayı kolayca geliştiremeyecekleri anlamına gelir. Google, 2007 civarında, bu iki sorunu çözebilecek yeni bir "pratik" programlama dili oluşturmaya başladı. Rob Pike (UTF-8) ve Ken Thompson'da (UNIX işletim sistemi), dünyanın en yetenekli yazılım mühendislerinden ikisi yeni bir dil yarattı.

2012'de Google, Go programlama dilinin ilk resmi sürümünü yayınladı. Go bir sistem programlama dilidir, ancak Rust'tan farklıdır. Aynı zamanda bir çalışma zamanı ve çöp toplayıcıya (birkaç megabayt) sahiptir, ancak Java veya Python'dan farklı olarak, bu çalışma zamanı üretilen kodu içerir. Son olarak, Go, bilgisayarda ek bağımlılıklar veya çalışma zamanı olmadan çalıştırılabilen yerel bir ikili kod oluşturur.

Ana Özellikler:

  • Go, birinci sınıf eşzamanlılık desteğine sahiptir. Programlama çok daha zor olduğundan, iş parçacıkları ve kilitler aracılığıyla "paylaşılan bellek" eşzamanlılığı sağlamaz. Bunun yerine, CSP tabanlı ileti geçişi eşzamanlılığı sağlar. Go, mesaj iletimi için "Goroutine" (açık yeşil iplik) ve "Kanal" kullanır.

  • Go'nun en ölümcül özelliği basitliği, en basit sistem programlama dilidir.Yeni bir yazılım geliştiricisi, birkaç gün içinde verimli kod yazabilir. En büyük bulut yerel projelerinden (Kubernetes, Docker) bazıları Go'da yazılmıştır.

  • GO ayrıca yerleşik bir çöp toplayıcıya sahiptir, bu da geliştiricilerin C / C ++ gibi bellek yönetimi sorunları hakkında endişelenmelerine gerek olmadığı anlamına gelir.

  • Google, Go'ya çok para yatırdı, bu nedenle Go'nun çok sayıda araç desteği var. Yeni Go geliştiricileri için devasa bir araç ekosistemi var.

  • Tipik olarak, geliştiriciler zamanlarının% 20'sini yeni kod yazmaya ve zamanlarının% 80'ini mevcut kodu koruyarak geçirirler. Basitliği nedeniyle Go, dil bakımında mükemmeldir. Günümüzde Go, ticari uygulamalarda yaygın olarak kullanılmaktadır.

Popülerlik:

Go ilk ortaya çıktığından beri, yazılım geliştirme topluluğu onu benimsedi. 2009 (ilk görünüm) ve 2018'de Go, TIOBE endeksi aracılığıyla programlama dili şöhretler listesine girdi. Go'nun başarısının Rust gibi yeni nesil programlama dillerinin yolunu açmasına şaşmamalı.

Go zaten yaygın bir programlama dilidir. Son zamanlarda Go ekibi, dili daha istikrarlı hale getirmeyi amaçlayan "Go 2" planını duyurdu.

Neredeyse tüm popüler programlama dili karşılaştırma sitelerinde Go, mevcut birçok dili geride bırakarak çok üst sıralarda yer alır. Aşağıda, Go 15. sırada yer alan Aralık 2019'daki TIOBE endeksi derecelendirmesidir:

Resim kaynağı: TIOBE

Stackoverflow anketine göre Go, en popüler on programlama dilinden biridir:

Resim kaynağı: Stackoverflow

GitHub Octoverse istatistiklerine göre Go, aynı zamanda en hızlı büyüyen on dilden biridir:

Resim kaynağı: Octoverse

Google ayrıca, son beş yılda Go'nun cazibesinin artmaya devam ettiğini gösteriyor:

Resim kaynağı: Google Trendler

Ana kullanım durumları:

  • Sistem programlama

  • Sunucusuz bilgi işlem

  • İş başvurusu

  • Bulutta yerel geliştirme

Ana rekabet dili:

  • C

  • C ++

  • Pas, paslanma

  • Python

  • Java

Kotlin

Java, kurumsal yazılım geliştirmede tartışmasız kraldır. Son yıllarda Java çok fazla eleştiri aldı: ayrıntılı, çok sayıda standart kodlama gerektiriyor, karmaşık ve kazalara meyilli. Ancak Java Sanal Makinesi (JVM) hakkında çok az tartışma var. JVM, yazılım mühendisliği alanında bir şaheserdir, zamana göre test edilmiş bir çalışma süresi sağlar. Bir önceki yazıda JVM'nin avantajlarını detaylı olarak tartıştım:

Makale URL'si: https://towardsdatascience.com/programming-language-that-rules-the-data-intensive-big-data-fast-data-frameworks-6cd7d5f754b0

Yıllar geçtikçe, Scala gibi JVM dilleri Java'nın eksikliklerini gidermeye çalıştı ve daha iyi bir Java olmayı umuyor, ancak başarısız oldular. Sonunda Kotlin ortaya çıktı ve daha iyi bir Java bulma yolculuğu bitmiş gibiydi. Jet Brains (popüler IDE IntelliJ'in arkasındaki şirket), JVM üzerinde çalışan, Java'nın eksikliklerini çözen ve birçok modern özellik sunan Kotlin'i geliştirdi. Scala'dan farklı olarak Kotlin, Java'dan çok daha basittir ve JVM'de Go veya Python tarzı geliştirme verimliliği sağlar.

Google, Kotlin'in Android'i geliştirmek için birinci sınıf dil olduğunu duyurdu ve toplulukta Kotlin'in kabulünü artırdı. Aynı popüler Java kurumsal çerçevesi Spring, 2017'den beri Spring ekosisteminde Kotlin'i de desteklemektedir.

Ana Özellikler:

  • Kotlin'in USP'si onun dil tasarımıdır. Kotlin'i her zaman JVM'de Go / Python olarak düşünürüm çünkü kodu kısa ve nettir. Bu nedenle Kotlin'in üretim verimliliği çok yüksektir.

  • Diğer birçok modern dil gibi, Kotlin de boş işaretçi güvenliği ve tür çıkarımı gibi özellikler sağlar.

  • Kotlin, JVM'de çalıştığı için, mevcut Java kitaplıklarının devasa ekosistemini kullanabilirsiniz.

  • Kotlin, Android uygulamaları geliştirmek için birinci sınıf bir dildir ve Android uygulamaları geliştirmek için ilk dil olmak için Java'yı geride bırakmıştır.

  • Kotlin, JetBrains ve açık kaynak desteğine sahiptir. Bu nedenle Kotlin iyi bir araç desteğine sahiptir.

  • İki ilginç proje var: Kotlin Native (Kotlin'i yerel koda derlemek için) ve Kotlin.js (Kotlin'den JavaScript'e dönüştürme). Başarılı olurlarsa, Kotlin JVM dışında kullanılabilir.

  • Kotlin ayrıca bir DSL (alana özgü dil) yazmak için kolay bir yol sağlar.

Popülerlik:

2015'teki ilk çıkışından bu yana Kotlin'in popülaritesi hızla artıyor. Stack Overflow'a göre Kotlin, 2019'daki en popüler dördüncü programlama dilidir:

Resim kaynağı: Stackoverflow

Kotlin aynı zamanda en hızlı büyüyen programlama dillerinden biridir ve dördüncü sırada yer alır:

Resim kaynağı: Github Octoverse

Popüler programlama dili sıralama web sitesi PyPl, Kotlin'i yükseliş eğilimi gösteren en popüler 12. programlama dili olarak sıralamaktadır:

Resim kaynağı: Pypl

Google, Kotlin'in Android uygulamaları geliştirmek için birinci sınıf dil olduğunu duyurduğundan beri, Kotlin'in popülaritesi aşağıdaki şekilde gösterildiği gibi hızla arttı:

Resim kaynağı: Google Trendler

Ana kullanım durumları:

  • Kurumsal uygulama

  • Android uygulama geliştirme

Ana rekabet dili:

  • Java

  • Scala

  • Python

  • Git

TypeScript

JavaScript mükemmel bir dildir, ancak 2015'ten önceki JavaScript'in birçok eksikliği vardır. Ünlü yazılım mühendisi Douglas Crockford bile "JavaScript: The Good Parts" adlı bir kitap yazdı ve JavaScript'in birçok kötü kısmı olduğunu ima etti. Modülerlik ve "geri arama cehennemi" olmadığından, geliştiriciler çok büyük JavaScript projelerini sürdürmeyi sevmezler.

Google, Java kodunu JavaScript koduna (GWT) dönüştürmek için bir platform bile geliştirdi. Pek çok şirket veya kişi CoffeeScript, Flow, ClojureScript gibi daha iyi JavaScript geliştirmeye çalışır, ancak Microsoft'un TypeScript şüphesiz en belirgin olanıdır. Delphi'nin yaratıcısı Anders Hejlsberg liderliğindeki bir grup Microsoft mühendisi, JavaScript'in statik yazımının modüler bir üst kümesi olarak TypeScript'i yarattı.

Derleme sırasında TypeScript, JavaScript'te derlenir. TypeScript, 2014'teki ilk sürümünden bu yana hızla sosyal ilgiyi çekmiştir. O sırada Google, statik olarak yazılmış bir JavaScript üst kümesi geliştirmeyi de planladı. Google, TypeScript'ten çok etkilendi. Google, yeni bir dil geliştirmek yerine, TypeScript'i iyileştirmek için Microsoft ile çalıştı.

Google, SPA çerçevesi Angular2 + 'nın ana programlama dili olarak TypeScript kullanır. Ek olarak, popüler SPA çerçevesi React, TypeScript için destek sağlar. Diğer bir popüler JavaScript çerçevesi olan Vue.js, yeni bir Vue.js 3 geliştirmek için TypeScript kullanacaklarını belirtir:

Resim kaynağı: Vue.js Yol Haritası

Ayrıca, node.js'nin yaratıcısı Ryan Dahl, node.js, Deno'ya güvenli bir alternatif geliştirmek için TypeScript kullanmaya karar verdi.

Ana Özellikler:

  • Listedeki Go veya Kotlin gibi, TypeScript'in ana özelliği dil tasarımıdır. Açık ve temiz kodu ile en zarif programlama dillerinden biridir. Geliştirici üretkenliği açısından, JVM'deki Kotlin veya Go / Python ile karşılaştırılabilir. TypeScript, JavaScript'in en etkili üst kümesidir.

  • TypeScript, JavaScript'in güçlü bir şekilde yazılmış bir üst kümesidir. Özellikle büyük ölçekli projeler için uygundur ve haklı olarak "büyük ölçekli JavaScript" olarak adlandırılır.

  • "Üç büyük" tek sayfalı uygulama çerçevesi (Angular, React, Vue.js), TypeScript için mükemmel destek sağlar. Angular'da TypeScript tercih edilen programlama dilidir. React ve Vue.js'de TypeScript giderek daha popüler hale geliyor.

  • En büyük iki teknoloji devi: Microsoft ve Google, canlı bir açık kaynak topluluğu tarafından desteklenen TypeScript'i geliştirmek için birlikte çalışıyor. Bu nedenle, TypeScript için araç desteği en iyilerden biridir.

  • TypeScript, JavaScript'in bir üst kümesi olduğundan, JavaScript'in her yerinde çalışabilir. TypeScript, tarayıcılarda, sunucularda, mobil cihazlarda, IoT cihazlarında ve bulutta çalışabilir.

Popülerlik:

Geliştiriciler, TypeScript'in zarif dil tasarımını severler. Stackoverflow geliştirici anketinde, en popüler dil kategorisinde Python ile ikinci sırada yer alıyor:

Resim kaynağı: Stackoverflow

TypeScript, en hızlı büyüyen web programlama dillerinden biridir ve GitHub Octoverse'te beşinci sırada yer alır:

Resim kaynağı: Octoverse

GitHub katkılarına göre, TypeScript ayrıca ilk 10'a girdi (7. sırada):

Resim kaynağı: Octoverse

TypeScript, geçtiğimiz yıl giderek daha fazla ilgi gördü ve bu da Google Trends'e yansıdı:

Resim kaynağı: Google Trendler

Ana kullanım durumları:

  • Web kullanıcı arayüzü geliştirme

  • Sunucu tarafı geliştirme

Ana rekabet dili:

  • JavaScript

  • Dart oyunu

Swift

Steve Jobs, Java'nın artık ana programlama dili olmayacağına inandığı için iOS'ta Java'yı (ve JVM'yi) desteklemeyi reddetti. Artık Steve Jobs'un Java değerlendirmesinin yanlış olduğunu biliyoruz, ancak iOS hala Java'yı desteklemiyor. Bunun yerine Apple, iOS'ta genel programlama dili olarak Objective-C'yi seçti. Objective-C, ustalaşması zor bir dildir. Dahası, modern programlama dillerinin gerektirdiği yüksek geliştirme verimliliğine sahiptir.

Apple'da, Chris Lattner ve diğerleri, Objective-C'ye bir alternatif sağlayan çok paradigmalı, genel amaçlı ve derlenebilir bir programlama dili olan Swift'i geliştirdi. Swift'in ilk kararlı sürümü 2014'te piyasaya sürüldü. Swift, LLVM derleyici araç zincirini de destekler (ayrıca Chris Lattner tarafından geliştirilmiştir). Swift, Objective-C kod tabanı ile iyi bir birlikte çalışabilirliğe sahiptir ve iOS uygulama geliştirme için ana programlama dili haline gelmiştir.

Ana Özellikler:

  • Swift'in önemli bir avantajı, dil tasarımıdır. Objective-C'ye daha verimli bir alternatif sağlayan daha basit, özlü ve temiz bir sözdizimi kullanır.

  • Swift ayrıca modern programlama dillerinin bir özelliğini de sağlar: sıfır güvenlik.

  • Swift, C ++ kadar hızlı olan derlenmiş bir dildir.

  • Swift, LLVM derleyici araç zincirini destekler. Bu nedenle, Swift'i sunucu tarafında veya hatta tarayıcı programlamasında (WebAssembly kullanarak) kullanabiliriz.

  • Swift, uygun olmayan bellek yönetimini sınırlayabilen otomatik referans sayma (ARC) desteği sağlar.

Popülerlik:

Diğer birçok modern dil gibi, geliştiriciler de Swift'i çok seviyor. Bir StackOverflow anketine göre Swift, en popüler programlama dilleri arasında altıncı sırada yer alıyor:

TIOBE'nin programlama dili sıralamasında Swift, 2019'da 10. sıraya yükseldi. Dilin sadece 5 yaşında olduğu düşünülürse, bu oldukça dikkat çekici bir başarıdır:

Resim kaynağı: TIOBE Index

Google eğilimleri ayrıca Swift'in popülaritesinin önce keskin bir şekilde arttığını ve ardından eğilimin son birkaç doygunlukta hafifçe düştüğünü gösteriyor:

Resim kaynağı: Google Trendler

Ana kullanım durumları:

  • iOS uygulama geliştirme

  • Sistem programlama

  • İstemci geliştirme (WebAssembly aracılığıyla)

Ana rekabet dili:

  • Amaç-C

  • Pas, paslanma

  • Git

Dart oyunu

Dart ayrıca Google tarafından yayınlanan bir programlama dilidir. Google, web ve Android alanlarında önemli bir oyuncudur ve web ve uygulama geliştirme alanlarında kendi programlama dilini geliştirmesi şaşırtıcı değildir.

Dart, güçlü yazma ve nesne yönelimli programlamayı destekleyen genel amaçlı bir programlama dilidir. Dart ayrıca JavaScript'e dönüştürülebilir ve JavaScript'in çalıştığı her yerde (web, mobil, sunucu gibi) çalıştırabilir.

Ana Özellikler:

  • Go gibi, Dart da geliştirici üretkenliğine büyük önem veriyor. Temiz, basit ve özlü sözdizimi sayesinde Dart, üretim verimliliğini büyük ölçüde artırır ve geliştiriciler tarafından çok sevilir.

  • Dart ayrıca güçlü sınıflar ve nesne yönelimli programlama sağlar.

  • Dart, JIT derlemesini ve AOT derlemesini destekleyen birkaç dilden biridir. Bu nedenle Dart, JavaScript çalışma zamanını (V8 motoru) hedefleyebilir ve Dart, hızlı yerel koda (AOT derlemesi) derlenebilir.

  • Çapraz platformlu bir yerel uygulama geliştirme platformu olan Flutter, iOS ve Android uygulamaları geliştirmek için programlama dili olarak Dart'ı seçti. O zamandan beri Dart giderek daha popüler hale geldi.

  • Go gibi, Dart da mükemmel araç desteğine ve Flutter'ın devasa ekosistemine sahiptir. Flutter'ın artan popülaritesi sadece Dart'ın popülaritesini artıracaktır.

Popülerlik:

Github Octoverse'e göre, Dart 2019'da en hızlı büyüyen programlama dili ve popülaritesi geçen yıl beş kat arttı:

TIOBE'ye göre, Dart 23. sırada yer alıyor. Sadece 4 yıl içinde diğer birçok programlama dilini geride bıraktı:

Resim kaynağı: TIOBE dizini

Ayrıca, StackOverflow Geliştirici Anketi'nde 12. sırada yer alan en popüler programlama dillerinden biridir:

Görüntü kaynağı: StackOverflow

Flutter'a ek olarak, Dart'ın popülaritesi de son iki yılda büyük bir gelişme kaydetti ve bu Google'da açıkça görülüyor:

Resim kaynağı: Google Trendler

Ana kullanım durumları:

  • Uygulama geliştirme

  • Ön uç geliştirme

Ana rekabet dili:

  • JavaScript

  • TypeScript

Julia

Yukarıda listelenen programlama dillerinin tümü büyük şirketler tarafından geliştirilmiştir, ancak Julia değildir. Teknik hesaplamada genellikle Python ve Matlab gibi dinamik diller kullanılır. Bu diller, kullanımı kolay sözdizimi sağlar, ancak büyük ölçekli teknik hesaplamalar için uygun değildir. CPU yoğun görevleri yerine getirmek için C / C ++ kitaplıklarını kullanırlar. Kod iki dil arasında dönüştürüldüğünden, her zaman bir miktar performans kaybı olacaktır.

Bu sorunu çözmek için, MIT'deki bir araştırma ekibi, modern donanımdan yararlanan ve diğer dillerin en iyi kısımlarını birleştiren sıfırdan yeni bir dil yaratmayı planlıyor. Bu çalışmayı MIT Innovation Lab'de tamamladılar ve aşağıdaki beyanı yayınladılar:

Kaynak: Julia Presentation

Julia, eşzamanlı, paralel ve dağıtılmış bilgi işlem için birinci sınıf destek sağlayan dinamik bir üst düzey programlama dilidir. Julia'nın ilk kararlı sürümü 2018'de piyasaya sürüldü ve hızla topluluğun ve endüstrinin iyiliğini kazandı. Julia, bilimsel hesaplama ve yapay zeka gibi birçok alana uygulanabilir ve sonunda "iki dil" sorununu çözebilir.

karakteristik:

  • Rust gibi Julia'nın da ana özelliği dil tasarımıdır. Mevcut programlama dillerinin en iyi özelliklerinden bazılarını performanstan ödün vermeden yüksek performans ve bilimsel hesaplamada birleştirmeye çalışır. Şimdiye kadar iyi iş çıkardı.

  • Julia, isteğe bağlı dinamik bir programlama dilidir. Bu nedenle Julia'nın öğrenmesi kolay ve çok etkilidir.

  • Çoklu dağıtım programlama paradigmasına odaklanır.

  • Eşzamanlı, paralel ve dağıtılmış bilgi işlem için yerleşik desteğe sahiptir.

  • Ayrıca, I / O yoğun görevler için asenkron G / Ç sağlar.

  • Çok hızlıdır ve milyonlarca iş parçacığı gerektiren bilimsel hesaplamalar için kullanılabilir.

Popülerlik:

Julia birçok alanda ağırlıklı olarak Python ile rekabet eder. Python en popüler programlama dillerinden biri olduğu için Julia'nın ana akım hale gelmesi birkaç yıl alacak.

Julia nispeten genç (sadece bir yaşında), ancak yine de TIOBE endeksinde 43. sırada yer alıyor:

Resim kaynağı: TIOBE

Google Trendler, programcıların geçmişte Julia'ya olan sürekli ilgisini de gösteriyor.

Ancak Julia'nın arkasındaki NSF, DARPA, NASA, Intel gibi özellik kümesini ve şirket sayısını göz önünde bulundurarak Julia'nın ne zaman bir atılım yapacağı an meselesi.

Ana kullanım durumları:

  • Bilimsel hesaplama

  • Yüksek performanslı bilgi işlem

  • Veri bilimi

  • Görselleştirme

Ana rekabet dili:

  • Python

  • Matlab

aracılığıyla: https://towardsdatascience.com/top-7-modern-programming-language-to-learn-now-156863bd1eec

Lei Feng Ağı Lei Feng Ağı Lei Feng Ağı

Li Keqiang, Tsinghua Üniversitesi: Neden "bulut kontrollü temel platformun" akıllı ağa bağlı araçlarda ulusal özelliklere sahip bir altyapı olduğunu düşünüyorum?
önceki
2019 Zhiyuan · Zhihu Kanshan Kupası Algoritma Yarışması sonuçlandı: 7 takım öne çıkıyor ve tek takım tacı kazandı
Sonraki
Turing Ödülü sahibi LeCun, Google'ın meme kanseri AI tezini kullandı, bu kadar sıra dışı olan ne?
Weifang ve Qingzhou: vatandaşlar kendiliğinden yas tutuyor
Kahraman ruh sonsuza kadar yaşayacak, ruh sonsuza kadar yaşayacak! Kahramanın hikayesini bugün dinleyin
Bugün Jinan hava savunma alarmını tekrar çaldı! Neden daha önce 22 kez ses çıkardı?
Jinan vatandaşları Ching Ming Festivali'nde 3 Mayıs Katliamı'nın kurbanlarına çiçek hediye etti
CES 2020'nin en "yararsız" teknoloji ürünleri: akıllı yükseklik kaydedici, tuvalet kağıdı teslim robotu, konuşan duş ...
Prospective Gene Industry Global Weekly Report No. 52: Filipinler, doğrudan tüketim için genetiği değiştirilmiş altın pirincin listelenmesini onayladı
OnePlusın ilk konsept telefonu CES 2020de görücüye çıktı: Kamera, tıpkı turuncu tayt giyen OnePlus 7T Pro gibi kayboluyor
"Aile" ve "şehir" üzerine oynanan bahis akıntıya veya çıkışa karşı mı? Coolpad'in iş fikirlerinin analizi
360, endüstriyel İnternet güvenliği pilotlarını ortaklaşa kurmak için Ecodi ile imzalandı
Today Paper | Stokastik Diferansiyel Denklemler; Akış Otomatik Konuşma Tanıma; Görüntü Sınıflandırma, vb.
Liaocheng'deki tüm birimler ve dönüm noktası binalar, salgınla mücadelede ölen şehitlerin ve ölen yurttaşların yasını tutmak için yarıya indirildi.
To Top