Search code examples
google-app-enginedesign-patternsarchitectural-patterns

How to build a cloud application and keep portability intact?


Please check the answer and comments of my previous question in order to get a better understanding of my situation. If I use Google DataStore on AppEngine, my application will be tightly coupled and hence loose portability.

I'm working on Android and will be using backend which will reside in the cloud. I need client-cloud communication. How do I build an application maintaining portability. What design patterns, architectural patterns should I be using?

Should I use a broker pattern? I'm perplexed.


Solution

  • In order to maintain portability for my application, I've chosen Restlet, which offers Restful web apis, over endpoints. Restlet would help me to communicate between server and client.

    Moreover, it would not get my application locked in to a particular vendor.