Was ist das OOPs-Konzept? Wie können Sie eine Crud-Operation erstellen?
Veröffentlicht: 2022-04-28Jeder Entwickler hat irgendwann in seiner Karriere objektorientierte Programmierung (OOP) verwendet und gilt als grundlegendes Programmierparadigma. Bei der Verwendung von OOPs besteht das Hauptziel darin, Daten und die Funktionen, die Operationen an ihnen ausführen, sicher miteinander zu verbinden und zu verhindern, dass andere Teile des Codes auf diese Informationen zugreifen.

In diesem Blog werde ich die Prinzipien des oop-Konzepts erklären und wie man mit Laravel, das in der Webentwicklung bekannt ist, eine Crud-Operation erstellt.
Was sind OOPs?
Das objektorientierte Programmiersystem (OOPs) ist ein Ansatz für die Softwareentwicklung, der Anwendungen um reale Objekte wie Mitarbeiter, Autos, Bankkonten usw. herum modelliert.
Zwei der allgemeinen OOPs-Konzepte in Java sind Klasse und Objekt. Eine Klasse definiert die Eigenschaften und Methoden eines realen Objekts, während ein Objekt ein Vorkommen einer Klasse ist.
Es gibt drei grundlegende Komponenten der Objektorientierung. Diese sind:
- Objektorientierte Analyse – Funktionalität des Systems
- Objektorientiertes Entwerfen – Architektur des Systems
- Objektorientierte Programmierung – Implementierung der Anwendung
Hauptprinzipien von OOP
Lassen Sie mich Ihnen die drei Hauptprinzipien von OOP vorstellen.
Verkapselung
Die Reduzierung der Komplexität in der Softwareentwicklung ist der Hauptzweck der Kapselung. Dazu werden die Implementierungsdetails ausgeblendet und nur die Operationen angezeigt. Somit wird die Verwendung einer Klasse einfacher.
Durch Methoden wie get und set macht der Zugriff auf die Klassenvariablen die Klasse einfach zu warten und flexibel, sodass der interne Zustand eines Objekts geschützt ist. Auf diese Weise kann die interne Implementierung der Basisklasse geändert werden, ohne sich Gedanken über das Brechen des Codes machen zu müssen.
Nachlass
Die Wiederverwendbarkeit ist der Hauptzweck der Vererbung. Hier geht es um die Beziehung zwischen den Klassen. Verschiedene Klassen können die definierten Methoden verwenden, um von einer übergeordneten Klasse zu erben.
Wenn Sie beispielsweise allgemeine Funktionen wie das Hinzufügen, Aktualisieren und Löschen von Daten aus der Datenbank bereitstellen müssen, kann die Vererbung sehr nützlich sein.
Polymorphismus
Die Wartung von Anwendungen zu vereinfachen und sie erweiterbarer zu machen, ist der Zweck der Polymorphie. Es geht darum, unterschiedliche Implementierungsmöglichkeiten für ein einzelnes Formular zu haben.
Wie erstelle ich eine Crud-Operation mit Laravel?
Laravel ist ein Open-Source-Framework für Webanwendungen mit ausdrucksstarker, eleganter Syntax. Ein Web-Framework bietet eine Struktur und einen Ausgangspunkt für die Erstellung einer Anwendung, sodass Sie sich auf die Hauptaspekte konzentrieren können.
Als PHP-Framework unterstützt Laravel die objektorientierte Programmierung. Das Designmuster Model View Controller (MVC) wird von Laravel verwendet, um seine Anwendungen zu erstellen.
Php unterstützt die objektorientierte Programmierung, die sowohl schneller als auch einfacher durchzuführen ist als herkömmliche Programmiersprachen. Php4 war die erste Version von PHP, die objektorientierte Programmierung (OOP) enthielt. Wenn es um die Codierung geht, ist die objektorientierte Programmierung eine Technik, die es Entwicklern ermöglicht, die Daten und die Struktur einer Anwendung in Klassen anzuordnen.
Wir werden nun sehen, wie eine Crud-Operation erstellt wird ( Create , Read , Update und Delete).
Um mit einer beliebigen Programmiersprache zu beginnen, sollten Sie über Grundkenntnisse in der Sprache verfügen, mit der Sie beginnen möchten. Daher starte ich mit Laravel, das in der Webentwicklung sehr bekannt ist.
Schritt 1: Der erste Schritt ist die Installation des Laravel-Projekts. Sie können jede Version von Laravel herunterladen. Hier habe ich unten die offizielle Website von Laravel geteilt:
https://laravel.com/docs/8.x/installation#why-laravel
Sie können es mit Composer installieren, oder Sie können einfach den Ordner installieren und ihn in Ihrem htdocs-Ordner behalten.
Sie können den Composer herunterladen, indem Sie die im folgenden Link angegebenen Schritte ausführen:
https://getcomposer.org/download/
Sie können überprüfen, ob Composer auf Ihrem System installiert ist, indem Sie eine CMD (Eingabeaufforderung) öffnen, Composer eingeben und die Eingabetaste drücken. Der Composer wird Ihnen wie folgt angezeigt:

