Azure Mobile Services JS Backend - Data

Azure Mobile Services yaratırken JS backend seçtik ve devam ediyoruz. Bu yazıda mobile uygulamadan Azure'a nasıl veri gönderilir ve bu veriler nasıl bir yapıda kayıt edilirden bahsedeceğim.

   

SQL veya daha farklı veritabanı yapıları bilen arkadaşlar lütfen bu yazıyı okumaya başlarken tüm bilgilerini unutsunlar çünkü hiç bir SQL veya benzer bir bilgiye ihtiyaç duymacağız.

   

Tablo Oluşturmak

   

İlk olarak daha önce yarattığımız mobile servisimizin içine giriyoruz ve yukarıdaki tab'lardan DATA sekmesine tıklıyoruz. Açılan sayfada hiç tablomuz olmadığını söylüyor ve "Add a table"'a tıklayarak yeni bir tablo oluşturuyoruz. Bu tablo için karşımıza aşağıdaki popup çıkıyor.

   

Create a new table

   

Tablomuza bir isim veriyoruz ve ardından aşağıdaki ayarları değiştirmeden sağ altta bulunan butona basarak tablomuzu oluşturuyoruz. Peki bu ayarlar ne işe yarar? Gördüğünüz gibi 4 farklı permission (yetki) mevcut bunlar ile tablodu operation'lari kimin yapabileceğine karar veriyoruz bydefault tüm ayarlar "Anybody with the Application Key" olarak geliyor yani Mobile Service URL ve Key'ini bilen kişiler veya client'lar sadece bu işlemleri yapabilir. Eğer sadece URL'I bilen herkes bu işlemi yapsın isterseniz bunu değiştirmeniz mümkün. Buradaki tüm seçenekler aşağıda beliritilmiştir:

  1. Anybody with the Application Key: URL ve Key'leri bilen tüm client'lar işlem yapabilir.
  2. Only Authenticated Users: Sadece Mobile Service aracılığı ile login olmuş(twitter, google, facebook, ms account vb.) kullanıcılar işlem yapabilir. Bu işlem için URL, Key ve Login gereklidir.
  3. Only Scripts and Admins: Bu seçenek ile sadece server tarafında çalışan scriptler ve admin kullanıcılar işlem yapabilir.

   

Enable Soft Delete açıklamalı checkbox ile SoftDelete aktif olup olmayacağına karar veriyorz. (SoftDelete: datayı sildiğiniz aslında tablodan silinmez ancak ileriki sorgularda karşınıza çıkmaz böylece silinen dataları görebilme imkanına sahip olursunuz.)

   

Ben şimdi Kisiler adında bir tablo yaratacağım ve bu tablo içerisinde Adi, Soyadi, Yasi gibi bilgileri saklayacağım. Yukarıdaki pencereye Kisiler yazıp Ok'e basarak ilerleyebilirsiniz.

   

Kisiler Tablosu

   

Yukarıda gördüğünüz gibi tablo yaratıldı ve artık mobile services tarafındaki işlerimiz bitti. Daha fazla tablo oluşturmak isterseniz aşağı ortada bulunan + butonu ile yeni tablo yaratmanız mümkün.

   

Dikkat ederseniz tabloda hangi kolonların olacağını mobile services'a söylemedik.

   

Insert & Update & Read & Delete işlemleri için diğer yazıları okuyabilirsiniz.

   

   

   

Azure Mobile Services'a Giriş

Giriş

   

Günümüzde en populer konulardan biri olan mobil uygulama geliştirme çok hız gerektiren bir konu. Eğer bir fikriniz var ise bunu hayata geçirmek için aylarınız yıllarınız yok. Çok kısa zamanda bu fikrinizi hayata geçirmeniz gerekiyor. Tabiki her mobile uygulama geliştirmek isteyen kişinin hem mobile uygulama geliştirmeyi hemde backend geliştirmeyi bilmesi çokta mümkün değil en azından ikisi üzerinede uzman sayısı çok fazla yok.

   

