Co to jest koncepcja OOP? Jak możesz stworzyć operację crud?
Opublikowany: 2022-04-28Każdy programista używał programowania obiektowego (OOP) w pewnym momencie swojej kariery i jest uważany za podstawowy paradygmat programowania. Podczas korzystania z obiektów OOP głównym celem jest bezpieczne powiązanie danych i funkcji, które wykonują na nich operacje, zapobiegając dostępowi do tych informacji jakiejkolwiek innej części kodu.
Na tym blogu wyjaśnię zasady koncepcji oop i jak stworzyć operację crud za pomocą laravela, który jest dobrze znany w tworzeniu stron internetowych.
Co to są OOP?
System programowania zorientowanego obiektowo (OOP) to podejście do tworzenia oprogramowania, które modeluje aplikacje wokół obiektów świata rzeczywistego, takich jak pracownicy, samochody, konta bankowe itp.
Dwie z ogólnych koncepcji OOP w Javie to klasa i obiekt. Klasa definiuje właściwości i metody obiektu w świecie rzeczywistym, podczas gdy obiekt jest wystąpieniem klasy.
Istnieją trzy podstawowe elementy orientacji obiektowej. To są:
- Analiza obiektowa – funkcjonalność systemu
- Projektowanie obiektowe – architektura systemu
- Programowanie obiektowe – implementacja aplikacji
Główne zasady OOP
Pozwól, że przedstawię ci trzy główne zasady programowania obiektowego.
Kapsułkowanie
Zmniejszenie złożoności tworzenia oprogramowania jest głównym celem enkapsulacji. Odbywa się to poprzez ukrywanie szczegółów implementacji i ujawnianie tylko operacji. Dzięki temu korzystanie z klasy staje się łatwiejsze.
Dzięki metodom takim jak get i set, dostęp do zmiennych klasy sprawia, że klasa jest łatwa w utrzymaniu i elastyczna, dzięki czemu wewnętrzny stan obiektu jest chroniony. W ten sposób, nie martwiąc się o złamanie kodu, można zmienić wewnętrzną implementację klasy bazowej.
Dziedzictwo
Ponowne wykorzystanie jest głównym celem dziedziczenia. Tutaj dotyczy relacji między klasami. Różne klasy mogą używać metod zdefiniowanych do dziedziczenia z klasy nadrzędnej.
Na przykład tam, gdzie musisz zapewnić wspólne funkcje, takie jak dodawanie, aktualizowanie i usuwanie danych z bazy danych, dziedziczenie może być całkiem przydatne.
Wielopostaciowość
Polimorfizm ma na celu uproszczenie obsługi aplikacji i uczynienie ich bardziej rozszerzalnymi. Dotyczy różnych sposobów implementacji jednego formularza.
Jak stworzyć operację crud z laravelem?
Laravel to platforma aplikacji internetowych typu open source z wyrazistą, elegancką składnią. Platforma internetowa zapewnia strukturę i punkt wyjścia do tworzenia aplikacji, pozwalając skupić się na głównych aspektach.
Jako framework PHP, Laravel obsługuje programowanie obiektowe. Wzorzec projektowy kontrolera widoku modelu (MVC) jest używany przez Laravel do tworzenia swoich aplikacji.
PHP obsługuje programowanie obiektowe, które jest zarówno szybsze, jak i łatwiejsze do wykonania niż tradycyjne języki programowania. Php4 był pierwszą wersją PHP, która zawierała programowanie obiektowe (OOP). Jeśli chodzi o kodowanie, programowanie obiektowe to technika, która pozwala programistom na uporządkowanie danych i struktury aplikacji w klasy.
Zobaczymy teraz, jak utworzyć operację crud ( Create , Read , Update i Delete).
Aby zacząć od dowolnego języka programowania, powinieneś mieć podstawową wiedzę na temat tego, który język zamierzasz zacząć. Dlatego zaczynam od Laravela, który jest bardzo znany w tworzeniu stron internetowych.
Krok 1: Pierwszym krokiem jest zainstalowanie projektu Laravel. Możesz pobrać dowolną wersję Laravela. Tutaj udostępniłem poniżej oficjalną stronę Laravel:
https://laravel.com/docs/8.x/installation#why-laravel
Możesz zainstalować go za pomocą kompozytora lub po prostu zainstalować folder i zachować go w swoim folderze htdocs.
Możesz pobrać kompozytora, wykonując czynności podane w poniższym linku:
https://getcomposer.org/download/
Możesz sprawdzić, czy Composer jest zainstalowany w twoim systemie, otwierając CMD (wiersz poleceń), wpisując kompozytor i naciskając enter. Kompozytor pojawi się w następujący sposób:
Teraz jesteś gotowy do zainstalowania projektu Laravel. Aby to zrobić, wykonaj poniższe czynności:
Najpierw musisz odwiedzić oficjalną stronę Laravela: https://laravel.com/docs/
Tutaj możesz wybrać dowolną wersję, z którą chcesz pracować:
Wybierz wersję aplikacji i przewiń w dół, aż zobaczysz polecenie, jak pokazano poniżej:
kompozytor utwórz-projekt --prefer-dist laravel/laravel blog "5.8.*"
Użyj tego polecenia w panelu cmd, a po naciśnięciu tego polecenia rozpocznie się pobieranie projektu.
Upewnij się, że pobierasz w folderze htdocs:
Zajmie to kilka minut, a po pobraniu projektu zobaczysz strukturę folderów, jak pokazano na poniższym obrazku:
Krok 2: Aktualizacja konfiguracji bazy danych
W drugim kroku dokonasz konfiguracji bazy danych. Na przykład nazwa bazy danych, nazwa użytkownika, hasło itp. dla twojej aplikacji crud Laravel 5.8. Więc teraz musisz otworzyć plik .env i wypełnić wszystkie szczegóły, jak pokazano poniżej:
Krok 3: Następnym krokiem jest stworzenie tabeli.
Zamierzasz stworzyć aplikację crud dla produktu. Tak więc musisz utworzyć migrację dla tabeli "produkty" za pomocą polecenia Laravel 5.8 PHP artisan.
Najpierw uruchom to polecenie w katalogu swojego projektu:
php artisan make:migration create_products_table --create=products
Tutaj możesz zobaczyć swoją ostatnio utworzoną migrację:
Otwórz plik migracji i wklej poniższy wpis:
<?php
użyj opcji Oświetl\Wsparcie\Fasady\Schemat;
użyj opcji Iluminacja\Baza danych\Schemat\Blueprint;
użyj opcji Iluminacja\Baza danych\Migracje\Migracja;
class CreateProductsTable rozszerza Migrację
{
funkcja publiczna w górę()
{
Schema::create('products', function (Schemat $table) {
$table->przyrosty('id');
$table->string('nazwa');
$table->text('szczegóły');
$table->sygnatury czasowe();
});
}
funkcja publiczna wyłączona()
{
Schemat::dropIfExists('produkty');
}
}
Teraz musisz uruchomić polecenie :php artisan migrate. A kiedy uruchomisz to polecenie, twoja tabela zostanie utworzona w bazie danych.
Krok 4: Utwórz trasę zasobów
Tutaj musimy dodać trasę zasobów dla aplikacji produktu crud. Aby to zrobić, otwórz plik „routes/web.php” i dodaj następującą trasę.

trasy/web.php
Route::resource('products','ProductController');
Krok 5: Utwórz kontroler i model
W tym kroku powinniśmy teraz utworzyć nowy kontroler jako ProductController. Uruchom więc poniższe polecenie i utwórz nowy kontroler. Użyj nowego kontrolera, aby utworzyć kontroler zasobów.
php artisan make:controller Kontroler Produktu --resource --model=Produkt
<?php
przestrzeń nazw App\Http\Controllers;
użyj aplikacji\produktu;
użyj Iluminate\Http\Request;
klasa ProductController rozszerza Kontroler
{
indeks funkcji publicznej()
{
$products = Product::latest()->paginate(5);
return view('products.index',compact('products'))
->with('i', (request()->input('strona', 1) - 1) * 5);
}
funkcja publiczna utwórz()
{
return view('products.create');
}
magazyn funkcji publicznych (żądanie $ żądanie)
{
$request->potwierdź([
'imię' => 'wymagane',
'szczegóły' => 'wymagane',
]);
Product::create($request->all());
return redirect()->route('products.index')
->with('success','Produkt utworzony pomyślnie.');
}
pokaz funkcji publicznych (produkt $produkt)
{
return view('products.show',compact('product'));
}
edycja funkcji publicznej (produkt $produkt)
{
return view('products.edit',compact('product'));
}
aktualizacja funkcji publicznej (żądanie $żądanie, produkt $produkt)
{
$request->potwierdź([
'imię' => 'wymagane',
'szczegóły' => 'wymagane',
]);
$product->aktualizacja($request->all());
return redirect()->route('products.index')
->with('success','Produkt zaktualizowany pomyślnie');
}
zniszczenie funkcji publicznej (produkt $produkt)
{
$produkt->usuń();
return redirect()->route('products.index')
->with('success','Produkt został pomyślnie usunięty');
}
}
Twój model będzie wyglądał tak, jak pokazano na poniższym obrazku.
Krok 6: Utwórz pliki Blade
Folder: zasoby/widoki/produkty/layout.blade.php
zasoby/widoki/produkty/index.blade.php
zasoby/widoki/produkty/tworzenie.blade.php
@extends('products.layout')
@sekcja('treść')
<div class="row">
<div class="col-lg-12 margin-tb">
<div class="pull-left">
<h2>Dodaj nowy produkt</h2>
</div>
<div class="pull-right">
<a class="btn btn-primary" href=""> Wstecz</a>
</div>
</div>
</div>
@if ($errors->any())
<div class="alert alert-danger">
<strong>Ups!</strong> Wystąpiły pewne problemy z Twoimi danymi wejściowymi.<br><br>
<ul>
@foreach ($errors->all() jako $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="form-group">
<strong>Nazwa:</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>Szczegóły:</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">Prześlij</button>
</div>
</div>
</form>
@endsekcja
zasoby/widoki/produkty/edit.blade.php
@extends('products.layout')
@sekcja('treść')
<div class="row">
<div class="col-lg-12 margin-tb">
<div class="pull-left">
<h2>Edytuj produkt</h2>
</div>
<div class="pull-right">
<a class="btn btn-primary" href=""> Wstecz</a>
</div>
</div>
</div>
@if ($errors->any())
<div class="alert alert-danger">
<strong>Ups!</strong> Wystąpiły pewne problemy z Twoimi danymi wejściowymi.<br><br>
<ul>
@foreach ($errors->all() jako $error)
<li></li>
@endforeach
</ul>
</div>
@endif
<form action="" method="POST">
@csrf
@metoda('PUT')
<div class="row">
<div class="col-xs-12 col-sm-12 col-md-12">
<div class="form-group">
<strong>Nazwa:</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>Szczegóły:</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">Prześlij</button>
</div>
</div>
</form>
@endsekcja
zasoby/widoki/produkty/show.blade.php
Teraz, gdy skończyłeś z całym kodem, wszystko, co musisz zrobić, to po prostu uruchomić jedno polecenie w swoim cmd.
Zawijanie
W tym blogu przedstawiłem Ci koncepcję OOP, podstawowy paradygmat programowania. Wyjaśniono również główne zasady OOP. Na blogu wyjaśniono również krok po kroku procedurę tworzenia operacji crud w laravelu.
Duże programy są trudne do napisania, ale jeśli zespoły programistyczne i projektowe zastosują się do zasad zorientowanych obiektowo, będą w stanie tworzyć lepsze projekty z mniejszą liczbą defektów. Ponieważ każdy obiekt istnieje samodzielnie, pomaga to zwiększyć modułowość programu.
Mam nadzieję, że ten blog był dla Ciebie pomocny. Możesz odwiedzić www.webdew.com, aby przeczytać więcej blogów. A jeśli szukasz usług projektowania lub tworzenia stron internetowych, skontaktuj się z nami!
Redaktor: Amrutha