Welcome to SuperPython’s documentation!¶

Contents:

SuperPython - Introdução¶

Ambiente de Desenvolvimento SPy LABASE

 

Visão Global

Um ambiente para ensino de programação de games em Python.

Este ambiente facilita a aprendizagem da linguagem Python

O ambiente é dirigido principalmente à criação de games por jovens e crianças do ensino médio e fundamental.

O Ambiente SuperPython é programado em Brython

  Código Fonte  Github
  Registro de Tiquets  Github-Issues
 

Especificações e Qualidade

  Kanban em Waffle.io  Stories in Ready
  Integração Contínua Drone.io  Build Status
  Manual em Read the Docs  Document Build Status

Protótipo Executável

Equipe de Desenvolvimento

 

 Carlo Emmanoel Tolla de Oliveira
Activ SuperPython Github Lattes
 Ludmila Barros Meireles
Activ SuperPython Github Lattes

 

 

Copyleft 2015 Carlo E. T. Oliveira

 

SuperPython - Manual¶

Este ambiente permite rodar um game stand alone e criar módulos que não estão no menu.

Para rodar um game basta chamar <projeto>.is-by.us/code/_<modulo>. O submódulo main.py será importado.

Para criar ou acessar um módulo fora do menu basta clicar a letra O no canto inferior direito do menu principal.

A biblioteca Phaser está disponível baixada do CDN. Use: from browser import window; window.Phaser

O projeto que se está usando pode ser caracterizado como a primeira palavra da url.

Pode se importar novos módulos adicionando o prefixo (módulo) _spy na frente do nome do módulo que se quer importar.

SuperPython - Modulos¶

SuperPython é programado em Brython

Funcionalidades Documentadas:

Notas de Lançamento V. 1.1.3¶

SuperPython

Milestone¶

hidenseek - Suporte a importação cruzada

Aspectos do Lançamento¶

Destaques dos Aspectos¶

Este ambiente permite criar novos módulos ou arquivos.

Aspecto #1¶

Para criar ou acessar um módulo fora do menu basta clicar a letra O no canto inferior direito do menu principal.

Melhoramentos¶

Novo menu visual e gif de carregamento.

Melhoramento #1¶

O novo menu visual é simétrico e suporta até cinquenta usuários.

Melhoramento #2¶

Um gif animado com engrenagens rodando indica a carga do editor.

Consertos¶

O login, a url de projeto, novos módulos e importação de módulos foram consertados

Conserto #01¶

Quando se loga em um módulo ele fica tarjado no menu principal.

Conserto #01¶

Quando se loga em um módulo ele fica tarjado no menu principal.

Conserto #02¶

O projeto que se está usando pode ser caracterizado como a primeira palavra da url.

Conserto #03¶

Pode se criar e editar novos módulos e ou arquivos pelo menu extra principal.

Conserto #04¶

Pode se importar novos módulos adicionando o prefixo (módulo) _spy na frente.

Questões e Problemas Conhecidos¶

  1. Ainda está congelado na versão antiga do Brython 3.0.2
  2. Aparece uma imagem espúria em construção quando roda o jogo stand alone.

Lançamentos Anteriores e Posteriores¶

Próximo Lançamento: A ser definido Lançamento 1.1.4

Lançamento Anterior: Novembro 2015 Lançamento 1.1.2

Lançamentos Anteriores¶

Notas de Lançamento V. 1.1.2¶

SuperPython

Milestone¶

hidenseek - Suporte a importação cruzada

Aspectos do Lançamento¶

Destaques dos Aspectos¶

Este ambiente permite rodar um game stand alone e criar módulos que não estão no menu. Agregando a lib do Phaser.

Aspecto #1¶

Para rodar um game basta chamar <projeto>.is-by.us/code/_<modulo>. O submódulo main.py será importado.

Aspecto #2¶

Para criar ou acessar um módulo fora do menu basta clicar a letra O no canto inferior direito do menu principal.

Aspecto #3¶

A biblioteca Phaser está disponível baixada do CDN.

Melhoramentos¶

Novo menu visual e gif de carregamento.

Melhoramento #1¶

O novo menu visual é simétrico e suporta até cinquenta usuários.

Melhoramento #2¶

Um gif animado com engrenagens rodando indica a carga do editor.

Consertos¶

Ajuste da estrutura de configuração para facilitar os testes

Conserto #01¶

Adiciona o arquivo vendor.py para eliminar lib no import do bottle.

Questões e Problemas Conhecidos¶

  1. Ainda está congelado na versão antiga do Brython 3.0.2
  2. Aparece uma imagem espúria em construção quando roda o jogo stand alone.

Lançamentos Anteriores e Posteriores¶

Próximo Lançamento: A ser definido Lançamento 1.1.3

Lançamento Anterior: Novembro 2015 Lançamento 1.1.1

Notas de Lançamento V. 1.1.1¶

SuperPython

Milestone¶

hidenseek - Suporte a importação cruzada

Aspectos do Lançamento¶

Destaques dos Aspectos¶

Este ambiente permite a edição de códigos e importação do módulo de um outro projeto.

Aspecto #1¶

