Generar aplicación PHP que trabaje en modo Desktop

1,102 views
Skip to first unread message

Analyzer

unread,
Jul 16, 2013, 11:59:30 AM7/16/13
to PHP Latinoamérica
Se puede hacer una aplicación tipo Desktop en PHP que trabaje de forma eficiente, sin complicaciones?..

Siempre que investigué el tema, la conclusión era que no.

En estos sagrados tiempos ya es posible?...

Saludos!

Alvaro Lizama

unread,
Jul 16, 2013, 12:02:13 PM7/16/13
to phplatin...@googlegroups.com
NO, por que quieres hacer eso! PHP se hizo "para la web" si en la web trabaja de una forma medio fea imagina en desktop.

--
Alvaro Lizama
http://alvarolizama.net
> --
> Has recibido este mensaje porque estás suscrito al grupo "PHP Latinoamérica" de Grupos de Google.
> Visita este grupo en http://groups.google.com/group/phplatinoamerica.
>
>



Levhita

unread,
Jul 16, 2013, 12:04:13 PM7/16/13
to phplatin...@googlegroups.com

Yo lo he hecho(multiplataforma con gtk) y no lo recomiendo,  php no es multithread así que interfaz se detiene ante cualquier proceso.  Abonando si lo tuyo no es web estas miando fuera de la vasinica en esta lista.

--

Analyzer

unread,
Jul 16, 2013, 12:07:07 PM7/16/13
to PHP Latinoamérica
Gracias Alvaro,

Sabes si Phyton puede hacer eso?..

Estoy buscando un lenguaje que me permita crear Desktop (significa que no dependa para nada de estar en línea).

Algo ideal para:

Tiendas de autoservicio, centros comerciales, etc.
Ferreterías, tintorerías, restaurantes, tiendas de ropa, etc.

Pero que a la vez tenga (como guardadito), el poder de conectarse a la web sin tanto show, preferentemente para hacer uso de web services y eso y regresar a la vida "desconectada" como si nada hubiera sucedido..

¿Existe ese lenguaje que busco?..

Nota. Me dedico más a ese tipo de desarrollos y son lo que abundan en mi zona, de ahi que.. bla bla bla.




Saludos!

Alvaro Lizama

unread,
Jul 16, 2013, 12:15:12 PM7/16/13
to phplatin...@googlegroups.com
Python, Ruby, Javascript, C#, Java todo lenguaje multi propósito puede hacer eso.

--
Alvaro Lizama
http://alvarolizama.net


Analyzer

unread,
Jul 16, 2013, 12:12:37 PM7/16/13
to PHP Latinoamérica
Gracias Levhita,

Con tu comentario comprendo mejor cual es el problema.

Pero no te preocupes por mi "odio a las conexiones caídas".

Solo que esto me ayudará a definir qué herramienta usar en cada caso.

Al fin que en estos sagrados tiempos (web/cloud) ya no se puede ser un profesional con una sola herramienta..

Pregunto solo por la necesidad principal prevalente en mi zona.


Saludos!

Analyzer

unread,
Jul 16, 2013, 12:19:47 PM7/16/13
to PHP Latinoamérica
Alvaro,

De los que mencionas, he usado C#/Vb.net.

Te agradezco el comentario. Me sirve mucho para dejar de preocuparme y seguir aprendiendo la web tranquilamente, sin frustrarme tanto.


Saludos!


Levhita

unread,
Jul 16, 2013, 12:27:39 PM7/16/13
to phplatin...@googlegroups.com
Hay una cosa llamada Visual Basic muy utilizada para ese tipo de
desarrollos. te lo recomiendo.

2013/7/16 Analyzer <thenewin...@gmail.com>:
--
Freedom comes in small packages, usually TCP/IP
http://levhita.net
http://twitter.com/levhita

Analyzer

unread,
Jul 16, 2013, 12:41:49 PM7/16/13
to PHP Latinoamérica
Gracias Levhita,

Ya me lo había recomendado el tio-be-"nancio" y si voy a usar esa cosa para Desktop.


Que por cierto este mes de Julio 2013, el tiobe "nancio" dice que PHP destronó al C#.

Y le sigue precisamente el C# y esa cosa llamada Visual Basic jeje


Saludos!

César Sánchez Toro

unread,
Jul 16, 2013, 12:58:26 PM7/16/13
to phplatin...@googlegroups.com

Yo lo entiendo de esta forma.

Si bien es cierto, PHP es para desarrollar aplicaciones WEB, es acaso “obligatoriamente” que esté en un hosting publicado en internet?

Por supuesto que NO, tu puedes instalar tu pequeño servidor con WAMP y hacer que tus clientes locales ejecuten la aplicación desde ahí, incluso si solo es en una PC.

 

