Участник:Серпов Тимофей/Программирование на языках высокого уровня: различия между версиями

Материал из Поле цифровой дидактики
 
(не показано 16 промежуточных версий 2 участников)
Строка 26: Строка 26:
== Работа с медиа. Программирование игр и программирование внутри игр ==
== Работа с медиа. Программирование игр и программирование внутри игр ==


</nowiki>


</nowiki>
<sb>когда <клавиша [пробел] нажата></sb>


----
----
Строка 35: Строка 36:


{{#ask:
{{#ask:
[[Category:Язык программирования]]  [[Ancestors::Java]] OR [[Descendants:Java]]AND [[Category:Язык программирования]]
[[Category:Язык программирования]]  [[Ancestors::Java]] OR [[Descendants:Java]] OR [[Java]] AND [[Category:Язык программирования]]
|format=moderntimeline
|format=moderntimeline
  |?launch year
  |?launch year
Строка 51: Строка 52:
: [[Scratch/VisualCommands]]
: [[Scratch/VisualCommands]]
: [[How to Make a Calculator]]
: [[How to Make a Calculator]]
=== Инфо о языке Java ===
{{#ask: [[Java]] | format=embedded }}


== Визуальное программирование ==
== Визуальное программирование ==
Строка 64: Строка 69:
</nowiki>
</nowiki>


=== Статьи для рецептов в среде [[StarLogo_Nova]] ===
=== Примеры алгоритмов ===
{{#ask: [[Категория:Scripting Tutorials]] [[Environment::StarLogo_Nova]] | ?Description | format = table}}
{{#ask: [[Категория:Scripting Tutorials]] [[Description::+]] AND [[Environment::+]] | ?Description | ?Environment | format=table}}
 
=== Статьи для рецептов в среде [[Scratch]] ===
{{#ask: [[Категория:Scripting Tutorials]] [[Environment::Scratch]] | ?Description }}
 
=== Статьи для рецептов в среде [[Scratch]] ===
{{#ask: [[Категория:Scripting Tutorials]] [[Environment::Scratch]] | ?Description }}


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

Текущая версия на 10:15, 16 сентября 2023

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

== Работа в вики среде == == Языки высокого уровня. Типология языков == == Визуальное программирование == == Стандартные типы данных == == Работа с данными. Среда выращивания данных и анализа данных == == Концепции программирования. Распространённые языковые конструкции == === Алгоритмы поиска и сортировки в разных языках == == Контейнеры для хранения данных == == Функциональное программирование. Функции высшего порядка == == Объектно-ориентированное программирование == == Модули и библиотеки == == Работа с медиа. Программирование игр и программирование внутри игр ==

когда <клавиша [пробел] нажата>


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

Работа с объектами в категории Category:Язык программирования

January 1, 1995

Java

Launch year: 1995
Ancestors: Pascal
Ancestors: Smalltalk
Ancestors: Oberon
Descendants: BlueJ

January 1, 1998

Alice

Launch year: 1998
Ancestors: Java
Descendants: Looking Glass
Descendants: Storytelling Alice

January 1, 2003

Scala

Launch year: 2003
Ancestors: Lisp
Ancestors: Java
Descendants: Kotlin

 
Alice
January 1, 1998

Java

Alice

Scala

1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
Dec.
March
March
April
May
June
July
Aug.
Sept.
Oct.
Nov.
Dec.
Feb.
March
April
May
June
July
Aug.
Sept.
Oct.
Nov.
Dec.
Feb.
March
April
May
June
July
Aug.
Sept.
Oct.
Nov.
Dec.
Feb.
March
April
May
June
July
Aug.
Sept.
Oct.
Nov.
Dec.
Feb.
March
April
May
June
July
Aug.
Sept.
Oct.
Nov.
Dec.
Feb.
March
April
May
June
July
Aug.
Sept.
Oct.
Oct.
Nov.
Dec.
Feb.
March
April
May
June
July
Aug.
Sept.
Oct.
Nov.
Dec.
Feb.
March
April
May
June
July
Aug.
Sept.
Oct.
Nov.
Dec.
Feb.
March
April
May
June
July
Aug.
Sept.
Oct.
Nov.
Dec.
Feb.
March
April
May
June
July
Aug.
Sept.
Oct.
Nov.
Dec.
Feb.
March
April
May
June
July
Aug.
Sept.
Oct.
Nov.
Dec.
Feb.
March
April
May
June
July
July
Aug.
Sept.
Oct.
Nov.
Dec.
Работа с объектами в категории руководства - рецепты
Как добавить диаграмму связей на вики страницу
Как включить Snap! проект в состав вики страницы
Как получить изображение Scratch блоков
Как оценить Scratch проект
Как использовать визуальные блоки на вики страницах
Scratch/VisualCommands
How to Make a Calculator

Инфо о языке Java

Java


Краткое описание языка Java — строго типизированный объектно-ориентированный язык программирования общего назначения, разработанный компанией Sun Microsystems (в последующем приобретённой компанией Oracle). Разработка ведётся сообществом, организованным через Java Community Process; язык и основные реализующие его технологии распространяются по лицензии GPL.
Компетенции в каких сферах формирует Computational Thinker
Парадигмы программирования Объектно-ориентированное программирование
Возрастная категория 12
Назначение языка (Общее / Учебное) Язык общего назначения
Visual_Text_Blocks Текст
Измерение (2D/3D/Tangible) 2D
Область знаний
Открытость продукта Открытый
Address http://oracle.com/java/
Предки (Ancestors) Pascal, Oberon, Smalltalk
Потомки (Descendants) BlueJ
Активность в данный момент Project is active
Доступны ремиксы? Нет
Год создания 1995
Создатели James Gosling
Поясняющее видео
Используется для создания мобильных приложений? Да


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




Пример кода на Java
public class RecursiveFunctionExample {
    public static void main(String[] args) {
        int number = 5;
        int result = factorial(number);
        System.out.println("Factorial of " + number + " = " + result);
    }

    public static int factorial(int n) {
        if (n == 0) {
            return 1;
        } else {
            return n * factorial(n - 1);
        }
    }
}
    public static int factorial(int n) {
        if (n == 0) {
            return 1;
        } else {
            return n * factorial(n - 1);
        }
    }
}


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

  1. https://scratch.mit.edu/users/patarakin/
  2. https://snap.berkeley.edu/user?username=patarakin
  3. https://www.slnova.org/patarakin/

{{#ask: [[Category:Язык программирования]] [[Визуальная реализация::Блоки-Иконки]] [[ActiveNow::Project is active]] | ?Description | ?Адрес_сообщества }}

Примеры алгоритмов

 DescriptionEnvironment
3D WireframesКак создать 3D каркасScratch
Additional KeysКак создавать и использовать комбинации дополнительных клавиш?Scratch
Advanced Platformer PhysicsКак мы имитируем физические свойства внутри ScratchScratch
Advanced Platformer TutorialКак создать продвинутый платформерScratch
AlexandraSeminaИсследует поле цифровой дидактикиRAWGraphs
Excel
AlexandraSemina2Исследует поле цифровой дидактикиRAWGraphs
Excel
ClockСкрипт циферблата c секундной, минутной и часовой стрелками, которые ходят как настоящие часы.Snap!
Computer graphics in Snap!Как использовать возможности Snap! для представления понятий компьютерной графики.
  • Как графические данные могут использоваться в проектах на языке Snap!
Snap!
Creating a QuizКак создать квиз - викторину из вопросов и ответов.Scratch
Dog chases cat and cat chases mouseПроект внутри которого 3 породы- собака, кошка, мышкаSnap!
FruitsРабота с клонами на примере проекта "Fruits" в Snap!Snap!
HeapКак использовать кучу? - Куча (структура данных)Scratch
Snap!
Python
How to Create a SlideshowКак создать слайд-шоу - советы по организацииScratch
How to Keep Score in a GameКак хранить результаты (очки) в игреScratch
Snap!
Lua
How to Make a Basic PlatformerКак создать платформерScratch
How to Make a Basic ShooterКак создать проект игры "стрелялки" и какие блоги и конструкции используются для построения игр такого типа.Scratch
How to Make a Clicker GameРуководство по созданию игр типа clicker-gameScratch
How to Make a Tower Defense GameКак сделать игру по защите городаScratch
How to Move Sprites with the Arrow KeysКак управлять спрайтами при помощи клавиш клавиатуры - в блочных языках реализуется через связку нажатия определённой клавиши и поворотом вScratch
Snap!
How to Move a Sprite in a SpiralКак организовать движение агента по спиралиScratch
Snap!
Лого
How to connect Lua and C++C++ может вызывать функции Lua, а Lua может вызывать функции C++. Это позволяет вынести часть кода в скрипты и писать собственные функции, расширяющие функциональность программы.Lua
C++
How to graph with StarLogo NovaКак представить графики численности агентов StatLogo Nova - простая лабораторная работа по сбору данных из мира, заселённого травой, кроликами, волками и медведями
  • 120px-Starlogo_how_to_Graph.png
  • StarLogo Nova
    How to make a TimeLineСоздать ленту времени, используя возможности Semantic MediaWikiSemantic MediaWiki
    Implementing GridsСоздание викторины в App Inventor.
    Нам понадобятся: кнопка, флажки, изображения, надписи и горизонтальное расположение.
    https://gallery.appinventor.mit.edu/?galleryid=ea6dd983-2353-4112-9d55-df2c17666439
    App Inventor
    MovementКак управлять движением агентов на экранеNetLogo
    Scratch
    Snap!
    Non-Euclidean Game TutorialКод решений, которые используются при создании игр типа «Неевклидова игра». «Неевклидова игра» — это то, что разработчики игр часто называют игрой, в которой мировое пространство не работает так, как работает реальный мир. Например, размещение огромной комнаты в небольшом пространстве или подъем по лестнице опускает игрока на уровень ниже. Возможности безграничны.Scratch
    Object AttractionКак имитировать притяжение объектов друг к другу?StarLogo Nova
    Scratch
    Snap!
    PathfindingПоиск пути (англ. Pathfinding) — термин в информатике и искусственном интеллекте, который означает определение компьютерной программой наилучшего, оптимального маршрута между двумя точками.Scratch
    Snap!
    Lua
    C++
    Removing an Item from a List (by value)Как удалить элемент из списка по значению этого элемента, а не по его индексу? В статье рассматривается пример на ScratchScratch
    Schedule - приложениеМобильное приложение для студентов, позволяющее просматривать актуальное расписание занятий на основе данных из Google Sheets. Позволяет фильтровать пары по дням недели, добавлять напоминания о занятиях и загружать обновления.Thunkable
    Google Sheets
    Firebase
    Push Notifications
    Shooting ProjectilesКак стрелять снарядами? (Бросать объекты, клонировать объекты и т.п. действия)Scratch
    SpaceИспользование циклов при создании игр и моделей на примере проекта "Space" в Snap!Snap!
    Switching Between ScreensКак переключаться между различными сценами в Scratch. Скрипт проверяет, совпадает ли переменная экрана с экраном для отображения спрайтов. Если да, то спрайты будут отображаться и делать все, что от них требуется. Если нет, то спрайт останется скрытым и не запустит блоки для того времени, когда он будет открыт.Scratch
    Snap!
    The ball gathers the starsПроект внутри которого 3 породы- мяч, звезды, подарокScratch
    The cowboy catС помощью этого скрипта случайным образом выбираются два числа от 0 до 10, после чего кот просит их перемножить и написать полученный ответ. Если ответ верный, кот произносит один набор фраз и подпрыгивает, снимая шляпу. Если ответ введен неверный, то произносит другую фразу и озвучивает правильный ответ. %D0%9A%D0%BE%D1%82_%D0%BA%D0%BE%D0%B2%D0%B1%D0%BE%D0%B9.pngScratch
    Using Clones for Particle EffectsКак создать эффект частиц с помощью клонов?Scratch
    Snap!
    Where are you going?Алгоритм ветвления на примере проекта "Where are you going?" в Snap!Snap!
    Winter treeСкрипт рисования ёлочек, которые появляются в случайном месте и создают вид зимнего леса.Snap!
    Автомобильный конвеерРабота с клонами на примере проекта "Автомобильный конвеер" в Snap!Snap!
    Анализ данныхПосле того, как мы собрали или вырастили данные, наступает этап их анализа. В прикладной науке о данных выделяется определённая последовательность действий, которые совершаются над данными для их лучшего понимания и объяснения.Snap!
    Python
    R
    RStudio
    Английский для школьниковПриложение, помогающее школьникам младших классов изучать английский алфавит.App Inventor
    БантикиПроект "Бантики"Snap!
    Библиографический анализ области знанийАнализ публикаций начинается с представления общего поля работ, которые были сделаны по данной теме в последние 10 – 30 лет. В рецепте представлены следующие шаги:
    1. Запрос к библиотеке или реферативным базам данных - ACM Digital Library, WoS
    2. Объединение и редактирование записей в Zotero
    3. Экспорт записей в формат для VOSviewer или Biblioshiny
    4. Сохранение и представление датасета
    5. Импорт данных в VOSviewer
    6. Кластеризация авторов
    7. Кластеризация ключевых слов
    8. Тезаурус для объединения повторов
    R
    VUE
    Zotero
    VOSviewer
    Biblioshiny
    ACM Digital Library
    Библиометрические исследованияКак организовать и осуществить библиометрическое исследование - от сбора информации в базах данных, через обработку в библиоменеджерах и дальнейший анализ в средах анализа данныхR
    VUE
    Zotero
    VOSviewer
    Блоки для клонов: создание, присвоение ID, команда всем клонам, удаление клоновОписание блоков для работы с клонами. Создание, присвоение ID, команда всем клонам, удаление клонов.Snap!
    Вернуться к предыдущей версии текстаРаспространённая ситуация, когда после внесённых изменений программа перестаёт работать или что-то идёт не так. Большинство современных систем помнят историю версий и позволяют вернуться к прежним версиям. Например, в MediaWiki - история страницы. В StarLogo Nova - история версий (Current Version) View Project History.StarLogo Nova
    Snap!
    MediaWiki
    Взаимодействие двух шариков и их клонированиеИгра со взаимодействием двух шариков. Удар чёрным шариком позволяет создавать ненадолгое время клонов, которые в скором времени исчезают.Snap!
    Выбор ваканский по городамСоздание приложения по выводу топа вакансий по городам. Реализован выбор города и вывод названия вакансии, заработной платы и количества вакансий.App Inventor
    Выбрать ближайшего к мячу партнёраСитуация в игре с мячом, когда игрок будет двигаться к мячу, только если он ближе к мячу, чем другие игроки своей команду. Необходимо проверить, кто из партнёров может быть ближе. Игрок может оценить своё положение и положение других игроков. Реализовано для поля Snap! 120px-Shortest_to_ball.pngSnap!
    Генерация новых агентов в App InventorВ данном рецепте описаны шаги генерации новых агентов в App Inventor. Мы создаём холст, расставляем по нему невидимые шарики. Потом 2 шарика появляются и начинают летать, отталкиваясь от стенок экрана. Если шарик 1 сталкивается с шариком 2, то появляется шарик 3.App Inventor
    … следующие результаты

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

    Работа с данными. Среды выращивания данных и анализа данных

    1. Как обратиться к внешним данным из вики
    2. Как обратиться к внешним данным из Snap!
    3. Как вырастить данные в искусственном сообществе
    4. Какие данные есть внутри вики - Категория:Dataset

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

    Алгоритмы поиска и сортировки в разных языках

    1. Линейный поиск
    2. Сортировка вставками
    3. Сортировка выбором
    4. Сортировка пузырьком
    5. Быстрая сортировка

    Контейнеры для хранения данных

    Функциональное программирование. Функции высшего порядка

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

    Модули и библиотеки

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