IBM Vala Guide
  • Обзор языка программирования Vala.
  • Обзор языка программирования Vala. Часть 1: Общие свойства и характеристики языка Vala
    • Начнём с азов
    • Компиляция и выполнение
    • Обзор синтаксиса
    • Функции
  • Часть 2 Объектно-ориентированное программирование на языке Vala
    • Классы и интерфейсы
    • Делегаты
    • Пример программы
  • Часть 3. Расширенные возможности языка Vala
    • Обработка ошибок
    • Многопоточность
    • Работа с библиотеками
Powered by GitBook
On this page

Was this helpful?

  1. Обзор языка программирования Vala. Часть 1: Общие свойства и характеристики языка Vala

Обзор синтаксиса

Как я уже сказал, синтаксис Vala во многом напоминает синтаксис C#, и те, кто знаком с C, C++, C# и прочими С-подобными языками, затруднений испытывать не будут. Тем не менее следует уделить внимание особенностям, отличающим Vala от прочих языков из "группы С".

Для переменных главным отличием является наличие механизма Type Inference (предполагаемый тип), позволяющий объявить переменную неопределённого типа следующим образом:

var b;

Базовые типы данных практически не отличаются от типов прочих языков: байтовый, Юникод-символ, числовые (все стандартные типы), логический, структура, перечисление, массив и UTF-8-строка.

Объявление, определение и работа с типами данных вполне очевидны, а приведение типов (type casting) можно выполнять так, как принято в C:

int a = 7;
float x = (float)a;

или по методике C#, например:

Window win = new Window( WindowType.TOPLEVEL );
Object obj = win as Object;

Подразумевается, что преобразование является осуществимым, т.е. класс Window является подклассом Object, иначе переменной obj будет присвоена null-ссылка.

Набор операторов Vala точно такой же, как в любом C-подобном языке, но перегружать (overload) их нельзя.

Управляющие конструкции: if-else и switch, циклы while, do-while и for. Есть ещё цикл foreach( int a in int_array ) {...} – принцип его работы очевиден.

PreviousКомпиляция и выполнениеNextФункции

Last updated 6 years ago

Was this helpful?