Was ist das OOPs-Konzept? Wie können Sie eine Crud-Operation erstellen?

Veröffentlicht: 2022-04-28

Jeder 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.

Tipps für das Webprojektmanagement für eine erfolgreiche Webentwicklung

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:

So erstellen Sie eine Crud-Operation mit Laravel Schritt 1

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:

Laravel-Installation

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.*"

Komponist Projekt erstellen

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:

Download im htdocs-Ordner Es dauert ein paar Minuten, und sobald das Projekt heruntergeladen ist, sehen Sie eine Ordnerstruktur, wie im Bild unten gezeigt:

heruntergeladenes Projekt

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:

Update-Datenbankkonfiguration 1Update-Datenbankkonfiguration 2

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

die Tabelle erstellen Hier sehen Sie Ihre kürzlich erstellte Migration:

Migration geschaffen Öffnen Sie Ihre Migrationsdatei und fügen Sie das unten Erwähnte ein:

Migrationsdatei

<?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

Ressourcenroute erstellen

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

So implementieren Sie wiederkehrende Zahlungen mit Stripe: Eine vollständige Anleitung

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.

Modell

Schritt 6: Erstellen Sie Blade-Dateien

Ordner: resources/views/products/layout.blade.php

resources/views/products/index.blade.php

Blade-Dateien erstellen 1

Blade-Dateien erstellen 2

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

Blade-Dateien erstellen 3

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

Befehl auf 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