o nome __name__ é atribuído «__main__» no programa principal.

Melhoramentos¶

Versão para uso do Google Application Engine e PyBuilder.

Melhoramento #1¶

Foi melhorada a configuração para uso do construtor de aplicativos PyBuilder. A configuração build.py define os aspectos necessários para verificar testes, cobertura, cabeçalhos e detalhes para deployment.

Consertos¶

Conserto #01¶

o nome __name__ é atribuído «__main__» no programa principal.

Conserto #02¶

A carga do módulo principal é feita por AJAX, evitando o congelamento do HTML.

Questões e Problemas Conhecidos¶

A funcionalidade ainda é muito simples, requer melhorias.

Uma nova versão deve suportar o monitoramento da atividade dos alunos.

Lançamentos Anteriores e Posteriores¶

Próximo Lançamento: Maio 2016 Lançamento 1.1.2

Lançamento Anterior: Julho 2015 Lançamento 0.1.0

Notas de Lançamento V. 0.1.0¶

SuperPython

Milestone¶

Bruce - Protótipo da inteface Gráfica

Aspectos do Lançamento¶

Destaques dos Aspectos¶

Este ambiente inicial permite apenas o teste da interface com o usuário

Aspecto #1¶

O ambiente apenas apresenta o visual da interface mas não permite nenhuma interação.

Melhoramentos¶

Versão para uso do Google Application Engine e PyBuilder.

Melhoramento #1¶

Foi adicionada uma configuração para uso do Google_Cloud. A configuração app.yaml define os aspectos necessários para rodar no servidor do Goolge Application Engine.

Melhoramento #2¶

Foi adicionada uma configuração para uso do construtor de aplicativos PyBuilder. A configuração build.py define os aspectos necessários para verificar testes, cobertura, cabeçalhos e detalhes para deployment.

Consertos¶

Nenhum conserto notável.

Questões e Problemas Conhecidos¶

A funcionalidade ainda é muito simples, requer melhorias.

Uma nova versão deve suportar o monitoramento da atividade dos alunos.

Lançamentos Anteriores e Posteriores¶

Próximo Lançamento: A ser definido Lançamento 0.2.0

SuperPython - Módulos Principais¶

Módulo Cliente¶

SuperPython - Pacote Cliente¶

Adiciona um editor Ace, dois botões e dois consoles do programa.

class client.superpython.core.Ace(browser, edit, project, code)[código fonte]¶

Inclui uma janela com um editor Acejs.

Parâmetros:
  • browser – Brythom module browser
  • edit – Referência ao módulo editor Ace
  • project – Projeto que o usuário está desenvolvendo
  • code – Texto do código a ser adicionado no editor
add_editor(code=None)[código fonte]¶
annotate(row=1, message='indefinido')[código fonte]¶
get_content()[código fonte]¶
set_content(code)[código fonte]¶
test_dirty(_, code_saved=False)[código fonte]¶

Confere e testa o estado de edição para detectar modificações.

:returns Se o código foi modificado desde a última vez que foi salvo.

class client.superpython.core.Console(browser, ace)[código fonte]¶

Classe que define o console de resposta da execução

Parâmetros:
  • browser – Referência ao módulo navegador do Brython
  • ace – Referência ao módulo editor Ace
beforerun()[código fonte]¶
display_canvas(display='block')[código fonte]¶
display_saved(message='SAVED')[código fonte]¶
onexec_error()[código fonte]¶
write(data)[código fonte]¶
class client.superpython.core.Dims(x, y, w, h)¶

Bases: tuple

h¶

Alias for field number 3

w¶

Alias for field number 2

x¶

Alias for field number 0

y¶

Alias for field number 1

class client.superpython.core.SuperPython(browser, edit, project, projeto)[código fonte]¶

Classe que define o ambiente de desenvolvimento

Parâmetros:browser – Referência ao módulo navegador do Brython
load(_=0, msg=None)[código fonte]¶
logout_on_exit(ev)[código fonte]¶
main(name='', code='# main')[código fonte]¶
save(_=0, autosaved=False)[código fonte]¶
client.superpython.core.main(browse, canvas, edit, projeto)[código fonte]¶

Cria uma instância da classe Super Python.

Parâmetros:
  • browse – Módulo browser do Brython.
  • canvas – Div pydiv onde se desenha gráficos.
  • edit –
  • projeto – Nome do projet0.
Retorno:

instância da classe Super Python.

Veja também

Module client.superpython.core

Nota

Unidade de Modelo Cliente.

Módulo Servidor¶

Controlador Principal¶

Veja também

Module server.controllers.main_controller

Nota

Controlador principal da funcionalide Web.

Controlador de Código¶

Veja também

Module server.controllers.main_controller

Nota

Controla também a invocação de game stand alone.

Controlador de Edição¶

Veja também

Module server.controllers.main_controller

Nota

Controla também a invocação de múdulos __init__.

SuperPython - Módulos de Teste¶

Veja também

Modules SuperPython - Módulos Principais

Nota

Módulo principal de testes unitários.

Veja também

Module spyweb_tests

Nota

Unidade de Teste da funcionalide Web.