Este projeto consiste na criação de uma aplicação interativa em Python que realiza o consumo da API de repositórios do GitHub, com foco na aplicação rigorosa dos princípios SOLID.
Os princípios SOLID representam cinco conceitos-chave para escrever código limpo e de alta qualidade:
S - Princípio da Responsabilidade Única (Single Responsibility Principle): Cada classe deve ter apenas uma razão para mudar, ou seja, deve ter apenas uma responsabilidade.
O - Princípio Aberto/Fechado (Open/Closed Principle): As classes devem estar abertas para extensão, mas fechadas para modificação. Isso significa que você pode estender o comportamento da classe sem alterar seu código fonte.
L - Princípio da Substituição de Liskov (Liskov Substitution Principle): Os objetos de uma subclasse devem ser capazes de substituir objetos de sua superclasse sem interromper o comportamento do programa.
I - Princípio da Segregação de Interface (Interface Segregation Principle): Clientes não devem ser forçados a depender de interfaces que não usam. Em outras palavras, uma classe não deve implementar métodos que não são relevantes para ela.
D - Princípio da Inversão de Dependência (Dependency Inversion Principle): Módulos de alto nível não devem depender de módulos de baixo nível. Ambos devem depender de abstrações. Além disso, abstrações não devem depender de detalhes. Detalhes devem depender de abstrações.
Esta aplicação interativa em Python terá os seguintes recursos:
Conexão à API do GitHub para recuperar informações sobre repositórios.
Apresentação dos dados dos repositórios de forma organizada.