PHP'de Soyut Sınıf ve Arayüz Arasındaki Fark Nedir?

İçindekiler:

Anonim

NS asıl fark PHP'de Soyut Sınıf ve Arayüz arasındaki soyut sınıf, soyut yöntemlerden ve soyut olmayan yöntemlerden oluşabilirken, bir arabirimdeki tüm yöntemlerin hiçbir uygulaması yoktur.

PHP, sunucu taraflı bir betik dilidir. Web geliştirmede en popüler dillerden biridir. PHP, dosyaların işlenmesine, formların işlenmesine, e-postaların gönderilmesine, dosyaların yüklenmesine, MySQL gibi DBMS ile bir uygulamanın bağlanmasına ve diğer birçok göreve izin verir. Zend ve Code Igniter gibi çerçeveler PHP tabanlıdır. PHP ayrıca Nesne Yönelimli Programlamayı (OOP) destekler. OOP'deki önemli bir kavram soyutlamadır. Uygulamaları gizlemeye ve yalnızca işlevselliği kullanıcıya göstermeye yardımcı olur. Soyut sınıf ve arayüz, soyutlamaya ulaşmak için iki yöntemdir.

Soyutlama, Soyut Sınıf, Arayüz, OOP, PHP

PHP'de Soyut Sınıf Nedir?

Soyut bir yöntem, herhangi bir uygulaması olmayan bir yöntemdir. Soyut bir sınıf, en az bir soyut yöntemi olan bir sınıftır. Soyut yöntemlere sahip olabileceği gibi soyut olmayan yöntemlere de sahip olabilir. Soyut bir sınıf bildirmek için “abstract” anahtar kelimesi kullanılır. Ayrıca, soyut sınıfı genişleten sınıf, o sınıftaki soyut yöntemlerin uygulamalarını sağlamalıdır. Programcılar soyut bir sınıf kullanarak nesneler yaratamazlar, ancak soyut sınıfı genişleten bir sınıftan bir nesne yaratabilirler.

Şekil 1: PHP'de soyut sınıf

Yukarıdaki görüntüde Shape, soyut bir sınıftır. Draw adında soyut bir yöntemi ve display adında soyut olmayan bir yöntemi vardır. Üçgen sınıfı Shape'i genişletir. Bu nedenle, üçgen sınıfı, soyut yöntem çiziminin uygulamasını sağlar. 19. satırda, bir Üçgen nesnesi oluşturulur. 20. satırda, o nesne kullanılarak çizim yöntemi çağrılır. Bu nedenle, çekme yöntemi yürütülür ve konsolda “Üçgen” görüntülenir.

PHP'de Arayüz Nedir?

Bir arabirimdeki tüm yöntemler soyut yöntemlerdir. Başka bir deyişle, yalnızca işlev prototiplerini veya uygulamaları olmayan işlevleri içerir. Programcı bir arabirim kullanarak nesneler oluşturamaz. “interface” anahtar sözcüğü kullanılarak bir arayüz bildirilir. Bir arabirimdeki yöntemler soyut olsa da, programcı bunları soyut anahtar sözcükle bildirmez. Bunun yerine, bu yöntemlerin genel görünürlük kapsamına sahip olması gerekir. Bir arabirim uygulayan bir sınıf, tüm soyut yöntemleri için uygulamaları sağlamalıdır.

Şekil 2: Bir arayüze sahip PHP programı 1

Yukarıdaki programda Shape bir arayüzdür. Draw adında bir metodu vardır. Bir uygulaması yoktur. Triangle sınıfı Shape'i genişletir. Triangle sınıfı, çekme yönteminin uygulamasını sağlar. 16. satırda, Triangle nesnesinin bir nesnesi oluşturulur. 17. satırda, bu nesne kullanılarak çizim yöntemi çağrılır. Bu nedenle, çizim yöntemi konsolda “Üçgen” i çalıştırır ve görüntüler.

Ayrıca, arayüzler çoklu kalıtımın uygulanmasına da yardımcı olur. Çoklu kalıtım, bir sınıfın birden çok sınıfın özniteliklerini ve yöntemlerini kullanmasına izin verme sürecidir.

Şekil 3: Arayüzlü PHP programı

Arabirim A'nın bir yöntem yöntemiA vardır. Benzer şekilde, B arayüzünün bir metodu B vardır. Bu yöntemler fonksiyon prototipleridir. Başka bir deyişle, bu yöntemlerin herhangi bir uygulaması yoktur. Sınıf Testi, A ve B arabirimini uygular. Bu nedenle, bu sınıf, yöntemA ve yöntemB için uygulamalar sağlar. Class Test ayrıca methodTest adlı kendi yöntemine sahiptir. 26. satır, bir Test nesnesi oluşturur. Ardından methodA, method ve methodTest bu nesne kullanılarak çağrılır.

PHP'de Soyut Sınıf ve Arayüz Arasındaki Fark

Tanım

PHP'deki bir soyut sınıf, soyut bir anahtar kelimeyle bildirilen bir sınıftır ve soyut ve soyut olmayan yöntemlerin bir koleksiyonudur. Buna karşılık, PHP'deki bir arayüz bir referans türüdür ve hiçbir uygulaması veya fonksiyon prototipi olmayan bir yöntemler koleksiyonundan oluşur. Bu nedenle, PHP'deki Soyut Sınıf ve Arayüz arasındaki temel fark budur.

yöntemler

Soyut bir sınıf, soyut yöntemlerin yanı sıra soyut olmayan yöntemlere de sahip olabilirken, bir arabirimdeki tüm yöntemler uygulama içermeyen yöntemlerdir.

Anahtar kelime

Soyut bir sınıf "abstract" anahtar sözcüğü ile bildirilirken, bir arabirim "arayüz" anahtar sözcüğü ile bildirilir.

kullanım

PHP'deki Soyut Sınıf ve Arayüz arasındaki diğer bir fark, soyut bir sınıfın soyutlamaya yardımcı olurken, bir arabirimin birden çok kalıtımın yanı sıra soyutlamaya da yardımcı olmasıdır.

Çözüm

PHP dili, Nesne Yönelimli Programlamayı destekler. Soyutlama, OOP'nin bir ayağıdır. Soyut sınıflar ve arayüzler, soyutlamaya ulaşmanın iki yöntemidir. PHP'de Soyut Sınıf ve Arayüz arasındaki temel fark, soyut sınıfın soyut yöntemlerden ve soyut olmayan yöntemlerden oluşabilmesidir, ancak bir arabirimdeki tüm yöntemlerin hiçbir uygulaması yoktur.

Referanslar:

1.“PHP'de Soyut Sınıflar.” GeeksforGeeks, 11 Aralık 2018, Buradan ulaşabilirsiniz. 2. “PHP'de Çoklu Kalıtım.” GeeksforGeeks, 21 Şubat 2019, Buradan ulaşabilirsiniz.

PHP'de Soyut Sınıf ve Arayüz Arasındaki Fark Nedir?