Участник:Patarakin/Программирование на языках высокого уровня

Материал из Поле цифровой дидактики

Шаблон продвижения по учебному курсу

Работа в вики среде

  • Создать страницу участника в вики среда
  • Отметить нужными категориями
  • Создать вложенную страницу с материалами по курсу /Программирование на языках высокого уровня
  • Переместить на вложенную страницу данный шаблон продвижения по учебному курсу

Языки высокого уровня. Типология языков

  1. Создать новую статью в категории Category:Язык программирования
  2. Предложить новое свойство для статей в категории Category:Язык программирования

Визуальное программирование

  • Познакомиться с доступными на площадке средами визуального блочного программирования
  • Составить запрос и получить перечень языков блочного программирования созданных в определённый временной интервал
  • Создать проект в среде Snap! и сделать его доступным со страницы продвижения по курсу
  • Предложить внешний источник данных для Snap! проекта - Категория:Dataset
  • Прописать линейную последовательность операций над данными

Book fr.png

  1. Создать последовательность операций видоизменяющих изображение в Snap!
  2. Создать статью в категории Рецепты с использованием визуальных блоков

См. Периодическая система химических элементов
Tablescript.png

https://snap.berkeley.edu/project?username=patarakin&projectname=keys_rule

Концепции программирования

Распространённые языковые конструкции

  1. Сравнение конструкций в различных языках высокого уровня
  2. Примеры использования конструкций для симуляции паттернов в категории Категория:HowTo
  • повторятьвсегда

Сравнение концепций программирования

Стандартные типы данных

Структуры данных

Table sprite.png

Среды выращивания данных и анализа данных

Импорт и экспорт данных

Функциональное программирование

Item2 foo.png

Языки функционального программирования общего назначения

{{#ask: [[Category:Язык программирования]] [[Назначение языка::Язык общего назначения]] [[Programming paradigm::Функциональное программирование]] | ?Description }}

 Description
ClojureClojure является функциональным языком программирования с поддержкой функций в качестве объектов первого класса (first class objects) и неизменяемыми (за исключением специальных случаев) данными, включая поддержку "ленивых" коллекций данных. Современный диалект Лиспа, язык программирования общего назначения с поддержкой разработки в интерактивном режиме, поощряющий функциональное программирование и упрощающий поддержку многопоточности. Clojure работает на платформах JVM и CLR. Clojure отличает философия «код как данные» (гомоиконность) и развитая система лисп-макросов.
FennelFennel is a programming language that brings together the speed, simplicity, and reach of Lua with the flexibility of a lisp syntax and macro system.
GPБлочный язык общего назначения, который может использоваться не только в образовательных целях
JavaScriptJavaScript обычно используется как встраиваемый язык для программного доступа к объектам приложений. Наиболее широкое применение находит в браузерах как язык сценариев для придания интерактивности веб-страницам. Основные архитектурные черты: динамическая типизация, слабая типизация, автоматическое управление памятью, прототипное программирование, функции как объекты первого класса.
LispLISP (от англ. LISt Processing language — «язык обработки списков», современное написание: Lisp) — семейство языков программирования, программы и данные в которых представляются в виде списков.
LuaLua (лу́а, с порт. — «луна»— скриптовый язык программирования, разработанный в подразделении Tecgraf (Computer Graphics Technology Group) Католического университета Рио-де-Жанейро (Бразилия). Интерпретатор языка является свободно распространяемым, с открытым исходным кодом на языке программирования Си. По идеологии и реализации язык Lua ближе всего к JavaScript, в частности, он также реализует прототипную модель ООП, но отличается паскалеподобным синтаксисом и более мощными и гибкими конструкциями. Характерной особенностью Lua является реализация большого числа программных сущностей минимумом синтаксических средств. Так, все составные пользовательские типы данных (массивы, структуры, множества, очереди, списки) реализуются через механизм таблиц, а механизмы объектно-ориентированного программирования, включая множественное наследование — с использованием метатаблиц, которые также отвечают за перегрузку операций и ряд других возможностей.
PythonPython в русском языке распространено название пито́н) — высокоуровневый язык программирования общего назначения, ориентированный на повышение производительности разработчика и читаемости кода. Синтаксис ядра Python минималистичен. В то же время стандартная библиотека включает большой объём полезных функций. Язык является полностью объектно-ориентированным в том плане, что всё является объектами
ScalaScala — мультипарадигмальный язык программирования, спроектированный кратким и типобезопасным для простого и быстрого создания компонентного программного обеспечения, сочетающий возможности функционального и объектно-ориентированного программирования.
SchemeScheme — функциональный язык программирования, один из трёх наиболее популярных диалектов Лиспа. Обладает минималистичным дизайном, содержит минимум примитивных конструкций и позволяет выразить всё необходимое путём надстройки над ними. Например, использует всего два механизма организации циклов — хвостовую рекурсию и итеративный подход (в котором используются временные переменные для сохранения промежуточного результата).
SwiftЯзык программирования Swift используют, чтобы писать приложения и программы для устройств Apple: айфонов, айпадов, умных часов, телевизоров, макбуков и стационарных компьютеров с macOS. В iOS-разработке этот язык считается стандартом.
РЕФАЛРЕФАЛ (Рекурсивных функций алгоритмический) — один из старейших функциональных языков программирования, ориентированный на символьные вычисления: обработку символьных строк (например, алгебраические выкладки); перевод с одного языка (искусственного или естественного) на другой; решение проблем, связанных с искусственным интеллектом. Соединяет в себе математическую простоту с практической направленностью на написание больших и сложных программ.


Создание собственных функций

Оценка времени выполнения процедуры

Модули и библиотеки (Использование и создание модулей и библиотек)

  • Imaga Erase.png
    Как создать собственную библиотеку внутри Snap
  • Использовать в своём проекте одну из готовых библиотек Snap!
  1. Сделать краткое описание одной из библиотек Snap! в категории Категория:DigitalTool
  2. Сделать описание краткое описание внешней библиотеки в категории Категория:DigitalTool - так чтобы можно было показать на площадке digida - см. пример Shiny

Объектно-ориентированное программирование

Классы и методы

Наследование

Paret alonzo.jpg

Работа с медиа. Программирование игр и программирование внутри игр

Slnova.png

Программирование игр

  • Образовательные среды создания игр
  • Обсудить один из паттернов поведения агентов в цифровых средах Категория:HowTo
  1. Предложить новое решение реализации паттерна поведения

Паттерн управления при помощи клавиш

Паттерн Превращаться в другого агента

Программирование внутри обучающих игр

  1. Добавить статью в Категорию обучающих игр
  2. Предложить свойство для статей в Категорию языков программирования
  3. Предложить свойство для статей в Категорию Scripting_Tutorials