BibTex RIS Kaynak Göster

JavaScript için nesne yönelimli programlama yaklaşımları

Yıl 2014, Cilt: 30 Sayı: 2, 141 - 147, 01.04.2014

Öz

Bu çalışmada web tabanlı uygulamalarda MVC (Model-View-Controller) mimarisinin ve nesne yönelimli programlama yaklaşımlarının kullanılmasının yazılım geliştirme süreçlerine olan pozitif etkisi ele alınmıştır. MVC mimarisi, uygulama katman ve nesnelerini birbirinden ayırarak yazılım mimarisinin sadeleştirilmesini sağlamaktadır. JavaScript web tarayıcıların doğal dili olduğundan doğrudan tarayıcılar tarafından yorumlanabilmektedir. Bundan dolayı JavaScript web tabanlı uygulamalar için en popüler ve en etkili betik dilidir. Nesne yönelimli programlama, programlama nesnelerinin gerçek dünya nesnelerine benzetilerek problemlerin çözülmesini sağlar. JavaScript, kendi yapısı itibariyle nesne yönelimli yaklaşımları ve MVC mimarisini desteklememektedir. Sencha Ext JS, nesne yönelimli programlama yaklaşımlarından ve MVC mimarisinden faydalanarak zengin web uygulamaları geliştirmeyi sağlayan bir kütüphanedir. Performans, web tabanlı uygulamalar için her zaman kritiktir. Bu sebeple web sayfalarında tanımlı olan kaynak boyutu, performans artışı sağlamak için mümkün olduğunca küçültülmelidir. Bu küçültme hem kaynak sayısının azaltılması hem de kaynakların sıkıştırılması ile yapılabilmektedir. Kalıtım, JavaScript'in doğrudan desteklemediği nesne yönelimli programlamanın önemli özelliklerinden birisidir. Gerçek dünya nesnelerinin hepsi birbirinden türediğinden kalıtım kullanılmadan gerçek dünya nesnelerini web tabanlı uygulamalarda kullanmak mümkün değildir. Dinamik kaynak yükleme, web tabanlı uygulamalar için oldukça yeni bir yaklaşım olup, kaynakların gerektikçe yüklenmesini sağlamaktadır. Çalışma boyunca elde edilen tecrübeler ve sonuçlar, nesne yönelimli yaklaşım ve MVC mimarisinin yazılım geliştirme süreçlerini kolaylaştırdığını, hem geliştirme hem de üretim aşamalarında klasik web uygulama geliştirme yaklaşımlarına göre büyük performans kazancı elde edildiğini göstermektedir. Ayrıca bu yaklaşımların kullanılmaması durumunda, özellikle büyük çaplı yazılım projelerinin bakımının ve revizyonunun çoğu zaman mümkün olmadığı gözlemlenmiştir. JavaScript yapı olarak nesne yönelimli programlama yaklaşımlarına uygun olduğundan bu yaklaşımların JavaScript'e uyarlanmasının web tabanlı uygulamalara performans ve yetenek kazandıracağı düşünülmektedir.

Kaynakça

  • Boerman, R.: Using Model Associations in Sencha Touch and Ext JS , http://appointsolutions.com/2012/07/using-model- associations-in-sencha-touch-2-and-ext-js-4/, July 2012.
  • Crockford, D., JavaScript: The Good Parts, s. 2, O‟Reilly Media/Yahoo Press, 1005 Gravenstein Highway North, Sebastopol, CA 95472, 2008.
  • Flatt, M., Krishnamurthi, S., Felleisen, M., A programmer‟s reduction semantics for classes and mixins, In: Alves-Foss, J. (ed.) Formal syntax and semantics of Java, s. 13, Springer, 1999.
  • Garcia, J., Andresen, J.K., Grisogono, G., ExtJS in Action, 2nd ed., s. 19, Manning Publication Co., 180 Broad St. Suite 1323 Stamford, CT 06901, USA, 2013.
  • Groner, L., Ext JS 4 First Look, s. 272, Packt Publishing, Livery Place 35 Livery Street Birmingham B3 2PB, UK, Groner, L.: ExtJS 4 MVC Architecture Mind Map, http://www.slideshare.net/loianeg/extjs-4-mvc-architecture- mind-map-13669488, July 2012.
  • Hasan, S.S., Isaac, R.K., An integrated approach of MAS- CommonKADS, application optimization strategies for web-based expert system development, Expert Syst. Appl., 38, 417–428, and web MacCaw, A., JavaScript Web Applications, s.3, O‟Reilly Media, 1005 Gravenstein Highway North, Sebastopol, CA , 2011.
  • Neumann, G., Zdun, U., Strembeck, M., Object-based and class-based composition of transitive mixins, Inf. Softw. Technol., 49, 871–891, 2007.
  • Spencer, E.: Countdown to Ext JS 4: Dynamic Loading and http://www.sencha.com/blog/countdown-to-ext-js-4- dynamic-loading-and-new-class-system, Jan. 2011.
  • Uyun, S., Rifqi, M., Implementation Of Model View Controller ( MVC ) Architecture On Building Web-based Information System, Islam Zeitschrift Für Geschichte Und Kultur Des Islamischen Orients, 47–50, 2010.
  • Varma, V., Software Architecture: A Case Based Approach, s. 94, Pearson Education India, New Delhi, India, 2009.
  • Zakas, N.C., Professional JavaScript for Web Developers, s. 202, Wrox, Indianapolis, Indiana, 2012.

