С# для новичков: развеиваем мифы и пишем простого чат-бота

Средства разработки C++C++ development tools

Разработка приложений C++ в Visual StudioOverview of C++ Development in Visual StudioИспользование интегрированной среды разработки Visual Studio для создания проектов, редактирования кода, создания ссылок на библиотеки, компиляции, отладки, создания модульных тестов, выполнения статического анализа, развертывания и многого другого.How to use the Visual Studio IDE to create projects, edit code, link to libraries, compile, debug, create unit tests, do static analysis, deploy, and more.

Проекты и системы сборкиProjects and Build SystemsКак создать и настроить проекты Visual Studio C++, проекты CMake и другие типы проектов с помощью компилятора MSVC и параметров компоновщика.How to create and configure Visual Studio C++ projects, CMake projects, and other kinds of projects with MSVC compiler and linker options.

Написание и рефакторинг кода C++Writing and refactoring C++ codeКак использовать функции производительности в редакторе C++ для рефакторинга, понимания и написания кода и перемещения по нему.How to use the productivity features in the C++ editor to refactor, navigate, understand and write code.

Отладка машинного кодаDebugging Native CodeСведения об использовании отладчика Visual Studio с проектами C++.Use the Visual Studio debugger with C++ projects.

Общие сведения об анализе кода на C и C++Code analysis for C/C++ overviewИспользуйте заметки SAL или средства проверки C++ Core Guidelines для выполнения статического анализа.Use SAL annotations or the C++ Core Guidelines checkers to perform static analysis.

Написание модульных тестов для C/C++ в Visual StudioWrite unit tests for C/C++ in Visual StudioСоздание модульных тестов с помощью платформы модульного тестирования Майкрософт для C++, Google Test, Boost.Test или CTest.Create unit tests using the Microsoft Unit Testing Framework for C++, Google Test, Boost.Test, or CTest.

Как эффективнее работать с C#

Для эффективной работы полезно знать о дополнительных инструментах. Вот некоторые из них:

  1. WPF (Windows Presentation Foundation) поможет легко и быстро создать интерфейс для любых экранов, уменьшает количество кода, отображающего интерфейс.
  2. Xamarin — фреймворк для разработки кроссплатформенных приложений для Windows Phone, Android и iOS. То есть вы напишете один код, и он сразу будет работать на всех основных платформах.
  3. ASP.NET помогает просто и быстро связать серверный код с клиентским в серверных приложениях и веб-разработке.
  4. Entity Framework — один из лучших фреймворков для работы с базами данных. Позволяет работать с данными как с объектами.
  5. LINQ (Language Integrated Query) — мини-язык запросов, встроенный в C# и позволяющий легко выбирать, фильтровать, сортировать и группировать любые данные из любых источников: баз данных, массивов, структур, файлов и так далее.
  6. Visual Studio — среда разработки, созданная специально для языка C#.

Писать код в среде разработки удобно. У неё много плюсов, например:

Теперь давайте рассмотрим перспективы данной профессии

  • 01.Засилье гаджетов требует все большего количества программистов, и в дальнейшем их численность будет только расти

    Смартфоны, планшеты, очки виртуальной реальности, гироскутеры, дроны, беспилотные автомобили, фитнес-браслеты, смарт-часы — все это требует огромной армии программистов, которые ежедневно создают новые приложения, чтобы упростить различные процессы повседневной жизни. Подобные технологии уже породили целые пласты новых профессий среди программистов, вроде архитекторов виртуальной реальности или разработчиков систем с оперирование большими данными. Более того, через несколько лет знание основ программирования станет неотъемлемой частью любого образованного человека, то она — менеджер, то юрист, или агроном.

  • 02.Программист может работать в любой точке мира, не выходя из дома

    Программисты раньше остальных поняли, что работать из офиса не обязательно. Можно быть эффективным, работая удаленно. Именно поэтому среди программистов так много фрилансеров.

    Действительно, какой смысл программисту сидеть в офисе, если его код все равно никто не понимает, кроме него самого? Нет, конечно, если офис сконструирован как креативный пространство с бесплатными пирожными и кофе, то ходить туда — это даже удовольствие. Однако такие удобства, как правило, могут предложить только крупные международные IT-компании.

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

  • 03.Для получения образования совершенно не обязательно учиться в вузах

    В вузах учат теории, а работодателям нужна практика. Даже опытные инженеры, которые устраиваются на работу в солидные международные компании, проходят шестинедельные курсы, значительная часть которых посвящена программированию.

