[Programación] Desarrollo de aplicaciones móviles: Frameworks, IDEs y Diseñadores

Bueno, creo que este es mi primer post "serio" en EOL, he leído las normas y los hilos recomendados antes de postear para ver que no incluyo nada que ya esté dicho. Básicamente es aglutinar aquí toda mi información sobre el desarrollo de aplicaciones para teléfonos móviles.

Tipos de aplicaciones:

- Aplicaciones nativas: Son aplicaciones hechas en un lenguaje para una plataforma específica. A la hora de programar los costes de desarrollo son muy altos ya que necesitas programadores para todas las plataformas para las que vas a desarrollar. La experiencia de usuario es óptima, ya que aprovecha al 100% la potencia de la plataforma y la totalidad de los sensores del teléfono.

- Aplicaciones Web: Como muchos sabrán ya html5 define algo más que las páginas web: las aplicaciones web. Se puede desarrollar para todas las plataformas con muchísima más sencillez, ya que depende de cómo de bien implementado tenga el navegador de la plataforma los susodichos estándares web. Es el menos costoso y el más rápido de desarrollar y mantener, pero son aplicaciones que tienen una mala experiencia de usuario (hablando de cara a los sensores del teléfono) y son aplicaciones difíciles de monetizar. Una posibilidad puede ser colocar anuncios en la aplicación web.

- Aplicaciones Híbridas: Son un paso intermedio entre nativo y web. Normalmente el desarrollo es completamente HTML/CSS/JS y al final del desarrollo se le incluye un mecanismo nativo para mostrar la aplicación (un webView por ejemplo) y así tener acceso a algunos sensores del teléfono.

-----------------------------------------------------------------------

Frameworks

-----------------------------------------------------------------------


- Aplicaciones web:
-------------------
Appcelerator Titanium (HTML5 - CSS3 - JS - PHP)
Sencha Touch (HTML5 - CSS3 - JS)
KendoUI (HTML5 - CSS3 - JS)
JQuery (JS)
JQueryMobile (JS)
Adobe Flex (Flash/ActionScript)
JoHTML (HTML5 - CSS3 - JS)
EnyoJS (HTML5 - CSS3 - JS - AJAX)

- Aplicaciones híbridas:
----------------------
RhoMobile (Ruby)
TapLynx (?)
MonoCross (C#, .NET)
Unify (?)

- Aplicaciones nativas:
----------------------
Appcelerator Titanium (HTML5 - CSS3 - JS) (iOS/Android/Windows 8)*1
MonoCross (C#, .NET) (iOS/Android/Windows Phone)
UnityMobile (?) (iOS/Android)
MonoTouch (C#, .NET) (iOS)
MonoDroid (C#, .NET) (Android)
PhoneGap (HTML5 - CSS3 - JS) (iOS/Android/Windows Phone)
MoSync (HTML5 - CSS3 - JS - C/C++) (iOS/Android/Windows Phone)
Android SDK (Java) (Android)
Android NDK (C/C++) (Android)
iOS SDK (Objetive-C) (iOS)
Windows Phone SDK 7.1.1 (C#) (Windows Phone 7/7.1/8 (Retrocompatibilidad de aplicaciones anunciada))
RubyMotion (Ruby) (iOS) - dnL7up

- Otros/Pendientes de clasificación:
----------------------------------
LungoJS (HTML5 - CSS3 - JS)
CoronaSDK (ActionScript)

-----------------------------------------------------------------------

IDEs y diseñadores

-----------------------------------------------------------------------


- IDE:
------
Intellij WebStorm (HTML - CSS - JS) (Windows/Mac/Linux) (Pago)
Intellij Idea (Java - XML) (Windows/Mac/Linux) (Versión comunitaria/Pago)
Eclipse (Casi cualquier lenguaje) (Windows/Mac/Linux) (Gratuito)
Aptana Studio (Principalmente desarrollo web) (Windows/Mac/Linux) (Gratuito)
Appcelerator Titanium Studio (HTML - CSS - JS - PHP) (Windows/Mac/Linux) (Gratuito previo registro)
Microsoft Visual Web Developer (.NET - HTML - CSS - JS) (Windows) (Gratuita versión express, Visual Studio completo de pago)
Komodo IDE (HTML - CSS - JS - Otros muchos) (Windows/Mac/Linux) (Pago, Komodo Edit Gratuito, sólo el editor claro...)
MoSync Studio (HTML - CSS - JS - C/C++) (Windows/Mac) (Gratuito)
NetBeans (Java - Web - XML - Otros lenguajes) (Windows/Mac/Linux) - enano007jr

- Diseñador:
------------
Adobe DreamWeaver (Windows/Mac) (Pago)
BlueGriffon (Windows/Mac/Linux) (Gratuito, plugins de pago)
Kompozer (Windows/Mac/Linux) (Gratuito)
BlueFish (?) (Gratuito)
Microsoft Expression Blend (Windows) (Gratuito)

Según vaya pillando nueva información iré ampliando

*1: Recientemente en el JIRA de Appcelerator se ha abierto la sección de Windows 8, por lo que se presupone que están desarrollando su framework para hacer también aplicaciones para Windows 8.

P.D: Mis disculpas por adelantado a los moderadores si he incumplido alguna norma o me he equivocado de sección pero he leído las normas de PC-Generales dos veces y no veo infracción en mi mensaje, obviamente, esa observación final depende sólo de ustedes.

P.D2: A la espera de mediados de septiembre para poder poner en la lista el SDK de Windows Phone 8

P.D: Empiezo a agregar enlaces y aportes de los usuarios, en breve veré si puedo disponer de un post con tutoriales de programación en distintas plataformas
Muy buen tema, le echaré un ojo Corona SDK que parece muy interesante.

También me gustaría aportar a RubyMotion un Framework para desarrollar aplicaciones nativas y compiladas para iOS usando el lenguaje de Ruby, y que es compatible con las bibliotecas de cocoa.
Gracias por los aportes, ya he agregado la información al post principal y he puesto algunos enlaces.

Los que no tienen enlaces son porque o no me ha dado tiempo o los enlaces no llevaban a la pagina original del autor del proyecto y podían ser considerados como spam. De esta forma, prefiero perder un par de días pateando poco a poco la red de redes y construirlo todo paso a paso.
3 respuestas