Object-oriented programming approaches for JavaScript

Yıl 2014, Cilt: 30 Sayı: 2, 141 - 147, 01.04.2014

Öz

n this study, web application development with MVC (Model-View-Controller) architecture and object-oriented programming approaches is discussed in order to show how much these approaches simplify web application development. MVC simplifies application architecture by separating application domain layers and objects. Because of JavaScript is the native language of web browsers that can be directly interpreted by them, it is currently most popular and effective scripting language for web applications. Object-oriented programming (OOP) is the paradigm of using objects a representation of real-world objects to solve problems. JavaScript doesn't have a built-in (native) support for both OOP and MVC approaches. Sencha Ext JS is a complete RIA (Rich Internet Application) development library makes available to use most of OOP principles with MVC architecture for JavaScript. Performance is always critical for web applications, so its required resource size must be minimized in order to boost its performance. This minimization can be done through eliminating unnecessary sources and source compression. Inheritance is also another key object-oriented programming feature that JavaScript doesn't support. Because of everything in real-life extends from something, it is impossible to define real-life objects for web applications without inheritance. Dynamic source loading is brand-new approach which offers to load only required sources for web applications. Results and experiments show that OOP and MVC approaches simplified development stages and offered big performance gains for both development and production stages than classic web application development paradigms. Also without these approaches, most of time it becomes impossible to maintenance and revise software projects especially big scaled ones. JavaScript has suitable structure for object-oriented programming approaches, so its approaches can be imitated for JavaScript to improve performances of web applications and extend their capabilities.

Kaynakça

  • Boerman, R.: Using Model Associations in Sencha Touch and Ext JS , http://appointsolutions.com/2012/07/using-model- associations-in-sencha-touch-2-and-ext-js-4/, July 2012.
  • Crockford, D., JavaScript: The Good Parts, s. 2, O‟Reilly Media/Yahoo Press, 1005 Gravenstein Highway North, Sebastopol, CA 95472, 2008.
  • Flatt, M., Krishnamurthi, S., Felleisen, M., A programmer‟s reduction semantics for classes and mixins, In: Alves-Foss, J. (ed.) Formal syntax and semantics of Java, s. 13, Springer, 1999.
  • Garcia, J., Andresen, J.K., Grisogono, G., ExtJS in Action, 2nd ed., s. 19, Manning Publication Co., 180 Broad St. Suite 1323 Stamford, CT 06901, USA, 2013.
  • Groner, L., Ext JS 4 First Look, s. 272, Packt Publishing, Livery Place 35 Livery Street Birmingham B3 2PB, UK, Groner, L.: ExtJS 4 MVC Architecture Mind Map, http://www.slideshare.net/loianeg/extjs-4-mvc-architecture- mind-map-13669488, July 2012.
  • Hasan, S.S., Isaac, R.K., An integrated approach of MAS- CommonKADS, application optimization strategies for web-based expert system development, Expert Syst. Appl., 38, 417–428, and web MacCaw, A., JavaScript Web Applications, s.3, O‟Reilly Media, 1005 Gravenstein Highway North, Sebastopol, CA , 2011.
  • Neumann, G., Zdun, U., Strembeck, M., Object-based and class-based composition of transitive mixins, Inf. Softw. Technol., 49, 871–891, 2007.
  • Spencer, E.: Countdown to Ext JS 4: Dynamic Loading and http://www.sencha.com/blog/countdown-to-ext-js-4- dynamic-loading-and-new-class-system, Jan. 2011.
  • Uyun, S., Rifqi, M., Implementation Of Model View Controller ( MVC ) Architecture On Building Web-based Information System, Islam Zeitschrift Für Geschichte Und Kultur Des Islamischen Orients, 47–50, 2010.
  • Varma, V., Software Architecture: A Case Based Approach, s. 94, Pearson Education India, New Delhi, India, 2009.
  • Zakas, N.C., Professional JavaScript for Web Developers, s. 202, Wrox, Indianapolis, Indiana, 2012.
