Flex mi, Flash mı?

Flex ve Flash platformunun artıları ve eksileri birçok farklı alanda yüzlerce kez tartışılmıştır. Benim amacım bu tartışmalara yeni birini eklemek değil, sadece son zamanlarda gelen mail ve soruların bazılarının yanıtlarını burada vermek. Flash platformuna yeni başlayan birçok programcı hemen hemen hemen aynı soru ile karşılaşıyor “Flex’mi yoksa Flash’mı öğrenmem daha iyi olur?”
Başlamadan önce bir iki terime açıklık getirmek istiyorum;

Flash: Tamamen bir multimedia platformudur. Flash platformu sayesinde internet üzerinde bir çok farklı kullanıcıya müzik, video, oyun, animasyon, reklam ve benzeri bir çok farklı yapı ulaştırılabilir. Flash için kullanılan yazılımın dilinin adı ActionScript’dir. Farklı platformların ürettiği Flash içeriklerini Flash Player oynatır. Üretilen içeriklerin dosya uzantısı ise *.swf(ShockWave Flash)’dir.


Bu makalenin devamını okuyun »

Data Grid İçerisinde Belirli Satırları Etkisizleştirmek

Flex Builder içerisinde Data Grid kullanımı gerçekten birçok işi kolaylaştırıyor, ama bazen Data Grid içerisindeki bazı satırların etkisiz hale getirilmesi gerekebilir. Flex SDK temelde bunu desteklemiyor, ama bu özelliği eklemek bir kaç satır koddan ibaret. İlk olarak yeni bir Actionscript sınıf dosyası oluşturup DataGrid sınıfının özeliklerini alıyoruz.

Satırları etkisiz hale getirmek için DataGrid sınıfının iki metodu yeniden yazmamız gerekiyor. Birincisi mouseEventToItemRenderer() ikincisi ise drawRowBackground() metodu. İlk metot fare işaretçisi data grid satırının üzerinden her geçtiğinde çağırılacaktır. Burada yapılacak işlem ise metot çalıştığında data grid için tanımlanan Array içerisindeki enabled özelliğini denetlemek olacak, eğer değer false ise metot geriye null değerini döndürecek bu sayede ilgili satır etkisiz kılınmış olacak. İkinci metot ise sadece görsel yapıyı etkilemek için, bu metot içerisinde ilgili satırın arka planını gri olarak yeniden çizilmesini sağlayacağız, bu sayede etkisiz olan satırlar rahat bir şekilde ayırt edilebilecek. Bahsi geçen iki metot şu şekilde yapılandırılıyor;

Bu makalenin devamını okuyun »

ve AIR 2.0!

Herkesin bildiği gibi bugünlerde Adobe hem tasarım hem programlama dünyası için çalışanların kullandığı birçok programın ve platformunun yeni özelliklerini Adobe Max konferansında duyurdu. Her ne kadar yapılan açıklama ve özellikler birçok farklı alanda olsa da ben şimdilik sadece AIR platformu üzerinde yapılan değişikliklere değinmek istiyorum.
AIR 2.0 ile birlikte pek çok programcının ihtiyaç duyduğu pek çok yeni özellik AIR platformuna ekleniyor. Aşağıda 2.0 için şimdilik açıklanan özelliklerin bazıları yer almakta;

  • Yığın depolama aygıtlarının algılanması (USB, Hard disk, Mp3 ve benzeri harici aygıtlar)
  • AIR 2.0 ile birlikte hangi dokümanın varsayılan olarak hangi programı çalıştırdığını öğrenip ilgili programı da açabilmek mümkün olacak. Mesela PSD dosyasının photoshop kullandığını öğrenip photoshop uygulamasını açmak gibi.
  • AIR uygulamaları kullanıcı bilgisayarındaki farklı uygulamaları açabilecek. Bu konu hala hassasiyetini koruyor açıkçası, sebebi ise AIR uygulamalarının yapı gereği böyle bir şey yapmaması gerekiyor. Ama diğer taraftan bir çok kullanıcının buna ihtiyacı. Anladığım kadarıyla orta yol olarak Adobe bunun yapılması için bir API geliştiriyor ama bu özellik kullanıldığında uygulamanın AIR uygulaması olarak mı paketleneceği yoksa exe/dmg dosyası olarak mı paketleneceği konusu biraz karmaşık. O yüzden biraz daha beklemek gerekiyor.
  • Multi-touch desteği, tabi ki Windows 7 ve Mac 10.6 işletim sistemlerini desteklemek için.
  • HTML5 ve CSS3 desteği
  • Mikrofondan gelen seslere direkt olarak erişebilme imkânı sağlanacak, bu sayede kullanıcı sesleri ile yapılacak işlemlerin sayısı artacak. Yani mikrofondaki sesleri mp3 veya herhangi bir ses dosyası formatında kayıt edebilme imkânı olacak.
  • AIR 2.0 uygulamaları ile P2P protokolüne izin verilecek.