Но как же тогда люди приходят в профессию? Некоторые учатся самостоятельно, а многие заканчивает курсы, которые, в большинстве случаев, вполне достаточно, чтобы найти первую работу в этой сфере. Обучение можно пройти даже отдаленно, а после выпуска пойти на стажировку, которое поможет закрепить все знания и выйти на рынок труда настоящим специалистом.

Специфика работы программиста:

  • Постоянное профессиональное самосовершенствование,

  • Высокий спрос на рынке,

  • Высокая заработная плата,

  • Работать можно не имея диплома,

  • Преимущественно творческая профессия.

Перспективы профессии программиста:

  • Успешный начинающий программист в будущем может претендовать на должности:

  • руководитель группы программистов,

  • IT-директор,

  • менеджер проекта,

  • можно перемещаться в рамках специальности, совершенствуясь профессионально.

Заключение

Трудно начать, но как только вы это сделаете, не должно быть никакого оглядывания назад. Кроме того, это хорошая идея, чтобы управлять своими ожиданиями на протяжении всего путешествия. Научиться работать с кодом непросто, и для этого требуется специальная практика. Если вы старше 30 лет и находитесь на этапе изучения, то прокомментируйте это ниже и поделитесь своим опытом.

Установка Visual Studio 2015Visual Studio 2015 Installation

Установить Visual Studio 2015 можно из раздела Скачивание более старых версий Visual Studio.To install Visual Studio 2015, go to Download older versions of Visual Studio. Запустите программу установки и щелкните Выборочная установка, а затем выберите компонент C++.Run the setup program and choose Custom installation and then choose the C++ component. Чтобы добавить поддержку C и C++ в существующую установку Visual Studio 2015, нажмите кнопку «Пуск» Windows и введите Установка и удаление программ.To add C and C++ support to an existing Visual Studio 2015 installation, click on the Windows Start button and type Add Remove Programs. Откройте программу из списка результатов и найдите установку Visual Studio 2015 в списке установленных программ.Open the program from the results list and then find your Visual Studio 2015 installation in the list of installed programs. Дважды щелкните ее, а затем выберите Изменить и выберите компоненты Visual C++ для установки.Double-click it, then choose Modify and select the Visual C++ components to install.

Установка Visual Studio 2017Visual Studio 2017 Installation

В Visual Studio 2017 можно с легкостью выбрать и установить только необходимые компоненты.In Visual Studio 2017, it’s easy to choose and install just the features you need. Поскольку она занимает меньше памяти, она быстро устанавливается и при установке меньше влияет на систему.And because of its reduced minimum footprint, it installs quickly and with less system impact.

Предварительные требованияPrerequisites

  • Широкополосное подключение к Интернету.A broadband internet connection. Установщик Visual Studio может загрузить несколько гигабайт данных.The Visual Studio installer can download several gigabytes of data.

  • Компьютер под управлением Microsoft Windows 7 или более поздних версий.A computer that runs Microsoft Windows 7 or later versions. Для обеспечения оптимальной среды разработки рекомендуется использовать Windows 10.We recommend Windows 10 for the best development experience. Прежде чем устанавливать Visual Studio, убедитесь, что в системе установлены последние обновления.Make sure that the latest updates are applied to your system before you install Visual Studio.

  • Проверьте, что на диске достаточно свободного места.Enough free disk space. Для работы Visual Studio требуется не менее 7 ГБ дискового пространства, однако может потребоваться 50 ГБ или более, если установлены многие дополнительные компоненты.Visual Studio requires at least 7 GB of disk space, and can take 50 GB or more if many common options are installed. Рекомендуем установить Visual Studio на диск C.We recommend you install it on your C: drive.

Дополнительные сведения о дисковом пространстве и требованиях к операционной системе см. в разделе Требования к системе для семейства продуктов Visual Studio.For details on the disk space and operating system requirements, see Visual Studio Product Family System Requirements. Установщик сообщает, сколько места на диске требуется для установки выбранных дополнительных компонентов.The installer reports how much disk space is required for the options you select.

Цель данной статьи:

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

Все действия будут производиться на Ubuntu версии 16.04.
Используя компилятор g++ версии:

Состав компилятора g++

  • cpp — препроцессор
  • as — ассемблер
  • g++ — сам компилятор
  • ld — линкер

Мы не будем вызывать данные компоненты напрямую, так как для того, чтобы работать с C++ кодом, требуются дополнительные библиотеки, позволив все необходимые подгрузки делать основному компоненту компилятора — g++.

