İçeriğe atla

PHP-GTK

PHP-GTK
Geliştirici(ler)Andrei Zmievski
İlk yayınlanmaMart 2001
Güncel sürüm2.0.1 / 16 Mayıs 2008
Geliştirme durumuGeliştirilmiyor
İşletim sistemiÇapraz platform yazılımları
LisansGNU Kısıtlı Genel Kamu Lisansı
Resmî sitesigtk.php.net

PHP-GTK, PHP'nin masaüstü yazılım olarak geliştirilmesine katkı sağlamak için oluşturulan bir eklenti olarak yazılmıştır. Diğer masaüstü yazılımlara göre daha zahmetli uygulama olması, GTK'nin gelişmesine engel olsa da, PHP-GTK'nin online bir masaüstü yazılım olabileceği hayali, bu eklentinin rakipsiz bir yazılım olacağının habercisidir.

PHP-GTK, object-oriented programming (OOP) uygulayarak grafik arayüzlü programlar yazmayı sağlamaktadır.

PHP-GTK Nedir?

PHP-GTK aktif PHP gelişime katkı sağlamak amacıyla oluşturulmuş bir eklentidir. Andrei Zimievski imzalı bir açık kaynak uygulamadır. Oluşturulma amacında PHP dilinin geliştirilmesi yatan bu uygulama PHP topluluğu tarafından kabul görmüştür. Fakat daha sonra bu amaçtan bir hayli çıkacaktır. İlk versiyonu 2001 Mart'ında yayımlandıktan sonra PHP-GTK'nin geliştirilmesine daha fazla yazılımcı katılmaya başlamıştır. Scintilla ve GtkHTML gibi çeşitli widgetler ile uyumlu hale getirilerek büyümesi devam ettirilmiştir.

Daha sonraki süreçte 2003 Ekim aylarında GTK 1.0 versiyonu ile tam anlamıyla açık kaynak platform dahilinde geliştirilmeye bırakılmış ve PHP toplulukları tarafından geliştirilmiştir. Bundan sonra kullanım amacı şekillenen PHP-GTK, PHP5 ile geliştirilen nesne yönelimli programlamayı (OOP) kod içerisine entegre etmiştir. Sürekli olarak gelişime devam eden widgetler ise PHP-GTK'nin gerçek bir masaüstü yazılım olmasına olanak sağlamıştır.

Kimilerine göre Java, C++ ya da C# varken PHP-GTK gibi yorucu ve karmaşık bir uygulama kullanmak oldukça yanlış bir yol gibi görünmekteydi. Fakat PHP bilen bir yazılımcının nesne tabanlı yazılım ile PHP-GTK geliştirmesi hiç de zor bir iş olmayacaktı.

PHP-GTK aslında bir uygulama değil, eklentidir. Yalnızca PHP5.1 ve sonraki versiyonlarda kullanılabilmektedir. Bunun sebebi PHP-GTK'nin nesne yönelimli olması ve nesne yönelimli yazılım geliştirilmesinin de PHP 5.0 sürümünden sonra geliştirilmesidir.

PHP'nin bu masaüstü yazılım eklentisi, herhangi bir web tarayıcısına ya da Apache gibi bir sunucuya ihtiyaç duymamaktadır. Çünkü PHP-GTK bir web uygulaması değil, bir masaüstü uygulaması mantığı ile geliştirilmiştir.

Örnek

Aşağıdaki program PHP - GTK 2 ile yazılmış merhaba dünya örneğidir.

<?php

function pressed()
{
    echo "Hello again - The button was pressed!\n";
}

$window = new GtkWindow();
$button = new GtkButton('Click');
$button1 = new GtkButton('Click');

$window->set_title('Hello World!');
$window->connect_simple('destroy', array('Gtk', 'main_quit'));
$button->connect_simple('clicked', 'pressed');
$button1->connect_simple('clicked', 'pressed');
$window->add($button);
$window->show_all();

Gtk::main();

Yukarıdaki örnekte yeni bir GtkWindow nesnesi oluşturulmuştur ve uygulama başlığı "Hello World!" olarak belirtilmiştir. Uygulamaya bir "Click" adında GtkButton konulmuştur. Butona basıldığında "Hello again - The button was pressed!" mesajı konsolda görüntülenir.

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">Linux</span> Bir işletim sistemi çekirdeği

Linux ; Linux çekirdeğine dayalı, açık kaynak kodlu, Unix benzeri bir işletim sistemi ailesidir. GNU Genel Kamu Lisansı versiyon 2 ile sunulan ve Linux Vakfı çatısı altında geliştirilen bir özgür yazılım projesidir. Linux ismi ilk geliştiricisi olan Linus Torvalds tarafından 1991 yılında verilmiştir. Günümüzde süper bilgisayarlarda, akıllı cihazların ve internet altyapısında kullanılan cihazların işletim sistemlerinde yaygın olarak kullanılmaktadır. Bunlardan en popüler olanı Google tarafından geliştirilen Android işletim sistemidir.