Toplam 11 adet kaynakça vardır.

Ayrıntılar

Diğer ID JA79NR69ZH
Bölüm Makaleler
Yazarlar

Abdullah Talha Kabakuş Bu kişi benim

Yayımlanma Tarihi 1 Nisan 2014
Yayımlandığı Sayı Yıl 2014 Cilt: 30 Sayı: 2

Kaynak Göster

APA Kabakuş, A. T. (2014). JavaScript için nesne yönelimli programlama yaklaşımları. Erciyes Üniversitesi Fen Bilimleri Enstitüsü Fen Bilimleri Dergisi, 30(2), 141-147.
AMA Kabakuş AT. JavaScript için nesne yönelimli programlama yaklaşımları. Erciyes Üniversitesi Fen Bilimleri Enstitüsü Fen Bilimleri Dergisi. Nisan 2014;30(2):141-147.
Chicago Kabakuş, Abdullah Talha. “JavaScript için Nesne yönelimli Programlama yaklaşımları”. Erciyes Üniversitesi Fen Bilimleri Enstitüsü Fen Bilimleri Dergisi 30, sy. 2 (Nisan 2014): 141-47.
EndNote Kabakuş AT (01 Nisan 2014) JavaScript için nesne yönelimli programlama yaklaşımları. Erciyes Üniversitesi Fen Bilimleri Enstitüsü Fen Bilimleri Dergisi 30 2 141–147.
IEEE A. T. Kabakuş, “JavaScript için nesne yönelimli programlama yaklaşımları”, Erciyes Üniversitesi Fen Bilimleri Enstitüsü Fen Bilimleri Dergisi, c. 30, sy. 2, ss. 141–147, 2014.
ISNAD Kabakuş, Abdullah Talha. “JavaScript için Nesne yönelimli Programlama yaklaşımları”. Erciyes Üniversitesi Fen Bilimleri Enstitüsü Fen Bilimleri Dergisi 30/2 (Nisan 2014), 141-147.
JAMA Kabakuş AT. JavaScript için nesne yönelimli programlama yaklaşımları. Erciyes Üniversitesi Fen Bilimleri Enstitüsü Fen Bilimleri Dergisi. 2014;30:141–147.
MLA Kabakuş, Abdullah Talha. “JavaScript için Nesne yönelimli Programlama yaklaşımları”. Erciyes Üniversitesi Fen Bilimleri Enstitüsü Fen Bilimleri Dergisi, c. 30, sy. 2, 2014, ss. 141-7.
Vancouver Kabakuş AT. JavaScript için nesne yönelimli programlama yaklaşımları. Erciyes Üniversitesi Fen Bilimleri Enstitüsü Fen Bilimleri Dergisi. 2014;30(2):141-7.

✯ Etik kurul izni gerektiren, tüm bilim dallarında yapılan araştırmalar için etik kurul onayı alınmış olmalı, bu onay makalede belirtilmeli ve belgelendirilmelidir.
✯ Etik kurul izni gerektiren araştırmalarda, izinle ilgili bilgilere (kurul adı, tarih ve sayı no) yöntem bölümünde, ayrıca makalenin ilk/son sayfalarından birinde; olgu sunumlarında, bilgilendirilmiş gönüllü olur/onam formunun imzalatıldığına dair bilgiye makalede yer verilmelidir.
✯ Dergi web sayfasında, makalelerde Araştırma ve Yayın Etiğine uyulduğuna dair ifadeye yer verilmelidir.
✯ Dergi web sayfasında, hakem, yazar ve editör için ayrı başlıklar altında etik kurallarla ilgili bilgi verilmelidir.
✯ Dergide ve/veya web sayfasında, ulusal ve uluslararası standartlara atıf yaparak, dergide ve/veya web sayfasında etik ilkeler ayrı başlık altında belirtilmelidir. Örneğin; dergilere gönderilen bilimsel yazılarda, ICMJE (International Committee of Medical Journal Editors) tavsiyeleri ile COPE (Committee on Publication Ethics)’un Editör ve Yazarlar için Uluslararası Standartları dikkate alınmalıdır.
✯ Kullanılan fikir ve sanat eserleri için telif hakları düzenlemelerine riayet edilmesi gerekmektedir.