Зачем нужно компилировать исходные файлы?

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

Стать программистом можно в любом возрасте. В 30 лет — не поздно!

Это факт, подтвержденный десятками историй реальных людей. Вообще, отвлечемся от IT. Я на 100% убежден, что менять работу можно и нужно в любом возрасте, особенно если вас от этой работы уже тошнит. Как это было у меня, и как это было у Евгения, автора истории «Из админа в программисты в 30 лет».

Я лично физически уже не мог себя заставить на работу ходить. И что мне нужно было делать — просто потерпеть еще 30 лет до пенсии? Шикарная перспектива. Жизнь у нас одна, какой смысл заставлять себя ходить на надоевшую работу и работать с неприятными тебе людьми? Так можно поступить, только если нет выбора. Но на самом деле он есть всегда, просто мы часто его не осознаем.

30 лет — это вообще не тот возраст, в котором стоит говорить про «поздно». Возможно, поздновато уже посещать студенческие вечеринки, но учиться чему-то новому уж точно не поздно. Люди начинают совершенно новую жизнь и в 50, и в 75 лет. Есть такой отличный проект «Возраст счастья», там такие истории собраны, что я просто был в приятном шоке. Люди меняют жизнь кардинально и в 70 лет.. Представьте, как громко такой человек будет смеяться, если ему расскажут о сомнениях тридцатилетних. Поэтому вопрос «не поздно ли» совершенно не имеет смысла.

Вообще, когда задают этот вопрос, чаще всего имеют в виду две вещи.

Тут лишь один способ проверить — попробовать самому. Конечно, весьма вероятно, что мозги «подзасохли» :-) И вы это очень сильно почувствуете, когда начнете проходить курсы Хекслета, вас просто наизнанку будет выворачивать. Но одновременно это будет рост и очень сильное развитие. На самом деле ведь как — чем вам сложнее что-то дается, чем больше усилий требует, тем сильнее развитие.

В целом, разработка — это, как говорится, не rocket science. От вас не потребуются суперинтеллект и фотографическая память. Нужно банальное упорство, готовность ежедневно выделять время и продвигаться вперед. Всё. Такой простой тест. Если вы сможете ежедневно заставлять себя учиться по 2 часа и больше, то, скорее всего, сможете стать программистом.

Возьмут ли меня, почти пенсионера, на работу?

Возьмут без вопросов. Тому есть множество подтверждений. Да, существуют команды из продвинутых 20-летних ребят, куда наверное вы впишетесь с трудом, если вам 45. Но также есть команды, где средний возраст — 30 лет, поэтому совершенно не парьтесь о своем возрасте. Более того, есть удаленная работа (и ее все больше с каждым годом), есть фриланс, есть Upwork, где вообще всем плевать, кто вы, где вы, как вы выглядите.

Будь вам хоть 80 лет, работайте на здоровье, если имеете какие-то полезные и востребованные навыки. К тому же у вас есть и преимущества перед двадцатилетними. Это наработанные навыки коммуникации, бОльшая ответственность, более широкий кругозор, образование старой закалки, готовность залезть в сложную штуку и разобраться, как она работает, а не впадать в панику, если гугл не помог.

На этой позитивной ноте предлагаю перейти к погружению в реальный мир.

Пишем чат-бота

Теперь пора перейти к практике. Сегодня мы будем работать в онлайн-среде ideone. Серьезные программы в онлайн-средах не пишутся, но для обучения и практики это самое то!

Итак, откроем сайт ideone. Слева будет окошко для кода. Возможно, что по умолчанию там будет выбран другой язык — тогда просто нажмите на его название и выберите C#.

В окошке уже будет написано несколько строчек основы, а свой код мы будем писать под надписью «your code goes here».

Самые первые слова любого программиста — «Привет, мир!» (Hello, World!), поэтому и мы начнём с них. Хотя не совсем: мы позволили себе заменить «мир» на «Скиллбокс» ;) Чтобы отобразить наше сообщение, используем команду Console.WriteLine (). Свой текст напишем в скобках и не забудем поставить кавычки. Вот так:

Console.WriteLine () — команда для отображения информации.

Чтобы запустить свой код и протестировать, работает ли он, нажмём зелёную кнопку RUN в углу.

Чтобы общаться с нашим будущим чат-ботом, нам надо научить его читать — то есть сделать так, чтобы мы могли задавать информацию, с которой он будет работать. Для этого мы используем команду Console.ReadLine (). Она прочитает текст, который написал пользователь.

