Всеобъемлющее руководство по программированию дротиков: ускоренный курс (часть - 1)
Все, что вам нужно знать, чтобы начать работу с языком программирования Dart.
Большую часть времени мы проводим часы за просмотром контента на YouTube или других сайтах, и все, что нам нужно, - это начать работать с этим языком. Если вы собираетесь стать лучшим разработчиком, вам нужно изучить все основные концепции, но если вы хотите создавать что-то как можно быстрее, все, что вам нужно, - это ускоренный курс.
Зачем изучать программирование на Dart?
Dart - относительно простой, современный и высокоэффективный язык программирования. Dart - это оптимизированный для клиентов язык программирования для приложений на нескольких платформах. Dart разработан Google и используется для создания мобильных, настольных, серверных и веб-приложений. Dart - это объектно-ориентированный язык, основанный на классах и сборщик мусора, с синтаксисом в стиле C. Dart может компилироваться как в собственный код, так и в JavaScript.
Темы, которые мы собираемся осветить во всех частях:
- Hello World (Все, что нам нужно для изучения языка программирования 😅)
- Комментарии
- Принимая вход
- Типы данных
- Операторы
- Условные утверждения
- Петли
- Функции
- Обработка исключений
- Коллекции
- Объектно-ориентированное программирование
Темы, которые мы собираемся осветить в этой части:
- Привет, мир
- Комментарии
- Принимая вход
- Типы данных
- Операторы
1. Привет, мир:
Main - это специальная, обязательная функция верхнего уровня, с которой начинается выполнение приложения. Каждое приложение должно иметь функцию верхнего уровня main()
, которая служит точкой входа в приложение.
Итак, не теряя времени, напишем нашу программу hello world.
void main() { print(“Hello World”); }
2. Комментарии
Комментарий в программе - это как заметка для всех разработчиков, которые собираются читать эту программу.
Комментарии предназначены только для людей, когда компилятор проигнорирует их.
void main() { //it's single line comment /* Multiple Line Comment */ print(“Hello World”); }
3. Принимая участие
Вы можете сделать стандартный ввод от пользователя через консоль с помощью функции readLineSync (), и для этого вам необходимо импортировать библиотеку dart : io из Дротика.
import ‘dart:io’; void main(List<String> args) { stdout.write(“What’s your name: “); String name = stdin.readLineSync(); print(name); }
4. Типы данных
Прежде чем погрузиться в типы данных, давайте поговорим о переменных.
Переменные
Переменная - это ссылка или символическое имя области памяти компьютера. Проще говоря, это похоже на математическое уравнение в вашей начальной школе, например, x = 5, где мы сохранили 5 в x. Мы можем изменить его ценность в соответствии с нашими потребностями. Например, мы можем заменить его значение на x = «name» или что угодно.
Некоторые правила объявления переменных:
- Переменная может быть комбинацией букв нижнего регистра (от a до z), прописных (от A до Z), цифр (от 0 до 9) или символа подчеркивания (_).
- Переменная не может начинаться с цифры. 1 переменная недопустима, но переменная 1 в порядке.
- Ключевые слова нельзя использовать в качестве имени переменной.
Числа
В Dart есть два типа чисел:
- int:
В Dart значения int могут быть от -263 до 263–1.
2. двойной:
64-битные (двойной точности) числа с плавающей запятой, как указано в стандарте IEEE 754.
void main() { // Numbers: int and double int age = 22; double num = 10.5; print(age + num); }
Нить
Строка Dart - это последовательность кодовых единиц UTF-16. Вы можете использовать одинарные или двойные кавычки для создания строки:
Вы можете поместить значение выражения в строку, используя ${expression}
. Если выражение является идентификатором, вы можете пропустить {}.
void main() { // String and String iterpolation String name = “Rajesh Berwal”; print(‘My nname is $name and the length of the name with space is ${name.length}’); }
Логический
Для представления логических значений у Dart есть тип с именем bool
. Только два объекта имеют тип bool: логические литералы true
и false
.
void main() { // Boolean bool isWorking = true; print(“Are you working: ${isWorking}”); bool notWorking = false; print(“Are you working: ${isWorking}”); }
Константы и финал
Если вы никогда не собираетесь изменять переменную, используйте final
или const.
void main() { // Creating Constants /* -> final variable is only initialized when it’s accessed -> const variable is initialized at the compile time -> main difference const keyword get memory location at the compile time -> but final variable only when it is accessed */ const daysInLeapYear = 366; print(‘Days in leap year: $daysInLeapYear’); final pi = 3.14; print(pi); }
Объявление переменной динамически
Переменные, объявленные без статического типа, неявно объявляются как динамические.
void main() { // We can also declare variable dynamically var something = “Somewhere”; print(something); var num = 5; print(num); }
5. Операторы:
Арифметические операторы
Dart поддерживает обычные арифметические операторы, как показано в следующем примере:
void main() { print(2 + 3 == 5); print(2 - 3 == -1); print(2 * 3 == 6); print(5 / 2 == 2.5); // Result is a double print(5 ~/ 2 == 2); // Result is an int print(5 % 2 == 1); // Remainder
print('5/2 = ${5 ~/ 2} r ${5 % 2}' == '5/2 = 2 r 1'); }
Операторы сравнения (отношения)
Вот пример использования каждого из операторов равенства и отношения:
void main() {
print(2 == 2);
print(2 != 3);
print(3 > 2);
print(2 < 3);
print(3 >= 3);
print(2 <= 3);
}
Логические (булевы) операторы
Вы можете инвертировать или комбинировать логические выражения с помощью логических операторов.
!expr
inverts the following expression (changes false to true, and vice versa)||
logical OR&&
logical AND
Вот пример использования логических операторов:
if (!done && (col == 0 || col == 3)) {
// ...Do something...
}
Побитовые операторы
Вы можете управлять отдельными битами чисел в Dart. Обычно вы используете эти побитовые операторы и операторы сдвига с целыми числами.
&
AND|
OR^
XOR~ expr
Unary bitwise complement (0s become 1s; 1s become 0s)<<
Shift left>>
Shift right
Вот пример использования побитовых операторов и операторов сдвига:
void main() { final value = 0x22; final bitmask = 0x0f;
print((value & bitmask) == 0x02); // AND print((value & ~bitmask) == 0x20); // AND NOT print((value | bitmask) == 0x2f); // OR print((value ^ bitmask) == 0x2d); // XOR print((value << 4) == 0x220); // Shift left print((value >> 4) == 0x02); // Shift right }
Операторы присваивания
Как вы уже видели, значения можно назначать с помощью оператора =
. Чтобы назначить, только если присвоенная переменная имеет значение NULL, используйте оператор ??=
.
// Assign value to a
a = value;
// Assign value to b if b is null; otherwise, b stays the same
b ??= value;
Операторы составного присваивания, такие как +=
, объединяют операцию с присваиванием.
= –= /= %= >>= ^= += *= ~/= <<= &= |=
В следующем примере используются операторы присваивания и составного присваивания:
void main() {
var a = 2; // Assign using =
a *= 3; // Assign and multiply: a = a * 3
print(a == 6);
}
Послушайте мой совет, если вы хотите стать лучшим разработчиком, тогда работайте над начальным сроком программирования, потому что синтаксис меняется в разных языках программирования, но концепции остаются прежними. Ускоренный курс разработан, чтобы помочь вам начать работу с языком программирования dart, чтобы вы могли быстрее создавать свои приложения. Для лучшего понимания изучите внутреннюю работу этого языка.
Чтобы лучше понять временную сложность программы, вы можете прочитать нашу статью: