O que é o conceito de POO? Como você pode criar uma operação bruta?
Publicados: 2022-04-28Todo desenvolvedor usou programação orientada a objetos (OOP) em algum momento de sua carreira, e é considerado um paradigma de programação fundamental. Ao usar OOPs, o objetivo principal é vincular com segurança os dados e as funções que realizam operações neles, impedindo que qualquer outra parte do código acesse essas informações.

Neste blog, explicarei os princípios do conceito oop e como criar uma operação crud com laravel, que é bem conhecido no desenvolvimento web.
O que é POO?
O sistema de programação orientada a objetos (OOPs) é uma abordagem para o desenvolvimento de software que modela aplicativos em torno de objetos do mundo real, como funcionários, carros, contas bancárias, etc.
Dois dos conceitos gerais de POO em Java são classe e objeto. Uma classe define as propriedades e métodos de um objeto do mundo real, enquanto um objeto é uma ocorrência de uma classe.
Existem três componentes básicos da orientação a objetos. Esses são:
- Análise orientada a objetos – funcionalidade do sistema
- Projeto orientado a objetos – arquitetura do sistema
- Programação orientada a objetos – implementação do aplicativo
Principais princípios da POO
Deixe-me apresentá-lo aos três principais princípios da POO.
Encapsulamento
Reduzir a complexidade no desenvolvimento de software é o principal objetivo do encapsulamento. Isso é feito ocultando os detalhes da implementação e revelando apenas as operações. Assim, usar uma classe torna-se mais fácil.
Por meio de métodos como get e set, o acesso às variáveis de classe torna a classe fácil de manter e flexível para que o estado interno de um objeto seja protegido. Dessa forma, sem se preocupar em quebrar o código, a implementação interna da classe base pode ser alterada.
Herança
A reutilização é o principal objetivo da herança. Aqui, ele está preocupado com a relação entre as classes. Várias classes podem usar os métodos definidos para herdar de uma classe pai.
Por exemplo, onde você precisa fornecer funcionalidades comuns, como adicionar, atualizar e excluir dados do banco de dados, a herança pode ser bastante útil.
Polimorfismo
Simplificar a manutenção de aplicativos e torná-los mais extensíveis é o objetivo do polimorfismo. Preocupa-se em ter diferentes formas de implementação para um único formulário.
Como criar uma operação bruta com laravel?
Laravel é um framework de aplicação web de código aberto com sintaxe expressiva e elegante. Um framework web fornece uma estrutura e um ponto de partida para a criação de um aplicativo, permitindo que você se concentre nos aspectos principais.
Como um framework PHP, o Laravel suporta programação orientada a objetos. O padrão de projeto Model View Controller (MVC) é usado pelo Laravel para criar seus aplicativos.
O PHP suporta programação orientada a objetos, que é mais rápida e fácil de executar do que as linguagens de programação tradicionais. Php4 foi a primeira versão do PHP a incluir programação orientada a objetos (OOP). Quando se trata de codificação, a programação orientada a objetos é uma técnica que permite aos desenvolvedores organizar os dados e a estrutura de um aplicativo em classes.
Veremos agora como criar uma operação crud ( Create , Read , Update e Delete).
Para começar com qualquer linguagem de programação, você deve ter conhecimento básico de qualquer linguagem que você vai começar. Por isso, estou começando com o Laravel, que é muito famoso no desenvolvimento web.
Passo 1: O primeiro passo é instalar o projeto Laravel. Você pode baixar qualquer versão do Laravel. Aqui, eu compartilhei abaixo o site oficial do Laravel:
https://laravel.com/docs/8.x/installation#why-laravel
Você pode instalá-lo com o compositor ou simplesmente instalar a pasta e mantê-la em sua pasta htdocs.
Você pode baixar o compositor usando as etapas fornecidas no link abaixo:
https://getcomposer.org/download/
Você pode verificar se o Composer está instalado em seu sistema abrindo um CMD (prompt de comando) e digitando composer e pressionando enter. O Compositor aparecerá para você da seguinte forma:

Agora você está pronto para instalar o projeto Laravel. Para isso, siga os passos abaixo:
Primeiramente tem que visitar o site oficial do Laravel: https://laravel.com/docs/
Aqui você pode escolher qualquer versão com a qual deseja trabalhar:

Selecione a versão do seu aplicativo e role para baixo até ver o comando conforme mostrado abaixo:
composer create-project --prefer-dist laravel/laravel blog "5.8.*"

Por favor, use este comando no seu painel cmd e, assim que você clicar neste comando, seu projeto começará a ser baixado.
Verifique se você está baixando na pasta htdocs:
Levará alguns minutos e, assim que o projeto for baixado, você verá uma estrutura de pastas, conforme mostrado na imagem abaixo:

Etapa 2: configuração do banco de dados de atualização
Na segunda etapa, você fará uma configuração do banco de dados. Por exemplo, nome do banco de dados, nome de usuário, senha, etc., para seu aplicativo bruto do Laravel 5.8. Então agora você tem que abrir o arquivo .env e preencher todos os detalhes conforme mostrado abaixo:


Passo 3: O próximo passo é criar a tabela.
Você vai criar um aplicativo bruto para o produto. Então, você tem que criar uma migração para a tabela "produtos" usando o comando Laravel 5.8 PHP artisan.
Primeiro, execute este comando no diretório do seu projeto:
php artesão make:migration create_products_table --create=products
Aqui você pode ver sua migração criada recentemente:
Abra seu arquivo de migração e cole o abaixo mencionado:

<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateProductsTable estende a migração
{
função pública up()
{
Schema::create('products', function (Blueprint $table) {
$table->increments('id');
$tabela->string('nome');
$tabela->texto('detalhe');
$table->timestamps();
});
}
função pública para baixo()
{
Schema::dropIfExists('produtos');
}
}
Agora você deve executar o comando :php artisan migrate. E assim que você executar este comando, sua tabela será criada no banco de dados.
Etapa 4: criar rota de recurso
Aqui, precisamos adicionar uma rota de recurso para o aplicativo crud do produto. Então, para fazer isso, abra seu arquivo “routes/web.php” e adicione a seguinte rota.

rotas/web.php

Route::resource('products','ProductController');

Etapa 5: criar controlador e modelo
Nesta etapa, devemos agora criar um novo controlador como ProductController. Então execute o comando abaixo e crie um novo controller. Use o novo controlador para criar um controlador de recursos.
php artesão make:controller ProductController --resource --model=Produto
<?php
namespace App\Http\Controllers;
use App\Produto;
use Illuminate\Http\Request;
classe ProductController estende Controller
{
função pública index()
{
$produtos = Produto::latest()->paginate(5);
return view('produtos.index',compact('produtos'))
->with('i', (request()->input('page', 1) - 1) * 5);
}
função pública criar()
{
return view('produtos.criar');
}
armazenamento de função pública (Request $ request)
{
$request->validate([
'nome' => 'obrigatório',
'detalhe' => 'obrigatório',
]);
Produto::create($request->all());
return redirect()->route('products.index')
->with('sucesso','Produto criado com sucesso.');
}
show de função pública (produto $ produto)
{
return view('produtos.show',compact('produto'));
}
edição de função pública (produto $ produto)
{
return view('produtos.edit',compact('produto'));
}
atualização de função pública (Solicitação $ solicitação, Produto $ produto)
{
$request->validate([
'nome' => 'obrigatório',
'detalhe' => 'obrigatório',
]);
$produto->atualizar($pedido->todos());
return redirect()->route('products.index')
->with('sucesso','Produto atualizado com sucesso');
}
função pública destroy(Product $product)
{
$produto->excluir();
return redirect()->route('products.index')
->with('sucesso','Produto excluído com sucesso');
}
}
Seu modelo ficará como mostrado na imagem abaixo.

Etapa 6: criar arquivos blade
Pasta: resources/views/products/layout.blade.php
recursos/visualizações/produtos/index.blade.php


recursos/visualizações/produtos/create.blade.php
@extends('produtos.layout')
@section('conteúdo')
<div class="linha">
<div class="col-lg-12 margin-tb">
<div class="puxar para a esquerda">
<h2>Adicionar novo produto</h2>
</div>
<div class="pull-right">
<a class="btn btn-primary" href=""> Voltar</a>
</div>
</div>
</div>
@if ($errors->any())
<div class="alert alert-danger">
<strong>Opa!</strong> Houve alguns problemas com sua entrada.<br><br>
<ul>
@foreach ($errors->all() como $error)
<li></li>
@endforeach
</ul>
</div>
@fim se
<form action="" method="POST">
@csrf
<div class="linha">
<div class="col-xs-12 col-sm-12 col-md-12">
<div class="form-group">
<strong>Nome:</strong>
<input type="text" name="name" class="form-control" placeholder="Name">
</div>
</div>
<div class="col-xs-12 col-sm-12 col-md-12">
<div class="form-group">
<strong>Detalhe:</strong>
<textarea class="form-control" name="detail" placeholder="Detail"></textarea>
</div>
</div>
<div class="col-xs-12 col-sm-12 col-md-12 text-center">
<button type="submit" class="btn btn-primary">Enviar</button>
</div>
</div>
</form>
@endsection
recursos/visualizações/produtos/edit.blade.php
@extends('produtos.layout')
@section('conteúdo')
<div class="linha">
<div class="col-lg-12 margin-tb">
<div class="puxar para a esquerda">
<h2>Editar produto</h2>
</div>
<div class="pull-right">
<a class="btn btn-primary" href=""> Voltar</a>
</div>
</div>
</div>
@if ($errors->any())
<div class="alert alert-danger">
<strong>Opa!</strong> Houve alguns problemas com sua entrada.<br><br>
<ul>
@foreach ($errors->all() como $error)
<li></li>
@endforeach
</ul>
</div>
@fim se
<form action="" method="POST">
@csrf
@method('PUT')
<div class="linha">
<div class="col-xs-12 col-sm-12 col-md-12">
<div class="form-group">
<strong>Nome:</strong>
<input type="text" name="name" value="" class="form-control" placeholder="Name">
</div>
</div>
<div class="col-xs-12 col-sm-12 col-md-12">
<div class="form-group">
<strong>Detalhe:</strong>
<textarea class="form-control" name="detail" placeholder="Detail"></textarea>
</div>
</div>
<div class="col-xs-12 col-sm-12 col-md-12 text-center">
<button type="submit" class="btn btn-primary">Enviar</button>
</div>
</div>
</form>
@endsection
recursos/visualizações/produtos/show.blade.php

Agora que você terminou com todo o código, tudo o que você precisa fazer é apenas executar um comando no seu cmd.

Empacotando
Neste blog, apresentei a você o conceito de POO, um paradigma de programação fundamental. Os principais princípios de POO também foram explicados. O blog também explicou o procedimento passo a passo para criar uma operação crud em laravel.
Programas grandes são difíceis de escrever, mas se as equipes de desenvolvimento e design aderirem aos princípios orientados a objetos, poderão criar designs melhores com menos defeitos. Como cada objeto existe por conta própria, isso ajuda a aumentar a modularidade do programa.
Espero que este blog tenha sido útil para você. Você pode visitar www.webdew.com para ler mais blogs. E se você estiver procurando por serviços de web design ou desenvolvimento web, não hesite em nos contatar!
Editor: Amrutha
