Photoshop Magazin
 


HTML5 ve FLASH -2

01 September 2010 | Sayı: Sep 2010
 
1 2 3 4 5
 

Bir önceki sayıda Flash ve HTML5 konusunda Apple ile Adobe arasında yaşanan söylemleri mercek altına yatırmış ve her iki teknolojiyi teknik olarak incelemeye başlamıştık. Video ve Animasyon konularında yeteneklerine değindiğimiz Flash ve HTML5'in diğer konularda da üstünlüklerini tarafsız gözle incelemeye
devam ediyoruz...

3D
3D konusu en çok karşılaştırılan kriter diyebiliriz. Flash 3D konusunda oldukça gelişmiş durumdadır. Flash’ın kendi API’leri dışında açık kaynaklı olarak sunulan ve gün geçtikçe yenileri geliştirilen bir çok Flash 3D API’si mevcuttur. Web ortamında gördüğümüz hemen hemen her 3D animasyon Flash tabanlıdır. Bazı uygulamalar direk Flash’ta yapılsa da bazıları 3D programlarıyla daha gerçekçi görüntü elde edebilmek için modellenir ve Flash’a aktarılır.

Flash kendi içerisinde de 3D konusunda 2’ye ayrılmaktadır. ActionScript ile kodlanan 3D uygulamaların yanında objelerinize de basit anlamda çok da gerçekçi olmayan 3D efektleri verebilirsiniz. Bunun için gerekli olan araçlar Flash CS4 ve Flash CS5 versiyonlarında bulunmaktadır. HTML5 ise 3D’de gelecek vadediyor. Çok hızlı
gelişen HTML5’in 3D özelliğini şimdiden kullanmaya başlayan geliştiriciler Flash yerine HTML5’i tercih edebiliyor. Ancak HTML5’in henüz tam anlamıyla tarayıcılar tarafından
desteklenmiyor olması sorun olabilmektedir.

Bununla beraber henüz yeni geliştiği için bir çok eksiği bulunuyor. Şu an HTML5’in geliştirilmekte olan bir kaç JS 3D API’leri mevcuttur. Genel olarak incelediğimizde Flash, 3D konusunda HTML5’ten üstün durumdadır. HTML5 CPU bakımından Flash’tan biraz geride kalmaktadır. Fakat HTML5’in yeni yeni gelişiyor olması durumları değiştirebilir. Flash 3D´nin geleceği ve yeni API her yıl düzenlenen Adobe MAX’de duyurulmaktadır. GPU hızlandırması yeni render özellikleri gibi konular Adobe MAX 2010’de yer alacaktır.

CPU konusunda Adobe Flash Player 10.1 ile sistem zorlanması azalttı ve Flash´ı daha da hızlandırdı.

Arayüz
Uygulama hazırlarken çalışılan alan ve arayüz oldukça önemlidir. Programın araçları, arayüz kullanılabilirliği uygulama hazırlayanlara kolaylık sağlayabilmektedir. Flash tabanlı uygulamalar hazırlamak için bir çok seçeneğiz var.dır Bunların başında Flash Professional geliyor. Ancak Flash Develop, Flash Builder (Flex), Flash Catalyst gibi programlarla da Flash tabanlı uygulamalar hazırlanabilmektedir. Flash Professional programının avantajı grafik arayüze sahip olması ve diğer Adobe programlarıyla etkileşim içinde olmasıdır. Bu programla Flash ile ilgili istediğiniz her şeyi yapabilirsiniz. Flash Develop ise daha çok ActionScript kodlama yapanlara yönetik bir AcionScript Editörü diyebiliriz. Sadece kodla uğraşanlar yine bu programla Flash tabanlı uygulamalar hazırlayabiliyorlar. Flash Builder yani eski adıyla Flex ise yine Flash tabanlı uygulamalar hazırlamaya yaramaktadır.

Ancak Flex’in yapısı biraz daha farklıdır. Flash Builder’ı HTML gibi düşünebiliriz. Açık kaynaklı kodlu farklı bir yazılımdır. (Flex ile ilgili www.flexnedir.com sitesini ziyaret
edebilirsiniz) HTML5’i ise Dreamweaver gibi HTML editörlerinin tümüyle kodlayabilirsiniz. HTML5 derleme yapmadığı için yani her şey kodlarla yapıldığı için her programla hazırlanabilir.

Notepad’te kodları yazıp .html olarak kaydetmek gibi. HTML5’in her hangi bir arayüz programı yoktur. Bu açıdan animasyonları rahatça oluşturmak ve test etmek Flash’a oranla eksik kalmaktadır.

