-
Notifications
You must be signed in to change notification settings - Fork 3.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[dart/ru] #4997
base: master
Are you sure you want to change the base?
[dart/ru] #4997
Conversation
ru-ru/dart-ru.html.markdown
Outdated
Он поддерживает потоки, фьючерсы (известные как промисы в JavaScript), дженерики, первоклассные функции (замыкания) и проверку статического типа. | ||
Dart может работать на любой платформе, включая веб-интерфейс, интерфейс командной строки, десктопные, мобильные устройства и устройства IoT. | ||
|
||
Самая спорная функция Dart это ~~Необязательный ввод~~ Статическая безопасность типов и [Проверка звукового типа](https://dart.dev/guides/language/sound-dart). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
звукового типа
Это авто перевод? Тут sound это прилагательное, в смысле здравый; правильный; благоразумный. Но вообще эту строку можно просто удалить.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Эту строку удалю
- ["Joao Pedrosa", "https://github.com/jpedrosa/"] | ||
- ["Vince Ramces Oliveros", "https://github.com/ram231"] | ||
translators: | ||
- ["nikaose", "https://github.com/nikaose"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- ["nikaose", "https://github.com/nikaose"] | |
- ["nikaose", "https://github.com/nikaose"] |
|
||
**Dart** это однопоточный язык программирования общего назначения. | ||
Он многое заимствует из других основных языков. | ||
Он поддерживает потоки, фьючерсы (известные как промисы в JavaScript), дженерики, первоклассные функции (замыкания) и проверку статического типа. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Он поддерживает потоки, фьючерсы (известные как промисы в JavaScript), дженерики, первоклассные функции (замыкания) и проверку статического типа. | |
Он поддерживает потоки, фьючерсы (известные как промисы в JavaScript), дженерики, первоклассные функции (замыкания) и статические типы. |
// Однострочный комментарий | ||
/** | ||
* Многострочный комментарий | ||
* Можно прокомментировать несколько строк |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* Можно прокомментировать несколько строк | |
* может прокомментировать несколько строк |
/// 4 типа объявления переменных. | ||
/// Константы — это переменные, которые являются неизменяемыми и не могут быть изменены. | ||
/// `const` в Dart должен использовать объявление имени SCREAMING_SNAKE_CASE. | ||
const CONSTANT_VALUE = "Я НЕ МОГУ ПОМЕНЯТЬ"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
const CONSTANT_VALUE = "Я НЕ МОГУ ПОМЕНЯТЬ"; | |
const CONSTANT_VALUE = "Я НЕ МОГУ ИЗМЕНИТЬСЯ"; |
/// Константы — это переменные, которые являются неизменяемыми и не могут быть изменены. | ||
/// `const` в Dart должен использовать объявление имени SCREAMING_SNAKE_CASE. | ||
const CONSTANT_VALUE = "Я НЕ МОГУ ПОМЕНЯТЬ"; | ||
CONSTANT_VALUE = "Я сделал?"; // Ошибка |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CONSTANT_VALUE = "Я сделал?"; // Ошибка | |
CONSTANT_VALUE = "Или могу?"; // Ошибка |
|
||
/// `dynamic` — это еще одно объявление переменной, в котором тип не оценивается при проверке статического типа Dart. | ||
/// Он может изменить свое значение и тип данных. | ||
/// Некоторые дартисты используют динамический подход с осторожностью, поскольку он не может отслеживать тип данных. так что используйте его на свой страх и риск |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// Некоторые дартисты используют динамический подход с осторожностью, поскольку он не может отслеживать тип данных. так что используйте его на свой страх и риск | |
/// Некоторые дартисты используют dynamic с осторожностью, поскольку он не может отслеживать тип данных. так что используйте его на свой страх и риск |
|
||
example5() { | ||
/// Создайте анонимный экземпляр класса Example5Class и вызовите для него метод sayIt | ||
/// Ключевое слово `new` в Dart не является обязательным.. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// Ключевое слово `new` в Dart не является обязательным.. | |
/// Ключевое слово `new` в Dart не является обязательным. |
new Example5Class().sayIt(); | ||
} | ||
|
||
/// Объявление класса принимает форму имени класса. { [classBody] }. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// Объявление класса принимает форму имени класса. { [classBody] }. | |
/// Объявление класса принимает форму class имя { [телоКласса] }. |
} | ||
|
||
/// Объявление класса принимает форму имени класса. { [classBody] }. | ||
/// Где classBody может включать методы и переменные экземпляра, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// Где classBody может включать методы и переменные экземпляра, | |
/// Где телоКласса может включать методы и переменные экземпляра, |
Example6Class().sayIt(); | ||
} | ||
|
||
/// Методы и переменные класса объявляются с помощью «статических» терминов. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// Методы и переменные класса объявляются с помощью «статических» терминов. | |
/// Методы и переменные класса объявляются с помощью static. |
} | ||
// методы также могут иметь дженерики | ||
genericMethod<M>(){ | ||
print("class:$T, method: $M"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
print("class:$T, method: $M"); | |
print("class: $T, method: $M"); |
} | ||
|
||
|
||
/// Список похож на массивы, но список является дочерним элементом Iterable<E>. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// Список похож на массивы, но список является дочерним элементом Iterable<E>. | |
/// Списки (List) похожи на массивы, но List является дочерним элементом Iterable<E>. |
|
||
|
||
/// Список похож на массивы, но список является дочерним элементом Iterable<E>. | ||
/// Поэтому Maps, List, LinkedList являются дочерними элементами Iterable<E>, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// Поэтому Maps, List, LinkedList являются дочерними элементами Iterable<E>, | |
/// Поэтому Map, List, LinkedList являются дочерними элементами Iterable<E>, |
|
||
/// Список похож на массивы, но список является дочерним элементом Iterable<E>. | ||
/// Поэтому Maps, List, LinkedList являются дочерними элементами Iterable<E>, | ||
/// чтобы иметь возможность зацикливаться с использованием ключевого слова `for` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// чтобы иметь возможность зацикливаться с использованием ключевого слова `for` | |
/// чтобы их можно было перебирать с помощью ключевого слова `for` |
/// {} - Map<K,V> | ||
|
||
|
||
/// Список — это здорово, но есть ограничение на то, каким может быть список. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// Список — это здорово, но есть ограничение на то, каким может быть список. | |
/// List — это здорово, но есть ограничение на то, каким может быть список |
|
||
|
||
/// Список — это здорово, но есть ограничение на то, каким может быть список. | ||
/// outside of function/method bodies. List on the outer scope of class |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// outside of function/method bodies. List on the outer scope of class |
/// Список — это здорово, но есть ограничение на то, каким может быть список. | ||
/// outside of function/method bodies. List on the outer scope of class | ||
/// вне тела функции/метода. Список во внешней области класса или | ||
/// вне класса должен быть постоянным. Строки и числа используются по умолчанию. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// вне класса должен быть постоянным. Строки и числа используются по умолчанию. | |
/// вне класса должен быть постоянным. Строки и числа постоянные по умолчанию, |
/// outside of function/method bodies. List on the outer scope of class | ||
/// вне тела функции/метода. Список во внешней области класса или | ||
/// вне класса должен быть постоянным. Строки и числа используются по умолчанию. | ||
/// А вот массивы и карты — нет. Их можно сделать постоянными, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// А вот массивы и карты — нет. Их можно сделать постоянными, | |
/// а вот массивы и карты — нет. Их можно сделать постоянными, |
/// вне тела функции/метода. Список во внешней области класса или | ||
/// вне класса должен быть постоянным. Строки и числа используются по умолчанию. | ||
/// А вот массивы и карты — нет. Их можно сделать постоянными, | ||
/// объявив их "const". Что-то похожее на Object.freeze() в Javascript. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// объявив их "const". Что-то похожее на Object.freeze() в Javascript. | |
/// объявив их "const". Что-то похожее на Object.freeze() в JavaScript. |
List<String> explicitList = new List<String>(); | ||
Map<String,dynamic> explicitMaps = new Map<String,dynamic>(); | ||
|
||
explicitList.add("НекоторыйМассив"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
List<String> explicitList = new List<String>(); | |
Map<String,dynamic> explicitMaps = new Map<String,dynamic>(); | |
explicitList.add("НекоторыйМассив"); | |
List<String> explicitList = new List<String>(); | |
Map<String,dynamic> explicitMaps = new Map<String,dynamic>(); | |
explicitList.add("НекоторыйМассив"); |
|
||
/// Циклы в Dart имеют форму стандартных циклов for () {} или while () {}, | ||
/// немного более современный for (.. in ..) {} или функциональные обратные вызовы | ||
/// со многими поддерживаемыми функциями, начиная с forEach,map иwhere. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// со многими поддерживаемыми функциями, начиная с forEach,map иwhere. | |
/// со многими поддерживаемыми функциями, начиная с forEach, map и where. |
var example9Array = const ["a", "b"]; | ||
example9() { | ||
for (int i = 0; i < example9Array.length; i++) { | ||
print("Example9 цикл цикл '${example9Array[i]}'"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
print("Example9 цикл цикл '${example9Array[i]}'"); | |
print("Example9 цикл for '${example9Array[i]}'"); |
print("Example10 цикл строковых символов '${example10String[i]}'"); | ||
} | ||
for (var i = 0; i < example10String.length; i++) { | ||
print("Example10 цикл извлечения '${example10String.substring(i, i + 1)}'"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
print("Example10 цикл извлечения '${example10String.substring(i, i + 1)}'"); | |
print("Example10 цикл извлечения подстроки '${example10String.substring(i, i + 1)}'"); |
} catch (e) { | ||
print("Example15 catch exception being re-thrown: '${e}'"); | ||
} finally { | ||
print("Example15 Still run finally"); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
нужно перевести
/// Чтобы быть эффективным при динамическом создании длинной строки, | ||
/// используйте StringBuffer. Или вы можете присоединиться к массиву строк. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// Чтобы быть эффективным при динамическом создании длинной строки, | |
/// используйте StringBuffer. Или вы можете присоединиться к массиву строк. | |
/// Чтобы эффективно создать длинную строку, используйте StringBuffer | |
/// или вы можете объединить массив строк при помощи join. |
/// Строки можно объединить, просто разместив список строк рядом друг с другом | ||
/// без необходимости использования дополнительных операторов. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/// Строки можно объединить, просто разместив список строк рядом друг с другом | |
/// без необходимости использования дополнительных операторов. | |
/// Строки можно объединить, просто разместив их рядом друг с другом | |
/// без необходимости использования дополнительных операторов. |
[language/lang-code]
(example[python/fr-fr]
or[java/en]
)