Jetzt können Sie das Laravel-Projekt installieren. Führen Sie dazu bitte die folgenden Schritte aus:
Zuerst müssen Sie die offizielle Website von Laravel besuchen: https://laravel.com/docs/
Hier können Sie eine beliebige Version auswählen, mit der Sie arbeiten möchten:

Wählen Sie Ihre App-Version aus und scrollen Sie nach unten, bis Sie den Befehl wie unten gezeigt sehen:
Composer create-project --prefer-dist Laravel/Laravel-Blog "5.8.*"

Bitte verwenden Sie diesen Befehl in Ihrem cmd-Panel, und sobald Sie diesen Befehl drücken, beginnt Ihr Projekt mit dem Herunterladen.
Stellen Sie sicher, dass Sie im htdocs-Ordner herunterladen:
Es dauert ein paar Minuten, und sobald das Projekt heruntergeladen ist, sehen Sie eine Ordnerstruktur, wie im Bild unten gezeigt:

Schritt 2: Update-Datenbankkonfiguration
Im zweiten Schritt nehmen Sie eine Datenbankkonfiguration vor. Zum Beispiel Datenbankname, Benutzername, Passwort usw. für Ihre Crud-Anwendung von Laravel 5.8. Jetzt müssen Sie also die .env-Datei öffnen und alle Details wie unten gezeigt ausfüllen:


Schritt 3: Im nächsten Schritt wird die Tabelle erstellt.
Sie werden eine Crud-Anwendung für das Produkt erstellen. Sie müssen also eine Migration für die Tabelle „products“ mit dem Laravel 5.8-PHP-Artisan-Befehl erstellen.
Führen Sie zuerst diesen Befehl in Ihrem Projektverzeichnis aus:
php artisan make:migration create_products_table --create=products
Hier sehen Sie Ihre kürzlich erstellte Migration:
Öffnen Sie Ihre Migrationsdatei und fügen Sie das unten Erwähnte ein:

<?php
verwenden Sie Illuminate\Support\Facades\Schema;
Verwenden Sie Illuminate\Database\Schema\Blueprint;
Verwenden Sie Illuminate\Database\Migrations\Migration;
Klasse CreateProductsTable erweitert die Migration
{
öffentliche Funktion up()
{
Schema::create('products', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->text('detail');
$table->timestamps();
});
}
öffentliche Funktion down()
{
Schema::dropIfExists('products');
}
}
Jetzt müssen Sie den Befehl :php artisanmigrate ausführen. Und sobald Sie diesen Befehl ausführen, wird Ihre Tabelle in der Datenbank erstellt.
Schritt 4: Ressourcenroute erstellen

Hier müssen wir eine Ressourcenroute für die Anwendung des Produktrohöls hinzufügen. Öffnen Sie dazu Ihre Datei „routes/web.php“ und fügen Sie die folgende Route hinzu.
routen/web.php

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

