Che cos'è il concetto di OOP? Come si può creare un'operazione crud?

Pubblicato: 2022-04-28

Ogni sviluppatore ha utilizzato la programmazione orientata agli oggetti (OOP) in un determinato momento della propria carriera ed è considerato un paradigma di programmazione fondamentale. Quando si utilizzano le OOP, l'obiettivo principale è collegare in modo sicuro i dati e le funzioni che eseguono operazioni su di essi, impedendo a qualsiasi altra parte di codice di accedere a tali informazioni.

Suggerimenti per la gestione dei progetti Web per uno sviluppo web di successo

In questo blog spiegherò i principi del concetto oop e come creare un'operazione crud con laravel, che è ben noto nello sviluppo web.

Cosa sono gli OOP?

Il sistema di programmazione orientata agli oggetti (OOP) è un approccio allo sviluppo di software che modella le applicazioni su oggetti del mondo reale come dipendenti, automobili, conti bancari, ecc.

Due dei concetti generali di OOP in Java sono classe e oggetto. Una classe definisce le proprietà ei metodi di un oggetto del mondo reale, mentre un oggetto è un'occorrenza di una classe.

Ci sono tre componenti di base dell'orientamento agli oggetti. Questi sono:

  • Analisi orientata agli oggetti – funzionalità del sistema
  • Progettazione orientata agli oggetti – architettura del sistema
  • Programmazione orientata agli oggetti – implementazione dell'applicazione

Principi principali dell'OOP

Permettetemi di presentarvi i tre principi principali dell'OOP.

Incapsulamento

Ridurre la complessità nello sviluppo del software è lo scopo principale dell'incapsulamento. Lo fa nascondendo i dettagli di implementazione e rivelando solo le operazioni. Così l'uso di una classe diventa più facile.

Attraverso metodi come get e set, l'accesso alle variabili di classe rende la classe facile da mantenere e flessibile in modo che lo stato interno di un oggetto sia protetto. In questo modo, senza preoccuparsi di rompere il codice, è possibile modificare l'implementazione interna della classe base.

Eredità

La riutilizzabilità è lo scopo principale dell'ereditarietà. Qui si tratta del rapporto tra classi. Varie classi possono utilizzare i metodi definiti per ereditare da una classe padre.

Ad esempio, quando devi fornire funzionalità comuni come l'aggiunta, l'aggiornamento e l'eliminazione di dati dal database, l'ereditarietà può essere molto utile.

Polimorfismo

Semplificare la manutenzione delle applicazioni e renderle più estensibili è lo scopo del polimorfismo. Si tratta di avere diverse modalità di implementazione per un singolo modulo.

Come creare un'operazione crud con laravel?

Laravel è un framework di applicazioni Web open source con sintassi espressiva ed elegante. Un framework web fornisce una struttura e un punto di partenza per creare un'applicazione, permettendoti di concentrarti sugli aspetti principali.

Come framework PHP, Laravel supporta la programmazione orientata agli oggetti. Il modello di progettazione del controller di visualizzazione modello (MVC) viene utilizzato da Laravel per creare le sue applicazioni.

Php supporta la programmazione orientata agli oggetti, che è sia più veloce che più facile da eseguire rispetto ai tradizionali linguaggi di programmazione. Php4 è stata la prima versione di PHP a includere la programmazione orientata agli oggetti (OOP). Quando si tratta di codifica, la programmazione orientata agli oggetti è una tecnica che consente agli sviluppatori di organizzare i dati e la struttura di un'applicazione in classi.

Vedremo ora come creare un'operazione crud (Crea, Leggi, Aggiorna ed Elimina).

Per iniziare con qualsiasi linguaggio di programmazione, dovresti avere una conoscenza di base di qualsiasi lingua tu stia per iniziare. Pertanto, sto iniziando con Laravel, che è molto famoso nello sviluppo web.

Passaggio 1: il primo passaggio consiste nell'installare il progetto Laravel. Puoi scaricare qualsiasi versione di Laravel. Qui, ho condiviso di seguito il sito ufficiale di Laravel:

