Actionscript 3.0 Standardizasyon Sorunu

17 Ağustos 2008 – 12:31

Actionscript 3.0 ve ECMAScript 4

Actionscript 3.0 hazırlanırken Adobe dili ECMAScript 4 üzerine temellendirdi. Yani Actionscript 3.0 dili için bir standart seçilmişti ve bu ECMAScript 4 dü. Bir yazılım dilinin standartlara uyması geliştiriciler açısından ne kadar önemli ne kadar önemli değil bu tartışılacak bir nokta ama Adobe Actionscript 3.0 için standardizasyon komitesi tarafından duyurulan ECMAScript 4 ü seçmişlerdi.

Adobe bu yönde tüm çalışmalarını şekillendirdi. Actionscript 3.0 çok iyi bir dil haline geldi. Tabii bu planın sadece bir parçasıydı, daha sonra Adobe kendi içerisindeki sistemlerin çoğunu güncelleme yoluna gitti. Flex Builder yapıldı ki o da Actionscript 3.0 kullanıyor. Adobe Connect yeniden yapılandırılmaya başlandı ve tabi ki Tamarin ES4 motoru. Bunun gibi birçok ürün bu dilin üzerine kuruldu.

Ecma Teknik Komitesi

Buraya kadar bir sorun yoktu, ta ki Oslo’da toplanan Ecma Teknik Komitesi’nin ECMAScript 4 üzerinde çalışmalarını durdurduğunu açıklayana dek (13.08.2008 - Brendan Eich’in tarafından yollanan Eposta).

Ecma Teknik Komitesi’nin kendi içerisinde fikir ayrılıkları olduğu daha önceden de biliniyordu. Komitenin bir kısmı ECMAScript 3.1 üzerinde çalışmalara devam etmek isterken bir kısmı da ECMAScript 4 ü inşa etmeye kalkmışlardı. ECMAScript 3.1 destekleyenler Javascript için yeni bir sistem ve syntax oluşturmak yerine ilaveler ile açığı kapatmak istiyorlardı. ECMAScript 4 ü destekleyenler ise bunun cezp edeci olmadığını sistemin yeniden yapılandırılmasını gerektiğini düşünüyorlardı.

Oslo’daki toplantı sonucu tek bir sonuç çıkararak ECMAScript 3.1 üzerinde çalışmalarına devam edeceklerini açıkladılar. Peki, bu ne demek?

Standardı Olmayan Actionscript 3.0

Bu Actionscript 3.0 dilinin bir standardı yok demek. Tabii bu Adobe’yi biraz zor durumda bırakıyor. Ama durum o kadar da kötü değil. Bu haberi duyan Actionscript geliştiricileri içerisinde bende dahil olmak üzere akıllarına gelen ilk soru şuydu;
Adobe geri adım atıp Actionscript 3.0 düzenleyecek mi? Eğer düzenlemeyi yapmazsa Adobe Actionscript’in diğer versiyonunda standartlaşmaya gidecek mi?
Buradaki önemli nokta şu eğer bu saatten sonra Adobe zaten Actionscript 3.0 üzerinde değişiklik yapmaz. Ama Adobe standardizasyon diye tutturursa Actionscript’in bir sonraki sürümü ile şimdiki sürümü arasında bazı çakışmalar olacak. Yani ileri seviye bir dili bir alt seviyeye çekmiş olacak.

Tabii Adobe tarafından gelen cevap herkesi rahatlattı. Adobe hala standartlara uymaya çalıştığını ama sadece standartlara uymak adına var olan ve iyi çalışan bir yapıyı bozmayacaklarını belirtiler. Ayrıca bununda gelecekte de bu şekilde olacağı konusuna değindiler. Adobe açıklamasında önemli olanın işlevsellik olduğu ve bundan geriye doğru adım atmayacağını belirtti.

Bizim için önemli olan buydu tabi ki. Bir programcı için işlevsellik önemlidir, çünkü elindeki bu işlevsellik ile yeni programların üretimi daha kolay ve hızlı olur.

Neden ECMAScript 3.1(Politik Sebepler)?

Genelde düşündüğünüz zaman yeni ve daha iyi bir sistemin kabul edilmemesi için bir sebep bulamazsınız. Tabi buradaki temel mantık her zaman böyle işlemez. Yani her zaman geliştiriciler ve web için iyi olan yapılır diye bir söylem olamaz. Olsa bile bu yanlış olur. Bunu politik açıdan değerlendirmemiz gerekir. Eğer ECMAScript 4 kabul edilseydi Microsoft internet tarayıcı(Internet Explorer) motorunu yeniden ECMAScript 4’e göre hazırlaması gerekecekti. Tabii bu basit bir süreç değil, ayrıca bu süreç finansal olarak ta Microsoft’u sıkıntıya sokacaktı.

Microsoft’un bunun için bir alternatifi vardı aslında, o da Tamarin’i kullanmaktı. Ama buda pek hoş olmazdı. Çünkü Microsoft ki dünyanın en büyük yazılım şirketlerinden biri Adobe’nin hazırladığı Tamarin’i kullanacaktı.

