title: Best practices for Android + GWT + Server side + IDE
body: <p>I am developing a Java app with <a href="https://cloud.google.com/appengine/" rel="nofollow noreferrer"><strong><em>Google App Engine</em></strong></a> and <a href="http://www.gwtproject.org/doc/latest/tutorial/RPC.html" rel="nofollow noreferrer"><strong><em>GWT</em></strong></a> (with RPC), using Eclipse and now I would like to start creating Android apps using existing shared code between projects. </p>
  
  <p>I have several questions regarding <strong>design patterns / best practices</strong>:</p>
  
  <ol>
  <li><strong>IDE</strong> - I know now that developing Android apps in Eclipse has been deprecated for some time and is no longer possible (in favor of Android Studio), so what would the best practice be if I need to share code (models, java beans, utility methods) between server side (servlets), GWT and Android client side and to test?</li>
  <li><strong>client-server communication</strong> - for now, I am using GWT-RPC, but I've been meaning to change that. What would a good solution be to call actions on server side and use java beans (generic objects also)? 
  I don't mind using different communication types at the beginning (I can use RPC for GWT at start)</li>
  </ol>
  
  <p>Some tutorials / links or other pointers would be very nice. Thank you!</p>