https://laravel.com/docs/8.x/installation#why-laravel

Puoi installarlo con il compositore, oppure puoi semplicemente installare la cartella e tenerla nella tua cartella htdocs.

È possibile scaricare il compositore utilizzando i passaggi indicati nel collegamento seguente:

https://getcomposer.org/download/  

Puoi verificare se Composer è installato nel tuo sistema aprendo un CMD (prompt dei comandi) e digitando Composer e premendo Invio. Il compositore ti apparirà come segue:

Come creare un'operazione crud con laravel step 1

Ora sei pronto per installare il progetto Laravel. Per farlo, segui i passaggi seguenti:

Per prima cosa devi visitare il sito Web ufficiale di Laravel: https://laravel.com/docs/

Qui puoi scegliere qualsiasi versione con cui vuoi lavorare:

Installazione Laravel

Seleziona la versione dell'app e scorri verso il basso fino a visualizzare il comando come mostrato di seguito:

compositore create-project --prefer-dist laravel/laravel blog "5.8.*"

compositore crea progetto

Usa questo comando nel tuo pannello cmd e, una volta premuto questo comando, il download del tuo progetto inizierà.

Assicurati di scaricare nella cartella htdocs:

scaricando nel forlder htdocs Ci vorranno un paio di minuti e, una volta scaricato il progetto, vedrai una struttura di cartelle come mostrato nell'immagine qui sotto:

progetto scaricato

Passaggio 2: configurazione di aggiornamento del database

Nel secondo passaggio, eseguirai una configurazione del database. Ad esempio, il nome del database, il nome utente, la password, ecc., per la tua applicazione crud di Laravel 5.8. Quindi ora devi aprire il file .env e compilare tutti i dettagli come mostrato di seguito:

Configurazione del database di aggiornamento 1Aggiornamento-configurazione del database 2

Passaggio 3: il passaggio successivo consiste nel creare la tabella.

Stai per creare un'applicazione crud per il prodotto. Quindi, devi creare la migrazione per la tabella "prodotti" usando il comando Laravel 5.8 PHP craft.

Innanzitutto, esegui questo comando nella directory del tuo progetto:

php artigiani make:migration create_products_table --create=products

crea la tabella Qui puoi vedere la migrazione creata di recente:

migrazione creata Apri il tuo file di migrazione e incolla quanto di seguito indicato:

file di migrazione

<?php

utilizzare Illuminate\Support\Facades\Schema;

usa Illuminate\Database\Schema\Blueprint;

utilizzare Illuminate\Database\Migrazioni\Migrazione;

la classe CreateProductsTable estende la migrazione

{

funzione pubblica su()

{

Schema::create('products', function (Blueprint $table) {

$tabella->incrementi('id');

$tabella->stringa('nome');

$tabella->testo('dettaglio');

$tabella->timestamp();

});

}

funzione pubblica giù()

{

Schema::dropIfExists('prodotti');

}

}



Ora devi eseguire il comando :php craft migrate. E una volta eseguito questo comando, la tua tabella verrà creata nel database.

Passaggio 4: crea un percorso di risorse

Qui, è necessario aggiungere un percorso di risorse per l'applicazione Product Crud. Quindi, per fare ciò, apri il tuo file "routes/web.php" e aggiungi il seguente percorso.

percorsi/web.php

creare un percorso di risorse

Percorso::resource('prodotti','ProductController');

Come implementare il pagamento ricorrente con stripe: una guida completa

Passaggio 5: crea controller e modello

In questo passaggio, dovremmo ora creare un nuovo controller come ProductController. Quindi esegui il comando seguente e crea un nuovo controller. Utilizzare il nuovo controller per creare un controller di risorse.

php artigiani make:controller ProductController --resource --model=Prodotto

<?php

spazio dei nomi App\Http\Controller;

usa App\Prodotto;

usa Illuminate\Http\Richiesta;

classe ProductController estende Controller