<span class="mw-page-title-main">C (programlama dili)</span> programlama dili

C, yapısal bir programlama dilidir. Bell Laboratuvarları'nda, Ken Thompson ve Dennis Ritchie tarafından UNIX işletim sistemini geliştirebilmek amacıyla B dilinden türetilmiştir. Geliştirilme tarihi 1972 olmasına rağmen yaygınlaşması Brian Kernighan ve Dennis M. Ritchie tarafından yayımlanan "C Programlama Dili" kitabından sonra hızlanmıştır. Günümüzde neredeyse tüm işletim sistemlerinin yapımında %95'lere varan oranda kullanılmış, hâlen daha sistem, sürücü yazılımı, işletim sistemi modülleri ve hız gereken her yerde kullanılan oldukça yaygın ve sınırları belirsiz oldukça keskin bir dildir. Keskinliği, programcıya sonsuz özgürlüğün yanında çok büyük hatalar yapabilme olanağı sağlamasıdır. Programlamanın gelişim süreciyle beraber programlamanın karmaşıklaşması, gereksinimlerin artması ile uygulama programlarında nesne yönelimliliğin ortaya çıkmasından sonra C programcıları büyük ölçüde nesne yönelimliliği destekleyen C++ diline geçmişlerdir.

<span class="mw-page-title-main">Visual Basic</span>

Visual Basic, Microsoft tarafından, Basic programlama dili üzerinde geliştirilmiş, olay yönlendirmeli, üst seviye, nesne tabanlı ve görsel bir programlama dilidir. Öğrenilmesi de kullanılması da oldukça kolaydır.

Python, nesne yönelimli, yorumlamalı, birimsel (modüler) ve etkileşimli yüksek seviyeli bir programlama dilidir.

Windows NT, Microsoft tarafından geliştirilen ve ilk sürümü 27 Temmuz 1993'te yayımlanan bir işletim sistemi ailesidir. İşlemciden bağımsız, çoklu işlem ve çoklu kullanıcı desteği sunan bir işletim sistemidir.

<span class="mw-page-title-main">PHP</span> bir programlama dili

PHP: Hypertext Preprocessor, internet için üretilmiş, sunucu taraflı, çok geniş kullanımlı, genel amaçlı, içerisine HTML gömülebilen betik ve programlama dilidir. İlk kez 1995 yılında Rasmus Lerdorf tarafından yaratılan PHP'nin geliştirilmesi bugün PHP topluluğu tarafından sürdürülmektedir. Ocak 2013 itibarıyla 244 milyondan fazla web sitesi PHP ile çalışırken 2.1 milyon web sunucusunda PHP kurulumu bulunmaktadır.

<span class="mw-page-title-main">Oracle Solaris</span>

Solaris, ilk olarak Sun Microsystems tarafından geliştirilmiş, UNIX tabanlı bir işletim sistemidir. 1993 yılında halefi olan SunOS işletim sisteminin yerini almıştır. Ocak 2010'da Oracle firmasının Sun firmasını satın almasıyla Oracle Solaris olarak anılmaya başlanmıştır.

<span class="mw-page-title-main">GTK+</span>

GTK, çok platformlu grafiksel kullanıcı arayüzü geliştirme araç takımıdır. Qt ile beraber X Pencere Sistemi'nin en popüler araç takımıdır. GTK başlangıçta GNU Resim İşleme Programı için yazılmıştı. Şimdi GNU Projesi'nin bir parçası olarak LGPL lisansı altında özgür olarak dağıtılmaktadır.

ASP.NET, Microsoft tarafından geliştirilmiş olan bir açık kaynak Web uygulama gelişimi teknolojisidir. Dinamik Web sayfaları, Web uygulamaları ve XML tabanlı Web hizmetleri geliştirilmesine olanak sağlar. Aynı işletme tarafından geliştirilen .NET çatısı'nın yazılım iskeleti parçası ve artık işletmece desteklenmeyen ASP teknolojisinin devamını teşkil etmiştir.

<span class="mw-page-title-main">Veri sözlüğü</span> veri ögelerinin tanımlarını ve temsillerini içeren meta veri kümesi

IBM Bilişim Sözlüğü'ne göre veri sözlüğü, "veriyi anlamı, farklı veri türleriyle olan ilişkisi, kökeni, kullanımı ve biçimine göre sınıflandırmaya yarayan bir gösterimdir." Terim, veritabanları ve veritabanı yönetim sistemleri bağlamında farklı anlamlarda kullanılabilmektedir.

<span class="mw-page-title-main">OpenSceneGraph</span>

