İçindekilerGirişİndex
YukarıİlkÖnceki YokSonrakiSon
Geriİleri
Yazdır
Yusuf Boyacıgil
yusuf.boyacigil@mynet.com

Bir Yazılım Geliştirici(Programcı) Gözüyle Symbian OS

Giriş

İyi bir programcıda olması gereken bir kaç özellik vardır. Hatta o birkaç değil üçtü ki onlar: Merak, tembellik ve rutin işlere hiç gelememe! Bu özelliklere sahipseniz, bir programcı olarak, ne ala! Yok sahip değilseniz veya tembel programcı da mı olur derseniz ya da illaki iyi programcı olacak değilim diyorsanız onu da siz bilirsiniz. Peki söylediklerimin bu yazı ile ne alakası var? Öncelikle bu yazı bizzat programcıları ilgilendiriyor. Zira başlıktan bunu çıkarmak olası. Ama başlığa rağmen bir okuyayım bakalım bu da neymiş diyenleriniz olmuşsa (kesin olur) onlarda da demek merak var. Yani programlama ile uğraşmaya başlar iseler %30 iyi programcılar olacaklar kendileri diyebiliriz. Buna inanmayabilirsiniz tabi!

Bir ipucu ile başlayayım mı? Gelecekte (ama yakın olanı) kendi cep telefonunuza kendi programlarınızı yazabilseniz nasıl olur? Veya sevgilinizin telefonunda kendi yazdığınız bir uygulama çalışıyor bir hayal edin! Sizin hakkınızda ne düşünür? Farkındayım kötü bir örnek! Siz en iyisi bir buket çiçek hediye edin! Dişi programcılar erkek sevgililerine hiç çekinmeden kendi programlarını cep telefonlarına yükletsinler. Acayip bir karizma yapmış olurlar.

Kendi maceramı anlatarak devam edeyim. Ben bir Java programcısıyım. Çok şükür. Java ile ilk haşır neşir olduğumuz zamanlarda Applet'ler moda idi. Herkes HTML sayfası yaparken, biz internet tarayıcısında (internet browser) kendi oyunlarımızı yazıyorduk. Lükse bak! Üstelik çok da kastırmadan! Ben o zaman dedim bu Java'da iş var. Sonra Servlet/JSP çıktı. Web uygulamaları da pek bir moda o zamanlar. Hoop hemencecik web uygulamaları. CGI, ASP ile tırmalıyor millet bir taraflarını! Zaten demiştim ya bu Java'da iş var diye. Ondan sonra dedim ki bu Java'yı bilenin sırtı yere gelmez! Sonra bir de ne göreyim. Java ile Palm OS'lara program da yazılabiliyormuş. İrkildim birden! Gerçi önceden biliyordum ki Embedded Java diye birşey yapmışlar. Cihazları programlamak için falan. O iş bizi aşar diyordum. Gelin görün ki yanılmışım. Palm cihazlarına program yazacağım. Ne keyif! Hemen gittim kendime bir Palm aldım. Java'nın resmi sitesiden çektim API'leri. Biraz uğraştım ve Hello World programım Palm üzerinde çalışıyordu. Müthiş! Sonra Java'yı bilmeyen veya kullanmayanların halleri geldi gözümün önüne. Çok zavallı gözüktüler birden! Sonra bir baktım MIDP (Mobile Internet Device Profile) çıktı. Cep telefonlarında çalışan Java uygulamaları yazmak çok kolay! Oturdum yazdım bir iki uygulama. Harikulade! Ama bir de ne göreyim cep telefonunda var olan bir takım özellikleri kullanamıyorum program içerisinden mesela SMS göndermek mümkün değil. Dedim kendime demek zamanı gelmedi. Ama MIDP'in yeni versiyonunda bunu yapabileceğim. Bu arada yeni nesil cep telefonlarında Symbian isminde bir işletim sistemi olduğu ve bununla telefonun tüm yeteneklerini kullanarak programlama yapılabileceğini duydum. İnanılmaz bir şey! Bir düşünün neler yapabilirsiniz! Ben burada saymamayım. Tabi hemen indirdik dokümanları, SDKları (Software Development Kit), Amazon'dan kitaplar ısmarladık. Başladık kurcalamaya. Neler var neler? İşte ogün bugündür Symbian'cıyız.(Daha bir türkçesi Simbiyan) Şimdi isterseniz bu Simbiyan ne olduğundan ve Simbiyan'da programlamadan bahsettikten sonra bitireyim.

Simbiyan

