Опубликован: 10.01.2014 | Доступ: свободный | Студентов: 2111 / 1163 | Длительность: 04:20:00
Авторские права: UNESCO, 2013; НОУ "ИНТУИТ" (задания), 2013
Специальности: Преподаватель
Лекция 2:

Характеристика основных типов "облачных" услуг

Аннотация: В этом разделе будут рассмотрены конкретные примеры использования облачных вычислений для образовательных целей на примере конкретных сервисов, предоставляемых рядом крупных поставщиков услуг в области облачных вычислений (Microsoft, Google и др.). Кроме того, будут даны рекомендации по выбору тех или иных поставщиков "облачных" услуг.
Ключевые слова: Web, IDE, development environment, пункт, администратор, плата, затраты, visual, процессор, ОЗУ, онлайн, компьютер, Интернет, системные требования, браузер, исполнение, поле, язык программирования, Ada, Assembler, AWK, bash, C++, strict, CLIPS, COBOL, Lisp, forth, go, icon, Java, node, Pascal, PHP, python, ruby, scheme, SQL, text, net, Си, подсветка синтаксиса, запись, вывод, значение, ссылка, выбрать из списка, время выполнения, объём, операции, анализ, пространство, место, сайт, ПО, минимум, RAID, адрес, пароль, интерфейс, доступ, элементы управления, доступ на чтение, файл, Windows, mac, computer name, box, ресурс, вариант использования, права, работ, минимизация, злоумышленник, персональные данные, имя пользователя, информация, статистика, EXIF, JPEG, метаданные, меню, программа, путь, шаблон, пользователь, программное обеспечение, логический, диск, контейнер, шифрование, AES, Serpent, NIST, алгоритм, Top, secret, бит, ключ, отрицание, папка, имя файла, course, производительность, длина, FAT, NTFS, USB, шифрование данных, совместная работа, завершение работы, сочетания, education, приложение, Calendar, право собственности, DNS, setup, drive, voice, AND, video, chat, функция, SMS, отправка, загрузка, OPEN, convert, download, сеть, регистрация, список, опрос, графика, wiki, поиск, параграф, live, edu, MLE, администрирование, Outlook, домен, программные средства, app, текстовые файлы, word, excel, хранилище данных, disk, имя группы, группа, целый, исключительные права

2.1. Программирование в "облаке"

В этом разделе показано, как можно использовать облачные вычисления при обучении основам программирования. Приводится подробный пример работы с Web-сервисом, позволяющим создавать и отлаживать учебные программы на любом языке программирования с помощью облачного сервиса сайта http://ideone.com.

Современная практика программирования предполагает активное использование специализированных интегрированных средств разработки (IDE – Integrated Development Environment). Их использование связано со следующими двумя сложностями:

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

Поясним каждый пункт подробно. Для обеспечения полнофункциональной работы IDE требуется, чтобы квалификация системного администратор, осуществляющего установку, настройку и поддержку IDE была достаточно высока. Это приводит к необходимости нанимать в учебные заведения на должность системного администратора высококвалифицированных сотрудников, заработная плата которых может оказаться существенной статьёй расходов в бюджете образовательного учреждения.

Более того, затраты образовательного учреждения могут возрасти вследствие того, что современные IDE требуют наличия высокопроизводительных вычислительных машин. Например, одна из самых распространенных IDE Microsoft Visual Studio 2012 требует для нормальной работы процессор мощностью 1,6 ГГц или выше, 1 ГБ ОЗУ (или 1,5 ГБ для виртуальной машины), 10 ГБ свободного дискового пространства [7]. Для большинства задач образовательных учреждений не требуется компьютеров с такой высокой производительностью, поэтому их покупка может оказаться недопустимой роскошью.

Обе указанные проблемы позволяет решить применение облачных технологий при обучении программированию. В настоящее время существуют большое количество так называемых онлайн-IDE, которые не требуют установки на компьютер пользователя и которые требуют для запуска лишь наличие Интернет-браузера. Системные требования браузеров к оборудованию вычислительной машины традиционно являются скромными. Например, популярный Веб-браузер Mozilla Firefox 17 требует для установки процессор от 1300 МГц, 512 МБ ОЗЦ и 200 МБ свободного дискового пространства [6], что существенно меньше приведённых ранее цифр для IDE Microsoft Visual Studio 2012.

Рассмотрим ниже, как можно использовать онлайн-IDE в учебных заведениях для обучения основам программирования на примере http://ideone.com. Этот сервис позволяет в режиме онлайн создавать тексты программ на разных языках программирования и запускать эти программы на исполнение с возможностью анализа полученных результатов. Основные рабочие элементы Ideone показаны на рис. 2.1.

Основные рабочие элементы Ideone

Рис. 2.1. Основные рабочие элементы Ideone

