{"id":26359479,"url":"https://github.com/satoosan/poo-delphi","last_synced_at":"2026-02-11T22:39:32.025Z","repository":{"id":282312718,"uuid":"948173707","full_name":"satoosan/POO-Delphi","owner":"satoosan","description":"Usando POO com Delphi","archived":false,"fork":false,"pushed_at":"2025-03-13T21:53:48.000Z","size":3476,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-03T23:13:14.256Z","etag":null,"topics":["delphi","delphi10","pascal","poo"],"latest_commit_sha":null,"homepage":"","language":"Pascal","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/satoosan.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":"2025-03-13T21:51:18.000Z","updated_at":"2025-03-13T21:54:29.000Z","dependencies_parsed_at":"2025-03-13T22:42:17.224Z","dependency_job_id":null,"html_url":"https://github.com/satoosan/POO-Delphi","commit_stats":null,"previous_names":["satoosan/poo-delphi"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/satoosan/POO-Delphi","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/satoosan%2FPOO-Delphi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/satoosan%2FPOO-Delphi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/satoosan%2FPOO-Delphi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/satoosan%2FPOO-Delphi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/satoosan","download_url":"https://codeload.github.com/satoosan/POO-Delphi/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/satoosan%2FPOO-Delphi/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273997105,"owners_count":25204473,"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","status":"online","status_checked_at":"2025-09-07T02:00:09.463Z","response_time":67,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["delphi","delphi10","pascal","poo"],"created_at":"2025-03-16T15:59:53.240Z","updated_at":"2026-02-11T22:39:26.969Z","avatar_url":"https://github.com/satoosan.png","language":"Pascal","funding_links":[],"categories":[],"sub_categories":[],"readme":"# POO com Delphi\n\n## Descrição\nEste projeto implementa uma hierarquia de classes para representar clientes de um sistema, diferenciando entre clientes pessoa física e pessoa jurídica. O código está escrito em Delphi/Object Pascal.\n\n## Estrutura do Projeto\nO projeto consiste em um arquivo principal (`cliente.pas`), que define as classes:\n\n### 1. `TCliente`\n- Classe base para representar um cliente.\n- Possui os atributos:\n  - `Nome`: Nome do cliente.\n  - `Email`: E-mail do cliente, com validação para garantir um formato correto.\n- Métodos:\n  - `ExibirDados()`: Método abstrato que deve ser sobrescrito pelas classes derivadas.\n\n### 2. `TClientePessoaFisica`\n- Herda de `TCliente`.\n- Adiciona o atributo:\n  - `CPF`: Cadastro de Pessoa Física.\n- Implementa:\n  - `ExibirDados()`: Retorna uma string formatada com nome e CPF.\n\n### 3. `TClientePessoaJuridica`\n- Herda de `TCliente`.\n- Adiciona o atributo:\n  - `CNPJ`: Cadastro Nacional da Pessoa Jurídica.\n- Implementa:\n  - `ExibirDados()`: Retorna uma string formatada com nome e CNPJ.\n\n## Exemplo de Uso\nSegue um exemplo de como instanciar e utilizar as classes:\n\n```delphi\nvar\n  ClientePF: TClientePessoaFisica;\n  ClientePJ: TClientePessoaJuridica;\nbegin\n  ClientePF := TClientePessoaFisica.Create;\n  ClientePF.Nome := 'João Silva';\n  ClientePF.CPF := '123.456.789-00';\n  ClientePF.Email := 'joao@email.com';\n  Writeln(ClientePF.ExibirDados);\n\n  ClientePJ := TClientePessoaJuridica.Create;\n  ClientePJ.Nome := 'Empresa XYZ';\n  ClientePJ.CNPJ := '12.345.678/0001-99';\n  ClientePJ.Email := 'contato@empresaxyz.com';\n  Writeln(ClientePJ.ExibirDados);\n\n  ClientePF.Free;\n  ClientePJ.Free;\nend.\n```\n\n## Requisitos\n- Delphi 10 ou superior.\n- Conhecimento em Programação Orientada a Objetos (POO) com Delphi.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsatoosan%2Fpoo-delphi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsatoosan%2Fpoo-delphi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsatoosan%2Fpoo-delphi/lists"}