none
¿Qué es desarrollo 'del lado del servidor' y 'del lado del cliente'? RRS feed

  • Pregunta

  • Buen día para todos!

    Mi pregunta es cual es la referencia conceptual cuando se habla de desarrollo 'del lado del servidor y cliente'.

    Además, ¿Cuándo se aplica con el lenguaje C# y la tecnología Silverlight?

    Muchas gracias.

    martes, 23 de diciembre de 2014 0:08

Respuestas

  • Walter, intentaré ayudarte dándote mis alcances

    En las aplicaciones web la manera en que los usuarios interactuan con las aplicaciones es a través de un browser o navegador (Google Chrome, IE, Firefox etc etc). Los elementos que permiten definir la forma de la aplicación se dice que están en el lado del cliente (FRONT-END). Por ejemplo, imagínate que desarrollarás una aplicación que permita registrar contactos. Pues bien, iniciarás creando el esquema de tu página en HTML, te ayudarás con JQuery para algunas operaciones que requieras, en este ejemplo ambas tecnologías viven en el cliente. Ahora, desde el lado del servidor (BACK-END) existe la tecnología que permite contener los datos (SERVIDOR DE BASE DE DATOS) y también las tecnologías que permiten dar soporte a las páginas web que desarrollas como por ejemplo ASP donde te apoyarás en el desarrollo con algún lenguaje como c# o visual basic o el que desees. El cliente solicitará peticiones al servidor y el servidor retornará dicha petición enviando lo solicitado.

    Te comparto la liga de Silverlight, pero te sugiero que apuestes por HTML5, encontrarás muchas información detallandote el porque.

    -----------------------------------------------------------------------------------------------------
    Espero haberte ayudado con mi sugerencia, si resolvió tu problema no olvides marcarla como respuesta.

    Willams Morales P.
    Arequipa - Perú



    • Editado Willams Morales martes, 23 de diciembre de 2014 0:58
    • Marcado como respuesta Walter_DL miércoles, 24 de diciembre de 2014 3:57
    martes, 23 de diciembre de 2014 0:55