В поле "А" необходимо ввести текст программы, а в поле "В" нужно выбрать используемый язык программирования, затем нужно нажать кнопку "Отправить". В [2] указано, что Ideone поддерживает работу со следующими 55 популярными языками программирования: Ada, Assembler, AWK, Bash, bc, Brainf**k, C, C#, C++, C++0x, C99 strict, CLIPS, Clojure, COBOL, Common Lisp (clisp), D (dmd), Erlang, F#, Factor, Falcon, Forth, Fortran, Go, Groovy, Haskell, Icon, Intercal, Java, JavaScript, Lua, Nemerle, Nice, Nimrod, Node.js, Objective-C, Ocaml, Oz, PARI/GP, Pascal, Perl, PHP, Pike, Prolog, Python, R, Ruby, Scala, Scheme (guile), Smalltalk, SQL, Tcl, Text, Unlambda, VB.NET, Whitespace. Очевидно, что этого перечня достаточно при обучении основам программирования практически в любом учебном заведении мира. Более того, при использовании сервиса ideone.com у преподавателя появляется возможность использовать при обучении сразу несколько языков программирования без необходимости поддерживать работу нескольких IDE.

Покажем на примере, как может быть организована работа в группе при обучении основам программирования. Рис 2.2 иллюстрирует способ запуска простой программы на языке Си. Как можно видеть, в тексте программы используется подсветка синтаксиса, аналогичная той, что пользователи привыкли использовать в обычных офлайн-IDE. Однако при желании подсветка может быть отключена с помощью элемента управления "А". С помощью элемента управления "В" можно указать перечень входных данных для программы, что позволяет реализовать более сложную логику работы программы, чем в приведённом примере.

Запуск программы в Ideone

увеличить изображение
Рис. 2.2. Запуск программы в Ideone

Очень важным является элемент управления "С", который позволяет персонифицировать работу с программой. Данная возможность крайне ценна при организации учебного процесса. Если преподаватель попросит всех студентов зарегистрироваться в Ideone (или использовать для входа свою учётную запись Facebook), то появляется возможность сделать процесс работы с программой коллективным, а процесс совместной работы с программой будет проходить с использованием современных технологий Web 2.0. Подробнее об этом расскажем, используя рис. 2.3.

Рис 2.3 представляет собой результаты запуска программы, приведённой на рис. 2.2, самые важные из которых помечены знаком "А". Это консольный вывод программы и возвращаемое значение. Знаком "В" отмечена Интернет-ссылка, которую преподаватель может переслать студентам для ознакомления с результатам работы демонстрационной программы, либо сами студенты могут выслать подобную ссылку преподавателю в качестве отчёта о проделанной работе.

Результаты работы программы в Ideone

увеличить изображение
Рис. 2.3. Результаты работы программы в Ideone

Следующим этапом совместной работы может стать онлайн-обсуждение результатов работы программы с помощью средств Web 2.0 одного из популярных сервисов социальных сетей. Это становится возможным благодаря использованию элемента управления "С" на рис. 2.3.

Этот элемент управления позволяет выбрать из списка в правой части экрана один из виджетов популярных сайтов социальных сетей.

К сожалению, онлайн-IDE Ideone позволяет реализовать не все из функций традиционных офлайн-IDE. Например, отсутствует возможность использовать функции работы с сетью, обращения к файлам и некоторые другие. Также невозможно запустить программу, время выполнения которой займёт более 15 секунд или потребности в оперативной памяти превысят 256 МБ, или объём программы превысит 64 КБ [2]. Все эти ограничения являются достаточно серьёзными, если планируется использовать Ideone для разработки профессионального программного обеспечения. Однако для образовательных целей эти ограничения более чем приемлемы. Кроме того, для более требовательных преподавателей существуют платные и бесплатные сервисы, аналогичные Ideone, которые при этом в большей степени реализуют функционал традиционных офлайн-IDE. Таким примером являются сервисы Cloud9 IDE (www.c9.io), CodeRun [3]. На рис. 2.4 показан вид интерфейса сервиса CodeRun: пользователи, работавшие с традиционными офлайн-IDE, сразу увидят много знакомых элементов управления. Присутствует панель со списком используемых классов, со списком задействованных в проекте файлов, а также окна с отладочной информацией о состоянии стека вызовов подпрограмм и с ошибками времени комплиляции или времени выполнения.

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

Интерфейс системы Coderun

увеличить изображение
Рис. 2.4. Интерфейс системы Coderun

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

Анджелика Шарапова
Анджелика Шарапова

Оценки по каким дисциплинам идут в приложение к диплому по профессиональной переподготовке "Современные образовательные технологии"?

Дмитрий Соболев
Дмитрий Соболев

Я заввершаю обучение по программе "Современные образовтетельные технологии". Прошу прислать задание для итоговой работы.Мой адрес resoluteness@yandex/ru

Спасибо!