Кстати, вот как выглядит новая иконка:
Одним из дополнений является «Интерактивный C#».
На самом деле это окно REPL. Аббревиатура REPL означает цикл Read-eval-print (в переводе это будет что-то вроде «чтение-выполнение-отображение, повторение») Название цикла read-eval-print происходит от названий примитивов языка Лисп, реализующих аналогичную функциональность.
Примерно так выглядит программа REPL на Лиспе.
Всего одна строка кода:
То есть в первую очередь читается текст, затем выполняется как команда, выводится результат, и все это можно сделать еще раз.(loop (print (eval (read))))
Среда REPL может быть полезна не только для изучения языка, но и для любых экспериментов с API. Его также можно использовать для запуска сценариев C#.
Ранее REPL для Visual Studio и C# был доступен в виде расширения.
Теперь вы можете скачать его и для VS2015 (если вдруг по каким-то причинам вам не захочется обновляться до VS2015 update 1 или вас мучит любопытство посмотреть альтернативный вариант):
VisualStudio C# REPL Кроме того, существует несколько сайтов, позволяющих играть с C# онлайн.Например это: C# Pad: запуск кода C# онлайн .
Для того, чтобы открыть интерактивное окно C# из Visual Studio 2015, необходимо зайти в меню «Вид», выбрать «Другие окна» и подпункт «Интерактивный C#».
Откроется следующее окно:
Альтернативно, чтобы работать с интерактивным C#, вы можете открыть «Командную строку разработчика для VS2015» и ввести csi.
Начнем с простейшего кода C#, который вы можете запустить: Console.Write("Hello, World!")
Нажатие Enter нас не удивит и ожидаемо отобразит «Hello, World!» на экране.
При вводе кода вы можете заметить, что поддерживается IntelliSense. Вы можете ввести 5+10, нажать Enter и получить ответ в виде 15. Вы можете присвоить значение переменной.
И затем в любой последующей строке используйте эту переменную.
Например, вы можете попробовать простой запрос LINQ для данных из массива: int[] source = new[] { 3, 8, 4, 6, 1, 7, 9, 2, 4, 8 };
foreach (int i in source.Where(x => x > 5)) Console.WriteLine(i);
Запуск команд и установка значений переменных – это не все, что можно сделать в интерактивной строке.
Вы также можете указать ссылки на пространство имен, используя директиву #r. Например: #r "System.Windows.Forms"
using System.Windows.Forms;
var f= new Form { BackgroundImage = System.Drawing.Bitmap.FromFile("D:/fun.jpg") };
f.ShowDialog();
Некоторые пространства имен можно использовать без добавления директивы #r. Для примера скачаем файл с хабрастоража: using System.Net;
WebClient webClient = new WebClient();
webClient.DownloadFile(" https://hsto.org/files/229/aad/50d/229aad50de554be19ce60c60dbfd2e7e.png ", @"d:\myfile.png");
Этот текст можно либо ввести в интерактивной консоли C#, либо сохранить в текстовом файле в формате csx.
Использование директивы #нагрузка вы можете скачать и выполнить скрипт. Например, вот так: #load "myScriptContext.csx"
Альтернативно, вы можете выполнить скрипт из «Командной строки разработчика для VS2015», запустив команду csi и указав путь к скрипту: csi /path/myScript.csx
Еще есть крайне полезная директива — эта директива #прозрачный или #cls .
Оба значения работают одинаково и очищают экран.
Очищается только экран; все произошедшие объявления переменных, пространств имен и кода остаются в памяти.
#помощь – эта директива печатает справку #перезагрузить – очищает среду выполнения.
Если вы вызовете #reset noconfig, вы пропустите запуск сценария конфигурации, который запускается во время инициализации и добавляет основные пространства имен.
Напоследок предлагаю вам посмотреть видео (на английском языке) от Кейси Уленхут, в котором она извлекает информацию из GitHub: И почитайте вики (снова на английском): Интерактивное окно Интерактивное пошаговое руководство по C# Теги: #REPL #C++ #interactive #interactive #CSI #Эксперименты #обучение #консоль #Visual Studio #C++
-
Обезьяна
19 Oct, 24 -
Vk.talkie: Голосовые Сообщения Вконтакте
19 Oct, 24 -
Workflowsoft: История Нашей Дружбы
19 Oct, 24 -
Бизон Для Javascript
19 Oct, 24