OOP kavramı nedir? Nasıl bir kaba operasyon oluşturabilirsiniz?

Yayınlanan: 2022-04-28

Her geliştirici, kariyerinin bir döneminde nesne yönelimli programlamayı (OOP) kullanmıştır ve bu, temel bir programlama paradigması olarak kabul edilir. OOP'leri kullanırken birincil amaç, verileri ve bunlar üzerinde işlem yapan işlevleri güvenli bir şekilde birbirine bağlayarak kodun diğer bölümlerinin bu bilgilere erişmesini engellemektir.

Başarılı web geliştirme için web proje yönetimi ipuçları

Bu blogda oop kavramının prensiplerini ve web geliştirmede iyi bilinen laravel ile crud operasyonunun nasıl oluşturulacağını anlatacağım.

OOP nedir?

Nesneye Yönelik Programlama sistemi (OOP'ler), çalışanlar, arabalar, banka hesapları vb. gibi gerçek dünya nesneleri etrafındaki uygulamaları modelleyen bir yazılım geliştirme yaklaşımıdır.

Java'daki genel OOP kavramlarından ikisi sınıf ve nesnedir. Bir sınıf, gerçek dünya nesnesinin özelliklerini ve yöntemlerini tanımlarken, nesne bir sınıfın oluşumudur.

Nesne yöneliminin üç temel bileşeni vardır. Bunlar:

  • Nesneye yönelik analiz – sistemin işlevselliği
  • Nesneye yönelik tasarım – sistem mimarisi
  • Nesneye yönelik programlama – uygulamanın uygulanması

OOP'nin ana ilkeleri

Sizi OOP'nin üç ana ilkesiyle tanıştırayım.

kapsülleme

Yazılım geliştirmedeki karmaşıklığı azaltmak, kapsüllemenin temel amacıdır. Bu, uygulama ayrıntılarını gizleyerek ve yalnızca işlemleri ortaya çıkararak yapılır. Böylece bir sınıf kullanmak daha kolay hale gelir.

get ve set gibi yöntemler aracılığıyla, sınıf değişkenlerine erişim, sınıfın bakımını kolay ve esnek hale getirir, böylece bir nesnenin dahili durumu korunur. Bu şekilde, kodu kırma endişesi olmadan temel sınıfın dahili uygulaması değiştirilebilir.

Miras

Yeniden kullanılabilirlik kalıtımın temel amacıdır. Burada, sınıflar arasındaki ilişki ile ilgilidir. Çeşitli sınıflar, bir üst sınıftan miras almak için tanımlanan yöntemleri kullanabilir.

Örneğin, veri tabanına veri ekleme, güncelleme ve veri silme gibi ortak işlevler sağlamanız gerektiğinde, kalıtım oldukça faydalı olabilir.

polimorfizm

Uygulamaların bakımını basitleştirmek ve onları daha genişletilebilir hale getirmek polimorfizmin amacıdır. Tek bir form için farklı uygulama yollarına sahip olmakla ilgilidir.

Laravel ile kaba operasyon nasıl oluşturulur?

Laravel, etkileyici, zarif sözdizimine sahip açık kaynaklı web uygulama çerçevesidir. Bir web çerçevesi, bir uygulama oluşturmak için bir yapı ve başlangıç ​​noktası sağlayarak ana yönlere odaklanmanıza izin verir.

Bir PHP çerçevesi olarak Laravel, nesne yönelimli programlamayı destekler. Model görünümü denetleyicisi (MVC) tasarım deseni, uygulamalarını oluşturmak için Laravel tarafından kullanılır.

Php, geleneksel programlama dillerinden daha hızlı ve daha kolay gerçekleştirilebilen nesne yönelimli programlamayı destekler. Php4, PHP'nin nesne yönelimli programlamayı (OOP) içeren ilk sürümüydü. Kodlama söz konusu olduğunda, nesne yönelimli programlama, geliştiricilerin bir uygulamanın verilerini ve yapısını sınıflar halinde düzenlemesine olanak tanıyan bir tekniktir.

Şimdi bir kaba işlemin nasıl oluşturulacağını göreceğiz (Oluştur, Oku, Güncelle ve Sil).

Herhangi bir programlama diliyle başlamak için, başlayacağınız dil hakkında temel bilgilere sahip olmalısınız. Bu nedenle web geliştirme konusunda çok ünlü olan Laravel ile başlıyorum.

Adım 1: İlk adım Laravel projesini kurmaktır. Laravel'in herhangi bir sürümünü indirebilirsiniz. Burada Laravel'in resmi web sitesini aşağıda paylaştım:

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

Besteci ile kurabilir veya sadece klasörü yükleyip htdocs klasörünüzde tutabilirsiniz.

Aşağıdaki bağlantıda verilen adımları kullanarak besteciyi indirebilirsiniz:

https://getcomposer.org/download/  

Composer'ın sisteminizde kurulu olup olmadığını bir CMD (komut istemi) açıp besteci yazıp enter tuşuna basarak doğrulayabilirsiniz. Besteci size aşağıdaki gibi görünecektir:

laravel adım 1 ile kaba işlem nasıl oluşturulur

Artık Laravel projesini kurmaya hazırsınız. Bunu yapmak için lütfen aşağıdaki adımları izleyin:

Öncelikle Laravel'in resmi web sitesini ziyaret etmelisiniz: https://laravel.com/docs/

Burada çalışmak istediğiniz herhangi bir sürümü seçebilirsiniz:

laravel kurulumu

Uygulama sürümünüzü seçin ve aşağı kaydırarak aşağıdaki komutu göreceksiniz:

besteci oluştur-proje --prefer-dist laravel/laravel blogu "5.8.*"

besteci proje oluştur

Lütfen cmd panelinizde bu komutu kullanın ve bu komuta bastığınızda projeniz indirilmeye başlayacaktır.

htdocs klasörüne indirdiğinizden emin olun:

htdocs forlder'da indirme Birkaç dakika sürecek ve proje indirildikten sonra aşağıdaki resimde gösterildiği gibi bir klasör yapısı göreceksiniz:

indirilen proje

Adım 2: Güncelleme-Veritabanı Yapılandırması

İkinci adımda, bir veritabanı yapılandırması yapacaksınız. Örneğin, Laravel 5.8'in kaba uygulamanız için veritabanı adı, kullanıcı adı, şifre vb. Şimdi .env dosyasını açmanız ve aşağıda gösterildiği gibi tüm ayrıntıları doldurmanız gerekiyor:

Güncelleme-Veritabanı Yapılandırması 1Güncelleme-Veritabanı Yapılandırması 2

Adım 3: Bir sonraki adım tabloyu oluşturmaktır.

Ürün için bir kaba uygulama oluşturacaksınız. Bu nedenle, Laravel 5.8 PHP artisan komutunu kullanarak "ürünler" tablosu için geçiş oluşturmanız gerekir.

İlk önce proje dizininizde şu komutu çalıştırın:

php artisan make:migration create_products_table --create=products

tabloyu oluştur Burada yakın zamanda oluşturduğunuz geçişi görebilirsiniz:

oluşturulan göç Taşıma dosyanızı açın ve aşağıda belirtilenleri yapıştırın:

taşıma dosyası

<?php

Illuminate\Support\Facades\Schema'yı kullanın;

Illuminate\Database\Schema\Blueprint'i kullanın;

Illuminate\Database\Migrations\Migration'ı kullanın;

class CreateProductsTable Taşımayı genişletiyor

{

genel işlev yukarı()

{

Schema::create('ürünler', function (Blueprint $tablo) {

$table->increments('id');

$table->string('isim');

$table->text('detay');

$tablo->zaman damgaları();

});

}

genel işlev aşağı()

{

Şema::dropIfExists('ürünler');

}

}



Şimdi :php artisan move komutunu çalıştırmanız gerekiyor. Ve bu komutu çalıştırdığınızda, tablonuz veritabanında oluşturulacaktır.

4. Adım: Kaynak rotası oluşturun

Burada ürün crud uygulaması için bir kaynak rotası eklememiz gerekiyor. Bunun için “routes/web.php” dosyanızı açın ve aşağıdaki route'u ekleyin.

rotalar/web.php

kaynak rotası oluştur

Route::resource('ürünler','ProductController');

Şeritli yinelenen ödeme nasıl uygulanır: Eksiksiz bir kılavuz

Adım 5: Denetleyici ve Model Oluşturun

Bu adımda artık ProductController olarak yeni bir controller oluşturmalıyız. Bu yüzden aşağıdaki komutu çalıştırın ve yeni bir denetleyici oluşturun. Bir kaynak denetleyicisi oluşturmak için yeni denetleyiciyi kullanın.

php artisan make:controller ProductController --resource --model=Product

<?php

ad alanı App\Http\Controllers;

Uygulama\Ürünü kullanın;

Illuminate\Http\Request'i kullanın;

sınıfı ProductController, Controller'ı genişletir

{

genel işlev dizini()

{

$products = Product::latest()->paginate(5);

dönüş görünümü('ürünler.index',kompakt('ürünler'))

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

}

genel işlev oluştur()

{

dönüş görünümü('products.create');

}

genel işlev deposu(İstek $ request)

{

$request->validate([

'isim' => 'gerekli',

'detay' => 'gerekli',

]);

Ürün::create($request->all());

return yönlendirme()->route('products.index')

->with('success','Ürün başarıyla oluşturuldu.');

}

genel işlev gösterisi(Ürün $ürün)

{

dönüş görünümü('ürünler.göster',kompakt('ürün'));

}

public function edit(Ürün $ürün)

{

iade görünümü('products.edit',compact('product'));

}

genel işlev güncellemesi(İstek $talep, Ürün $ürün)

{

$request->validate([

'isim' => 'gerekli',

'detay' => 'gerekli',

]);

$product->update($request->all());

return yönlendirme()->route('products.index')

->with('success','Ürün başarıyla güncellendi');

}

genel işlevi yok et(Ürün $ürün)

{

$ürün->sil();

return yönlendirme()->route('products.index')

->with('success','Ürün başarıyla silindi');

}

}

Modeliniz aşağıdaki resimde gösterildiği gibi görünecektir.

model

6. Adım: Blade Dosyaları Oluşturun

Klasör: kaynaklar/görünümler/ürünler/layout.blade.php

kaynaklar/görünümler/ürünler/index.blade.php

bıçak dosyaları oluştur 1

bıçak dosyaları oluştur 2

kaynaklar/görünümler/ürünler/create.blade.php

@extends('products.layout')

@section('içerik')

<div class="row">

<div class="col-lg-12 kenar boşluğu-tb">

<div class="sol çekme">

<h2>Yeni Ürün Ekle</h2>

</div>

<div class="sağ çekme">

<a class="btn btn-birincil" href=""> Geri</a>

</div>

</div>

</div>

@if ($hatalar->any())

<div class="uyarı uyarı tehlikesi">

<strong>Hata!</strong> Girişinizle ilgili bazı sorunlar oluştu.<br><br>

<ul>

@foreach ($errors->all() as $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>Ad:</strong>

<input type="text" name="name" class="form-control" placeholder="Ad">

</div>

</div>

<div class="col-xs-12 col-sm-12 col-md-12">

<div class="form-group">

<strong>Ayrıntı:</strong>

<textarea class="form-control" name="detail" placeholder="Detail"></textarea>

</div>

</div>

<div class="col-xs-12 col-sm-12 col-md-12 metin merkezi">

<button type="submit" class="btn btn-primary">Gönder</button>

</div>

</div>

</form>

@endsection

kaynaklar/görünümler/ürünler/edit.blade.php

@extends('products.layout')

@section('içerik')

<div class="row">

<div class="col-lg-12 kenar boşluğu-tb">

<div class="sol çekme">

<h2>Ürünü Düzenle</h2>

</div>

<div class="sağ çekme">

<a class="btn btn-birincil" href=""> Geri</a>

</div>

</div>

</div>

@if ($hatalar->any())

<div class="uyarı uyarı tehlikesi">

<strong>Hata!</strong> Girişinizle ilgili bazı sorunlar oluştu.<br><br>

<ul>

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

<li></li>

@endforeach

</ul>

</div>

@endif

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

@csrf

@method('PUT')

<div class="row">

<div class="col-xs-12 col-sm-12 col-md-12">

<div class="form-group">

<strong>Ad:</strong>

<input type="text" name="name" value="" class="form-control" placeholder="Ad">

</div>

</div>

<div class="col-xs-12 col-sm-12 col-md-12">

<div class="form-group">

<strong>Ayrıntı:</strong>

<textarea class="form-control" name="detail" placeholder="Detail"></textarea>

</div>

</div>

<div class="col-xs-12 col-sm-12 col-md-12 metin merkezi">

<button type="submit" class="btn btn-primary">Gönder</button>

</div>

</div>

</form>

@endsection

kaynaklar/görünümler/ürünler/show.blade.php

bıçak dosyaları oluştur 3

Artık tüm kodu yaptığınıza göre, tek yapmanız gereken cmd'nizde bir komut çalıştırmak.

komutu cmd'de çalıştır

toparlamak

Bu blogda, sizi temel bir programlama paradigması olan OOP konseptiyle tanıştırdım. OOP'lerin temel ilkeleri de açıklandı. Blog ayrıca laravel'de bir kaba işlem oluşturmak için adım adım prosedürü açıkladı.

Büyük programları yazmak zordur, ancak geliştirme ve tasarım ekipleri nesne yönelimli ilkelere bağlı kalırsa, daha az kusurla daha iyi tasarımlar oluşturabileceklerdir. Her nesne kendi başına var olduğundan, programın modülerliğini artırmaya yardımcı olur.

Umarım bu blog sizin için faydalı olmuştur. Daha fazla blog okumak için www.webdew.com adresini ziyaret edebilirsiniz. Ve web tasarımı veya web geliştirme hizmetleri arıyorsanız, bizimle iletişime geçmekten çekinmeyin!

Editör: Amrutha