{"id":22746490,"url":"https://github.com/jonathanprojetos/trybers-and-dragons","last_synced_at":"2026-05-09T01:10:50.282Z","repository":{"id":144527528,"uuid":"547899084","full_name":"JonathanProjetos/Trybers-And-Dragons","owner":"JonathanProjetos","description":"Este projeto trata-se de uma simulação de um jogo de RPG ","archived":false,"fork":false,"pushed_at":"2022-10-09T17:44:33.000Z","size":159,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-05T07:28:44.688Z","etag":null,"topics":["docker","eslint","poo","solid","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JonathanProjetos.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-10-08T14:18:45.000Z","updated_at":"2022-10-09T00:34:41.000Z","dependencies_parsed_at":null,"dependency_job_id":"123061a1-f277-48f7-966a-4623e7b620dd","html_url":"https://github.com/JonathanProjetos/Trybers-And-Dragons","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JonathanProjetos%2FTrybers-And-Dragons","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JonathanProjetos%2FTrybers-And-Dragons/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JonathanProjetos%2FTrybers-And-Dragons/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JonathanProjetos%2FTrybers-And-Dragons/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JonathanProjetos","download_url":"https://codeload.github.com/JonathanProjetos/Trybers-And-Dragons/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246278797,"owners_count":20751832,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","eslint","poo","solid","typescript"],"created_at":"2024-12-11T02:13:28.906Z","updated_at":"2026-05-09T01:10:45.235Z","avatar_url":"https://github.com/JonathanProjetos.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Trybers and Dragons\n\n# Contexto\nEste projeto trata-se de uma simulação de um jogo de RPG sigla em inglês para role-playing game, um gênero de jogo no qual os jogadores assumem o papel de personagens imaginários, em um mundo fictício. A aplicação conta com algumas classes bem comuns como Mage, Necromancer, Ranger e Warrior, todas elas batalham no modelo PVP(Player vs Player) e PVE(Player vs Environment).\n\n## POO\n\nA aplicação se apoia nos principios do POO tais como:\n- Abstração: Desenvolver a aplicação pensando em quem for consumir, abstraindo de detalhes técnicos que não são relevantes para quem for utiliza-la.\n- Encapsulamento: Expor o mínimo possível de atributos da classe ao meio exterior a ela. Atualizações e modificações devem ser feitas de forma nativa utilizando métodos internos da própria classe. \n- Herança: Classes filhas ou sub classes devem ser capazes de herdar métodos e atributos da super classe.\n- Polimorfismo: Capacidade de gerar resultados diferentes ao chamar objetos de classes filhas ou sub classes de uma mesma super classe.\n\n## SOLID\n\nA aplicação segue os conceitos de paradigma SOLiD, porem não ao pé da letra. O uso foi feito usando o conhecimento que tenho ate o momento =D \"1 semana\", é em um futuro não muito distante quero discutir o assunto com mais liberdade e bagagem. Gostaria de compartilha de forma breve os princípios do paradigma SOLID.\n\n- \"S\" Single Responsibility Principle: Entidade de software deve ter uma unica responsabilidade.\n- \"O\" Open/Closed Principle (OCP): Entidade de software deve está aberta para extenção e fechada para modificação.\n- \"L\" Liskov Substitution Principle: Objetos em um programa devem ser substituíveis por instâncias de seus subtipos, sem alterar a funcionalidade do programa.\n- \"I\" Interface Segregation Principle - ISP: Nenhum cliente deve ser forçado a depender de métodos que não utiliza.\n- \"D\" Dependency Inversion Principle: Entidades de alto nível não devem depender de entidades de baixo nível. Ambos devem depender de abstrações.\n\n\n## Ferramentas utilizadas\n\n - TypeScript\n - Docker\n - Eslint\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjonathanprojetos%2Ftrybers-and-dragons","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjonathanprojetos%2Ftrybers-and-dragons","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjonathanprojetos%2Ftrybers-and-dragons/lists"}