Tabii bu süreç biraz zorlu olacağından Microsoft ECMAScript 4’ü desteklemedi. Javascript’in yaratıcısı ve standartlara yön veren Brenan Eich’ te böyle bir sorunla yani Microsoft’un ECMAScript 4’ü desteklememesi ile karşı karşıya gelmek istemedi. Tabii bunun en büyük nedeni dünyada kullanılan internet tarayıcılarını %75’i İnternet Explorer. Ve sonuç ECMAScript 4 ölü doğdu.

Eğer ECMAScript 4 Ölü Doğmasaydı?

Eğer ECMAScript 4 ölü doğmasaydı ne olurdu? Bu süreçte ilk olarak Microsoft büyük bir sıkıntıya girerdi. Pazardaki yerini korumak adına bence kesinlikle internet explorer’ı ECMAScript 4 e uyarlamaya çalışırdı. Bence bunu yapmak zorunda kalırdı.

Adobe ise Tamarin ile büyük bir adım atmış olurdu. Microsoft’a hazırlık ve çalışma yokken Adobe standart bir dile uygun Tamarin motoru hazır olmuş olacaktı. Bu da Adobe’nin yükselişine yardımcı olacaktı tabi ki.

Geliştiriciler İçin Faydaları

Dilin şu anda herhangi bir standardı olmaması dikkatin geliştiricilere toplanmasını sağladı. Eğer standart olsaydı gidilecek yol belli olurdu. Ama şu anda Adobe geliştiricilerinde bu sürece dahil olmasını istiyor. Buda tabii geliştirici olarak bakış açımızın farklı olmasından ve birebir olarak bu işi yapıyor olmamızdan dolayı var olan sistemi daha iyiye götürme şansını bize veriyor. Eğer Actionscript içerisinde şu da olsa iyi olurdu dediğiniz bir fikriniz var ise aşağıdaki adrese tıklayarak fikrinizi beyan edebilirsiniz.

http://blogs.adobe.com/open/2008/08/blog_entry_dated_81408_715_pm.html

Kapanış

Gördüğünüz gibi standardizasyon kolay bir şey değil ve bu süreç şirketleri etkilediği için kirli bir oyun haline gelebiliyor. Tabii bu süreç sadece şirketleri değil geliştiricileri de büyük bir sıkıntı altına sokuyor. Şu anda bu tabloya baktığımda görünen o ki yakın zamanda Adobe kendi standardizasyonunu ortaya koyacak. Bana göre bu Adobe’nin yapacağı en iyi iş olur. Diğer seçeneği ise ya farklı bir standardı temel alacak, ki bu da zorlu bir süreç çünkü dilin yapısı zaten kuvvetli ya da Actionscript herhangi bir standart olmadan hayatına devam edecek.

Kolay Gelsin
Engin Yöyen!

Bu makale ile ilgili olabilecek yazılar


  1. 8 Responses to “Actionscript 3.0 Standardizasyon Sorunu”

  2. güzel makale hocam… her makalende kitabı sorma alışkanlığı ediniyorum.. ne durumda kitap acaba?
    bir aydan fazla oldu artık silahla kapına gelicem kitap için :D :)

    By emrah atılkan on Ağu 21, 2008

  3. :)
    son surum için bende bekliyorum açıkçası.
    Ama illa gelicem diyorsan buyur gel bir çay içeriz..

    By Engin Yöyen on Ağu 21, 2008

  4. Güzel makale, kötü haber bence.

    By aytekin meral on Ağu 24, 2008

  5. Ee nolacak şimdi bu flashın sonu..
    Bence kendi ekibini kurmalı dili geliştirmeli..

    By Kemal Durhat on Eyl 22, 2008

  6. Mehaba Kemal,
    aslında şu anda çoğu geliştiricinin kafasında aynı şey var. Yani Adobe kendi içeriisnde bir takım kurup kendi standardizasyonunu oluşturmalı gibi.
    Banada iyi bir fikir gibi geliyor ama her standardizasyonu oturmayan dilde kendi stanrtlarını oluşturursa, bu sefer köşe bucak standartlardan geçilmeyecek.

    Bence onun yerine bağımsız bir komitenin kurulması daha doğru olur. Ama tabi bu da en zoru gibime geliyor.

    Bekleyip görmek görek
    Kolay Gelsin

    By Engin Yöyen on Eyl 26, 2008

  7. Adobe firması Actionscript dilinin veritabanları ile direkt bağlantı kurması üzerine niçin çalışmıyor veya böyle bir çalışması varmı?

    By Ömer Karakoç on Eki 6, 2008

  8. Selam, action script 2de kullanılan _lockroot ifadesi action script3te kaldırıldı mı?

    teşekkürler..

    By Hakan Gökkaya on Kas 16, 2008

  9. Merhaba hakan,
    actionscript 3.0 _lockroot tamamen kaldırıldı.

    By Engin Yöyen on Kas 16, 2008

Yorum Ekleyin