Sigueme en Twitter
«Anterior | Siguiente»

Wt Framework de desarrollo web en C++

14/08/2007

Wt es un framework de desarrollo web que incluye su propio servidor web, si eres un empedernido desarrollador de C posiblemente te sera muy útil.

Especialmente si eres alguien que no tiene interes alguno en aprender a utilizar lenguajes interpretados que normalmente usamos los mortales (php, ruby, python, etc) o te importa poco lo que signifique DHTML, javascript, CSS, AJAX, ETC. Wt se encarga de la presentación y tu de la funcionalidad y los contenidos.

De los 11 beneficios que menciona el autor, el único que considero 100% válido es el portar viejas aplicaciones de escritorio en C++ a web fácilmente, pero de cualquier manera esta muy interesante el proyecto,

También existen otras opciones, como Tntnet, que es un servidor web que te permite crear templates con código de C++ embebido por medio de tags, tal como lo hace PHP o ASP.

Este es el código, de ejemplo en un simple Hello World con un Botón (clic para verlo funcionando).

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
/*
 * Copyright (C) 2006 Wim Dumon
 */
 
#include <WApplication>
#include <WContainerWidget>
#include <WText>
#include <WPushButton>
 
using namespace Wt;
 
// Este es el punto de entrada para nuevas sesiones
//
// Esta funcion se ejecuta cuando un nuevo usuario navega en la aplicacion,
// y despues que la libreria ha negociado el soporte para el navegador.
// Debe regresar un nuevo objeto WApplication
 
WApplication *createApplication(const WEnvironment& env)
{
  // Instanciando a la aplicacion Wt.
  WApplication *appl = new WApplication(env);
 
  // Estableciendo el titulo de la aplicacion
  appl->setTitle("Hello world!");
 
  // Se pueden agregar Widgets a un padre llamando addWidget()...
  // WApplication::root() es un WContainerWidget que esta asociado con
  // la ventana completa del navegador.
  appl->root()->addWidget(new WText(L"<h1>Hello, World!</h1>"));
 
  // .. o especificando un pariente en la construccion
  WPushButton *Button = new WPushButton(L"Quit", appl->root());
 
  // Escuchar eventos del usuario usando un mecanismo de señales. 
  Button->clicked.connect(SLOT(appl, WApplication::quit));
 
  return appl;
}
 
int main(int argc, char **argv)
{
   return WRun(argc, argv, &createApplication);
}

Prefiero mil veces usar algo para lo que fue hecho originalmente en lugar de complicar las cosas, pero nunca esta de mas saberlo.


Hay 12 comentarios:

  1. 14/08/2007Victor dice:

    Valla, hasta que escribes algo bueno :P

    Muy interesante aplicación ^^

  2. 14/08/2007Lector dice:

    Habra que probarlo, nunca esta de mas :)

    Saludos, buen post!

  3. 15/08/2007pablasso dice:

    @Victor.. pero si todo es bueno :(

  4. 15/08/2007papi mamasan dice:

    coincido con eso de usar las cosas para lo que fueron hechas

  5. 15/08/2007Moy dice:

    ese es un framework para hombres, no mamadas

  6. 15/08/2007pablasso dice:

    Los hombres no utilizan frameworks, ni a C++. Puro C y solo donde sea engorroso utilizar ensamblador.

  7. 16/08/2007Victor dice:

    Pues, los hombres como yo ni a Ensamblador llegamos. Programamos directamente en Binario u_U

    Creo que eso de trabajar las cosas para lo que fueron hechas tal vez es algo arriesgado decirlo. Con C se amplian muchisimo las posibilidades al programar… Se puede interactuar directamente con otro tipo de aplicaciones, y no solo dedicarte a un sitio web que interactúa con un DBMS o con el intérprete y atenerse a sus limitaciones :S

    Pero bueno, yo solo digo :P igual y al rato me arrepiento u_U /puf

  8. 16/08/2007Moy dice:

    Bueno ya, volviendo a la realidad…

    El decir que con C se amplian mucho las posibilidades para programar es cierto. Se amplian tanto, que tendràs buffer overflows, memory leaks, dangling pointers, endianess issues, segfaults etc, no importa que tan bueno seas programando, los tendràs. Si quieres ampliar las posibilidades al programar para Web, la soluciòn no es usar C o C++, mas bien programar una interface en C para poder usar librerias de C desde PHP. El framework que menciona Pablo està bueno, mas por el concepto de abstraer la interface web en una serie de APIs genericos en donde parece que estas programando cualquier interface, no solo web.

  9. 20/08/2007César dice:

    Suena la mar de interesante. Voy a probarlo, que yo también soy de C hasta la muerte, yo creo. ¡Hay que ser hombres, no payasos! XD

    Dicho lo cual, ese ejemplo no es C, es C++, lo cual para mi ya le quita un poco de atractivo… C++ me fastidia casi tanto como Java.

    Dicho todo eso, debo confesar que los dos últimos años me he vuelto extremadamente fan de Ruby. Adicto, podría decirse. Los únicos dos problemas que le encuentro a Ruby son: (1) es lento, y (2) después de usarlo, todo lo demás te empieza a parecer tan burdo y chafa que empiezas a sufrir ¡incluso escribiendo C! (ya no digas PHP… eeew)

    (Aquí cayéndote vía Othaner, por supuesto)

  10. 20/08/2007pablasso dice:

    Calla calla, no se habla mal de php que me da de comer, jeje

    mucho gusto Cesar, saludos a don Othaner

  11. 24/08/2007Michoacano dice:

    El css del codigo tu lo hiciste, o es un plugin de wordpress? se ve lindo.

  12. 24/08/2007pablasso dice:

    es un plugin con el css de Enrique de Metal.ize (usado con su debido permiso claro), malamente yo carezco de todo sentido artistico u_u

Escribe tu comentario:

¿Escribiste código?


  Los mas frikis pueden suscribirse a los comentarios por RSS.