Schritt 5: Controller und Modell erstellen
In diesem Schritt sollen wir nun einen neuen Controller als ProductController erstellen. Führen Sie also den folgenden Befehl aus und erstellen Sie einen neuen Controller. Verwenden Sie den neuen Controller, um einen Ressourcencontroller zu erstellen.
php artisan make:controller ProductController --resource --model=Produkt
<?php
Namespace App\Http\Controllers;
verwenden Sie App\Produkt;
Verwenden Sie Illuminate\Http\Request;
Die Klasse ProductController erweitert Controller
{
öffentlicher Funktionsindex()
{
$products = Product::latest()->paginate(5);
return view('products.index',compact('products'))
->with('i', (request()->input('page', 1) - 1) * 5);
}
öffentliche Funktion create()
{
return view('products.create');
}
Öffentlicher Funktionsspeicher (Request $request)
{
$request->validate([
'name' => 'erforderlich',
'detail' => 'erforderlich',
]);
Produkt::create($request->all());
return forward()->route('products.index')
->with('success','Produkt erfolgreich erstellt.');
}
Veranstaltungsshow (Produkt $product)
{
return view('products.show',compact('product'));
}
Öffentliche Funktion edit(Produkt $product)
{
return view('products.edit',compact('product'));
}
Aktualisierung der öffentlichen Funktion (Anfrage $request, Produkt $product)
{
$request->validate([
'name' => 'erforderlich',
'detail' => 'erforderlich',
]);
$product->update($request->all());
return forward()->route('products.index')
->with('success','Produkt erfolgreich aktualisiert');
}
öffentliche Funktion destruktiv(Product $product)
{
$produkt->löschen();
return forward()->route('products.index')
->with('success','Produkt erfolgreich gelöscht');
}
}
Ihr Modell sieht aus wie im Bild unten gezeigt.

Schritt 6: Erstellen Sie Blade-Dateien
Ordner: resources/views/products/layout.blade.php
resources/views/products/index.blade.php


resources/views/products/create.blade.php
@extends('products.layout')
@section('Inhalt')
<div class="row">
<div class="col-lg-12 margin-tb">
<div class="pull-left">
<h2>Neues Produkt hinzufügen</h2>
</div>
<div class="pull-right">
<a class="btn btn-primary" href="">Zurück</a>
</div>
</div>
</div>
@if ($errors->any())
<div class="alert alarm-danger">
<strong>Ups!</strong> Bei Ihrer Eingabe sind einige Probleme aufgetreten.<br><br>
<ul>
@foreach ($errors->all() als $error)
<li></li>
@endforeach
</ul>
</div>
@endif
<form action="" method="POST">
@csrf
<div class="row">
<div class="col-xs-12 col-sm-12 col-md-12">
<div class="Formulargruppe">
<strong>Name:</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="Formulargruppe">
<strong>Details:</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">Senden</button>
</div>
</div>
</form>
@Endabschnitt
resources/views/products/edit.blade.php
@extends('products.layout')
@section('Inhalt')
<div class="row">
<div class="col-lg-12 margin-tb">
<div class="pull-left">
<h2>Produkt bearbeiten</h2>
</div>
<div class="pull-right">
<a class="btn btn-primary" href="">Zurück</a>
</div>
</div>
</div>
@if ($errors->any())
<div class="alert alarm-danger">
<strong>Ups!</strong> Bei Ihrer Eingabe sind einige Probleme aufgetreten.<br><br>
<ul>
@foreach ($errors->all() als $error)
<li></li>
@endforeach
</ul>
</div>
@endif
<form action="" method="POST">
@csrf
@methode('PUT')
<div class="row">
<div class="col-xs-12 col-sm-12 col-md-12">
<div class="Formulargruppe">
<strong>Name:</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="Formulargruppe">
<strong>Details:</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">Senden</button>
</div>
</div>
</form>
@Endabschnitt
resources/views/products/show.blade.php

Jetzt, da Sie mit dem gesamten Code fertig sind, müssen Sie nur noch einen Befehl in Ihrem cmd ausführen.

Einpacken
In diesem Blog habe ich Ihnen das OOPs-Konzept vorgestellt, ein grundlegendes Programmierparadigma. Die wichtigsten Prinzipien von OOPs wurden ebenfalls erklärt. Der Blog erklärte auch das schrittweise Verfahren zum Erstellen einer Crud-Operation in Laravel.
Große Programme sind schwer zu schreiben, aber wenn sich die Entwicklungs- und Designteams an objektorientierte Prinzipien halten, werden sie in der Lage sein, bessere Designs mit weniger Fehlern zu erstellen. Da jedes Objekt für sich allein existiert, hilft es, die Modularität des Programms zu erhöhen.
Ich hoffe, dieser Blog war hilfreich für Sie. Sie können www.webdew.com besuchen, um weitere Blogs zu lesen. Und wenn Sie nach Webdesign- oder Webentwicklungsdiensten suchen, können Sie sich gerne an uns wenden!
Herausgeber: Amrutha
