Ön Bilgi
Java Sun Microsystems mühendislerinden James Gosling tarafından geliştirilmeye başlanmış gerçek nesneye yönelik, platformdan bağımsız, yüksek performanslı, çok işlevli, yüksek seviye, interpreted adım işletilen bir dildir (son ozellik, yani adım adım isletilen konusuna aciklik getirilecek).Java ilk çıktığında daha cok kucuk cihazlarda kullanilmak icin tasarlanmis ortak bir platform dili olarak dusunulmus. Ancak bakmislar ki platform bagimsizligi ozelligi C ve C++'tan cok daha ustun ve guvenli bir yazilim gelistirme ve isletme ortami sunuyor, hemen her yerde kullanilmaya baslanmis. Su anda ozellikle kurumsal alanda ve mobil cihazlarda son derece populer olan java, ozellikle J2SE 1.4 ve gelecek 1.5 surumu ile masautunde de gucunu arttirmayi hedefliyor. Java'nin ilk surumu olan Java 1.0 (1995) Java Platform 1 olarak adlandirildi ve tasarlama amacina uygun olarak kucuk boyutlu ve kisitli ozelliklere sahipti. Daha sonra platformun gucu gozlendi ve tasariminda buyuk degisiklikler ve eklemeler yapildi. Bu buyuk degisikliklerden dolayi gelistirilen yeni platforma Java Paltform 2 adi verildi ama versiyon numarasi 2 yapilmadi, 1.2 olarak devam etti. Bu bahar cikacak Java 1.5, gecen 1.2, 1.3 ve 1.4 surumlerinin ardindan en cok gelisme ve degisikligi barindiran surum olacak. (java konusunda temel bilgi icin suraya bakabilirsiniz)
Java ve cep telefonları
Java sayesinde, işletim sistemlerinden bağımsız, değişik ceptelefonu modelleri için ilave programlar geliştirmek mümkün.Cep telefonları sistem mimarisinde ufak bilgisayarlara benzeselerde, üreticiler değişik işletim sistemleri kullanmayı tercih ediyorlar.
Nokia Series 60 telefonlarında ve Sony-Ericcson P800/P900 Smartphone'larında Symbian işletim sistemini kullanıyorlar. Diğer üreticiler kendi sistemlerini kullanmayı tercih ediyorlar. Bilgisayar dünyasında tekel statüsüne ulaşan Microsoft, Smartphone 2003 sistemiyle, bilgisayarda yakaladığı başarıyı ceptelefon sektöründede tekrarlamak istiyor. Görüyoruzki ceptelefonların işletim sistemleri hayli karışık. Ama diğer yandan üreticilerin, GSM şirketlerinin ve özellikle kullanıcıların ortak bir beklentisi var: üreticiden ve telefon modelinden bağımsız yazılım ve uygulamalar! (oyunlar, şebeke hizmetleri, program, vs.)
Ceptelefonları için tek yazılım
Sorunun çözümü Java'dır. Sun şirketi tarafından geliştirilen Java teknolojisi yıllardır bilgisayar sektöründe, donanımdan bağımsız, internet uygulamalarının çalışmasını sağlamaktadır. Tabiiki bilgisayarlar ve sunucular için geliştirilen Java sürümü ceptelefonlarının hem donanımını hemde yazılımını aşırı şekilde zorlar. Bu nedenle Sun şirketi üreticilerle beraber ceptelefonların, avuçiçi bilgisayarların ve Smartphone'ların kapasitesine göre Java versiyonları geliştirdi.İhtiyaca göre verim
Donanımın işlem hızına göre değişik Java versiyonları kullanılıyor.Sıradan ceptelefonlarda Mobile Information Device Profile (MIDP) kullanılıyor. MIDP ceptelefonları için üretilen Java programlarına belirli standart program kesiş noktaları sunuyor. Bunların üzerinden bir Java uygulaması ekranda yazı ve grafik gösterme, ses çalma, kullanıcı girişleri, veri alma ve gönderme gibi birçok fonksiyonu çalıştırabiliyor.
İlk çıkan telefonlarda MIDP 1.0 kullanılırken, yeni çıkan telefonların çoğu MIDP 2.0 kullanmaktadır. Standardın geliştirilmiş 2.0 sürümü daha gelişmiş görüntü, ses ve güvenlik fonksiyonları sunuyor. Oyunların görüntüsü ve performansı da daha iyi. İlave olarak 2.0 sürümünde video çalar gibi çoklu ortam uygulamalarını yüklemekde mümkün.
Büyükler için
Ceptelefonları ve basit avuçiçi bilgisayarlarda MIDP kullanılırken, gelişmiş avuçiçi bilgisayarlarda ve Smartphone'larda Java 2 Micro Edition (J2ME) kullanılıyor. Bu versiyon çok daha gelişmiş fonksiyonlar sunuyor ve geniş sayıda ilave paketlerle geliştirilebiliniyor.MIDP profilinin yerini J2ME'de, en derin Java program seviyesinde bile, gelişmiş ağ ve yönetim fonksiyonları sunan "Foundation Profile" (FP) alıyor. Kullanıcı arayüzü olmayan donanımda bile bu programın kendi başına çalışması mümkün! Smartphone'larda ve avuçiçi bilgisayarlarda "Personal Profile (PP - Kişisel Profil)" veya bunun hafifletilmiş versiyonu "Personal Basis Profile (PBP - Basit Kişisel Profil)" yazı ve grafik gibi giriş ve alım fonksiyonlarını desteklemektedir.