Php dersleri, makaleleri ve ipuçları

PHP için bağımlılık yönetim aracı olan Composer’i Ubuntu üzerinde kurmak için birkaç basit adımı izlemek yeterlidir.

Öncelikle, kurulu değilse Composer kurulumu için gerekli olan Curl kurulumunu yapalım.

sudo apt-get install curl

Yazının Devamı →

files-folders-pc-transfer-move Bir proje için yazdığım FTP kütüphanesini bazı düzenlemeler yaparak genel kullanıma açtım. Kütüphaneyi kullanarak FTP ve SSH sunucularına bağlanıp dosya ve klasör işlemlerini yapabilirsiniz. FTP sunucuları için SSL bağlantısını da destekler. Kurulumu ve kullanımı oldukça kolaydır. PHP sürümü 5.4 ve üzeri olmalıdır. Kütüphane kodlarını incelemek için Github deposuna bakabilirsiniz.

Kurulum

Kütüphaneyi Composer kullanarak kurabilirsiniz. Composer hakkında bilginiz yoksa arama yaparak kurulum ve kullanımı hakkında Türkçe kaynak bulabilirsiniz.

composer require altayalp/ftp-client

Bu kod mevcut dizine kütüphaneyi kurmanızı sağlar.

Yazının Devamı →

php-oop Php sınıf yapılarından bahsettiğim şu yazımda kalıtım konusunu kısaca anlatmış ve bir örnek vermiştim. Bu yazıda kalıtımın detaylarına inmek, avantajlarından bahsetmek ve ek birkaç örnek daha göstermek istiyorum.

Kalıtım bizi kod tekrarından ve aynı işi yapan metotları farklı sınıflarda tanımlamaktan kurtarır. Daha önce örnek verdiğimiz araba ve motosiklet sınıfları üzerinden anlatalım. Her arabanın bir rengi ve tekerlekleri bulunur. Aynı durum motosiklet için de geçerlidir. Eğer kalıtımdan faydalanmazsak her sınıfta renk ve tekerlek için ayrı, ayrı metotlar tanımlamamız gerekir. Aynı durum öğrenci ve öğretmen sınıfları için de geçerlidir. Her ikisinin de kendilerine has özellikleri bulunduğu gibi, ad, soyad, yaş gibi ortak özellikleri de bulunmaktadır. Önceki yazımdan alıntı yaparak örneğimize geçmek istiyorum.

Yazının Devamı →

php-oop Şu yazımda php sınıf yapılarına bir giriş yapmış ve sarmalamadan (encapsulation) bahsetmiştim.

Bir nesnenin özelliklerine sınıf dışından erişmek pek doğru olmayan bir yaklaşımdır. Araba sınıfımızın tekerlik adında bir özelliği olduğunu düşünelim. Bir arabanın en fazla 4 tekerliği olmak zorundadır. Eğer bu özelliğe 5 değeri atanırsa bunu nasıl kontrol edebiliriz? Nesne özelliklerine yani sınıf içinde tanımlanmış değişkenlere direk erişim, çalışma anında oluşan hatalara veya sınıfımızın isteneni yapmaması gibi durumlara sebep olur. Bunu engellemek için sarmalama (encapsulation) kavramı geliştirilmiştir. Oluşturulan özelliğe sadece sınıf içinden erişilir ve bu özelliğe değer atayan bir “setter” ve bu değeri döndüren “getter” metodu yazılır. Bu şekilde çalışma anında oluşabilecek hatalar da engellenmiş olur. Yazının Devamı →

php-oopNesne yönelimli programlama büyük projelerde ve ekip çalışmasında birçok avantajı bulunan bir yaklaşımdır. Nesne yönelimli yazılımda nesneler, sınıflar (class) tarafından temsil edilir. Sınıfları metot (method) ve özellikler (property) oluştururlar. Sınıfların içinde tanımlanan fonksiyonlara metot, değişkenlere ise özellik denir.

Nesne yönelimli programlamada sınıflar birbiriyle etkileşime geçebilirler. Nesne yönelimli yaklaşım bize kapsülleme (sarmalama (encapsulation)), kalıtım (inheritance), çok biçimlililk (polymorphism), soyut sınıflar (abstract) ve arayüz (interface) kullanımı gibi avantajlar sağlar.

Teorik detayların içinde boğulmadan, anlamayı kolaylaştırmak için şunu söyleyebilirim ki: Resimle ilgili bir sınıf yazıyorsak resim nesne, resmin boyutu özellik ve resmi küçültme işlemi metottur denebilir. Yazının Devamı →

123