Dart 2.8 programlama dili yayınlandı

gerçekleşti programlama dili sürümü Dart 2.8Radikal bir şekilde yeniden tasarlanan Dart 2 şubesinin geliştirilmesine devam eden, Web ve mobil sistemlere yönelik geliştirmeye yeniden odaklanan ve istemci tarafı bileşenler oluşturmak için optimize edilen.

Dart 2, güçlü statik yazma kullanımı açısından orijinal Dart dilinden farklıdır (türler otomatik olarak çıkarılabilir, bu nedenle tür spesifikasyonu isteğe bağlıdır, ancak dinamik yazma artık kullanılmaz ve başlangıçta hesaplanan tür bir değişkene atanır ve katı tür kontrolü yapılır) Daha sonra uygulandı). Web uygulaması geliştirme için sunulan dart:html ve Angular web çerçevesi gibi bir dizi özel kitaplık. Mobil uygulamalar oluşturmak için bir çerçeve tanıtılıyor Çarpıntı, diğer şeylerin yanı sıra, Google'da geliştirilen yeni mikro çekirdek işletim sisteminin kullanıcı kabuğunun oluşturulduğu temel Fuşya.

Yeni sürümde:

  • Geriye dönük uyumluluğu bozarak Null değerini güvenli bir şekilde kullanmak için araçlar eklendi. Örneğin, "int" gibi tanımsız türdeki bir değişkene "Null" değeri atanmaya çalışıldığında artık bir derleme zamanı hatası atılacaktır. Değişkenlerin "int?" gibi Null olabilen ve Null olmayan türlerle uyumluluğuna da kısıtlamalar getirildi. ve "int" ("int" tipindeki bir değişkene "int" tipindeki bir değişken atanabilir, ancak bunun tersi mümkün değildir). Aynısı, "return" ifadesinde döndürülen değişkenler için de geçerlidir - işlevin gövdesinde "Null" durumuna izin vermeyen türdeki bir değişkene bir değer atanmazsa, derleyici bir hata görüntüler. Bu değişiklikler, değeri tanımlanmamış ve "Null" olarak ayarlanmış değişkenleri kullanma girişimlerinin neden olduğu çökmeleri önlemenize olanak tanıyacaktır.
  • depo pub.dev 10 bin paket sınırını geçti. Dart 2.8 sağlama döngüsünün bir parçası olarak, pub.dev'den paket alma performansı, "pub get" komutunu çalıştırırken paketlerin birden çok paralel iş parçacığına alınmasının yanı sıra "pub get" komutunu çalıştırırken tembel ön derlemeyi destekleyerek önemli ölçüde iyileştirildi. pub run" komutu. Flutter tabanlı yeni bir proje için "pub get" komutunun test edilmesi, çalışma süresinin 6.5 saniyeden 2.5 saniyeye, Flutter galerisi gibi daha büyük uygulamalar için ise 15 saniyeden 3 saniyeye düştüğünü gösterdi.
  • Kurulu paketlerdeki tüm bağımlılıkları güncel tutmak için yeni bir "yayın güncel değil" komutu eklendi. "pub outdated" komutunu kullanarak, pubspec dosyasında değişiklik yapmadan, belirtilen paketle ilişkili tüm bağımlılıkların daha yeni ana sürümlerinin olup olmadığını değerlendirebilirsiniz. "Pub yükseltme"den farklı olarak, yeni komut yalnızca pubspec'e karşılık gelen sürümleri değil aynı zamanda daha yeni dalları da kontrol eder. Örneğin, "foo: ^1.3.0" ve "bar: ^2.0.0" bağımlılıkları sabitlenmiş bir paket için, "pub outdated" çalıştırıldığında hem mevcut şubelerin hem de daha yeni şubelerin varlığı gösterilecektir:

    Bağımlılıklar Mevcut Yükseltilebilir Çözülebilir En Son
    foo 1.3.0 1.3.1 1.3.1 1.3.1
    çubuk 2.0.1 2.1.0 3.0.3 3.0.3

Dart dilinin özellikleri:

  • Tanıdık ve öğrenmesi kolay sözdizimi, JavaScript, C ve Java programcıları için doğaldır.
  • Taşınabilir cihazlardan güçlü sunuculara kadar tüm modern web tarayıcıları ve çeşitli ortam türleri için hızlı başlatma ve yüksek performansın sağlanması;
  • Mevcut yöntem ve verilerin kapsüllenmesine ve yeniden kullanılmasına olanak tanıyan sınıfları ve arayüzleri tanımlama yeteneği;
  • Türleri belirtmek, hataları ayıklamayı ve hataları tanımlamayı kolaylaştırır, kodu daha net ve okunabilir hale getirir ve üçüncü taraf geliştiriciler tarafından değiştirilmesini ve analizini basitleştirir.
  • Desteklenen türler şunları içerir: çeşitli karma türleri, diziler ve listeler, kuyruklar, sayısal ve dize türleri, tarih ve saati belirlemeye yönelik türler, normal ifadeler (RegExp). Belki kendininkini yaratmak türleri;
  • Paralel yürütmeyi düzenlemek için, kodu tamamen ayrı bir bellek alanında yalıtılmış alanda yürütülen, mesaj göndererek ana süreçle etkileşime giren izolasyon özelliğine sahip sınıfların kullanılması önerilmektedir;
  • Büyük web projelerinin desteklenmesini ve hata ayıklamasını kolaylaştıran kitaplıkların kullanımına yönelik destek. İşlevlerin üçüncü taraf uygulamaları, paylaşılan kitaplıklar biçiminde dahil edilebilir. Uygulamalar parçalara bölünebilir ve her parçanın geliştirilmesi ayrı bir programcı ekibine emanet edilebilir;
  • Dinamik geliştirme ve hata ayıklama araçlarının anında kod düzeltmeyle ("düzenle ve devam et") uygulanması da dahil olmak üzere, Dart dilinde geliştirmeyi destekleyen bir dizi hazır araç;
  • Dart dilindeki geliştirmeyi kolaylaştırmak için aşağıdakilerle birlikte gelir: SDK, Paketleme yöneticisi birahanestatik kod analizörü dart_analyzer, kütüphane seti, entegre geliştirme ortamı DartPad ve Dart özellikli eklentiler IntelliJ IDEA, WebStorm, Emacs, Yüceltilmiş metin 2 и Gayret;
  • Kütüphaneler ve yardımcı programlar içeren ek paketler depo aracılığıyla dağıtılır birahane10 binden fazla paketi bulunan.

Kaynak: opennet.ru

Yorum ekle