Давайте уже напишем начало: пусть чат-бот здоровается, а потом читает наше сообщение:

Прочитать-то он прочитает, но память у бота короткая — надо, чтобы он это сообщение запомнил. Для этого сохраним его в переменную — назовём её, например, text. Вместо Console.ReadLine () напишем вот так:

Console.ReadLine () — команда, читающая сообщение пользователя;var — команда, которая отмечает, что мы создаём новую переменную. После неё мы пишем название переменной.

Пусть бот уточняет, что именно мы ему сказали, — вдруг мы забудем. Сделаем мы это той же командой Console.WriteLine (), только в этот раз мы не знаем заранее, что надо будет написать, поэтому используем переменную. Чтобы вставить переменную в текст, обозначим её фигурными скобками, а перед кавычками напишем знак доллара, вот так:

$ позволяет вставить переменную в текст. Пишем его перед кавычками, а саму переменную в тексте обозначаем фигурными скобками.

Важно! Не забывайте ставить точку с запятой в конце каждой строчки!

Чтобы задать свой input, запустите программу, а потом нажмите кнопку edit слева вверху над кодом.

Снизу откроется окошко с надписью input над ним. То, что вы там напишете, программа использует при следующем запуске.

Сейчас наш чат-бот умеет здороваться и может повторить, что мы ему написали. Давайте научим его реагировать на то, что мы пишем. Для этого нам понадобится конструкция if — она проверяет, соблюдено ли условие, и решает, что делать дальше. На новой строке напишем if и в круглых скобках напишем условие. Пусть в ответ на «Привет» бот отвечает «Здарова!». Мы можем написать вот так:

Для сравнения пишется двойной знак =. Обычный мы используем, если надо сохранить значение в переменную. Не путайте!

У нашего решения есть несколько проблем. Первая: если мы напишем весь свой текст маленькими или большими буквами, программа его не опознает. Что с этим делать? Добавим команду ToLower (), которая заменит все буквы на маленькие, и текст, с которым мы сравниваем сообщение пользователя, тоже перепишем маленькими буквами, вот так:

А что, если мы напишем «Привет, как дела?»? Наш бот никак не отреагирует. Чтобы это исправить, используем функцию Contains (), которая проверит, есть ли нужная строка в нашем вводе.

Можем разнообразить словарный запас нашего бота, добавив ещё условий:

Теперь, если мы напишем «Привет! Как тебя зовут? Как дела?», наш бот напишет ответ на все фразы по очереди.

Важно! Если бы вы писали более сложного «настоящего» бота или другую программу, вы бы не копировали один и тот же код много раз, а использовали файл, базу данных или что-то другое. Когда одна и та же часть повторяется много раз, код неудобно читать и тяжело исправлять

А что, если мы хотим получать не только такие ответы, но и меняющуюся информацию? Например, нам интересно, какой сегодня день. Если бы мы написали сегодняшнюю дату в такую же конструкцию, как выше, то или нам пришлось бы переписывать код каждый день, или наша программа сразу бы устарела. Нам поможет функция DateTime. Спросим у неё, какая сейчас (Now) дата, переведём это в строку нужного формата (ToString («dd.MM.yyyy»)) и всё это сохраним в переменную date. Вот так это выглядит:

И напоследок ещё одна важная тема.

Конструкция if часто идет в паре с else. Else описывает, что сделать в том случае, если условие из if не выполнится.

Используется else после if — но мы уже не пишем условие, а только действие в фигурных скобках. Вот пример этой конструкции:

Теперь, если мы напишем сообщение боту без слова «привет», он обидится и будет ругаться.

Как самостоятельно стать программистом с нуля

Дальнейшие материалы для тех, кто уже определился и имеет базовое понимание алгоритмов, переменных и инструкций.

Итак, поехали! Если бы сейчас я начинал с нуля изучать веб-разработку самостоятельно (понимая, что без вложения денег это более долгий путь), то сам себе я бы порекомендовал такой путь:

1. Разобраться в HTML и CSS

Хороший курс для базового освоения HTML и CSS: https://learn.shayhowe.com/html-css/ (English) или https://webref.ru/layout/learn-html-css (перевод).

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

После этого стоит посмотреть на возможности Bootstrap, который стал стандартом де-факто для ускоренной разработки веб-приложений: http://getbootstrap.com/

