Ekibimiz aslen Javascript konusunda minimum uzmanlığa sahip çoğunlukla sunucu tarafı geliştiricilerden oluşuyordu. ASP.NET'te MVC'deki denetleyiciler aracılığıyla kodun arkasında veya son zamanlarda çok sayıda UI mantığı yazıyorduk.
Kısa bir süre önce 2 üst düzey müşteri tarafı geliştiricisi ekibimize katıldı. HTMl / CSS / Javascript'te daha önce sunucu tarafı kodu ve sunucu tarafı web kontrolleri ile yapabileceğimiz hemen hemen her şeyi yapabilirler:
- Denetimleri göster / gizle
- Doğrulama yap
- AJAX yenilemesini denetleme
Bu yüzden, iş mantığımızın etrafında, Amazon Yerine Getirme API'sı gibi yüksek düzeyli bir API oluşturmanın daha verimli olacağını düşünmeye başladım: http://docs.amazonwebservices.com/fws/latest/APIReference/ , böylece istemci yan geliştiriciler kullanıcı arayüzünü tamamen ele alırken, sunucu tarafı geliştiriciler yalnızca iş mantığına odaklanırdı.
Yani sipariş sistemi için aşağıdaki gibi üst düzey bir API olurdu:
OrderService.asmx
CreateOrderResponse CreateOrder(CreateOrderRequest)
AddOrderItem
AddPayment
-
SubmitPayment
-
GetOrderByID
FindOrdersByCriteria
...
API'ye JSON / REST erişimi olacaktır, bu nedenle istemci tarafı kullanıcı arayüzünden tüketmek kolay olacaktır. Bu API'yı hem dahili kullanıcı arayüzü geliştirme hem de 3. taraflar için kendi uygulamalarını oluşturmak amacıyla kullanabiliriz.
Javascript'teki ilerlemeler ve iyi istemci tarafı geliştiricilerinin kullanılabilirliği ile, kod arkasından / kontrolörlerden kurtulmak ve sadece istemci tarafı geliştiricilerinin tüketebileceği yüksek seviyeli API'ler (ala Amazon) geliştirmeye konsantre olmak için iyi bir zaman mı?