OpenSceneGraph açık kaynaklı, geçişli platformlarda uçuş simülasyonu, oyun, sanal gerçeklikler ve bilimsel sanallaştırmalar gibi yüksek performansta grafik uygulamaları geliştirebilmek için kullanılan grafik araçlarıdır. SceneGraph kaynağının temelini, OpenGL’nin üzerinde bulunarak geliştiriciyi düşük seviyeli grafik çağırımlarını uygulama ve uyumlaştırma gibi işlemlerden kurtaran nesneye yönelik bir framework ile desteklemektedir. Ayrıca grafik uygulamasında hızlı geliştirme için birçok ek özellikleri (utilities) de desteklemektedir.

<span class="mw-page-title-main">Qt (çalışma alanı)</span>

Qt, birden çok platformu destekleyen bir grafiksel kullanıcı arayüzü geliştirme araç takımıdır. Genellikle GUI programları geliştirmek için kullanılsa da gelişmiş kütüphanesi GUI bileşenlerinin dışında birçok araç içermektedir. Qt, en çok KDE masaüstü ortamında, Opera ağ tarayıcısında ve Skype anlık mesajlaşma programlarında kullanılmasıyla bilinir.

<span class="mw-page-title-main">GNU Projesi</span> Özgür yazılım projesi

GNU Tasarısı, toplu işbirliğini temel alan bir özgür yazılım tasarısıdır. Richard Stallman tarafından Massachusetts Teknoloji Enstitüsü'nde 27 Eylül 1983 tarihinde kamuoyuna duyurulmuştur. Tasarının hedefi işbirliği yoluyla özgür yazılımlar geliştirip dağıtarak bilgisayar kullanıcılarının bilgisayarlarını ve benzeri araçlarını kendi istekleri doğrultusunda özgürce kullanmalarını sağlamaktır. Bu tasarının temelinde kullanıcıların yazılımı çalıştırma, paylaşma, inceleme ve değiştirme konularında özgür olmaları yatar. GNU yazılımları bu özgürlükleri dağıtıldıkları lisans ile yasal olarak güvence altına alır, dolayısıyla GNU yazılımları özgür yazılımlardır.

<span class="mw-page-title-main">Windows Live Mesh</span>

Windows Live Mesh Windows Live hizmet yelpazesinin bir parçası olarak Microsoft tarafından tanıtılan ücretsiz Internet tabanlı dosya senkronizasyonu uygulaması idi. İki veya daha fazla bilgisayar arasındaki dosya ve klasörlerin birbirleriyle senkronize olmasını sağlamak için tasarlanmışdır. Windows ve Mac OS X Leopard ve daha sonraki Intel işlemcili bilgisayarlarda veya Web'de SkyDrive ile çalıştırılır. Windows Live Mesh ayrıca Internet üzerinden uzak masaüstü erişimini de etkinleştirdi.

<span class="mw-page-title-main">Vue.js</span>

Vue.js kullanıcı arayüzleri ve tek sayfa uygulamalar inşa etmek için kullanılan açık kaynak Javascript iskeleti. 2013 yılında geliştirilmeye başlanan framework'ün güncel versiyonu 3.2'dir.

Cocoa, masaüstü işletim sistemi macOS için Apple'ın yerel nesne yönelimli programlama ve uygulama programlama arayüzüdür (API).

<span class="mw-page-title-main">Pyqt</span>

PyQt, bir Python eklentisi olarak uygulanan, platformlar arası GUI araç seti Qt'nin bir Python bağlantısıdır.

<span class="mw-page-title-main">Ultimate++</span>

Ultimate++ -aynı zamanda Ultimatepp, U++ veya Upp olarak da bilinir - C++ özelliklerinden kapsamlı bir şekilde yararlanarak tipik masaüstü uygulamalarının kod karmaşıklığını azaltmayı amaçlayan bir C++ hızlı uygulama geliştirme programıdır. Bu yazılım ile oluşturulan programlar, platforma özel kod yazmaya gerek kalmadan birden fazla işletim sistemi ve donanım mimarisi üzerinde çalışabilir.

<span class="mw-page-title-main">Tk (yazılım)</span>

Tk, birçok programlama dilinde bir grafik kullanıcı arabirimi (GUI) oluşturmak için GUI widget'larının temel öğelerinden oluşan bir kitaplık sağlayan ücretsiz ve açık kaynaklı, çapraz platform bir widget araç takımıdır.

mpv (medya oynatıcısı)

mpv, MPlayer, mplayer2 ve FFmpeg tabanlı özgür ve açık kaynaklı bir medya oynatıcı yazılımıdır. Unix benzeri işletim sistemleri ve Microsoft Windows dahil olmak üzere çeşitli işletim sistemlerinde çalışır ve mpv-android adlı bir Android uyarlamasına sahiptir. ARM, PowerPC, x86/IA-32, x86-64 ve MIPS mimarisi üzerinde çalışır yani çapraz platformdur.