Si te quieres ceñir al concepto de aplicaciones de escritorio, con PHP no puedes generar un .EXE por lo tanto no lo podrás hacer nunca, para eso deberás usar una herramienta para dicho propósito como .NET o el majestuoso hasta el día de hoy VFP.

Pero si quieres rayarte y hacer una aplicación multipropósito, multiplataforma, multi multi y multi de los multis…. Jajaja, entonces debes programar en capas donde la lógica lo metas es un lenguaje .net y la presentación en lo que quieras vender… asp, winform, aplicaciones metro,  es decir, plataforma Microsoft ya que si quieres usar Open Source deberás hacerlo por separado.

 

CESAR ST

Analyzer

unread,
Jul 16, 2013, 1:17:41 PM7/16/13
to PHP Latinoamérica
CST,

Gracias por el comentario. Cada herramienta para cada uso.

Mis opciones ya eran claras desde que iniciamos este grupo el 2 de abril de 2013, como indica este hilo:

Presentación de los compañeros del grupo !


Pero siempre hay que estar abierto a la opinión lógica de otros.

Que tal que alguien me convenza de usar phyton para desktop..

Saludos!

Carlos Miguel FARIAS

unread,
Jul 17, 2013, 10:10:10 AM7/17/13
to phplatin...@googlegroups.com
Con PHP se pueden generar aplicaciones de escritorio.
Que tiene sus bemoles, si es cierto, pero poder se puede.
Para desarrollar para escritorio tienes que conectarte con alguna libreria gráfica como QT o wxWidgets.
Para proteger el código, hay compiladores (de pago) muchos cifradores que se ofrecen son como tapar el sol con el dedo para que no encandile.
Pero si quiero desarrollar para escritorio, con PHP, lo establecería un modelo de intranet.
O sea, es como desarrollar para la web pero sabiendo que correrá en una red LAN.
Entonces, estableces un navegador determinado para todas las máquinas (o al menos el que usaras para acceder a la aplicación).
De esa manera, podes sacar el máximo provecho de las capacidades de ese navegador en cuanto a manejo de interfaz.
Todo la manipulación del DOM lo haces apuntando a ese único navegador (sobre todo si se quiere usar HTML 5).
En general, toda la interrelación entre el navegador y el servidor, se hace inicialmente con una página de entrada, y a partir de allí, todo AJAX.
Todos los formularios consistirán en DIVs que se superponen entre si (pueden hacerse modales).
Algunos navegadores permiten además bloquear menú y barra de herramientas, por lo que evitas problemas que pueda general el usuario con F5 (recarga de página), que en procesos de carga de datos puede producir conflictos.
La ventaja de este esquema, es que queda todo el php en el servidor, toda validación (regla de negocio) se hace en el servidor, donde queda el código protegido de los usuarios normales. En el navegador levantas todo el JS que se requiera para manejar la interfaz.
A tener en cuenta en estos casos, si estas vendiendo el software a un cliente.
a) El código php queda en el servidor de la empresa (puede compilarse pero no sería gratis)
b) Toda la lógica que se transfiere al navegador (JS) no puede protegerse.
c) Todo el html/css que formatea la salida al navegador, no puede protegerse.

En realidad, cualquier esquema tipo intranet, que usa navegador + servidor, expone el código que se envíe al navegador (html, js, css) independientemente si a nivel servidor usas PHP, python, etc.

A nivel de escritorio, las otras herramientas (python, .net, delphi) permiten utilizar controles o eventos, que a nivel de navegador son bastante difíciles o imposible de hacer/tener. O en algunos casos, puede ser bastante más lento en caso de gráficos o demas.

Esto es, al menos, mi punto de vista.
Saludos: Miguel, La Pampa (RA)

Analyzer

unread,
Jul 17, 2013, 10:16:22 AM7/17/13
to PHP Latinoamérica
CMF,

Le agradezco compartir su punto de vista.


Saludos!

mapner

unread,
Jul 17, 2013, 10:23:32 AM7/17/13
to phplatin...@googlegroups.com
Coincido en que desarrollar especificamente para escritorio en PHP quizá no tiene demasiado sentido.
Se puede encarar un desarrollo Intranet, o sea un web interno. Para el tema de UI o pantallas hoy en día existen librerías como ExtJS o JeasyUI (u otras tantas) que permiten un Look & Feel similar a desktop.
La ventaja de desarrollar asi es que el día que se quiere escalar el sistema no hay que reescribir la aplicación.En mi opinión el Desktop para sistemas de negocios (tipo ERPs y etc)  va a ir desaparaciendo progresivamente y las interfaces web para PCs, o moviles van a ir ganando terreno. Para el propio desarrollador tambien es una ventaja porque puede comercializar sus aplicaciones como stand alone o como SAAS.

saludos
Reply all
Reply to author
Forward
0 new messages