Java Destekli Cep Telefonları

Destekli Cep Telefonları başlığı sitemin ziyaretçi kayıtlarında farkettiğim bir Google arama terimi. Bunu farkedince bu konuda kısa bir yazı yazayım dedim.

Öncelikle Sun Microsystems taradından geliÅŸtirilmiÅŸ bir programlama dilidir ve Platform da bu dilde yazılmış uygulamaları çalıştırmak için Sun’ın hazırladığı bir platformdur.

platformu kendi içinde , , gibi alt alanlara ayrılır. Burada benim bahsedeceÄŸim Cep Telefonalrı için olan versiyonu ’dir.

’nin açılımı 2 Micro Edition. Yani 2 platformunun düşük bellek ve iÅŸlemci gicine sahip aygıtlar için hazırlanmış bir mini sürümü. mobil cihazların çeÅŸitli uygulamalar çalıştırmasını saÄŸlayarak aygıtların yeteneklerini arttıran bir yapıdır. Telefona yüklenen uygulamaları telefonda önceden yüklü bulunan bir Sanal Makinesi (JVM) tarafından çalıştırılır. Bu sanal makineye KVM Kilobayt Virtual Machine (Kilobayt Sanal Makinesi) de denir. Bu sanal makine telefon üreticileri tarafından telefon yazılımına eklenir ve son kullanıcı tarafından deÄŸiÅŸtirilmesi neredeyse imkansızdır.

J2ME

Sanal Makinesi çeÅŸitli özellikleri nedeniyle cep telefonları için çok uygun bir uygulama çalıştırma ortamıdır. Bu sebeple çoÄŸu  üreticisi bu sanal makineyi yazılımlarına ekleyerek telefonlarının çeÅŸitli özelliklerle donatılmasına izin verirler. Aslında buna bir olmazsa olmaz da diyebiliriz. o kadar yaygındır ki, piyasada bulunan cep telefonlarının çoÄŸunda bu sanal makine yani uygulamaları için destek vardır. Sadece bazı modellerde üretici kaynaklı sebeplerle telefonun uygulamalarını çalıştırması istenmemektedir. ÖrneÄŸin; Apple’ın Iphone telefonu uygulamalarını desteklemeyen bir telefondur. Bunun dışında neredeyse diÄŸer tüm telefonlarda DesteÄŸi vardır. Yani piyasada bulabileceÄŸiniz çoÄŸu telefonda desteklidir.

Burada bence asıl önemli olan telefonların desteği değil, yazılım sürümleri ve performanslarıdır. Tüm telefonlar desteğine sahip olsalar da çoğunun işlemci hızı, bellek miktarı, ekran renkleri gibi farklılıklar yüzünden özellikleri arasında fark vardır. Nasıl 1.5 GHz bir PC işlemcisi ile 3.0 GHz hızında çift çekirdekli bir işlemci arasında performans açısından fark varsa telefonalar arasında da bu tür farklar vardır.

Ayrıca farklı konfigürasyon ve profiller halindedir. Åžu anki yaygın konfigürasyonlar; CDC, CLDC 1.0, CLDC 1.1. Bunlar hakkında ayrıntılı bilgi vermeyeceÄŸim ama CDC cep telefonalarında pek kullanılmayan bir konfigürasyondur, sistem gereksinimleri CLDC konfigürasyonundan yüksektir. Yaygın profiller de MIDP 1.0, MIDP 2.0, MIDP 2.1 ve ÅŸu an üzerinde çalışılmakta olan MIDP 3.0. Konfigürasyon ve profiller cep telefonundaki yazılımının dolayısıyla uygulamalarının kabiliyetlerini belirler. Telefon seçiminde de önemli olan nokta budur. Çünkü konfigürasyon ve profiller cep telefonunuzun kullanım alanlarını belirleyen özelliklerdir. ÖrneÄŸin; MIDP 2.0 önceki sürümü MIDP 1.0′a göre çeÅŸitli multimedya kabiliyetleri, kabiliyeti, güvenli aÄŸ baÄŸlantısı, geliÅŸmiÅŸ bir oyun programlama arayüzü gibi özellikler içermektedir. MIDP 2.1′de de GPS, OpenGL ES desteÄŸi gibi özellikleri ile öne çıkmaktadır.

