Pouvons-nous utiliser Ruby on rails pour développer une application mobile?

puisque les rails utilisent l'architecture MVC. Je me demandais si nous pouvions utiliser les Rails pour développer une application mobile ou n'importe quelle application web.

Sur MVC le 'M' et le 'C' ne changeront pas pour développer l'application mobile, n'est-ce pas?

Je veux dire que les models et les controllers resteront le serveur web.

Seule la partie view doit être modifiée de telle sorte que , istead utilise html.fichiers erb je veux java ou android sdk ou autre, pour fournir L'interface utilisateur pour l'utilisateur mobile.

Peut certains m'éclairer sur ce point de vue. J'ai aussi entendu parler de Jrbuy est - ce qu'il entre en jeu pour notre exigence de développement d'application mobile. ?

30
demandé sur Hemanth 2010-11-02 10:14:21

6 réponses

La réponse à cette question va dépendre de la façon dont vous souhaitez déployer cette application. Voulez-vous qu'il tourne entièrement sur le téléphone ou peut-elle être une application web déguisé comme un iphone/android app?

pour la solution d'application native, je vérifierais le Cadre De Rhodes. Ce n'est pas RoR mais vous verrez que c'est un cadre MVC qui se sent similaire. Cela vous permettra de créer des applications natives iphone/android en utilisant Ruby.

pour la 2e option, application web déguisée en l'application mobile, je le recommande Sencha Touch. Sencha a fait un travail incroyable imitant l'apparence des applications natives iphone/android avec leur bibliothèque Javascript. Avec cette solution, il serait tout comme toute autre application web bien qu'il est ciblé pour android et iphone via son UI.

23
répondu rwilliams 2010-11-02 12:18:28

j'ai créé un exemple rails / braise.js App qui est exportée avec Phonegap. Il utilise l'architecture MVC habituelle D'un rail et D'un Ember.js App. Peut-être que vous le trouverez utile. Il implémente également l'authentification par token basée sur ember-auth et plusieurs stratégies de OAuth.

actuellement dans la branche de devel:https://github.com/joscas/base_app/tree/devel

Heroku déployé: https://starter-app-staging.herokuapp.com (la version de bureau)

exportée avec phonegap-rails gem (dont je suis aussi l'auteur) pour les actifs, fixez les chemins, etc.

5
répondu joscas 2013-05-03 22:08:43

Absolument OUI!

Ruby on Rails juste un backend tech, est le même que ce que vous comptez faire pour le navigateur. Il ya seulement deux choses que vous devez considérer à propos de l'application mobile. Tout d'abord, la taille du contenu du navigateur mobile, car vous devez ajuster votre mise en page en fonction de la taille. Il y a une balise HTML meta appelée viewport qui peut vous aider.

Ex.

ce script indiquera au navigateur de l'utilisateur que le contenu doit correspondre à la devise size, initial-scale définit le taux de viewport et maximum-scale définit combien de fois cette page peut être mise à l'échelle, et user-scalble=0 signifie que l'utilisateur ne peut pas mettre à l'échelle la page. Pour en savoir plus sur viewport, vous pouvez consulter le doc de Mozilla.

l'autre chose que vous devez considérer est les techs HTML5, mais en fait ce ne sont pas des problèmes lorsque vous utilisez jQuery mobile. Je vous recommande de vérifier leurs docs. C'est très utile et clair pour tout le monde.

4
répondu Ravi Kant 2014-02-06 12:22:04

au système rubyonrails est cadre d'application de web - il est en cours d'exécution sur le serveur et l'utilisateur observateur le résultat de l'application construite sur au système rubyonrails à l'intérieur du navigateur(ou Browser), malgré le fait que vous pouvez traiter sur le serveur juste "M" de "MVC", et de mettre en œuvre "V" et "C" complètement à côté client( navigateur mobile).

en théorie, vous pouvez déployer complètement L'application RubyOnRails côté client (même le serveur RubyOnRails et etc), mais il sera assez cher et dur, mais il est pourrait pas besoin d'être dans tout projet rationnel.

en supposant que: Il y a deux façons de choisir:

  1. organiser L'application RubyonRails sur le serveur (process there Model), et traiter "V" et "C" du côté du client avec n'importe quelle bibliothèque JS appropriée.
  2. vous pouvez développer Ruby (pas RubyOnRails application) - au moins, il est possible de développer pour Android avec JRuby.
1
répondu Sergey 2010-11-03 11:38:07

Oui, vous pouvez . Votre vue peut être une page web/Application android/ ios comme vue.

1
répondu Priyanka Chabbi 2015-06-11 12:43:09

vous pouvez essayer jQuery Mobile (qui est toujours en alpha maintenant) si c'est juste une question D'UI. Si vous avez besoin d'une intégration plus étroite avec votre mobile, Je ne pense pas que courir les Rails serait assez efficace.

0
répondu Franck Verrot 2010-11-02 07:45:53