Şimdilik bu kadar
Kolay Gelsin
Engin Yöyen!

Flex Debugger Hatası

Flex ile çalışmak bazen beni çileden çıkarabiliyor. Ama ActionScript ile uygulama geliştirecekseniz bulabileceğiniz en iyi kod editörlerinden biride tabi ki Flex. Bir firmanın başladığı bir AIR projesini devralıp uygulamayı ben geliştirmeye başladım, sorun ise proje udosyasını Flex içerisine ekleyip uygulamayı test etmeye kalktığımda ortaya çıktı. Flex uygulamayı debug etmeme izin vermeyip aşağıdaki hata mesajını veriyordu.

launchfailed


Bu makalenin devamını okuyun »

Flash Builder 4 ve Flash Catalyst Beta Sürümleri Çıktı!

flash_catalyst_and_builder

Bir süredir beklenen Flash Builder 4 (eski adıyla Flex Builder) ve Flash Catalyst (kod adı Thermo) programlarının beta sürümleri yayınlandı. İstediğiniz taktirde labs.adobe.com adresinden her iki programı da indirip beta sürümlerini kullanabilirsiniz.

Her iki programı da 30 günlük deneme sürümleri ile kullanabilirsiniz. Daha uzun bir zaman diliminde kullanmak için ise daha sonradan beta versiyonu için seri numarası talep edebilirsiniz. Şu anda Flash Catalyst için beta seri numarasını alıp ücretsiz olarak kullanabilirsiniz. Flash Builder için ise bu ay içerisinde beta seri numaraları verilecektir. Tabii şu anda yükleme seçeneğinde 30 günlük deneme sürümünü seçip kullanabilirsiniz.

Kolay Gelsin
Engin!

Kötü Amaçlı İnternet Kullanımı

İnsanoğlu para kazanmanın her zaman bir yolunu bulmuştur. Yasal veya değil bu süreç bu şekilde devam etmektedir. Bunun temeli ister insan oğlunun hayatta kalma iç güdüsü ister para arzusu olsun seçilen yol bence çok önemlidir. Bir ürünü 1 kuruşa alıp 100 kuruşa satmak bir ticarettir. Ama o ürünü çalıp satmak hırsızlıktır.

Makalenin temeline gelirsek; son bir haftadır birkaç farklı kişi Facebook’taki Texas Hold’em Poker oyununun açıkları ile ilgili benden programcı olarak yardım istediler. Temel mantık buradaki açıklar ile oyun içerisinde kullanılan çipleri toplayıp bunları farklı kişilere satmak. Oyun içerisinde kullanılan çipleri Facebook’ta yer alan fiyattan daha ucuza satıyorlar böylece oyun oynayan kişilerin daha az ödeyerek daha çok çip alabiliyorlar. Bu işi zaten uzun zamandır yapıyorlarmış ama oyunun versiyonu değişince var olan açıklarda kapanmış.

