Plazma sayı 5, sayfa 61
Sayfanın metni

Sayfa 61

"Usta... ActionScript 3.0 üzerine pişmişinden OOP kes, az da MVC döküver..."

Verinin geçireceği dönüşümler de genellikle Controller içerisinde tanımlanır. MVC, özellikle ölçeklenebilir yapılarda işimizi rahatlatan yapısal bir tasarımdır. Daha modüler bir yapı, özellikle iş bölümü yapılmasında ve herkesin bir bölüme odaklanmasında rahatlık sağlar. Kodu ayrıştırdığı için kısmi müdahaleler ya da yapının başka bir zaman değiştirilmesi, radikal bir çalışma olmaz. Yapıyı yeni bir veritabanına adapte etmek, farklı bir görsel arabirim hazırlamak ya da işlevsel kısımları geliştirmek çok daha pratik gerçekleşir.

Aşağıdaki basit örnek, dört dosyadan oluşuyor. Dosya düzeni de aşağıdaki gibi olmalı. mvctest.fla'yı compile edip çalıştırdığınızda controller, yeni bir model yaratacak ve ardından mvctest.fla üzerinden view'ın out() fonksiyonu çalıştırılacak. Görüldüğü gibi çok basit halde verinin Model ile, ekrana çıkışın View ile, genel kontrolün de Controller ile yapılmasını sağlıyoruz. Bunu geliştirip istediğimiz uygulamaları veri alışveriş ve ekran şablonu sistemine oturtup Event sistemini de devreye alarak çeşitli durumlara göre kendi kontrollerini idare eden bir yapıya dönüştürebiliriz.

Bu örneğin dosyalarını http://www.obsesif.net/files/mvc.rar adresinden çekebilirsiniz.

mve/ com/ mvctest/ Controller.as Model.as View.as mvctest.fla

*/ /* dosya ismi: mvctest.fla #4 */ import com.mvctest.*; var mc - new Controller(); */ /* dosya ismi: com/mvctest/Controller.as #4 ze */ package com.mvctest (| import com.mvctest.*; public class Controller private var dataset; public function Controller ( ) this.dataset new Model(); public function out ( ) (| var viewset new Viewl this.dataset.getCoords( ) ); ) ysk /* dosya ismi: com/mvctest/Model.as &f ys package com.mvctest ( public class Model (| private var xPos:Number; private var yPos:Number; public function Model ( ) ( this.xPos - 100; this.yPos - 100; public function getCoords ( ):String (|

"xPos: ", yPos:

return *

“4k Vk Ehis.yPos;

)

KA /* dosya ismi: com/mvctest/View.as */

package com.mvctest (| public class View ( public function View( content:String )(1 trace( content );

)

Klavyeyle gezinmek için ← ve → tuşları.