Этого будет достаточно для следующих шагов.
Возможно на этом этапе вы захотите остановиться и изучить CSS подробнее. Это даст вам возможность работать верстальщиком — человеком, который делает из дизайна статическую HTML страницу, после чего программист ее оживляет, реализуя логику проекта.

На этом тоже можно зарабатывать — как на фрилансе, так и работая в ИТ-компании, которая специализируется на веб-разработке.

Но раз мы решили стать программистом — двигаемся дальше!

2. Познакомиться с jQuery

Для этого я рекомендую книгу «jQuery — учебник для начинающих»:http://anton.shevchuk.name/jquery-book/

Если следом пойдет https://angularjs.org/ или http://backbonejs.org/ — то это путь во фронт-енд разработку. Хорошая специальность, тем более, что такие знания пригодятся любому программисту, который выбрал веб-разработку.

Мой совет — пока остановиться на jQuery и двигаться дальше.

3. Освоить серверный язык программирования

Тут выбор большой. Самые перспективные языки программирования — Ruby, Java, Python, Node.JS (Javascript для сервера).

Самым простым языком программирования для начинающего будет Python. Если вы изучите Python, а затем фреймворк Django для веб-разработки — у вас будет все необходимое для самостоятельной реализации довольно сложных проектов.

Хороший вариант: язык программирования Python и фреймворк Django

Плюс — Python и Django научат вас «правильному» программированию.  Python стабильно входит в ТОП5-10 самых востребованных языков, а хорошие специалисты в Python одни из самых высокооплачиваемых программистов. Python одновременно простой и понятный для начинающих программистов язык программирования, и при этом используется во многих крупных компаниях и на больших проектах.

Вообщем, я люблю Python и рекомендую начать с него.

Начать можно прямо на сайте:

Среди других материалов рекомендую Learn Python The Hard Way. книгу «Простой Python. Современный стиль программирования». И, конечно The Python 3 Tutorial.

Django — возможно лучший фреймворк для веб-разработки

Лучший инструмент на все случаи жизни очень сложно найти. Django имеет все шансы стать таким инструментом для веб-разработки.

Я точно рекомендую познакомится с ним.

С чего начать для изучения Django:

Начните с официальной документации, там очень хороший tutorial: https://docs.djangoproject.com/en/dev/intro/

Также пройдите https://tutorial.djangogirls.org/en/

Затем посмотрите http://www.tangowithdjango.com/

Tango with Django — это хорошая возможность подтянуть английский и одновременно получить понимание того, как устроены веб-проекты и как всё работает.

Альтернативный вариан — PHP и WordPress

Другой путь — начать с PHP и работы с популярными CMS. Если вы изучаете программирование сами и хотите быстро начать работать — начните с PHP.

Многие считают PHP «не совсем настоящим» языком программирования и для этого есть основания. PHP редко используется в крупных веб-приложениях и заточен только для веб — использовать его в других областях не получится.

С другой стороны — PHP лидирует по количеству запущенных в мире сайтов. На нем основаны самые популярные CMS (системы управления сайтами).

Для старта рекомендую книгу: «Изучаем РНР и MySQL» авторов Линн Бейли и Майкл Моррисон

После этого разберитесь с созданием тем под WordPress — это самая популярная CMS в мире, если оценивать по количеству запущенных сайтов.

Хорошо разобравшись с этим, уже можно найти работу. Под PHP и WordPress очень много сайтов, поэтому работы хватит всем.

Мост для классических приложенийDesktop Bridge

В Windows 10 можно упаковать существующее классическое приложение или COM-объект в качестве приложения UWP и добавить функции UWP, такие как сенсорный ввод, или вызвать API из современного набора API Windows.In Windows 10 you can package your existing desktop application or COM object as a UWP app and add UWP features such as touch, or call APIs from the modern Windows API set. Можно также добавить приложение UWP в решение для настольных систем в Visual Studio и упаковать их в один пакет и использовать интерфейсы API Windows для обмена данными между ними.You can also add a UWP app to a desktop solution in Visual Studio, and package them together in a single package and use Windows APIs to communicate between them.

В Visual Studio 2017 версии 15,4 и более поздних версий можно создать проект пакета приложений Windows, чтобы значительно упростить работу по упаковке существующего настольного приложения.In Visual Studio 2017 version 15.4 and later, you can create a Windows Application Package Project to greatly simplify the work of packaging your existing desktop application. В отношении того, какие вызовы реестра или API-интерфейсы используются настольным приложением, применяются некоторые ограничения, но во многих случаях можно создать альтернативные пути кода для обеспечения аналогичной функциональности при работе в пакете приложения.A few restrictions apply with respect to what registry calls or APIs your desktop application uses, but in many cases you can create alternate code paths to achieve similar functionality while running in an app package. Дополнительные сведения см. в статье Мост для классических приложений.For more information, see Desktop Bridge.

Создание приложений на C++Write applications in C++

Универсальные приложения Windows (C++)Universal Windows Apps (C++)Руководства и справочные материалы в Центре разработчика Windows.Find guides and reference content on the Windows Developer Center. Сведения о разработке приложений UWP см. в разделах Введение в универсальную платформу Windows и Создание первого приложения UWP на C++.For information about developing UWP apps, see Intro to the Universal Windows Platform and Create your first UWP app using C++.

Классические приложения (C++)Desktop Applications (C++)Сведения о создании классических приложений с машинным кодом на C++ для Windows.Learn how to create traditional native C++ desktop applications for Windows.

Программирование .NET с использованием C++/CLI.NET Programming with C++/CLIСведения о создании библиотек DLL, обеспечивающих взаимодействие между машинным кодом на C++ и программами .NET, написанными на таких языках, как C# или Visual Basic.Learn how to create DLLs that enable interoperability between native C++ and .NET programs written in languages such as C# or Visual Basic.

Программирование для LinuxLinux ProgrammingИнтегрированная среда разработки Visual Studio позволяет написать код и развернуть его на удаленном компьютере с ОС Linux для компиляции с помощью GCC.Use the Visual Studio IDE to code and deploy to a remote Linux machine for compilation with GCC.

Создание библиотек DLL C/C++ в Visual StudioCreate C/C++ DLLs in Visual StudioИспользование Win32, ATL и MFC для создания классических библиотек DLL для Windows, а также сведения о компиляции и регистрации библиотеки DLL.Find out how to use Win32, ATL, and MFC to create Windows desktop DLLs, and provides information about how to compile and register your DLL.

Параллельное программированиеParallel ProgrammingИспользование библиотеки параллельных шаблонов, C++ AMP, OpenMP и других компонентов, связанных с многопоточностью в Windows.Learn how to use the Parallel Patterns Library, C++ AMP, OpenMP, and other features that are related to multithreading on Windows.

Рекомендации по безопасностиSecurity Best PracticesЗащита приложений от вредоносного кода и несанкционированного использования.Learn how to protect applications from malicious code and unauthorized use.

Облачное и веб-программированиеCloud and Web ProgrammingВ C++ имеются несколько параметров для соединения с веб-узлом и облаком.In C++, you have several options for connecting to the web and the cloud.

Доступ к даннымData AccessПодключение к базам данных через ODBC и OLE DB.Connect to databases using ODBC and OLE DB.

Текст и строкиText and StringsПодробнее о работе с различными форматами текста и строк и кодировками для локальных и международных разработок.Learn about working with different text and string formats and encodings for local and international development.

Приложения универсальной платформы WindowsUniversal Windows Platform apps

Универсальная платформа Windows (UWP) — это современный API Windows.The Universal Windows Platform (UWP) is the modern Windows API. Приложения UWP работают на любом устройстве Windows 10, используют XAML для пользовательского интерфейса и полностью поддерживают касание.UWP apps run on any Windows 10 device, use XAML for the user-interface, and are fully touch-enabled. Дополнительные сведения об универсальномконтроллере платформы Windows см. в статье что такое приложение универсальная платформа Windows (UWP) .For more information about UWP, see What’s a Universal Windows Platform (UWP) app? and Guide to Windows Universal Apps.

Исходная поддержка C++ для UWP состояла из (1) C++/CX, диалекта C++ с расширениями синтаксиса или (2) библиотеки среда выполнения Windows (WRL), основанной на стандартном C++ и COM.The original C++ support for UWP consisted of (1) C++/CX, a dialect of C++ with syntax extensions, or (2) the Windows Runtime Library (WRL), which is based on standard C++ and COM. C++/CX и WRL по-прежнему поддерживаются.Both C++/CX and WRL are still supported. Для новых проектов рекомендуется использовать c++/WinRT, который полностью основан на стандартном c++ и обеспечивает более высокую производительность.For new projects, we recommend C++/WinRT, which is entirely based on standard C++ and provides faster performance.

Оцените статью:
Оставить комментарий
Adblock
detector