Bu makalenin devamını okuyun »

Nesne Tabanlı Programlamaya Giriş -2(Paketler)

Nesne Tabanlı Programlama konusuna kaldığım yerden devam ediyorum. Bu makalede paketlerin(package) ne işe yaradığına ve kullanım şekillerine açıklayacağım.

Paketler (Package)

İsimden de rahatlıkla anlaşılacağı gibi burada ki package deyimi sınıf yapısı ile yazılan kodların nasıl ve ne şekilde kategorize edileceğini belirler. Daha doğrusu bunun nasıl olacağına yazılımcı olarak siz karar verirsiniz ama bu yapıyı oluşturmak için bu ifadeye ihtiyaç duyarız. Buradaki temel mantığın ne olduğuna gelirsek, yani neden paketlere ihtiyaç duyarız veya paketlerin kullanımını neden önemlidir?

İlk olarak bu yapıyı kullanmak zorundayız. Bir sınıf yapısı oluşturmak için ihtiyacımız olan ilk tanımlama package ifadesidir. Mesela aşağıda en minimal hali ile bir sınıf yapısı bulunmakta;

  1. package {
  2.         public class  OrnekSınıfYapısı{
  3.         }
  4. }


Bu makalenin devamını okuyun »

Adobe AIR Kitabı Satışta!

air_book

Ufak bir güncelleme, Adobe AIR kitabının satışına başlandı. Kitabın fiyatı 28.00 YTL olarak belirlendi. Ama online olarak satın almanızı tavsiye ederim, bu şekilde varsayılan fiyattan daha düşük bir fiyata alabilirsiniz.

Bu makalenin devamını okuyun »

Ücretsiz AIR Kitabı

Bana gelecek olan Adobe AIR kitaplarından 3 tanesi blog okurlarına ücretsiz vermek istiyorum. Şanslı üç kişiyi seçim yöntemine gelirsek; bir önceki ücretsiz kitap dağıtımında yaptığım gibi, kitabın neden size verilmesi gerektiğine dair uzun olmayan ama yaratıcı ve iyi bir neden yazıp göndermeniz gerekiyor. Aşağıdaki adrese yaratıcı sebebinizi bekliyorum.

engin@enginyoyen.com

Bana yollayacağınız mailin içerisinde; kendinize ait eposta adresiniz, isim ve soy isminizin yer alması gerekmektedir. İsim ve soy isim kazananı belirlemek, eposta adresi ise kazanana ulaşmak için gerekli, bilgilerinize.

Bu makalenin devamını okuyun »

3D’ye Giriş

Bir objenin 3 boyutlu görünümü her zaman 2 boyutludan daha fazla ilgi çekmiştir. Diğer taraftan görsellik adına yapılan her işlem gerçekçiliği biraz daha yaklaştıkça, daha fazla ilgi görüyor. Tabii burada işin bir bölümü 3’cü boyuta düşüyor. Peki, nedir bu üçüncü boyut(3D)?

Flex veya Flash içerisinde bir objeyi oluştururken objeyi konumlandırmak için x ve y koordinatlarına belirli bir değer girilir. Girilen değerler objenin belirli bir düzlemde yerini belirlemektir. Yani bir kare çizip bu karenin x ve y özelliklerine verdiğiniz değerler bu objenin sahne üzerindeki konumunu belirler.  Üçüncü boyut ise objenin sahne üzerinde oluşturduğu derinliktir, bu özelliğe verilen isim ise z boyutudur. Yani objenin z özelliğine verilen değer objeye derinlik katarak yapay bir üçüncü boyut oluşturur. Yukarıdaki açıklamayı şu şekilde de düşünebilirsiniz,

x = yatay
y = dikey
z = derinlik (hem içeri, hem dışarı doğru)


Bu makalenin devamını okuyun »

PHVsPjwvdWw+