
Autor: 26.01.2024
Język Dart w 60 sekund
Dart to język programowania stworzony przez Google. Dart jest używany do budowy aplikacji mobilnych przy użyciu frameworka Flutter. Stanowi ciekawą i popularną alternatywę dla technologii takich jak Java, Kotlin czy React Native.
Głównym zadaniem języka Dart jest szybkie tworzenie nowoczesnych i wydajnych aplikacji dla systemu Android oraz iOS.
Składnia
Dart ma prostą i tradycyjną składnię, opartą na językach z rodziny C/C++. Opanowanie tej składni nie powinno stanowić większego problemu dla programistów, którzy mają jakieś doświadczenie z takimi językami jak Java, JS, C# czy C++. Prostota składni bardzo ułatwia naukę języka:
void main() {
print('Hello, World!');
}
Typowanie
Ważną cechą Dart jest elastyczne podejście do typowania. Język posiada silny system typów ale można go opcjonalnie pominąć, co daje programiście duże możliwości w tworzeniu kodu.
Obiektowość
Dart to język obiektowy i obsługuje wszystkie typowe mechanizmy programowania obiektowego. Umożliwia użycie klas, metod, konstruktorów, dziedziczenie oraz polimorfizm.
Asynchroniczność
Dart wspiera programowanie asynchroniczne. Ułatwia to w praktyce obsługę operacji wejścia/wyjścia np. pobierania danych z sieci Web.
Framework Flutter
Dart to podstawowy język dla popularnego framework Flutter. Za pomocą tego frameworka możesz łatwo tworzyć nowoczesne aplikacje mobilne i łatwo budować interfejsy użytkownika. Pisanie aplikacji z użyciem Flutter, to główne zastosowanie języka Dart.
Ekosystem narzędzi
Dart ma niezły ekosystem narzędzi wspierających pracę programistów: debuggery, zarządzanie zależnościami itp. Ma też przydatną bibliotekę standardową, ułatwiająca implementowanie różnych funkcjonalności.
Krótki czas kompilacji
Dart stworzony został z myślą o szybkiej kompilacji. To z kolei przekłada się na szybkie budowanie projektów i łatwy podgląd zmian wprowadzanych w kodzie.7
Kod na różne platformy
Kod aplikacji napisanej za pomocą Dart/Flutter może być skompilowany dla różnych platform. Kod może być uruchamiany zarówno na systemach mobilnych (główne zastosowanie) jak i desktopowych czy serwerowych.