3
respostas

Class ou Function?

No video ele cria uma class chamada extrator_url, no meu entendimento class era a definição de algo e esse algo poderia ter funções (metodos atrelados). Mas se o objetivo fosse FAZER algo ao invés de DEFINIR algo, deveriamos usar função. Consegue explicar melhor se de fato faz sentido criar uma classe extrator_url como ele fez na aula?

3 respostas

Bianca, vc está correta sobre o entendimento de class, mas também a class é a união de métodos e/ou dados em torno de uma unidade

A class ExtratorUrl reune vários métodos em tono da unidade url

Nada impede de vc fazer com funções separadas, mas o código fica mais legível usando class

Além de facilitar a manutenção

Entendo, mas então faria mais sentido termos uma class Url, essa Url teria atributos como parameters, query string, url base etc. E teria metodos atrelados a ela tbm. Mas quando colocamos a class como uma ação: Extrator Url ainda me parece um pouco confuso.

Não sei se esta class ExtratorUrl segue todos os pricípios SOLID, mas ela tem vários métodos

class ExtratorURL:
    def __init__(self, url):
        """Salva a url em um atributo do objeto (self.url = url) e verifica se a url é válida"""
        ...

    def sanitiza_url(self, url):
        """Retorna a url removendo espaços em branco."""
        ...

    def valida_url(self):
        """Valida se a url está vazia"""
        ...

    def get_url_base(self):
        """Retorna a base da url."""
        ...

    def get_url_parametros(self):
        """Retorna os parâmetros da url."""
        ...

    def get_valor_parametro(self, parametro_busca):
        """Retorna o valor do parametro `parametro_busca`."""

Class é um assunto polêmico

Bianca, continue assim. Questione sempre. Bons estudos