Участник:Vera Safonova/программирование на языках высокого уровня: различия между версиями

Материал из Поле цифровой дидактики
Строка 48: Строка 48:
* Познакомиться с доступными на площадке средами визуального блочного программирования
* Познакомиться с доступными на площадке средами визуального блочного программирования
* Составить запрос и получить перечень языков блочного программирования созданных в определённый временной интервал
* Составить запрос и получить перечень языков блочного программирования созданных в определённый временной интервал
{{#ask: [[Category:Язык программирования]] [[Возрастная категория::10]] | format=ol}}
* Создать проект в среде [[Snap!]] и сделать его доступным со страницы продвижения по курсу
* Создать проект в среде [[Snap!]] и сделать его доступным со страницы продвижения по курсу
** https://snap.berkeley.edu/user?username=patarakin
 
* Предложить внешний источник данных для  [[Snap!]] проекта - [[:Категория:Dataset]]
* Предложить внешний источник данных для  [[Snap!]] проекта - [[:Категория:Dataset]]
* Прописать линейную последовательность операций над данными
* Прописать линейную последовательность операций над данными
 
**https://snap.berkeley.edu/project?username=verasafonova&projectname=Proekt%20Kazimir1
# Создать последовательность операций видоизменяющих изображение в Snap!
# Создать последовательность операций видоизменяющих изображение в Snap!
# Создать статью в категории [[:Категория:Scripting_Tutorials|Рецепты]] с использованием визуальных блоков
# Создать статью в категории [[:Категория:Scripting_Tutorials|Рецепты]] с использованием визуальных блоков


{{#ask: [[Category:Язык программирования]] [[Возрастная категория::10]] | format=ol}}
 


См. [[Периодическая система химических элементов]]<br />
См. [[Периодическая система химических элементов]]<br />

Версия от 15:22, 20 октября 2023

Участник:Vera Safonova/программирование на языках высокого уровня»

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

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

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

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

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


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

Работа с объектами в категории Category:Язык программирования
Работа с объектами в категории руководства - рецепты
Как добавить диаграмму связей на вики страницу
Как включить Snap! проект в состав вики страницы
Как получить изображение Scratch блоков
Как оценить Scratch проект
Как использовать визуальные блоки на вики страницах
Scratch/VisualCommands
How to Make a Calculator

Инфо о языке Python


Краткое описание языка Python в русском языке распространено название пито́н) — высокоуровневый язык программирования общего назначения, ориентированный на повышение производительности разработчика и читаемости кода. Синтаксис ядра Python минималистичен. В то же время стандартная библиотека включает большой объём полезных функций. Язык является полностью объектно-ориентированным в том плане, что всё является объектами
Компетенции в каких сферах формирует Computational Thinker
Парадигмы программирования Структурное программирование, Функциональное программирование, Объектно-ориентированное программирование, Процедурное программирование
Возрастная категория 10
Назначение языка (Общее / Учебное) Язык общего назначения
Visual_Text_Blocks Текст
Измерение (2D/3D/Tangible) 2D
Область знаний
Открытость продукта Открытый
Address https://www.python.org/
Предки (Ancestors) ABC, APL, Haskel, Lisp, Perl
Потомки (Descendants) CoffeeScript, JavaScript, Nim
Активность в данный момент Project is active
Доступны ремиксы? Да
Год создания 1991
Создатели Гвидо ван Россум
Поясняющее видео
Используется для создания мобильных приложений? Да


Vera Safonova/программирование на языках высокого уровня упоминается в свойствах следующих страниц




150px-Text-x-python.svg.png

Python в русском языке распространено название пито́н) — высокоуровневый язык программирования общего назначения, ориентированный на повышение производительности разработчика и читаемости кода. Синтаксис ядра Python минималистичен. В то же время стандартная библиотека включает большой объём полезных функций.

Сообщество
https://wiki.python.org/moin/FrontPage

Python стал одним из самых популярных языков, он используется в анализе данных, машинном обучении, DevOps и веб-разработке, а также в других сферах, включая разработку игр. За счёт читабельности, простого синтаксиса и отсутствия необходимости в компиляции язык хорошо подходит для обучения программированию, позволяя концентрироваться на изучении алгоритмов, концептов и парадигм.


Генерация коллекций:

 >>> [0]*10
 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
 >>> [ i for i in range(5) if i%2==0]
 [0, 2, 4]

Пример кода

Двоичный поиск

 
a = []
for i in range(10):
    a.append(randint(1, 50))
a.sort()
print(a)
 
# искомое число
value = int(input())
 
mid = len(a) // 2
low = 0
high = len(a) - 1
 
while a[mid] != value and low <= high:
    if value > a[mid]:
        low = mid + 1
    else:
        high = mid - 1
    mid = (low + high) // 2
 
if low > high:
    print("No value")
else:
    print("ID =", mid)


История языка




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

  • Познакомиться с доступными на площадке средами визуального блочного программирования
  • Составить запрос и получить перечень языков блочного программирования созданных в определённый временной интервал
  1. AgentCubes
  2. AlgoBlock
  3. Alice
  4. App Inventor
  5. Blockly
  6. FMSLogo
  7. Josef
  8. Kumir
  9. Lynx
  10. MakeCode
  11. MicroBlocks
  12. Python
  13. RobotC
  14. Squeak
  15. StarLogo
  16. Swift Playgrounds
  • Создать проект в среде Snap! и сделать его доступным со страницы продвижения по курсу
  1. Создать последовательность операций видоизменяющих изображение в Snap!
  2. Создать статью в категории Рецепты с использованием визуальных блоков


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

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

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

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

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

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

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

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

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

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


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



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

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

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

 Description
Boxer
CreatiCodeСреда для создания 3х мерных игр средствами блочного программирования
FMSLogoFMSLogo is a free implementation of a computing environment called Logo, which is an educational interpreter language. GUI and Extensions were developed by George Mills at MIT. Its core is the same as UCBLogo by Brian Harvey.
KodularKodular — это онлайн-инструмент, позволяющий создавать собственные приложения без знания языков программирования, используя простой интерфейс перетаскивания блоков. С помощью Kodular Companion, разработчики могут тестировать свои приложения в режиме реального времени, экономя время на экспорте и компиляции. Платформа позволяет разрабатывать приложения для Android с широкими возможностями настройки, включая добавление пользовательских компонентов и расширений.
LogoBlocksГрафический блочный язык для программирования кирпичиков Programmable Brick
NetsBloxВизуальный блочный язык программирования - производный от Scratch и Snap! - внимание уделено сетевым возможностям, интеграции с Google картами. Внутри среды NetsBlox участники проектов могут коллективно редактировать блоки программы так же как это происходит в Google-документах.
ScratchСреда программирования, которая позволяет детям создавать собственные анимированные и интерактивные истории, игры и другие произведения. Этими произведениями можно обмениваться внутри международной среды, которая постепенно формируется в сети Интернет. Scratch — это учебный блочный язык программирования, позволяющий ученикам создавать игры, цифровые истории. Среда разработки дает возможность детям редактировать аудиофайлы и монтировать небольшие, но полноценные видеоролики. В новые версии языка создатели обещают добавить функционал для создания собственных мобильных приложений.
ScratchJRScratch Junior – это визуальная среда программирования для детей от 5 до 7 лет. С ее помощью малыши могут создавать мультики, расставляя блоки действий в последовательном порядке.
Snap!Блочный язык программирования для преподавания алгоритмов и структур данных. Snap! - потомок языка Scratch. В отличие от Scratch Snap! поддерживает лямбда-исчисление, объекты первого класса, процедуры, рекурсия и множество других возможностей. С версии 4.0 Snap! получил современное название и был переписан на JavaScript. Moscow_city_univ.png
StarLogo Nova120px-Slnova.png
  • StarLogo Nova – среда совместного агентного моделирования в трехмерной среде. Во многом это среда продолжает и развивает традиции языка Scratch. При этом здесь можно ставить серьезные эксперименты и получать воспроизводимые результаты. Центральной метафорой среды является мир (World), в котором можно создавать агенты различных пород.
ЛогоЛого - первый язык созданный для обучения детей математике при помощи компьютера. Язык Лого получил очень широкое распространение и популярность благодаря работам Пейперта и его книге "Переворот в сознании: дети, компьютеры и плодотворные идеи". В восьмидесятые годы Logo и LogoWriter были установлены в США на каждом четвертом школьном компьютере. Черепашка Лого, способная принимать облик различных видов растений и животных, активно использовалась для образовательных и исследовательских проектов. Многочисленные языки с роботами исполнителями являются потомками Лого.


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

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

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


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

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

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

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

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

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

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

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

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

работа с визуальными блоками

при нажатии на enter
говорить [ПРИВЕТ]
конец