ben

OMÜ , Bilgisayar Mühendisliği, 13'

31 Ekim 2018 Çarşamba

Giriş ve Mimari Yapı


ANGULAR JS NEDİR?

  • Client-side yani kullanıcı taraflı geliştirilen modern frontend geliştirme freamework’lerinden biridir.
  • MVC (Modal View Controller) verinin, görünümün ve kontrollerin ayrı tutulmasına dayanır. 
  • AngularJS çalışmak için jQuery gibi kütüphanelere ihtiyaç duymaz. Tek sayfa uygulamaları geliştirmeye olanak sağlar.
  • AngularJS çeşitli bileşenleri içeren modüller halinde düzenlenmiştir. Bu bileşenler Direktifler (directives), hizmetler (services), sağlayıcılar (providers), Tipler (types), genel apiler dir.
ANGULAR JS KAYNAKLAR

  •  Github üzerinden projenin son hali:                    https://github.com/angular/angular.js
  •  Google Grup’tan mail listesine ulaşabilirsiniz:    angular@googlegroups.com
  •  Blog sayfası:                                                      http://blog.angularjs.org 
  •  AngularJS bütün versiyonlar:                              https: //code.angularjs.org/



MVC, Farklı işleve sahip yazılım katmanlarının birbirinden ayrı olarak geliştirilmesi prensibine dayanır. 1970 ‘lerin sonunda geliştirildi

  • Controller kullanıcı etkileşimlerini viewüzerinden yönetir
  • Controller viewdwn gwlwn etkileşimler doğrultusunda model ile etkileşime geçer
  • Model değişiklikleri view bildirerek kullanıcıya view üzerinden data değişikliklerini bildirir

MVP tasarımı deseni, view’in sorumluluğunu biraz daha arttırarak Controller sınıfını ortadan kaldırmıştır. 

  • View’deki veri durum yönetimini ve kullanıcıdan gelen komutları işlemek için presenter sınıfı bulunmaktadır. Presenter ve view arasında one-to-one bir ilişki bulunmaktadır. Bu sayede UI için test kodu yazmamız gerektiğinde ilgili Presenter’a test kodu yazabiliriz. 
  • Kullanıcı View’den isteği yaptığında bu istek önce ilgili Presenter sınıfına düşer. Presenter bu isteği modele göndererek dönen cevaba göreView’i update eder.

  • MVVM mimari design pattern MVC ve MVP tabanlıdır. Kullanıcı arayüzünü business logic’ten daha net ayırmak için tasarlanmıştır.
  • Model katmanı view ile direk iletişime geçebilir (data binding)
  • Angular js ‘in two way binding ‘in temelinde yatan özelliğin temeli bu mimari tasarımdan gelmektedir.
  • Anagular js deki controller ismi verilen katmanını aslında MVVMdeki ViewModel katmanını ,View katmanı da  template olarak ifade edilir
  • Controller ile view arasındaki bağlantı bir nesne ile sağlanır (scope)

Hiç yorum yok: