2010-10-02 13 views
6

Quiero aprender un nuevo lenguaje de programación y desarrollar para la plataforma Android.¿Es Scala para mí? (Desarrollador C# con enfoque en estilo funcional/OOP)

Soy un desarrollador C#/F # a tiempo completo y también uso C# de la manera más funcional posible (porque me gusta mucho más este paradigma que el viejo estilo skool ", le repito y le explico cómo hacerlo cóctel ", para citar a Microsoft).

Sin embargo, tengo una fuerte aversión por Java, porque en mi opinión es obsoleto y, hm, un dinosaurio - carece exactamente de las características que más me gustan de C# y F #.

Por otro lado, desarrollar para la plataforma Android requiere el uso de JDK.

Entonces, ¿recomendaría Scala? ¿O las cosas JDK no son para mí en absoluto?

+0

Creando una aplicación de Android con cualquier cosa PERO java parece un gran error. Tocar el NDK es una decisión difícil. Mucho menos tocar un idioma que no es compatible con Android/Google directamente. Parece que si no tiene éxito, tu aplicación morirá. –

+4

Sí, pero REALMENTE no me gusta el atraso de Java, este lenguaje no es aceptable para mí, carece de todo lo que me gusta de la programación hoy en día. – FunctionalDude

+1

Android es compatible con bytecode de Java. Tanto Java como Scala compilan directamente a esto. Scala es una elección perfecta. – James

Respuesta

7

Scala oscila exactamente como era de esperar que un lenguaje funcional construido en la JVM. El único inconveniente comparado con C# para mí (no he usado F #) es que los IDE aún no han terminado de refactorizar. No está mal. Estoy usando el complemento de IntelliJ para Scala; eso parece funcionar bastante bien.

Por supuesto, la principal ventaja que obtienes de Scala es poder aprovechar todas las bibliotecas de Java que existen, ya que funcionan (en su mayoría) indistintamente. Eso puede no ser importante para la plataforma Android, donde sus aplicaciones serán pequeñas e independientes, pero para el desarrollo comercial significa que Scala ya es un lenguaje empresarial serio. Aprender Scala le dará más oportunidades de empleo en el futuro. Definitivamente recomendaría Scala.

Uno de mis grandes clientes financieros lo está utilizando como su lenguaje del lado del servidor y funciona muy bien. Hay algunos choques interesantes entre, por ejemplo, las listas de Scala y Java, los booleanos de Scala y Java, todos bien documentados, pero por lo demás es sencillo.

¡Buena suerte!

4

Una alternativa al uso de Scala podría ser el próximo MonoDroid, un puerto del tiempo de ejecución Mono para Android. Lamentablemente, aún no se ha completado y costará aproximadamente $ 400.

Recomiendo examinar en scala si desarrolla una nueva aplicación para android y solo usa monodroid si desea crear un puerto de una aplicación de .NET existente.

Cuestiones relacionadas