Bir bakayım dedim bu Angular, Vue.js ne işe yarıyor. İzlediğim bütün videolarda lokalde node.js kurup yaptıkları işi derliyorlar.
1) İzlediğim örneklerin hiç birinde Database'e yazma olayını göremedim. Bunun anlamı yazmak istediğimiz datayı HttpClient ile PHP veya ASP ile yazdığımız API'ye göndererek mı işlemi hallediyoruz? Yoksa başka bir yolu mu var?
2) Server'da Apache üzerinde çalışmaz herhalde. Oraya da node.js kurmak lazım değil mi?
3) Angular ve benzeri SPA'ları website için kullanan var mı yoksa bunları webview aplikasyonlar için mi kullanıyorsunuz?
1. Angular doğrudan mysql'e erişemez, mysql'e bağlanmak ve veri okuyup yazmak için yine php kullanılır, angular senin hazırladığın php dosyalarına request edip verileri bu yollar mysql'e yollar.
2. Evet sunucu üzerinde node.js çalışıyor olması gerekir.
3. Angular daha çok canlı verilerin işlendiği sistemlerde kullanılır, örneğin bir borsa uygulamanız var diyelim Jquery ile sürekli veri çekmek yerine Angular arkada veri tabanına erişip sonucu client'a postalamak için kullanılır bir de socket kavramı vardır ki onu da ayrıca bilmenizde fayda var.
Hocam çok eksiğiniz var ne yazık ki. Ben yine kısaca bahsedeyim ama okuyup temelleri öğrenmeye çalışın siz yine.
1- Normalde PHP yazdığınızda, yazdığınız PHP kodu html sayfasını oluşturup sunucudan tarayıcıya gönderir. Tarayıcı da ekrana basar. Kullanıcı her sayfa değiştiğinde sunucu yeni bir html dosyası oluşturup tarayıcıya tekrar gönderir.
SPA'lerde sunucu tarafında bir şey olmaz, sunucu html/css/js kodlarını tek seferde browser'a gönderir. Daha sonra sunucudan bir şey almanız gerekirse AJAX ile sunucuya istek atar, genellikle JSON alırsınız. SPA bu yeni gelen bilgiye göre ekranda basılı olan sayfayı değiştirir, ama html/css/js tekrardan sunucudan gelmez. (Bi de SSR diye bişey var, ama o biraz daha farklı).
2- SPA'ler için herhangi bir sunucu kurmanıza gerek yok. Kodu derledikten sonra static bir şekilde serve edebilirsiniz. Ama kodu derlemek için node.js lazım.
3- Website için kullanılıyor. Hem de çok. Son 5 yılda yapılmış, belli bir boyutun üzerindeki çoğu site muhtelemen SPA'dir.
1. angular istemci tarafinda calisan javascript kodu icin kullanilan framework. node.js ise sunucu tarafinda calisan kod icin kullanilan bir javascript calisma ortami. yani sunucu tarafinda api icin node.js veya php kullanabilirsin. ikisini kullanmak icin bir neden yok, cunku biri digerinin alternatifi. yani databasee veri yazmak veya okumak icin php de kullanabilirsin, node.js de.
2. eger server tarafta yani api tarafta node.js calisacak ise apache yerine node.js kurman ve uzerinde express paketi calismasi gerekir. eger php calisacak ise elbette apache gerekir.
3. angular klasik yontemle yazilan front-end kodu yani html, css, javascript, ve jquery yerine alternatif bir javascript frameworku. jquery de bir veri cektiginde bu veriyi html uzerindeki dom elemanlarini degistirerek ekranda goruntulerin. ama angular bunu otomatik olarak yapar.
gunumuzde angular ile ilgili kullanilan en populer cozum "mean" olarak adlandirilan cozum.
M - Mongodb - Database
E- Express - Sunucu tarafi api icin kullanilan bir node.js paketi
A - Angular - Istemci yani front-end tarafta kullanilan javascript framework
N - Node.js - Sunucu tarafinda javascript kodunun calismasi icin gerekli calisma ortami.