Angular Nedir ?

Hilmican Çeliker
BilgeAdam Teknoloji
3 min readDec 23, 2019

Angular, Google tarafından geliştirilen ve desteklenen SPA(Single Page Application) uygulama yapılmasına olanak sağlayan javascript kütüphanesidir.

Angular model view controller yapısına bağlı geliştirme yapabilirsiniz. Eğer .net developersanız ve MVC yapısını kullandıysanız Angular’ a daha kolay hakim olabilirsiniz. Bu konudaki öğrenme süreciniz oldukça hızlı olacaktır.

Tarihçe

2009 — Angular’ ın tarihçesine bakıcak olursak Google çalışanı olan Misko Hevery tarafından kişisel geliştirdiği bir kütüphane olarak başlıyor.

2010 — Angular ilk kez AngularJS isminde https://angularjs.org internet adresinde yayınlanıyor.

2016 — Yazılımcılar tarafından oldukça sevilen Angular 2016 yılında köklü bir değişiklikle geliyor ve geliştirme dili Javascript’ ten TypeScript’ e geçiyor ve eski sürüm olan AngularJS’e destek ve geliştirme durduruluyor. Hatta bu köklü değişiklikten sonra https://angularjs.org olan internet sitesi https://angular.io/ ile değiştiriliyor. Angular artık popüler internet tarayıcılarında ve cross-platfromlar üzerinde çalışabilir hale getiriliyor.

SPA Nedir ?

Single Page Applicationlarda yönlendirme işlemi backend tarafından değil client tarafında yapılır. Bir tane index sayfamız oluyor ve client tarafında sayfalar yönlendirme ile değiştiriliyor ve render ediliyor. Bu sayede yeni bir sayfaya geçmiş etkisi veriyor.

SPA FRAMEWORK KARŞILAŞTIRMASI

Popüler olan SPA Frameworklerinin(Angular, Vue, React) karşılaştırmasına bakıcak olursak.

Angular 2009 yılında, React 2013 yılında, Vue ise 2014 yılında piyasaya çıkıyor. Aslında burada Angular’ ın diğer rakiplerine oranla bu alanda daha çok tecrübeli olduğunu görebiliyoruz.

Angular

Angular modüler bir yapıya sahiptir. Uygulumanızı parçalara bölebilir ve tekrar kullanabilirsiniz. Diğer frameworklere göre daha esnek bir yapıya sahiptir. Sizlere daha fazla kontrol edebileceğiniz alanlar sunar. Diğer SPA uygulamalarından ayıran en büyük farkı ise paketler ile birlikte gelmesidir.

REACT

React’ ı diğer SPA uygulamalarından ayıran en büyük farkı mobil dünyasındaki başarısıdır. React Native ile birlikte ios ve android çıktısı alabilirsiniz. Angulara göre en büyük farkı Virtiual DOM olmasıdır. Angular’ da projenizin optimizasyonunu yapmanız gerekiyor buda bazen can sıkıcı hale gelebiliyor fakat React sizlerden optimizasyonları beklemiyor.

VUE

Vue’ nun diğer frameworklere göre render süreçleri daha hızlıdır ve öğrenim süresi oldukça kısadır. Virtual DOM Vue üzerinde de vardır.

SPA Kullanılan Uygulamalar

Angular Google AdWords, The Guardian ve Weather.com uygulamalarında, Vue 9Gag ve GitLab uygulamalarında, React ise Whatsapp ve Insatagram uygulamalarında kullanılmıştır.

Neden Angular ?

  • Hızlı bir biçimde SPA uygulama geliştirilebilir.
  • Modüler bir yapıya sahiptir. Uygulamanızı parçalara bölebilirsiniz. Tekrar kullanılabilirlik konusunda oldukça başarılıdır.
  • İhtiyacınız olan bütün paketler Angular içinde mevcut geliyor. Yani siz bir araba yapmak istiyorsanız Angular size arabanın kalıbını motorunu veriyor size sadece bunları birleştirmek kalıyor. Bu özellik Angular’ ı diğer SPA uygulamalardan ayıran en önemli özelliktir.
  • Cross Platfromlar üzerinde çalışılabilir. Uygulamanızı web, desktop ve mobile olarak geliştirilebilir.
  • Kullanıcı deneyimi olarak oldukça başarılıdır.
  • Directive adı verilen yapı sayesinde HTML’e yeni etiketker veya attribute’lar eklemek mümkün.
  • Aynı değişken üzerindeki herhangi bir değişiklik two-way data binding sayesinde bütün sayfa üzerindeki ilgili alanların değişmesini tetikler.
  • Test Driven Development kavramına uygundur. Unit test yazmaya olanak sağlar.

Kısacası kompleks bir uygulama geliştireceksiniz, Angular’ ın paketler ile birlikte gelmesi ve mvc yapısını kullanması dolayısı ile projenizi yönetmeniz Angular ile kolay olacaktır. Tabi yaptığınız uygulamayı hızlı bir biçimde web, mobil ve dekstop üzerinde çalışmanızı istiyorsanız bu konuda da sizi oldukça destekliyor. Proje yaparken biz yazılımcıların olmazsa olmazı stackoverflow üzerinde oldukça fazla yazı bulunmakta. Bu da aslında karşılaşacağınız sorunları hızlı çözmeniz konusunda size yardımcı olacaktır.

--

--