2013-06-12 22 views
5

Derby'nin ilgisini çektim ve dün gece belgelerini okurken geçirdim. Şu anki mimari düşüncelerim, ilgili zengin istemci uygulaması tarafından veya API'ye erişimi olan herhangi biri tarafından kullanılan RESTful API oluşturulmasına yöneliktir.RESTful API'lı Derby

Derby, sadece hıza odaklandığından değil, web'in (sayfalarla eşleşen URL'lerle) olması gerektiği gibi çalıştığından dolayı beni etkiliyor. Ancak, bu günlerde bir ürüne uyan bir mobil uygulamaya sahip olmak için, hem mobil hem de tarayıcı alanı için bir tane geliştirmek istiyorsa bir API'ye sahip olmak gerektiği görülüyor.

Soruma iki yönlü.

  1. esas bir API adaptörü yazma, bir API ile arabirim ve mongoadapter o değiş tokuş etmek için kullanılabilen Derby olabilir. Bağdaştırıcıya bakmadım, ancak dokümanlar bir bağdaştırıcı yazmanın zor olmadığını ima ediyor. Alternatif olarak derby, json için üstbilgi isterse, API çağrısına bir json cevabı verebilir. Böylelikle web API'sı ile birlikte bir API olarak rol oynayabilir. Derbi bir bütün olarak bir uygulama olarak görülmeli ve diğer tüm uygulamalar için (mobil olarak) hiç kullanılmamalıdır. Yani bir tarayıcı ve mobil uygulama arasındaki ortak faktör, API değil, veritabanı olacaktır. API'yi ortak bir faktör olarak kullanmamanın olumsuz tarafı, özelliklerin uygulamalarda tutarlı olmayabileceği (özelliklerin miktarında olduğu gibi değil, diğeri de yanlış olabilir) olabilir.

Derby'yi bir sonraki projemizde kullanmayı çok isterim, ancak bu iş için bir araç olup olmadığı konusunda biraz açıklığa ihtiyacım var.

+0

+1 Bunu yanıtlamayı çok isterim. Derby'yi mevcut bir API ile entegre etmek istediğim # 1 ile daha çok ilgileniyorum. – Craig

+0

+1 burada da - oldukça ilgileniyor. –

cevap

1
  1. Sana yazabilir düşünüyorum (Bu arada proje büyük bir web uygulaması olabilir, ancak mobil entegrasyon olması gerekir edecek. Bir API olması da büyük bir fikir olabilir ama onun kullanışlılığı daha emin değilim olabilir) derbi'nin api-app ile iletişim kurması için (veriyi gerçekte saklar), ancak bu adaptörün önceden tanımlanmış yöntemleri olacaktır ve api'nizi yansıtmayacaktır. Bu yüzden iş mantığı muhtemelen çoğaltılacak (derbi uygulaması ve api uygulaması) ve bu çözümden çok kazanamayacaksınız.

  2. Derbi'yi api-app olarak kullanmanızı tavsiye ederim. Sürüm 0.6'dan (yakında geliyor), sunucu tarafı olmadan istemci tarafı derbi uygulamasını kullanabilirsiniz; bu, örneğin telefon konuşmasında kullanabileceğiniz anlamına gelir. Ayrıca derby, share.js'ye dayalı uyuşmazlık çözümü ile yerleşik istemci senkronizasyonuna sahiptir. Bunu "kutudan" web ve phonegap uygulamaları için kullanabilirsiniz, ancak yerel mobil uygulamalar için bunu kullanmak için share.js istemcileri yazmalısınız. Ayrıca, share.js'de yerleşik dinlenme api vardır veya api'nizi ekspres yollara göre kolayca uygulayabilirsiniz. Yani derby api, web, phonegap uygulamaları ve mobil uygulamalar için iyi bir seçimdir.