Pull to refresh

Comments 16

Так и знал, что кто-нибудь да назовет библиотеку этим именем :)
Я удивился, что никто до меня этого не сделал.
Вы правда не видели 100500 комментариев на хабре по поводу что название языка переводится как «дартс»? А тот персонаж, про которого Вы думали во время придумывания названия именуется как Darth Vader en.wikipedia.org/wiki/Darth_Vader
Нет, не видел. Но что Дарт по-другому пишется знал.
И как теперь гуглить, если что от не работает? :)
какой то темный язык, судя по вашим впечатлениям
Просто это не Java. В Google любят не только Java, но и Python. Это я не к тому, что Python оказал большое влияние. Просто как пример, что питониста не удивят многие из вещей, вызвавшие удивление у автора.

Dart является в основном строго типизированным языком, что открывает огромные возможности для быстрого рефакторинга и отлова ошибок при написании программы.

Dart является динамически типизированным языком. Типы там опциональны и используются только в checked режиме на этапе разработки. В рантайме они никак не используются. "Why Dart Types Are Optional and Unsound"
Dart является в основном строго типизированным языком… Однако, при этом в руководстве по стилю кода рекомендуется не указывать типы для локальных переменных. Что ж, очень и очень странно…
Смею предположить, что происходит вывод типов для таких переменных.
Да, они это все в явном виде объясняют в Dart Style Guide.

PREFER using var without a type annotation for local variables.
Method bodies in modern code tend to be short, and the types of local variables are almost always trivially inferrable from the initializing expression, so explicit type annotations are usually just visual noise. Decent editors can infer the type of local variables and still provide the auto-complete and tooling support you expect.
В первой программе надо писать не «Hello World!», а «Luke, I'm Your father!».
В примере так и написано. =)
Вот я олень… как я мог не заметить (
«Закрытые» методы и поля в Дарте имеют нетрадиционный смысл: все, что начинается с прочерка, недоступно за пределами библиотеки, в которой метод/поле объявлено. Доступ внутри библиотеки к таким методам/полям есть, даже если они определены в другом классе/файле.
Расположение кода в файлах.
Подход, пришедший из C? Еще предложение «В одном файле может содержаться определение файла» выглядит недописанным.

Отсутствие некоторых модификаторов ООП.
Python-way. Обратиться к закрытому методу можно, но не нужно. Полезно при monkey-patching'е напрмиер.

Синтаксический сахар.
=> для коротких реализаций мне напомнил C#. Там же вроде как-то так?
Поправил. Действительно недописал.
Кстати, «классы и функции в одном файле» тоже вполне укладывается в практику программирования, если смотреть шире, чем в сравнении с Java.
Sign up to leave a comment.

Articles