Kod Yazma
HTML5 bildiğimiz gibi .html versiyonunun son sürümüdür. Bu yüzden HTML & JavaScript kodlama yapısına sahiptir. Flash’ın kodlama yapısı ise ActionScript. ActionScript’in
günümüze kadar 3 versiyonu çıktı. AS1, AS2 ve AS3. ActionScript 3.0 son versiyondur.

ActionScript ve JavaScript, Ecmascript tabanlı oldukları için yapı olarak bir birlerine çok benzemektedirler. Fakat ActionScript’i, JavaScript gibi sadece kodlayıp çalıştıramayız. ActionScript’in derlenmesi gerekiyor aksi halde sadece kodu yazıp kaydetmek ile çalışmamaktadır. Bu derlemeleri de Flash ve yardımcı programları
yapmaktadır.

Yukarıda da bahsettiğimiz gibi HTML5’i her yerde kodlayabilirsiniz. Bu tamamen size kalmıştır. Aynı şekilde ActionScript’i de ancak Actionscript’in çalışabilmesi için derlenmesi
gerekmektedir.

Uyumluluk
Gerek HTML5’in gerekse Flash’ın yaygınlaşması amacıyla uyum sağladıkları Sistemler ve Tarayıcılar çok önemlidir. Bununla beraber Mobil ortamlarda destekleniyor olması çok büyük etken haline gelmiştir. Adobe Flash Browser’lardan bağımsız çalışmaktadır. Ancak Plug-in yani eklentiye ihtiyaç duymaktadır. Flash Player yüklü olmayan bilgisayarlar
kesinlikle Flash görüntüleyememektedir. Ancak HTML5 böyle bir eklentiye gereksinim duymuyor fakat tarayıcıların HTML5 ile uyumlu olması gerekiyor. Şu an bu uyum
henüz sağlanamamış olsa da Chrome ve Safari HTML5’i tamamıyla destekliyor. Firefox, Internet Explorer ve diğer tarayıcıların ilerleyen versiyonlarında HTML5’i desteklemesi
beklenmektedir. Keza Internet Explorer’ın 9.versiyonu ile HTML5’i destekleyeceği biliniyor.

Flash; Microsoft Windows, Mac OS X, Linux, Solaris, Symbian, Windows Mobile, Maemo ve Android işletim sistemlerinde çalışmaktadır. Mobil ortamlarda Flash, Android ve
BlackBerry’de tam performans sağlamaktadır. HTML5 ise bütün işletim sistemleri ve mobil platformlarda çalışmaktadır ancak dediğimiz gibi tarayıcı desteği sorunu yüzünden henüz tam olarak bu uyum sağlanmış değildir.

Gizlilik
HTML5, diğer bütün .html versiyonları gibi açık kodludur. HTML5 ile yapılan çalışmaların kodlarına herhangi bir kullanıcı rahatlıkla ulaşabilmektedir. Bu .html dilinin doğasında
var olan bir şeydir ve bu yüzden HTML5 ile yaptığınız bir çalışmanın kodları gizli kalmaz. Flash’ta ise durum farklıdır. Flash ile yapılan çalışmarın kodları gizlenebilir.

Animasyonlar aracı bir programla yapıldığı için bunları sadece izleyebiliriz. Yazılan ActionScript kodlamalarına da HTML5 gibi ulaşmak mümkün değildir. Flash tabanlı çalışmalar SWF formatında olduğu için ve SWF dosyası bir Embed kodu ile siteye yerleştirildiği için sadece bu .html embed koduna ulaşılabilir. Ancak bununla beraber oldukça popüler olan bir takım programlarla bir Flash çalışmasının ActionScript kodlarına ulaşılabilmek mümkündür. Bu tür programlar SWF dosyasının içeriğini kodlarıyla beraber gösteren hatta bunu kaynak dosya (.fla) ‘ya çeviren programlardır.

Bir çok Flash geliştirisinin başını ağrıtan bu programlarla Flash uygulamaları kopyalamak oldukça kolay hale gelmektedir. Fakatbu programlar hiç bir zaman %100 sonuç
vermemektedirler. Bununla beraber bu tür programların kodlara ulaşabilmesini engelleyen başka popüler “kod kilitleyici” programlar mevcuttur. Bu programlarla kilitlenen SWF dosyalarında yer alan kodlara yukarıda bahsettiğimiz programlarla ulaşılmaya çalışıldığında kodlar anlaşılmaz halde ve çalışmaz halde görünmektedirler.

