Giter Club home page Giter Club logo

archwizardduel's Introduction

Top Langs

* For security-sensitive communications, please encrypt your messages with my public PGP key.
Its fingerprint is CBC54EF64ADF0F590095B06ABD4C56811EC6922D, and it should be available at:


FormallyShrp dagger3d

rcme-ICASSP2021-poster antlir re-multif

graf BASIC

Padn't PyCG eris.btree

archwizardduel's People

Contributors

alekfrohlich avatar baioc avatar mateusfavarin avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

archwizardduel's Issues

Organizar o projeto

Precisamos decidir por um esquema de branches no GitHub e definir o estilo de formatação do código.
Adicionar uma licença seria bom também.

Entrega 2 (23/10)

Segunda entrega - a implementação deve ter tratado a interação com Netgames Server para conexão, desconexão, envio de solicitação de início de partida, recebimento de mando para início de partida.
Deve ser entregue um arquivo jar executável em que seja possível observar esse funcionamento.
A modelagem deve tratar domínio do problema e da solução (neste caso, modelagem da interface gráfica e da interação com Netgames Server).
Deve conter diagramas de classes, casos de uso, visão geral de interação (para sequenciamento dos casos de uso), refinamento dos casos de uso em diagrama de atividades e de sequência e modelagem de estados de pelo menos duas classes, com diagrama de máquina de estados.

Entregar tudo em um único arquivo compactado NOME DO ARQUIVO (PADRÃO): nomeDoJogo_02.zip

Exemplo Pentago T2

Possível Incompatibilidade entre LibGdx e maven

Pelo que vi até agora, toda a biblioteca do LibGdx trabalha ao redor do Gradle, um build-system parecido com o Maven. Talvez tenhamos que migrar do maven para evitar futuras dores de cabeça

Entrega Final (27/11)

Seguindo as orientações, entrega final contendo especificação de requisitos do programa desenvolvido, modelagem UML completa (de acordo com o previsto na disciplina), código completo, arquivo executável (jar) e release notes até 24 horas depois da apresentação final.

Since "project decisions" were made, the diagrams ought to be updated to reflect those decisions.

Interpretador

Parsear e interpretar o LISP reduzido.

Toda a <EXPRESSION> da linguagem é ou atômica ou composta.

Formas atômicas

Um átomo é um símbolo (dá pra representar como uma String) sem parênteses e
que pode ser:

  • Um número (pensei em representar todos os números com BigDecimal).
  • Um booleano true ou false.
  • Se um átomo não for nenhum dos dois, consideramos ele como uma variável.

No geral átomos se avaliam sozinhos.
Avaliar uma variável é buscar o seu valor definido no escopo atual do Environment.

Formas compostas

Toda forma composta é delimitada por parênteses e dependendo do que houver na primeira subexpressão são avaliadas de formas especiais ou não:

  • (begin <FIRST> <REST...>)
    Subexpressões são avaliadas na ordem em que estão escritas, com pelo menos uma expressão.
    O valor resultante ("retorno") é o
    da última expressão.

  • (define symbol <VAL>)
    Associa um símbolo ao valor de uma expressão, colocando essa definição no Frame mais interno (via Environment) do interpretador.
    O retorno é indefinido e para isso vamos usar um valor especial VOID.

  • (if <COND> <CONSEQ> <ALT>)
    Avalia a condição e se essa tiver um valor associado à verdadeiro então avalia a consequência, caso contrário avalia a alternativa.
    O retorno é igual ao da última expressão avaliada, ou seja o da consequência ou da alternativa.

  • (lambda (a0 a1 ... aN) <FIRST> <REST...>)
    Retorna um valor Procedure que armazena o escopo léxico atual, ou seja um closure.
    Isso significa que a avaliação do corpo do lambda é deixada pra mais tarde, quando for invocado e houverem valores dados como argumentos.

  • Se a forma composta não for caracterizada por alguma das palavras reservadas acima, então é a aplicação de um procedimento, por exemplo (foo 1 (bar 2) 3)

Aplicação de procedimento

O resultado da avaliação de uma expressão composta usual é dado por aplicar o procedimento (obtido pela avaliação da primeira subexpressão) considerando os valores das demais subexpressões como a lista de argumentos dessa aplicação.

Para fazer o equivalente à substituir os parâmetros formais pelos argumentos fornecidos, basta criar uma nova Frame na qual estão associados os nomes dos parâmetros aos valores passados na evocação.

Depois, o resultado da aplicação é o mesmo de avaliar o corpo do procedimento nesse novo Environment extendido.

Entrega 1.0 (10/09)

A primeira entrega prevê a implementação inicial da interface do jogo, mas não da sua lógica.
Essa implementação (assim como as posteriores) deve incluir um jar executável.
Além disso, a entrega deve incluir a especificação de requisitos e a primeira modelagem, contendo apenas diagrama de classes e diagrama de casos de uso, ambos tratando domínio do problema e domínio da solução (em particular, na modelagem de classes deve haver um diagrama contendo especificamente os elementos da interface gráfica).

Game Engine

Não pensamos em como mostrar o estado do jogo na tela desde que mudamos do LibGDX pro Swing.
Deve estar pronto pra entrega final.

Entrega 3 (19/11)

Terceira entrega - Modelagem de classes, casos de uso, visão geral de interação, refinamento de casos de uso (completo) e MAIS modelagem de estados e modelagem de algoritmos de métodos.
Completamente tratados os domínios do problema e da solução.
Trata-se de uma prévia da modelagem completa.

Na prática, são 5 diagramas de modelagem de algoritmo de método.

Entrega 1.1 (16/09)

Correção do Ricardo:

Avaliação nota
Requisitos: incluir esboço da interface no documento. Requisitos não funcionais inadequados: há uma confusão com o conceito de requisito não funcional, pois todos envolvem alguma funcionalidade (a discutir na apresentação). Não há uma descrição do jogo, com seus elementos, regras, dinâmica, mas uma idea superficial, com a menção de alguns jogos similares. Se eu recebesse uma especificação assim, não faria ideia do que eu deveria desenvolver. 5,0
Interface: Possível problema de portabilidade (Exception in thread "LWJGL Application" com.badlogic.gdx... OpenGL is not supported ...). Corrigir e reenviar até 16/09, 8 horas. x
Modelagem:
- Casos de uso: Falta o caso de uso "receber solicitação de início" (ou equivelente complemento de iniciar), que é uma imposição de Netgames. Identificadores dos atores inadequada (a discutir).
- Classes: há um forte vínculo entre atores e elementos do domínio do problema - jogadores (a discutir). Rever multiplicidades. No mais, ok
7,0

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.