Заполните форму и наш менеджер свяжется с вами
Carbon: все, что нужно знать о новом языке программирования от Google
07 октября 2024

Carbon: все, что нужно знать о новом языке программирования от Google

Carbon: все, что нужно знать о новом языке программирования от Google

Содержание статьи

    Начать бесплатно

    Carbon — экспериментальный язык программирования, разработанный компанией Google в качестве альтернативы популярному С++. Отличается простым синтаксисом, обширными библиотеками и возможностью миграции кода. В статье рассматриваем особенности новинки, преимущества, правила применения.

    Подберите программу обучения, узнайте проходной балл и начните учиться бесплатно

    Что такое Carbon

    Презентация Carbon состоялась летом 2022 года. Разработкой занималась команда из пяти опытных специалистов под руководством инженера Чендлера Каррута. Необходимость создания нового языка программирования обусловлена двумя причинами:

    • Идея. В профессиональных кругах считается, что C++ становится труднее развивать. Он превратился в мешанину новых и устаревших элементов.
    • Бизнес-проект. Google использует C++. Компания потратила значительные средства на совершенствование экосистемы. В процессе возникали препятствия, мешающие достижению согласия с разработчиками. Один из примеров – отклоненное предложение Гугла по замене unordered_map другим кодом – flat_hash_map. Так, корпорация приняла решение разработать более эффективный аналог.

    Carbon – это открытый проект, находящийся на GitHub под лицензией Apache-2.0-with-LLVM-Exception. Документация, оформление, реализация, дополнительные инструменты только разрабатываются. Выпуск первой версии запланирован на 2024-2025 гг.

    Источник: ru.freepik.com

    Кому и зачем он нужен

    Подходит для крупных корпораций, которые вынуждены использовать C++ и устали ждать от разработчиков новых фичей. Часто такие организации недовольны языком программирования из-за регулярно возникающих инцидентов безопасности. Производительность C++ больше не привлекает компании, потому что теперь не покрывает убытки от багов. По этой причине популярность набирает Rust, в котором количество сбоев меньше.

    В реальности сменить C++ на Carbon гораздо тяжелее. Разработчики продумывают, как сделать этот переход плавным и доступным. Создаются условия для импорта кодов, библиотек, проектов. По прогнозам специалистов, переезд займет не менее десяти лет.

    Carbon можно применять в проектах, связанных с разработкой программного обеспечения:

    • Создание веб-программ, сервисов, драйверов.
    • Разработка операционных систем.
    • Создание мобильных приложений для Android и iOS.
    • Работа с отображением больших объемов данных и аналитики.
    • Разработка компьютерных игр.

    Задача нового языка – сохранить функционал С++, но при этом устранить недостатки:

    • Запутанный синтаксис.
    • Пониженный уровень безопасности памяти и управления инструментами.
    • Сложности с применением абстракций.
    • Несовместимость стандартов и компиляторов, то есть программ для перевода исходного кода в машинный.
    • Нехватка модульности.
    • Чрезмерное количество легаси – кода, который перешел «по наследству» от предыдущих разработчиков.

    Какие у него особенности

    К преимуществам относятся:

    • Понятность синтаксиса. Доступен как для новичков, так и для опытных разработчиков.
    • Производительность и оперативность при выполнении поставленных задач.
    • Применение ключевых слов для внесения переменных, функций, классов, интерфейсов. К примеру, С++ требует использование сложных правил.
    • По умолчанию функции доступны исключительно для чтения. Это увеличивает уровень безопасности кода.
    • Использование выражений для наименования типов вместо усложненных стандартов. Благодаря этому код понятен и не перегружен.
    • Построен на базе Open Source.

    Как работать с Carbon

    Язык программирования находится на стадии разработки Гуглом. Но уже доступна демонстрация прототипа – Carbon Explorer.

    Пошаговая инструкция, как установить и использовать:

    1. Установите Homebrew, чтобы перейти к загрузке пакетов. Это утилита для macOS и Linux.
    2. Загрузите Bazel – ресурс сборки и тестирования. Поддерживает разные платформы.
    3. Установите Low Level Virtual Machine (LLVM ) — виртуальная машина, которую применяет Carbon в работе.
    4. Загрузите Carbon Explorer.
    5. Напишите код и запустите для отображения результата.

    Подберите программу обучения, узнайте проходной балл и начните учиться бесплатно

    Основы языка: синтаксис и структуры данных

    • Упрощенный синтаксис. Дружественен к разработкам С++, прост для понимания.
    • Модульная система и пакетный менеджер.
    • Шаблоны, схожие с Rust.
    • Декларации. Методы отражаются через ключевое слово fn, переменные – var, наименования переменных должны заканчиваться символом «:» + пробел, константы – let, пакеты – package, комментарии – //.
    • Переменные: bool – для булевых значений true или false, i8/i16/i32/i64/i128/i256 – для целочисленных типов, u8/u16/u32/u128/u256 – для беззнаковых целых типов, f16/f32/f64/f128 – для float, чисел с плавающей запятой.
    • Одиночные и многострочные строки.
    • Кортежи – значения с координатами. Отражаются с помощью круглых скобок.
    • Указатели.
    • Массивы.
    • Циклы. Поддерживаются стандартные операторы.
    • Классы.
    • Дженерики. Объявляются через типы параметров T.

    Чем отличается от других популярных языков

    Carbon

    C++

    Rust

    Синтаксис

    Удобнее в сравнении с аналогами, так как Google ликвидирует накопившееся легаси

    Сложный

    Упрощенный

    Поддержка перехода на другой язык

    Помогает пользователям переносить кодовую базу на новый язык

    Закрытая экосистема

    Нет миграции

    Обновления

    Регулярное совершенствование

    Часто встречается проблема с обратной совместимостью. Новые приложения должны корректно работать с устаревшими версиями библиотек, что приводит к стагнации системы

    Постоянное развитие

    Поддержка моделей

    Присутствует

    Мало кто пользуется

    Присутствует

    Безопасность памяти

    Учитывает проблему. Применяет указатели и ссылку, чтобы изменить параметры данных

    Снижена

    Одна из основных функций. Применяет систему владения и заимствования для контроля доступа к информации

    Производительность

    Высокая

    Высокая

    Высокая

    Какие перспективы развития языка

    Carbon может повторить путь Go. Как только Гугл перестанет жестко контролировать развитие системы, спецификации, эту функцию подхватит комьюнити программистов. Со временем оно наберет вес и с помощью голосования выберет представителей, которые станут демонстрировать интересы сообщества.

    Разработка строится с учетом обратной связи от пользователей С++, а спецификации основываются на имеющихся стандартах в сфере системного программирования. Среди них:

    • Международный стандарт ISO. Применяется для переезда с C++.
    • Low Level Virtual Machine. Для создания компиляторов и утилит.
    • Транслятор для C-подобных языков – Clang. Используют для кодогенерации.
    • Language Server Protocol (LSP). Для настройки связи с IDE и редакторами.
    • Система сборки для Rust – Cargo. Нужен для учета пакетов и зависимостей.

    Экспериментальный язык программирования от Гугл берет во внимание опыт Rust, Swift, Kotlin, TypeScript, чтобы предложить улучшенные решения актуальных запросов.

    Источник: ru.freepik.com

    Типичные ошибки и как их исправить

    • Незнание философии нового языка программирования. Сначала изучите основы, а затем знакомьтесь с синтаксисом. Это поможет избежать сбоев при написании кода.
    • Неверное использование функций. Перестроиться на Carbon после С++ непросто. Этому нужно делить время и силы.
    • Недостаточное тестирование. Проводите отладку кода, чтобы заранее выявить ошибки.

    Главное, что нужно знать

    1. Carbon — новый язык программирования от Google, разработанный на замену С++.
    2. К особенностям относится: простой синтаксис, обширные библиотеки, высокая производительность, доступность миграции.
    3. С помощью Carbon можно разработать приложение, драйвер, операционную систему, компьютерную игру.
    4. Подходит для крупных корпораций, которые устали безрезультатно ожидать от С++ новых фичей и снижения числа угроз безопасности.
    5. С прототипом можно познакомиться на GitHub. Выпуск первой версии запланирован на 2024-2025 гг.

    Адреса поступления

    ЦФО
    г. Москва, Ленинградский пр-кт, д. 80, корпус Г
    Сокол
    +7 495 800–10–01 8 800 100–00–11
    Подберите программу обучения и начните учиться бесплатно
    Оставьте заявку, и мы откроем бесплатный доступ к вводной части обучения
    1 минута и 6 вопросов,
    чтобы узнать подходящую
    профессию
    Пройдите тест, чтобы узнать, на кого вам лучше учиться
    Начать бесплатно

    Подобрать программу и поступить

    Заполните форму и наш менеджер свяжется с вами
    Подберите программу обучения и начните учиться бесплатно
    Добро пожаловать
    Мы готовы ответить на Ваши вопросы
    WhatsAppTelegramПозвонить
    Уважаемый посетитель
    Если у вас есть вопрос, предложение или жалоба, пожалуйста, заполните короткую форму и изложите суть обращения в текстовом поле ниже. Мы обязательно с ним ознакомимся и в  30 - дневный срок ответим на указанный вами адрес электронной почты.
    30 дней
    * все поля обязательны для заполнения
    Jivo
    DMCA.com Protection Status