¿En qué está realizado Todoexpertos?

Hola Victor.

Soy usuario "veterano" de todoexpertos, y he visto la evolución en su interface, soy programador, también, y por eso me gustaría saber ¿qué se ha utilizado para realizar esta última versión de todoexpertos? ... Ya que me resulta realmente atractiva y agradable, y me gustaría saber las herramientas utilizadas para poder adoptarlas en mi desarrollo.

Saludos y gracias.

Respuesta
7

Me alegra que te haya gustado la nueva versión. Hemos trabajado mucho y muy duro para tenerla funcionando lo antes posible.

La infraestructura de Todoexpertos es realmente compleja ya que está estructurada en diferentes capas y distribuida en diferentes servidores para conseguir la escalabilidad y rendimiento que deseamos.

Básicamente es una web ASP .NET MVC que dispone de una Web Api para tramitar las peticiones y de una serie de servicios windows para las tareas en background todo ello comunicado a través de mensajes en Service Bus.

Entrando en detalle sobre la web, que me parece que es lo que preguntas, decirte que hemos usado Bootstrap y Material Design for Bootstrap como framework css para poder tener de forma sencilla una web responsive, que usa grid system y que podemos programar con less.

A nivel javascript, que es la parte en la que más he participado en Todoexpertos, hemos usado KnockoutJS para la mayoría de las MVVM, Flight para los modulos JS y Jasmine para los tests.

Las cajas de textos para preguntar/responder es un TinyMCE totalmente modificado por nosotros también totalmente JS.

El core ya es mucho más complejo ya que está compuesto por varias capas distribuidas en varios servidores para los que se han utilizados diferentes tecnologías, eso sí, todo basado en .NET C# 4.5 y programado en Visual Studio.

Buff!!! Grácias.

Tengo tanta información que no sé por donde empezar ...  No me ha gustado que utilizárais .net, pero bueno, todo lo otro me sirve o servirá, no sé.

Verás tengo 3 webs realizadas, todas "a pelo", con lo básico, o sea, con un IDE como Netbeans programando en php, utilizando claro está, css, javascript, y puntualmente jquery, solo en un par de utilidades (voy incorporando cosas a medida que con lo que tengo no me llega).

Actualmente, diciendolo elegantemente, tengo todo el tiempo que quiero para desarrollar lo que quiera, mientras, hago entrevistas, o veo lo que se pide en las ofertas de trabajo, y en una entrevista, me comentaron que Google utiliza Node y AngularJS, me dijeron que una consecuencia o característica de ello es que Google o  Gmail (no recuerdo cual de los dos me dijeron, aunque supongo que deben funcional "igual") trabajan en una sola pantalla, sin necesidad de ir al servidor más que para lo imprescindible; al ver vuestra web pensé que tal vez utilizaríais alguna de esas herramientas, para así tener un aliciente para utilizar alguna de esas herramientas; pero claro, como se suele decir "cada maestrillo tiene su librillo", y ahora se me plantean dudas, viendo lo bien que ha quedado "todoexpertos".

Gracias.

La plataforma en la que se desarrolle realmente es lo de menos. Hoy por hoy puedes desarrollar una web compleja como esta en Rails, Ruby o como apuntas que hace Google con sus One Page Application, solo con JS... otra cosa es que utilices por debajo (ya que algo vas a tener que hacer de backend) y que patrón de arquitectura.

Nosotros decidimos usar el patrón MVC para las vistas de la web, MVVM para las vistas javascript, WebAPI para la capa de backend expuesta a los distintos clientes y CQRS para el core (todo basado en una arquitectura distribuida).

Puedes implementar estos patrones con la tecnología que quieras. Nosotros usamos .NET por retrocompatibilidad con la versión anterior y por el knowhow de años de experiencia.

Si es por aprender una tecnología nueva si que te recomendaría que le echaras un ojo a Angular ya que es un framework JS para MVC/MVVM muy extendido, completo, moderno y muy de moda (aunque vayan a sacar la versión 2 en breve que, dicen, que se parece poco o nada a la anterior

La pregunta no admite más respuestas

Más respuestas relacionadas