Search Header Logo
ballsObjects

ballsObjects

Assessment

Presentation

Computers

2nd Grade

Practice Problem

Medium

Created by

Edukoht Edukohter

Used 9+ times

FREE Resource

66 Slides • 13 Questions

1

ballObjects

Slide image

2

Создай новый проект

Зайди на сайт https://repl.it/ и создай новый проект

3

Начинаем с нашего любимого HTML

Slide image

4

Привычные действия

Добавляем тег «canvas» в элемент «body».

5

Slide image


6

Немножко стиля

Slide image

7

Привычные действия

Добавь элементу «canvas» рамку.

8

Самое жесткое

Slide image

9

Привычные действия

Создай переменную «canv» и присвой ей выбранный элемент «canvas». Сделай так, чтобы элемент «canvas» занимал весь экран редактора. Создай переменную «c» и присвой ей элемент «canvas» с методом «getContext("2d")».

10

Slide image


11

Poll

Как думаешь, какой тип данных лучше всего тебе подойдет для хранения вот таких параметров: x-координату мяча, y-координату мяча, радиус мяча, цвет мяча? PS: на этот вопрос ты можешь не знать ответа

переменная

список

функция

объект

12

Poll

Как ты думаешь, какая штука помогла бы нам присваивать каждому шарику свои значения ( x-координату мяча, y-координату мяча, радиус мяча, цвет мяча)?

PS: на этот вопрос ты можешь не знать ответа

мощная переменная

конструктор объектов

цикл

13

Что такое объект

Объект - это очень удобный тип данных. Давайте посмотрим на пару примеров, чтобы понять как это работает :)

14

Как создать объект

Чтобы создать объект, мы создаем переменную и присваиваем ей вот такие скобки - {}.

Пример: let apple = {}

15

Fill in the Blanks

Type answer...

16

А что дальше?

Конечно, мы можем присваивать какие-то значения нашему объекту. Для этого используется ключ (локальная перменная), которой присваивается какое-то значение.

Пример: let boy = {name: "Vasja", age: 100}

17

Multiple Choice

Выберите объект с именем «phone» и ключом «model» со значением «Iphone1000».

1

let phone{model:"Iphone1000"}

2

let auto = {model:"Firrari"}

3

let phone = {model:"Iphone1000"}

18

Fill in the Blanks

Type answer...

19

Каким образом мы можем получить значение ключа?

Давайте рассмотрим пример:

let persone = {name: "Darth Vader", age: "89"}

Чтобы получить значение имени у данного объекта «persone», мы можем написать: persone.name

Если мы хотим получить возраст, то пишем: persone.age

20

Slide image


21

Multiple Choice

Какая конструкция поможет получить значение ключа «name» у объекта «fruit»?

Объект «fruit»:

let fruit = {

name: "apple"

}

1

fruit.name

2

fruit.name()

3

fruit.age

4

name.fruit

22

Поздравляем

Ты становишься все более крутой программисткой/крутым программистом. Объекты - это не особо легкая тема, но ты уже смог(ла) немного освоить ее.

23

Что же такое конструктор объектов?

Конструктор объектов - это штука, которая позволяет нам создавать объекты с ключами, которые мы задали.

Дальше мы посмотрим на пару примеров, а потом начнем делать наш конструктор шариков ;)

24

Slide image


25

Multiple Choice

C помощью какого ключевого слова мы создаем функцию?

1

func

2

const

3

let

4

function

26

Multiple Choice

В какие скобочки мы пишем параметры нашей функции?

1

()

2

{}

3

[]

4

({})

27

Хватит уже теории

Создай функцию с именем «ball» и укажи у нее параметры: x, y, radius, color, speedX, speedY

28

Slide image


29

Сам хочу

Напиши конструкцию: this.x. Присвой этой конструкции переменную «x».

30

Slide image


31

Сам хочу

Создай по такой же логике конструкции: this.y, this.radius, this.color, this.speedX, this.speedY. Присвой этим переменным значения: y, radius, color, speedX, speedY.

32

Slide image


33

В первый раз

Создай свой первый метод с именем «move».

Для этого напиши: this.move. Присвой данной конструкции функцию.

34

Slide image


35

Multiple Choice

При помощи какой конструкции мы задаем условие в программировании?

1

if/else

2

for

3

let

4

c.beginPath()

36

Уже умею

Создай в методе «move» if-блок и укажи у него вот такое условие: this.x + this.radius > canv.width || this.x - this.radius < 0

37

Slide image


38

Multiple Choice

Вспомни, что обозначает вот этот символ - ||

1

Это логическое или

2

Это две палки от деда

3

Это сложная конструкция для крутых прогеров

4

Это создание новой переменной

39

Уже умею

Укажи в if-блоке вот такую конструкцию: this.speedX = -this.speedX;

40

Slide image


41

Уже умею

Создай в методе «move» еще один if-блок и укажи у него вот такое условие: this.y + this.radius > canv.height || this.y - this.radius < 0

42

Slide image


43

Уже умею

Укажи в if-блоке вот такую конструкцию: this.speedY = -this.speedY;

44

Slide image


45

Уже умею

Добавь в метод «move» вот такие конструкции:

this.x += this.speedX;

 this.y += this.speedY;

this.draw()

46

Slide image


47

Уже умею

Создай еще один метод у конструктора объектов «ball». Для этого напиши конструкцию: this.draw. Присвой этой конструкции функцию.

48

Slide image


49

Multiple Choice

При помощи какой конструкции мы можем задать цвет заливки нашему кругу?

1

c.strokeStyle

2

c.fillStyle

3

c.color

50

Multiple Choice

При помощи какой конструкции мы можем залить наш круг каким-нибудь цветом?

1

c.fill()

2

c.fillColor()

3

c.colorful()

51

Уже умею

Добавь методу «draw» конструкции:

c.fillStyle = this.color;

c.fill()

c.beginPath();

c.arc(this.x, this.y, this.radius, 0, 2 * Math.PI);

c.stroke()


52

Slide image


53

Уже умею

Выйди из блока конструктора объектов и создай функцию «randomY».

54

Slide image


55

Multiple Choice

Для чего мы используем слово «return» в нашей функции?

1

Чтобы создавать переменные в функции

2

Чтобы передавать параметры в функцию

3

Чтобы возвращать какие-то значение после вызова функции

56

Уже умею

Создай в этой функции конструкцию «return». После этого на той же строчке, где ты написал(а) return, укажи конструкцию, которая выдаст тебе рандомное число от 0 до высоты канваса.

57

Slide image


58

Уже умею

Cоздай функцию «randomX». Создай в этой функции конструкцию «return». После этого на той же строчке, где ты написал(а) return, укажи конструкцию, которая выдаст тебе рандомное число от 0 до ширины канваса.

59

Slide image


60

Уже умею

Cоздай функцию «randomColor». Создай в этой функции три переменных: red, green, blue. Присвой этим переменным конструкцию, которая задаст рандомное число от 0 до 255.

61

Slide image


62

Уже умею

Создай в этой функции конструкцию «return». После этого на той же строчке, где ты написал(а) return, укажи конструкцию: "rgba(" + red + "," + green + "," + blue  + ")"

63

Slide image


64

Уже умею

Cоздай функцию «randomSpeedY». Создай в этой функции конструкцию «return». После этого на той же строчке, где ты написал(а) return, укажи конструкцию: Math.floor(Math.random() * 10) + 1

65

Slide image


66

Уже умею

Cоздай функцию «randomSpeedX». Создай в этой функции конструкцию «return». После этого на той же строчке, где ты написал(а) return, укажи конструкцию: Math.floor(Math.random() * 10) + 1

67

Slide image


68

Уже умею

Cоздай функцию «randomRadius». Создай в этой функции конструкцию «return». После этого на той же строчке, где ты написал(а) return, укажи конструкцию: Math.floor(Math.random() * 20) + 1

69

Slide image


70

Уже умею

Создай список с именем «ballArr».

71

Slide image


72

Уже умею

Создай цикл со счетчиком. Сделай так, чтобы цикл выполнялся 10 раз.

73

Slide image


74

Уже умею

Внутри цикла запиши вот такую конструкцию:

ballArr.push(new ball(randomX(), randomY(), 

randomRadius(), randomColor(), randomSpeedX(), 

randomSpeedY()))

75

Slide image


76

Уже умею

Напиши функцию «setInterval». Не забудь указть ей два параметра: function и 10. Укажи внутри функции «setInterval» цикл со счетчиком. Сделай так, чтобы цикл выполнялся столько раз, сколько элементов находится в списке «ballArr».

77

Slide image


78

Уже умею

Внутри цикла запиши вот такую конструкцию:

ballArr[i].move()

79

Slide image


ballObjects

Slide image

Show answer

Auto Play

Slide 1 / 79

SLIDE

Discover more resources for Computers