Ayrıca bir mobil uygulama geliştirmek istiyorsak, amacımız mobil uygulama geliştirmektir ve sadece mobile uygulamaya konsantre olmamız daha kısa zamanda daha başarılı bir uygulama çıkartmamızı sağlayacaktır. Bu sebeple tüm backend development yükünden kurtulmak ve alt yapı hizmetlerinden kurtulamak için mobile services'I rahatlıkla kullanabiliriz. Mobile Services sayesinde çok kolaylıkla login sistemini kurabilirsiniz, verilerinizi server tarafında saklayabilirsiniz, push notification gönderebilirsiniz, loglama yapabilirsiniz, server tarafında belirlediğini kodları istediğiniz zamanda çalıştırabilirsiniz.

   

Servisler & Mobil Platformlar

   

Azure Mobile Service bir çok içerisinde bir çok servis barındırıyor bunlar;
 

  • Data
  • Api
  • Scheduler
  • Push
  • Identity
  • Logs

   

   

Yukarıdaki tüm hizmetleri mobile services altında kullanmanız mümkün. En önemlisi ise bu servislerin tümünü IOS, Android, Html/Javascript, Xamarin, Windows 8, Windows Phone, PhoneGap platformlarında kullanabilirsiniz. Yani geliştireceğiniz mobil uygulamanın hangi platformda olduğu hiç önemli değil. Ayrıca eğer geliştirdiğiniz platform yukarıdakilerden biri değil ise bile Mobile Services REST API ile internete bağlanabilen her türlü platformdan Mobile Services kullanmak mümkün mesela Raspberry Pi gibi.

   

   

Backend Platform

   

Mobile Services kullanırken karşımıza iki yol çıkıyor. Azure tarafında çalışacak kodları .Net ile mi yoksa JS ile mi yazmak istediğimiz mobile servis'I kullanırken karşımıza çıkacak ilk konu. JS seçersek server tarafında çok çok az kod yazmamız gerekecek ve çok daha hızlı biz şekilde geliştirme yapacağız. .Net backend seçersek biraz özelleştirilmiş bir Web Api yazmamız gerekecek. Ben yeni başlayan arkadaşlar için JS Backend tavsiye ederim. Aslına bakarsanız hangisini seçtiğiniz çok önemli değil aynı işleri ikisiylede yapmanız mümkün.

   

Başlangıç

Management Portal üzerinden sol tarafta bulunan Mobile Services bölümüne geliyoruz ve aşağıda bulunan + butonu ile yeni bir mobile services ekliyoruz. Burada karşımıza bir popup çıkıyor ve bir kaç bilgi istiyor.

   

Create a Mobile Service

   

Mobile Service yaratılırken URL yani mobile service ismi, Database (yukarıda bahsettiğimiz gibi verileri saklamak için), Region (mobile service'in hangi bölgede host edileceği) ve Backend( JavaScript & .Net) bilgilerini girmemizi istiyor. Burada Database seçerken var olan bir database seçebilirisiniz veya yeni bir database yaratabilirsiniz. İsterseniz 20MB ücretsiz bir SQL database oluşturmanız mümkün.

   

Mobile Service Overview

   

Yarattığımız mobile servisin içine girdiğimizde yukarıdaki ekran ile karşılacağız. Burada Gördüğünüz gibi yukarıda farklı servisler için tab'lar mevcut ve açılan ana sayfada platform seçenekleri var. Buradan platformunu seçecek örnek kodları indirebilirsiniz veya bu platform için mobile services nasıl kullanılır öğrenebilirsiniz.

   

Mobile Services'a bağlanmak için bir önceki sayfada girdiğimiz URL ve otomatik oluşan bir key kullanacağız. URL'I zaten biliyoruz (oluşturuken yazdık). Key'leri ise en altta bulunan Manage Keys butoununa basarak görebilirsiniz.

   

Mobile Services 3 fiyat ve performans seçeneğinden oluşmakta. Bunlar Free, Basic, Standart ve bunların arasındaki geçişi yukarıda bulunan Scale tab'Indan yapabilirsiniz. Free adından anlaşıldığı gibi ücretsiz tabiki belli limitleri var. Basic ve Standart'ta siz bu limitleri belirleyebilir ve mobil servisinizdeki yüke göre kod yazmadan otomatik olarak scale etmesini sağlayabilirsiniz.

   

JS Backend ve .Net backend için tüm servisleri ayrı yazılarda inceleyeceğiz.