Публичный репозиторий Git. PyGame

Git

Повторение: рабочий процесс

  1. git init

  2. Hack
  3. git add …

  4. git commit

    • Использование $EDITOR
    • Использование IDE
  5. goto (1.)

Что внутри:

Деревья:

Публичный репозиторий

Взаимодействие типа «pull»

Виды публичных репозиториев: HTTP/HTTPS:, GIT:, локальный, SSH:

Событийное программирование

Концепция:

  1. Вселенная: время, объекты, события
  2. Объекты: обработчики событий

Проблемы:

PyGame:

Пример:

   1 import pygame
   2 pygame.init()
   3 screen = pygame.display.set_mode((400, 200))
   4 
   5 while True:
   6     print(pygame.event.wait())

Ручной разбор событий:

   1 import pygame
   2 from random import randrange
   3 pygame.init()
   4 screen = pygame.display.set_mode((800, 600))
   5 
   6 SZ = 100, 80
   7 
   8 windows, nwin = [], 0
   9 while True:
  10     evs = pygame.event.get()
  11     for e in evs:
  12         if e.type is pygame.QUIT:
  13             print("QUIT")
  14             break
  15         if e.type is pygame.MOUSEBUTTONDOWN:
  16             if e.button == 3:
  17                 color = pygame.Color(randrange(100,256), randrange(100,256),randrange(100,256))
  18                 windows.append((nwin, color, pygame.Rect(e.pos, SZ)))
  19                 nwin += 1
  20         else:
  21             for (i, color, rect) in reversed(windows):
  22                 if hasattr(e, "pos") and rect.collidepoint(e.pos):
  23                     print(f"{e} to {i}")
  24                     break
  25             else:
  26                 print(e)
  27 
  28     else:
  29         screen.fill(0)
  30         for i, color, rect in windows:
  31             screen.fill(color, rect)
  32 
  33         pygame.display.flip()
  34         continue
  35     break

Проблема: время вселенной:

Как:

Д/З

LecturesCMC/PythonDevelopment2020/03_GitRemote (last edited 2020-03-17 14:16:10 by FrBrGeorge)