Simbiyan, Akıllı Telefon (Smart Phone) denilen cihazlarda koşan, bugün bizim kullandığımız bilgisayarları işleten Windows, Linux gibi bir işletim sistemidir. Aklınıza şu gelebilir: Niçin yeni bir işletim sistemi yazdılar? Mesela Linux veya Windows kullanamaz mıydılar? Bunu yapmaları pek mümkün değildi. Çünkü öncelikle bu cihazların işlemci mimarisi farklı. (Intel'in esamesi okunmuyor orada!) Sonra cihazın işlem ve hafıza gücü sınırlı olduğundan bunların işletim sistemi seviyesinde yönetimi farklı.

Simbiyan'ın kısa tarihçesi

Simbiyan'ın ilk tohumları 1988 yılında atıldı. O zamanlar SIBO (Sixteen bit organizer [16 bitlik organizator]) adı verilen bir işletim sistemi yazıldı. Bu işletim sistemi el cihazlarında çalışıyordu. Psion Computers isimli bir şirket tarafından geliştirimişti. SIBO önce MC isimli bir kucak bilgisayar (laptop) üzerinde denendi. Ancak MC projesi başarısız oldu. Yine aynı şirket 1991 yılında Series 3 isimli bir cep bilgisayarı yaptı. Bunu 1996'da Series 3c ve 1998'de Series 3mx izledi. Bu ürünler çok başarılı oldu. Başarının 3 ana sebebi vardı: SIBO'nun pil kullanımı oldukça iyiydi, üzerinde koşan uygulamalar başarılı bulundu ve PC ve diğer el cihazları ile iletişimi oldukça iyiydi. SIBO aynı zamanda programcılara C ile uygulama geliştirme imkanı sağlıyordu.

1990'ların ortalarında Psion 32-bitlik bir işletim sistemine SIBO'yu baz alarak başladı. Amaç başka mimarideki makineler üzerinde de çalışabilecek, çoklu ortam (multi media), yeni haberleşme birimlerini destekleyecek ve daha modüler bir işletim sistemi yapmaktı. Bu çalışmaların sonucunda EPOC isimli bir işletim sistemi yapıldı. EPOC C++ ile yazılmıştı ve yine programcılara C++ ile kendi uygulamalarını geliştirmelerine olanak tanıyordu.

EPOC'un başka mimarideki makinelerde de koşabilmesi, cep telefonu üreticilerinin de dikkatini çekti. Özellikle Psion'un bu konuda diğer telefon üreticisi şirketlerle temasları sonucunda cep telefonu üreticileri yeni nesil internet telefonları veya akıllı telefonlar için EPOC'u standart kabul ettiler. Bunun üzerine Nokia, Ericsson, Motorola ve Matsuhita (Panasonic) bir araya gelerek EPOC işletim sistemini daha da geliştirip Simbiyan işletim sistemini ortaya çıkardılar.

Simbiyan Telefonları

Şu anda piyasada Simbiyan işletim sistemi ile çalışan telefonlar mevcut. Nokia'nın 80 serisi telefonları (Communicator 92xx) ve 60 serisi telefonları (7650 ve yakında çıkacak olan 3650); Sony-Ericsson'un P800 telefonu şu anda piyasada olan Simbiyan telefonlarından. Bunun dışında Panasonic ve Siemens de yakında kendi modellerini piyasaya sürecekler. Bu şu anlama geliyor: Programcılar Simbiyan İşletim Sistemi için yazmış oldukları uygulamaları bu telefonların hepsinde çalıştırabilecekler!

Uygulama Geliştirme Ortamı

Öncelikle şunu söyleyeyim: Simbiyan uygulamalarını test etmeniz için gerçek bir telefon edinmenize hiç gerek yok! Yukarıda bahsedilen telefonların Emulator'leri mevcut. Simbiyan'da program yazmak için hangi programlama dilini kullanacaksınız? Şu alternatifler mevcut:

Uygulamaları geliştirmek için Simbiyan SDK'sını indirmelisiniz. Geliştirme ortamı Windows NT/2000 işletim sistemi olarak tavsiye edilmektedir.

Simbiyan Uygulama Geliştirme Kütüphanesi

Simbiyan'ın uygulama geliştirmek için zengin bir kütüphanesi var. Özellikle C++ ile programlama yapacaklara bu kütüphane sonuna kadar açık. Diğerlerine değil mi derseniz: Java'da örneğin Bluetooth (Mavidiş) programları yazmak şimdilik mümkün değil. Kütüphane sınıfları alt sistemler halinde mantıksal olarak gruplanmıştır. Şöyle ki:

Sonsöz

Simbiyan iyi programcıların mutlaka bir göz atmaları gereken bir sistem. Aynı zamanda yakında yeni iş imkanları da doğacak bu alanda. Hep aynı işlerle uğraşmaktan sıkılanlar için iyi bir haber! Gelecek yazılarda geliştirme ortamından, derleme ve çalıştırılabilir Simbiyan programları üretmeden ve kütüphanelerden daha derinlemesine (örnek kodlarıyla birlikte) bahsetmeye devam edeceğim. Şimdilik bu kadar!

Kaynaklar

İçindekilerGirişİndex
YukarıİlkÖnceki YokSonrakiSon
Geriİleri
Yazdır