MyObjects Zend'in PHP 5 Yarışmasında 7. Oldu

0
resilence
MySql ve PHP 5 nesne kalıcılık kütüphanesi (Object Persistence Library) uygulaması olan MyObjects, Zend firmasının düzenlediği Php 5 programlama yarışmasında 150'den fazla uygulama içerisinde 7. oldu.

MyObjects BSD lisansı ile dağıtılan bir uygulama, yani ticari olsun ya da olmasın her türlü php uygulaması MyObjects ile geliştirilebilir ya da MyObjects entegre edilerek geliştirilebilir. Uygulamanın genel amaçları ve özellikleri şöyle:
Program benim gibi web projelerinde PHP dilini kullanan ve PHP 5'in gelişmiş nesne modelinden faydalanarak MySQL veritabanındaki kayıtlarını nesneler aracilgiyla yönetmek/görüntülemek isteyen programcılar için geliştirildi. Programın tam olarak 'Object Persistance' ya da 'Object Relational Mapping' tanımlarına akademik olarak uyduğunu söyleyemem. Programı yalnızca program yazarken kendi ihtiyaç duyduğum niteliklerden yola çıkarak geliştirdim.

MyObjects birkaç farklı kısımdan oluşuyor. Birinci kısım veritabanı yapınızı tasarlamanızı (Web arayüzü ile) ya da daha önceden oluşturulmuş bir veritabanının şemasını bir XML dosyasına aktarmanıza yarıyor. İkinci kısım oluşturulan XML formatındaki veritabanı şema dosyasını kullanarak veritabanınızdaki tablolara karşılık gelen PHP sınıflarını oluşturuyor. Son kısım ise oluşturulan PHP sınıfları ile birlikte kullanabileceğiniz çalışma zamanı sınıflarından oluşuyor. Bu sınıflar vasıtasıyla nesnelerin veritabanından veri alınarak oluşturulması, veritabanına kayıt edilmesi ya da kaydın güncellenmesi, nesnelerin XML dosyasına dökülebilmesi ya da XML dosyalarından yeniden bu nesnelerin oluşturulması mümkün oluyor.

MyObjects veritabanı şeması dosyasının oluşturulması, PHP sınıflarının üretilmesi safhasında kullanabileceğiniz komut satırı üzerinden kullanılabilen bir araç ve gelişmiş web arayüzü ile birlikte geliyor. Web arayüzü sayesinde bir MySQL veritabanını tasarlayabiliyor, tasarladığınız veritabana ait SQL çıktısını alabiliyorsunuz.

MyObjects'in en önemli özelliklerinden biri de veritabanı şeması dosyasında yalnızca veritabanınızın teknik özellikleri hakkında değil tablolarınızdaki alanlar ile ilgili sınırlayıcı bilgiler de girebilmeniz. Örneğin Kullanıcılar isimli tablonuzdaki email alanına en fazla 255 karaktere kadar olan geçerli email adreslerini kaydetmek, ve aynı email adresinin birden fazla kez kaydolmasını engellemek istiyorsanız ilgili bilgileri veritabanı şeması dosyasında tanımlayabiliyorsunuz. Böylece ilgili onaylama (validasyon) kodu oluşturulan PHP sınıflarına ekleniyor ve nesnelerinizin hatalı veriler ile doldurulmasını önlüyorsunuz. Hata denetiminde de PHP 5'in yeni "exception handling" mekanizması size yardımcı oluyor. Herhangi bir yanlış değer nesne özelliği olarak atanmak istendiğinde bir "exception" üretiliyor.

MyObjects PHP 5 ve MySQL 4.1 için yazılan yeni "ext/mysqli" eklentisini kullanıyor. Şu an için yeterli olmasa da MySQL 4.1 ile birlikte gelen stored procedure'lere de destek veriliyor.

Programcılar için işleri kolaylaştıracak bir başka nitelik ise oluşturulan PHP sınıflarının içerisine PHPDoc stili açıklamaların eklenmesi. Bu sayede oluşturulan sınıflara ait dokümantasyon PhpDoc aracı ile kolayca oluşturulabiliyor.

Proje kodlarına SourceForge proje sayfasından ulaşabilirsiniz.

Kaynak: http://php.org.tr/modules.php?op=modload&name=News&file=article&sid=166
PHP

Görüşler

0
bm
Helal olsun. Tam burokratlarin filan oladugu rivayet edilen bir posta listesinde 'bizim genclerin biraz dokuman okuma bir de baglanti imkani olsa...' cinsinden hep sopyledigim ve burada herkese gina getirten laflari etmisken, bana cok yarayacak bir haber.
0
Sijiero
ya abi helal olsun be.. "koçum benimmmmm" diyesim geliyo ehehehe
0
Sijiero
ya abi helal olsun be.. "koçum benimmmmm" diyesim geliyo ehehehe
0
FZ
Tebrikler!