Todas las respuestas

  • La arquitectura cliente-servidor es un modelo de aplicación distribuida en el que las tareas se reparten entre los proveedores de recursos o servicios, llamados servidores, y los demandantes, llamados clientes. Un cliente realiza peticiones a otro programa, el servidor, quien le da respuesta. Esta idea también se puede aplicar a programas que se ejecutan sobre una sola computadora, aunque es más ventajosa en un sistema operativo multiusuario distribuido a través de una red decomputadoras.

    En esta arquitectura la capacidad de proceso está repartida entre los clientes y los servidores, aunque son más importantes las ventajas de tipo organizativo debidas a la centralización de la gestión de la información y la separación de responsabilidades, lo que facilita y clarifica el diseño del sistema.

    IBM define al modelo Cliente/Servidor. "Es la tecnología que proporciona al usuario final el acceso transparente a las aplicaciones, datos, de cómputo o cualquier otro recurso del grupo de trabajo y/o, a través de la organización, en múltiples plataformas. El modelo soporta un medio ambiente distribuido en el cual los requerimientos de servicio hechos por estaciones de trabajo inteligentes o "clientes'', resultan en un trabajo realizado por otros computadores llamados servidores"

    el 99 % de lo que escribes en C# es lado del servidor y el 100 % de lo que escribes en JavaScript es lado del cliente


    EFRAIN MEJIAS C VALENCIA - VENEZUELA

    martes, 23 de diciembre de 2014 0:25
  • Walter, intentaré ayudarte dándote mis alcances

    En las aplicaciones web la manera en que los usuarios interactuan con las aplicaciones es a través de un browser o navegador (Google Chrome, IE, Firefox etc etc). Los elementos que permiten definir la forma de la aplicación se dice que están en el lado del cliente (FRONT-END). Por ejemplo, imagínate que desarrollarás una aplicación que permita registrar contactos. Pues bien, iniciarás creando el esquema de tu página en HTML, te ayudarás con JQuery para algunas operaciones que requieras, en este ejemplo ambas tecnologías viven en el cliente. Ahora, desde el lado del servidor (BACK-END) existe la tecnología que permite contener los datos (SERVIDOR DE BASE DE DATOS) y también las tecnologías que permiten dar soporte a las páginas web que desarrollas como por ejemplo ASP donde te apoyarás en el desarrollo con algún lenguaje como c# o visual basic o el que desees. El cliente solicitará peticiones al servidor y el servidor retornará dicha petición enviando lo solicitado.

    Te comparto la liga de Silverlight, pero te sugiero que apuestes por HTML5, encontrarás muchas información detallandote el porque.

    -----------------------------------------------------------------------------------------------------
    Espero haberte ayudado con mi sugerencia, si resolvió tu problema no olvides marcarla como respuesta.

    Willams Morales P.
    Arequipa - Perú



    • Editado Willams Morales martes, 23 de diciembre de 2014 0:58
    • Marcado como respuesta Walter_DL miércoles, 24 de diciembre de 2014 3:57
    martes, 23 de diciembre de 2014 0:55
  • @Walter_DL

    El concepto que te puedo dar es que :

    El lado del cliente. Es cuando toda la lógica de la aplicación(reglas de negocio) se desarrolla en la Capa Lógica 

    El lado del servidor. Es cuando toda la lógica de la aplicación(reglas de negocio) se desarrolla en la Base de Datos sea el gestor de base de datos que estés usando.

     La lógica de la aplicación bien se desarrolla en la capa lógica o bien en la base de datos, pero nunca en ambos lados.


    Pedro Ávila
    "El hombre sabio querrá estar siempre con quien sea mejor que él."
    Lima - Perú

    martes, 23 de diciembre de 2014 1:38
  • Muchas gracias Williams.mp!

    Según tengo entendido, las tecnologías de desarrollo enfocadas en soluciones Web de .NET como ASP.NET o Silverlight, se construyen utilizando lenguajes de programación .NET como C#. El código que da lugar dicha construcción en el determinado lenguaje es "envolvido" en elementos HTML como object con el fin de presentar la aplicación bajo el estándar de transferencia de hipertexto, éste código después es presentado en el cliente y es éste quien interactúa con el resultado final.

    Tu respuesta me confirma el concepto.

    miércoles, 24 de diciembre de 2014 4:01
  • Según tengo entendido, las tecnologías de desarrollo enfocadas en soluciones Web de .NET como ASP.NET o Silverlight, se construyen utilizando lenguajes de programación .NET como C#

    Exacto, muchos siguen pensando que ASP o Silverlight son lenguajes de programación. 

    El código que da lugar dicha construcción en el determinado lenguaje es "envolvido" en elementos HTML como object con el fin de presentar la aplicación bajo el estándar de transferencia de hipertexto, éste código después es presentado en el cliente y es éste quien interactúa con el resultado final.

    A ver, aquí creo que estamos confundiendo aún. Sigamos en el ejemplo del formulario de contacto. El usuario quiere registrarse y para ello accede a la dirección web donde se le muestra una página con controles INPUT (estos controles son HTML y están en el cliente), al momento de ingresar el contacto quizá decidimos validar que el usuario a registrarse sea mayor a 18 años (estás validaciones la podría hacer JQuery que también está en el lado del cliente). Finalmente el usuario llena toda la información (seguimos en el cliente) y presiona [ACEPTAR] (hace un postback) . Una de las reglas de negocio es que el usuario no debe de estar ya registrado (para ello se manda una solicitud al servidor para que revise si el usuario existe y el servidor devuelve al cliente la respuesta: EXISTE o NO EXISTE). Aquí ya hay una primera interacción con el servidor. Si todo está bien, se envía los datos al servidor [GET/POST]  para que los datos sean persistidos. Cómo verás no hay una mezcla del cliente con el servidor. De la misma manera si el formulario desea mostrar una vista previa de los datos ingresados pues el cliente solicitará al servidor se le envíe los datos del usuario registrado, el servidor "servirá" de dichos datos y el cliente sólo los mostrará utilizando para ello etiquetas HTML.

    Tecnologías hoy en día hay varias que permiten interactuar al cliente con el servidor sin problemas en el performance y visualización como Ajax.

    Espero haber aclarado un poco mas tus dudas. 



    miércoles, 24 de diciembre de 2014 4:18
  • Cuando hablamos de Silverligth, todo lo que escribas en c# para Silverligth es en el lado del cliente, porque Silverligth se ejecuta en el navegador web y un navegador web es un cliente que se comunica con un servidor web.

    El servidor web ejecuta código del lado del servidor y devuelve HTML, JSON, imágenes, etc al cliente que el navegador web.

    A su vez el servidor web puede ser cliente de otros servidores, por ejemplo podría hacer uso de un servidor de workflows, un servidor de base de datos relacionales, servicios wcf, servidores SMPT, FTP y un largo etc.

    En general cuando un proceso A realiza una petición a otro proceso B  sea o no en otra máquina, y el proceso B realiza una acción devolviendo o no un resultado a A,  se dice que A es el cliente y B el servidor.



    Jesús López


    EntityLite a lightweight, database first, micro orm

    miércoles, 24 de diciembre de 2014 14:18