{

indice di funzione pubblica()

{

$prodotti = Prodotto::latest()->paginate(5);

return view('products.index', compact('products'))

->with('i', (request()->input('page', 1) - 1) * 5);

}

funzione pubblica crea()

{

return view('products.create');

}

archivio di funzioni pubbliche(Richiesta $richiesta)

{

$richiesta->convalida([

'nome' => 'richiesto',

'dettaglio' => 'richiesto',

]);

Prodotto::create($richiesta->tutto());

return redirect()->route('products.index')

->with('success','Prodotto creato con successo.');

}

spettacolo di funzioni pubbliche (Prodotto $ prodotto)

{

return view('products.show', compact('product'));

}

modifica della funzione pubblica (Prodotto $ prodotto)

{

return view('products.edit', compact('product'));

}

aggiornamento della funzione pubblica (Richiesta $ richiesta, Prodotto $ prodotto)

{

$richiesta->convalida([

'nome' => 'richiesto',

'dettaglio' => 'richiesto',

]);

$prodotto->aggiornamento($richiesta->tutto());

return redirect()->route('products.index')

->with('success','Prodotto aggiornato con successo');

}

funzione pubblica distruggi(Prodotto $prodotto)

{

$prodotto->elimina();

return redirect()->route('products.index')

->with('success','Prodotto eliminato con successo');

}

}

Il tuo modello apparirà come mostrato nell'immagine qui sotto.

modello

Passaggio 6: crea file Blade

Cartella: risorse/viste/prodotti/layout.blade.php

risorse/viste/prodotti/index.blade.php

creare file blade 1

creare file blade 2

risorse/viste/prodotti/create.blade.php

@extends('products.layout')

@sezione('contenuto')

<div class="riga">

<div class="col-lg-12 margin-tb">

<div class="pull-left">

<h2>Aggiungi nuovo prodotto</h2>

</div>

<div class="pull-right">

<a class="btn btn-primary" href=""> Indietro</a>

</div>

</div>

</div>

@if ($errori->qualsiasi())

<div class="alert alert-danger">

<strong>Ops!</strong> Si sono verificati alcuni problemi con il tuo input.<br><br>

<ul>

@foreach ($errors->all() come $error)

<li></li>

@endforeach

</ul>

</div>

@finisci se

<form action="" method="POST">

@csrf

<div class="riga">

<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>Dettaglio:</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">Invia</button>

</div>

</div>

</modulo>

@sezione finale

risorse/viste/prodotti/edit.blade.php

@extends('products.layout')

@sezione('contenuto')

<div class="riga">

<div class="col-lg-12 margin-tb">

<div class="pull-left">

<h2>Modifica prodotto</h2>

</div>

<div class="pull-right">

<a class="btn btn-primary" href=""> Indietro</a>

</div>

</div>

</div>

@if ($errori->qualsiasi())

<div class="alert alert-danger">

<strong>Ops!</strong> Si sono verificati alcuni problemi con il tuo input.<br><br>

<ul>

@foreach ($errors->all() come $error)

<li></li>

@endforeach

</ul>

</div>

@finisci se

<form action="" method="POST">

@csrf

@metodo('PUT')

<div class="riga">

<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>Dettaglio:</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">Invia</button>

</div>

</div>

</modulo>

@sezione finale

risorse/viste/prodotti/show.blade.php

creare file blade 3

Ora che hai finito con tutto il codice, tutto ciò che devi fare è eseguire un comando nel tuo cmd.

esegui il comando su cmd

Avvolgendo

In questo blog ti ho presentato il concetto di OOP, un paradigma di programmazione fondamentale. Sono stati inoltre spiegati i principi fondamentali delle OOP. Il blog ha anche spiegato la procedura passo passo per creare un'operazione crud in laravel.

I programmi di grandi dimensioni sono difficili da scrivere, ma se i team di sviluppo e progettazione aderiscono ai principi orientati agli oggetti, saranno in grado di creare progetti migliori con meno difetti. Poiché ogni oggetto esiste da solo, aiuta ad aumentare la modularità del programma.

Spero che questo blog ti sia stato utile. Puoi visitare www.webdew.com per leggere altri blog. E se stai cercando servizi di web design o sviluppo web, non esitare a contattarci!

Editore: Amrutha