Bu kodlar kopyalansa bile çalışmayacaktırlar.

Güvenlik
Özellikle Flash uygulamaları güvenlik konusunda oldukça eleştirilmektedir. Apple & Adobe tartışmaları sırasında Apple’ın dile en çok dile getirdiği şikayet Flash ve güvenlik
sorunudur zaten. Öte yandan Symantec’in Global Internet raporunda Flash; web eklentileri ve tarayıcı güvenliği açısından 2. sırada
yer almaktadır.

Adobe’nin açıklamasına göre Flash güvenliği Flash Player için öncelikli bir konudur. Adobe her fırsatta bu açıkları sürekli kapatıp güncellemeler yaptığını belirtmektedir.
HTML5’te her ne kadar bir takım güvenlik sorunu olsa da önceki versiyonlara göre bu konuda gelişim sağlanmıştır. Güvenlik konusunda bir çok şey aslında geliştirici ve kodlamasına bağlıdır. Bununla ilgili HTML5’te de Flash’ta da uyulması gereken temel kuralları internet ortamında bulmak mümkündür.

Multitouch
Zaten gelecek vadeden Multitouch özellikli bilgisayar ve telefonlar özellikle iPhone ve iPad ile beraber popülerliğini arttırmış durumdadır. Multitouch özellikli bilgisayarlar
ve telefonlar hızlıca yaygınlaşmaktadır. Artık çoğu bilgisayar ve telefon üreticileri bu alan üzerinde çalışmalarını sıklaştırmış durumdadır. Multitouch özellikli ekranları ile Pad’leri
yavaş yavaş daha çok görmeye başladık. Bu nokta Flash ve HTML5 kıyaslamasında önemli bir yere sahip.

Flash, multitouch teknolojisinin gelişmesiyle eş zamanlı olarak bu desteği ve gelişimi ger- çekleştirmeye çalışmaktadır. Flash, Multitouch bilgisayar ve telefonları
desteklemektedir. Adobe’nin açıklamasına göre Flash teknolojisi Multitouch arayüze sahip cihazların tümünde sorunsuz şekilde çalışmaktadır. Flash Player 10.1 ve Air 2.5 ile
Multitouch özelliği daha da gelişmiş durumdadır.

HTML5’te de Multitouch özelliği yer almaktadır. HTML5’i tamamen destekleyen tarayıcıları barındıran bütün cihazlar bu özelliği desteklemektedir.

Flash mı, HTML5 mi?
Son iki sayıda çok tartışılan HTML5 ve Flash kıyaslamasını elimizden geldiğince tarafsız bir şekilde yapmaya çalıştık. Bu süre içerisinde özellikle yeni çıkan bir teknoloji olmasından dolayı HTML5 hakkında kaynak ve bilgi edinme konusunda oldukça zorlandık. Bu sebepten ötürü kıyaslamalarda eksik taraflar da olmuş olabilir. HTML5 hakkında ilerleyen günlerde daha çok kaynak daha çok bilgi edinebileceğiz.

HTML5 daha iyi ya da Flash daha iyi gibi bir yorum yapmak yerine bu konuda bu sayıda ve önceki sayıda yaptığımız kıyaslamaları okumanızı öneriyor ve tercihi sizlere bırakı-
yoruz. Ancak bize göre HTML5 ve Flash’ı ikinsinden birini seçmek zorunda kalacağınız seçenekler olarak düşünmek yerine her ikisini de inceleyip bu iki harika teknolojiyi yakından takip etmelisiniz. Yeri geldiğinde Flash daha iyi, yeri geldiğinde HTML5 olacaktır. İkisinin de bir arada kullanılacağı çalışmalar/siteler de olacaktır.

Ancak şu bir gerçek Flash yıllardır var olan bir teknoloji ve oldukça uyum sağlamış durumda olup gün geçtikçe gelişmeye de devam etmektedir. Ancak HTML5 yeni çıkan bir teknoloji, bu teknolojinin yaygın hale gelmesi ve bütün sistemler tarafından desteklenmesi zaman alacaktır. Internet Explorer 6.0 yüzünden hala bir çok sitenin .PNG kullanmadığını düşünürsek, HTML5 ‘in tarayıcı desteği yüzünden bütün kullanıcılarda sorunsuz şekilde çalışıyor hale gelebilmesi oldukça zaman alacaktır.

 

 

September 2010

 


Mercek Altında