2009-07-26 10 views
10

Soy un desarrollador de .Net/SQL Server a través de mi trabajo diurno y, por otro lado, realizo un desarrollo objetivo C para el iPhone. Me gustaría desarrollar un servicio web y dado que dreamhost admite mySql, python, ruby ​​on rails y PHP5, me gustaría crearlo utilizando uno de esos idiomas. Si no tuvieras experiencia en Python, Ruby on Rails o PHP, ¿con qué irías y por qué? El servicio básicamente toma una solicitud y habla con una base de datos MySql.Servicio web: PHP o Ruby on Rails o Python?

Nota: Estaba planeando usar el protocolo SOAP .. aunque estoy abierto a sugerencias ya que tengo un borrón y cuenta nueva con estos idiomas.

+0

Esto excluye a las personas que solo conocen 1 idioma, porque obviamente serían parciales. –

+0

De acuerdo. Sin exclusiones, pero tal vez tome nota de cuál de los tres (python, ruby ​​on rails, php) conoce. – Codezy

+0

Sí, solo conocer a uno de ellos definitivamente me influyó. – chaos

Respuesta

11

Ruby-on-rails, Python y PHP serían excelentes opciones para desarrollar un servicio web. Todos los idiomas son capaces (con Ruby siendo el lenguaje en el que está escrito Ruby on Rails), tienen marcos fuertes si eso es lo que te gusta (Django es un buen ejemplo de Python, y algo como Drupal o CakePHP son buenos ejemplos de PHP) y puede jugar muy bien con MySql.

Yo diría que dependería principalmente de su experiencia pasada y con qué se sentiría más cómodo. Asumiendo que está desarrollando C# en .NET y tiene experiencia con Objective-C PHP puede ser una buena opción, ya que sin duda es de la familia C de idiomas. Entonces la sintaxis puede ser más familiar y un poco más fácil de tratar.

Soy un desarrollador de PHP, así que le daré ese sesgo y dejaré que otros desarrolladores con más conocimiento también den el suyo. PHP está estrechamente integrado con Apache, lo que puede hacer que algunas de las tareas más mundanas que tendría que manejar con los demás sean un poco más triviales (aunque cuando se trabaja con un marco, generalmente se eliminan). El PHP documentation es inigualable y es un gran recurso para levantarse y ponerse en marcha fácilmente. Tiene una velocidad decente y existen buenos mecanismos de almacenamiento en caché para obtener un mayor rendimiento. Sé que comenzar y ejecutar PHP en Dreamhost es trivial. No lo he hecho en los otros casos, aunque no me sorprendería si también fueran tan fáciles.

Sugiero profundizar un poco más en la documentación y los marcos para cada idioma para saber qué es lo que más le conviene.

2

He desarrollado en Python y PHP y mi preferencia personal sería Python.

Django es un framework ligero, fácil de entender y ligero para Python. Django Site

Si fue por la ruta de PHP, recomendaría Kohana. Kohana Site

+1

No entiendo cómo se relaciona esta respuesta con el problema en cuestión (re: servicio web) – Randell

0

Esta es una pregunta extremadamente subjetiva, e incluso si nos dio los detalles de su servicio web, podemos discutir acerca de la mejor opción todo el día.

Soy un desarrollador de PHP, por lo que podría lanzar un servicio web básico sin problemas. Hay lots de simple PHP frameworks disponible que manejaría eso muy bien.

Dicho esto, Python y Django le brindan una excelente funcionalidad lista para usar, y está en mi lista de cosas para aprender. Podrías lograr algo bastante rápido con eso.

6

La respuesta corta es que iría con PHP.

Tengo experiencia en las dos opciones: PHP, Ruby con Ruby on Rails.Sin embargo, si no tuviera experiencia y estuviera buscando establecer y crear un servicio web que en gran medida solo interactúe con una base de datos y lo quisiera hacer este fin de semana, elegiría PHP. Si no tuviera experiencia con ninguno de los idiomas anteriores y deseara realizar el proyecto en un par de semanas, elegiría los rieles. Personalmente tengo mucha menos experiencia con Python y Django, así que realmente no puedo comentar.

Ruby con Ruby on Rails: He estado trabajando con Ruby y Ruby on Rails desde hace varios años. Anteriormente tenía experiencia en Java (que es aproximadamente análoga a su experiencia en .Net). La transición a los raíles me pareció un poco accidentada. Quería saltar directamente y empezar a entender cómo funcionan los rieles y cómo crear una aplicación web, pero sin una comprensión del rubí esto era difícil. Hay muchos ejemplos que le ayudarán a crear una aplicación rápidamente, pero a menudo la rapidez se produce a expensas de la comprensión. Para construir una aplicación web de rieles sólidos, necesitas una buena comprensión del rubí y de los marcos de los rieles. Rails es fantástico, pero para construir algo que entiendas y ponerlo en funcionamiento rápidamente puede que no sea tu mejor opción. Además, el alojamiento de rieles ha recorrido un largo camino (se nota porque estamos empezando a ver que muchos hosts lo ofrecen), pero todavía hay algunos baches.

PHP: PHP es fantástico para hacer que algo funcione rápidamente. Puede cargar archivos e inmediatamente ver si su resultado funciona. Si mantiene limpia la configuración de su base de datos (y parece que lo hará, porque trabaja con bases de datos todo el día), PHP no debería ser tan malo. Buscaría en Object Relational Mapper para ayudar a mantener su PHP aún más limpio, he escuchado buenas opiniones sobre Doctorine.

Python: Me imagino que probablemente usaría Django con Python. Debido a esto, es probable que te encuentres con los mismos obstáculos que con ruby ​​+ ruby ​​on rails.

Si desea comenzar a aprender Ruby on Rails, le recomiendo que consulte this thread en stackoverflow.

Finalmente, si desea trabajar con un marco PHP, hay un gran hilo en ese here on stackoverflow.

+0

Gracias, muy buena idea. – Codezy

+0

La curva de aprendizaje de Django no es tan pronunciada. El documento es excelente. –

+0

El enlace del marco de PHP está muerto, así que traté de encontrar una solución adecuada. Editaré si encuentro uno mejor. http://www.webhostingreviewboards.com/development/top-ten-best-php-frameworks-for-2014/ – AppsIntheParkNYC

1

La primera programación que hice fue con PHP, y definitivamente es muy fácil trabajar con PHP en Dreamhost (uso Dreamhost para mi blog basado en PHP y para el alojamiento de proyectos de Ruby on Rails). Ruby on Rails también es bastante fácil de usar en Dreamhost, ahora que han comenzado a usar Passenger. Aprendí Ruby and Ruby on Rails varios años después de sentirme cómodo en PHP y prefiero PHP porque se siente mucho más limpio y me encanta el patrón Model View Controller para separar el código y el contenido. Traté de aprender Django después de eso, pero me encontré frustrado porque el significado de "ver" era diferente en Django que en Rails/MVC, así que no llegué muy lejos.

Si lo está haciendo rápido y sucio, puede ir con PHP. Puede buscar varios marcos para PHP, como CakePHP o Symfony, para un desarrollo más limpio y organizado. Si estás dispuesto a pasar más tiempo aprendiendo (primero para el lenguaje Ruby, luego para el framework Ruby on Rails), puedes ir con Ruby on Rails. Realmente disfruto el desarrollo de Rails, pero había una curva de aprendizaje ya que aprendí Ruby y Rails al mismo tiempo. Hay un montón de information por ahí sobre la implementación de aplicaciones de Rails en Dreamhost.