Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/faustinopsy/rest-multiforma
https://github.com/faustinopsy/rest-multiforma
Last synced: 21 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/faustinopsy/rest-multiforma
- Owner: faustinopsy
- Created: 2023-08-09T00:47:47.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2023-12-04T00:17:19.000Z (about 1 year ago)
- Last Synced: 2023-12-04T01:24:16.934Z (about 1 year ago)
- Language: PHP
- Size: 255 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Projeto API CRUD
Este repositório contém um projeto simples de API CRUD que permite a criação, leitura, atualização e exclusão de usuários. O projeto está disponível em duas versões diferentes, cada uma em sua própria branch:A branch main contém a versão do projeto que NÃO segue a PSR-4, para os exemplos com PSR veja as branchs desse projeto, há no minimo 4 branchs com formatos diferentes.
As branchs (com_psr) contém a versão do projeto que segue a PSR-4.
a branch mais completa neste projeto é ([https://github.com/faustinopsy/REST-multiforma/com_psr_com_banco_componentes_puros](https://github.com/faustinopsy/REST-multiforma/tree/com_psr_com_banco_componentes_puros))
Lembrando que o proejto é didatico para alunos de desenvolvimento de sistemas entederem a evolução de uma sistema, conforme a divisão das branchs, pois cada branch desse projeto possui uma forma.
PSR-4
A PSR-4 é uma recomendação da PHP-FIG que define um padrão de autoloading de classes que permite a interoperabilidade de código entre diferentes projetos e suas bibliotecas.## Vantagens de usar PSR-4
Interoperabilidade: Facilita a reutilização de código em diferentes projetos.
Autoloading de Classes: Não é necessário incluir manualmente os arquivos de classes.
Estrutura de Diretórios Clara: A estrutura de diretórios e namespaces é clara e intuitiva.
Desvantagens de usar PSR-4
Curva de Aprendizado: Pode ser um pouco difícil para novos desenvolvedores se acostumarem com o padrão.
Configuração Adicional: Requer alguma configuração adicional no arquivo composer.json.
## Como usar a PSR-4
Para usar a PSR-4, você precisa configurar o autoloading no seu arquivo composer.json. Por exemplo:```sh
{
"autoload": {
"psr-4": {
"App\\": "backend/"
}
}
}
```
e dentro dos arquivos precisa-se incluir o namespacepor exemplo:
```sh
namespace App\User;class User {
// código da classe
}
```e para usar no arquivo principal:
```sh
require 'vendor/autoload.php';use App\User;
```
Depois, execute o comando composer install para gerar o arquivo vendor/autoload.php.
assim agora cria-se uma pasta vendor na raiz do projeto que é responsável por saber onde está as classes
## Exemplo de Uso
Este projeto é uma API simples que permite criar, ler, atualizar e excluir usuários.## Rotas
GET /backend/usuario/{id}: Recupera um usuário pelo ID.GET /backend/usuario: Recupera todos os usuários.
POST /backend/usuario: Cria um novo usuário.
PUT /backend/usuario/{id}: Atualiza um usuário existente pelo ID.
DELETE /backend/usuario/{id}: Exclui um usuário pelo ID.
## Inicialização
Para iniciar o projeto, siga estas etapas:Clone o repositório.
Instale as dependências com composer install.
Inicie o servidor com php -S localhost:8000.## Autor
Nome do Autor
- [Github](https://github.com/faustinopsy)
- [LinkedIn](https://www.linkedin.com/in/faustinopsy)## Licença
Este projeto está sob a licença MIT. Veja o arquivo [LICENSE](LICENSE) para mais detalhes.