java - opiniones - Cualquiera que use Django en la "Empresa"
ruby on rails opiniones (7)
Sé que la palabra "empresa" hace que algunas personas se desorienten, pero tengo curiosidad por saber si alguien tiene experiencia en la creación de aplicaciones empresariales, similar a algo como ... Aplicaciones Java EE, ¿cuáles son aplicaciones distribuidas altamente concurrentes con Django? Sé que Java tiene sus propios problemas, pero es visto como THE enterprise framework y creo que es desafortunado.
Algunas personas dicen que Rails es un buen reemplazo para Java EE, pero ¿qué pasa con Django? ¿Alguien lo ha usado alguna vez en este contexto? Solo ves sitios web bastante estándar en djangosites.org y parece que es capaz de mucho más. Estoy planeando eliminar algunos de nuestros sistemas antiguos que están escritos principalmente en ASP.NET y algo de Java para algo que sea más fácil de mantener. Comencé a usar Django para algunas otras aplicaciones y me parece fantástico para lo que lo uso para (Noticias corporativas, intranet, etc.) internamente, pero ¿qué pasa con algo como ... un sistema de cuentas por cobrar, un sistema de facturación, etc.? odiaría ver un marco como este encasillado en una categoría que no necesita ser. Parece que se usa para redes sociales / redes, sitios con mucho contenido, no tanto procesamiento de datos, etc. Siento que tiene todos los elementos necesarios para comenzar este camino. Alguien tiene alguna idea?
¿Es esto lo que estás buscando?
http://code.djangoproject.com/wiki/DjangoSuccessStories
¿O estás buscando esta lista? http://www.djangosites.org/
Aquí están los sitios de Django potenciados en orden de clasificación: http://www.djangosites.org/highest-rated/
¿Qué tal los sitios de Django enfocados en "negocios": http://www.djangosites.org/tag/business/ es suficiente para "Enterprise"?
Hacemos un procesamiento econométrico de datos con Django. Transacciones de alto volumen. ¿Es suficiente esa "empresa"?
Mi compañía usa Python / Django como base para nuestra plataforma Intramas. Una plataforma de aplicaciones web de grado empresarial que se implementa en una docena de grandes clientes.
Las funciones incorporadas incluyen administración de contactos central, generador de documentos, capas de seguridad adicionales, interfaz gráfica de usuario predeterminada para un diseño de aplicación rápido (¡sin problemas con la interfaz de administración de Django!).
En general, estamos muy complacidos con Django como base para nuestro desarrollo, es muy extensible y el ciclo de lanzamiento produce un código sólido (actualizamos a menudo).
Si bien nuestro sitio (http://www.sinax.be) está en holandés y no es muy extenso en este momento, siempre puede contactarme para obtener más información.
Mi compañía utiliza Django para al menos seis empresas de gran escala como mercedes, adidas. a menudo usamos el contenedor Jython. Las ventajas son
- costo de desarrollo reducido en comparación con Java / C #
- se ejecuta de forma estable mediante wrappers en entornos IIS o Tomcat / Java
- protege nuestro software de imitadores
Por lo tanto, estamos muy satisfechos con Django y lo promocionamos a todos nuestros clientes debido a la ventaja del costo del desarrollo.
Para los sistemas que desea reemplazar, puede encontrar que es deseable usar algo más poderoso que el ORM de Django como SQLAlchemy. No se trata de escalar, pero el hecho es que el ORM de Django dificulta la creación de consultas complejas y, a menudo, lo empuja a hacer en Python lo que debe hacer su RDBMS, cuando no tiene que recurrir a SQL sin formato. Aunque SQLAlchemy tiene una curva de aprendizaje más pronunciada, tiene más características y se adapta mejor a las operaciones de bases de datos complejas. Sin duda, vale la pena dedicarle tiempo a echarle un vistazo antes de decidirse por una pila web para construir.
Probablemente esto sea menos relevante para sus preguntas, pero todas las funcionalidades en Django también son provistas por otras bibliotecas que considero superiores: Jinja2 para plantillas (tiene la misma sintaxis que las plantillas de Django sin el lío que es el sistema de etiquetas de plantilla y mejor) rendimiento), WTForms para formularios y modelos, Babel para i18n (con muchas características no presentes en la propia biblioteca i18n de Django) y Werkzeug para proporcionar una interfaz WSGI completa con enrutamiento de URL.
Sí, Django se usa en el "mundo empresarial". La buena descripción de los pros, contras y los esfuerzos de desarrollo relacionados se puede encontrar aquí:
http://groups.google.com/group/django-developers/browse_thread/thread/c89e028a536514d3
Uno de los mayores inconvenientes en django es que, aunque en teoría el concepto de aplicaciones es autónomo, suena bien, en la práctica no funciona tan bien; incluso si encuentra alguna aplicación que proporcione la funcionalidad que necesita, no siempre es fácil conectarla y ejecutarla, siempre tendrá que editarla / piratearla.
La evaluación de django como una plataforma central en mi trabajo para desarrollar aplicaciones conectables dio lugar a algunas barricadas:
ORM - sí, es genial - pero es muy específico y adaptado. Lo he usado cuando necesito un procesamiento rápido de datos, pero aparte de eso, necesitas sumergirte en algo apropiado como SQLAlchemy. Una cosa que no podemos hacer fácilmente es obtener muestras aleatorias. Esto se convirtió en un problema para nosotros en un pequeño conjunto de datos (538,000+ filas aprox.) Con postgres.
Sistema de plantillas: una vez más, muy específico para las aplicaciones de estilo django. No hay un concepto real de componentes de tema conectables a menos que lo crezca usted mismo; y esto significa desarrollar cosas que ya están provistas por otras plataformas.
No es realmente un punto en contra de django per-se, pero la falta de un lugar central para proporcionar servicios comunes resultó ser un gran problema para nosotros. Por ejemplo, ningún proveedor de autenticación central al que podamos conectarnos, ninguna forma abstracta de proporcionar credenciales de datos (separación de roles). Entonces cuando movemos cosas a servidores de producción; las credenciales de la base de datos no se pueden editar en el servidor (como en el caso de Java) y los chicos de DB tienen que meterse con mi código base.
Todas estas cosas me han llevado a considerar los servidores de portal Java como mi "plataforma" y específicamente como Liferay, ya que tiene soporte para Python.
Te sugiero que veas el panorama general antes de comprometerte con django. Me encanta el framework, y lo uso todo el tiempo en proyectos puntuales, pero como plataforma central para desarrollar todo lo que podamos necesitar, django no es la respuesta para nosotros.
Ahora he delegado django para proyectos independientes, como algunos mini sitios específicos para un departamento. Si necesitamos usar Python para otra cosa, ahora evalúo Pyramid como su más conectable. Para cualquier cosa que necesite integración más allá de nuestro departamento, miro a Java.
Si todo eso falla, solo entonces iremos a .NET.
EDITAR Eso fue hace varios años. Desde entonces, el portal se cerró y tal vez se reabrió. No tengo idea de lo que es su estado. Pero estaba usando Django en algún punto (fuente: apliqué allí en un punto).
http://grono.net/ es un equivalente polaco de Facebook y es utilizado por un buen número de personas (en algún momento fue de unos pocos millones, ahora es menos, debido a la popularidad de FB). Funciona en Django distribuido.