Bir telefon alırken dikkat etmemiz gereken şey MIDP sürümünün olabildiÄŸince yüksek olması veya en azından MIDP 2.0 olmasıdır. Zira MIDP 1.0 için yazılmış uygulamalar MIDP 2.0 ve 2.1′de çalışabilirken son sürümler için yazılmış bir uygulama MIDP 1.0′da çalışmayacaktır. Bu sebeple yeni bir telefon seçiminde önemli olan MIDP profilinin olabildiÄŸince yüksek olmasıdır. MIDP 1.0 yıllar önce çıkarılmış ve sadece basit HTTP baÄŸlantı, kullanıcı arayüzü ve kalıcı veri saklama gibi özelliklere sahiptir. Günümüzde artık çoÄŸu programcı kabiliyetlerinin fazlalığından ve program yazmanın daha kolay olmasından dolayı uygulamalarını MIDP 2.0 için yazmaktadırlar. Bu durumda sadece MIDP 1.0 destekleyen bir telefon almak pek mantıklı olmaz. MIDP 2.1 sürümü de oldukça yeni olduÄŸu için piyasada bu profile yönelik fazla uygulama bulmak pek mümkün deÄŸildir. Bu nedenle alacağınız telefonun MIDP 2.0 olması oldukça yeterli olacaktır.

Bunun dışında telefonlarda birbirinden farklı olarak destekleyebilecekleri uygulama boyutları da sınırlı olabilmektedir. ÖrneÄŸin 5 MB boyutunda bir uygulamayı her telefon çalıştırmayabilmektedir. Bu da telefon alımında dikkat edilmesi gereken bir baÅŸka husustur. Öyleki Samsung’un eski model MIDP 1.0 telefonalrında uygulama boyutu sadece 60 KB idi. MIDP 2.1 destekli 5220 gibi telefonlarda bile en büyük uygulama boyutu 1 MB’tır. EÄŸer alacağınız telefon iÅŸletim sistemine sahip bir aygıt deÄŸilse bu daha da önemli bir hal almaktadır, çünkü uygulama çeÅŸitliliÄŸiniz azalmaktadır.

İşlemci performansı da uygulamalarının çalışmasında doÄŸrudan etkili olduÄŸundan en az 9 serisi bir iÅŸlemciye sahip olmasına dikkat edin. EÄŸer iÅŸlemci Jazelle teknolojisini destekliyorsa bu çok daha iyidir. Jazelle bayt kodunun iÅŸlemci tarafından sanal makinenin kontrolünde doÄŸrudan iÅŸlemci üzerinde çalışmasını saÄŸlayan bir teknolojidir. Bu sebeple diÄŸerlerine göre oldukça hızlıdır. Tabi her modelde bu desteÄŸe sahip iÅŸlemci bulunmayabilir. Bunun yanında farklı hızlandırma teknolojileri (JIT, AOT …) de vardır ve yeni telefonların çoÄŸunda bunlardan birine destek vardır bu sebeple Jazelle desteÄŸi bir olmazsa olmaz deÄŸildir.

EÄŸer alırken desteÄŸinin (iyi) olmasına önem veriyorsanız almayı düşündüğünüz modeller ile ilgili internette biraz araÅŸtırma yapmalısınız. konfigürasyonlarına ve profillerine ve yüklenebilir uygulama boyutlarına dikkat etmelisiniz. Ayrıca iÅŸlemcilerin de unutulmaması gerekir. Bunların tümüne bakabileceÄŸiniz, içerisinde neredeyse her telefon markası ve modeli ile ilgili performans bilgileri bulabileceÄŸiniz Jbenchmark sitesi telefonların  performanslarıyla ilgili çok iyi bilgiler içeriyor, alacağınız telefon modellerini buradan inceleyebilirsiniz. Ayrıca Telefonunuzun Java Performansını Test Edin yazımda da Jbenchmark’taki testler hakkında bilgi bulabilirsiniz.

Sonuç: ’nın cep telefonları için sürümü  neredeyse her cep telefonunda bulunan bir sanal makinedir. Çok azında bu yazılım, dolayısıyla desteÄŸi yoktur. Destekleyen modeller de kendi aralarında konfigürasyon, profil ve iÅŸlemci güçleri gibi farklılıklar içerir. Telefon alırken en önemli nokta sürümünün olabildiÄŸince en son konfigürasyon ve profillere sahip olması ve iÅŸlemci performansının iyi olmasıdır. Ayrıca yüklenebilir uygulama boyutları da farklılık göstermektedir. Bu sebeple telefon seçiminde dikkat edilmesi gereklidir. Tabi desteÄŸine önem vermiyorsanız, kullanmam diyorsanız o da size kalmış. Günümüz telefonları eski bilgisayar iÅŸlemcileri ile aynı frekansta çalışan iÅŸlemcilere ve bir o kadarda yararlı uygulama çeÅŸitliliÄŸine sahip. Durum böyle iken o bilgisayar fiyatına aldığınız telefonları sadece müzik dinlemek ve bulanık fotoÄŸraflar çekmek için kullanmak pek mantıklı gelmiyor bana. :D

Son Yazılar


Yorum Yazın

XHTML: Yorumunuzda ÅŸu etiketleri kullanabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>