Ayrıca Türkçe sayfa da çok güzel olmuş, yalnız İngilizce saydadan Türkçe sayfaya linki küçük birTürk bayrağı ile vermişsin, bayrağı büyütürsen ya da ana menüye/sol tarafa falan Türkçe yazısı ile link verirsen çok daha şık olur kanaatindeyim.

Bir başka öneri de, geliştirdiğin sistemi kullanan insanların geliştirdikleri sistemlere sayfanda yer ver mutlaka, "success stories"/"başarı öyküleri" kıvamında, o da gayet güzel olur ;-)

Başarılarının devamını dilerim.
0
angeleous
Önerileriniz için çok teşekkür ederim. En kısa zamanda değişiklikleri yapacağım.

Erdinç Yılmazel
0
angeleous
MyObjects bundan böyle kendi domain adresi http://www.myobjects.org adresinden takip edilebilir. Lütfen bookmarklarınızı güncelleyin.

Bunun yanında MyObjects Release Candidate 1 bugün itibariyle çıkmış durumda.
0
sadun
selam, ilk önce başarınızı içtenlik ile kutlarım.

türklerinde paylaşmayı hedef alarak bu tarz yazılımlar geliştirmesi çok sevindirici.

Bu projenin genişlemesini temenni ederim. Zaman içerisinde de ilk önce zannedersem JAVA 'da 3rd parti olarak bulunan, sonradan microsoft tarafından .NET için alınmış bu yaklaşımın son olarakda php'ye tüm özellikleri bulunarak adapte edilmesi bizi mutlu edecektir.
Görüş belirtmek için giriş yapın...

İlgili Yazılar

PHP için RPM kütüphanesi

Evreniz

PHP içinden RPM dosyaları hakkında bilgi almak ve başlık bilgileri ile ilgili sorgulamalar yapabilmek için çeşitli fonksiyonlar sunan bir kütüphane (PHP extension), ayrıntılı bilgiye ve kaynak koda, http://cekirdek.uludag.org.tr/~meren/php_rpm/ adresinden ulaşabilirsiniz.

Php Web Programlamaya Giriş Belgeleri

Guardian

Bir süredir php programlama diline giriş yapmak isteyenler için hazırladığım belgelerin giriş amaçlı olan kısmını bitirdim ve www.samkon.org'da yayınladım.

Belgelerin pdf formatındaki hallerini sıkıştırılmış olarak buradan indirebilirsiniz. (3.8 MB)

Açık Kaynak Kodlu İçerik Yönetim Sistemlerini Online Görün

anonim

Açık Kaynak Kodlu İçerik Yönetim Sistemlerini indirip yüklemeden Online olarak görüp denemek isteyenler için www.opensourcecms.com sitesi biçilmiş kaftan.. Ayrıca akademisyenlere CMS - e-Learning başlığında Moodle sistemini incelemelerini şiddetle tavsiye ederim. Online ders sistesi hazırlamak gerçekten çok kolay...
www.cmsinfo.org/article.php3?story_id=98 adresinde de güzel bir tartışma var.

Not: İşin açıkçası windows'da çalışan basit bir İçerik Yönetim Sistemi arıyorum. Blog tarzında bir sistemde olsa yeterli olur.
Kişisel kullanım için hangi İçerik Yönetim Sistemi tercih edilmeli ?

PHP başlangıç dersleri serisi 2

anonim

Bir süredir php ders dökümanlarının ikinci serisini hazırlamaya çalışıyordum. Hem talebin artması nedeniyle hem de dosyanın boyutunu fazla yükseltmemek adına aşağıdaki 3 temel döküman ile yeni seriyi tamamlamak istedim:

PHP ile Güvenlik Odaklı Programlama

FZ

PHP Güvenlik Konsorsiyumu tarafından hazırlanmış olan PHP Security Guide, derli toplu şekilde PHP kullanan programcılara güvenlik odaklı programlamayı nasıl yapabileceklerini, dikkat edilmesi gereken şeyleri, saldırı yöntemlerini ve tedbirleri anlatıyor.

Nahoş sürprizlerle karşılaşmaktan hoşlanmayan programcıların başucu kaynaklarından biri olabilecek gibi görünen bu belge dileriz ilgili insanlar için faydalı olur, hatta Türkçeye çevrilse daha çok insan faydalanabilir.