Академический Документы
Профессиональный Документы
Культура Документы
Tweet
1.- Qu es HTML
Lleg el momento de hablar sobre HTML, el lenguaje con el que crean las pginas
web.
2.- Qu es XHTML
Una breve definicin del lenguaje XHTML que nos haga entender qu es, as
como unos pocos de sus fundamentos e historia.
4.- Qu es CSS
Comentamos brevemente que son las hojas de estilo en cascada y explicamos
una serie de efectos rpidos e interesantes que se pueden hacer con ellas.
6.- Qu es Java
Descripcin y caractersticas de este potente y moderno lenguaje de
programacin.
8.- Qu es ASP
9.- Qu es PHP
Es un lenguaje para programar scripts del lado del servidor, que se incrustan
dentro del cdigo HTML. Este lenguaje es gratuito y multiplataforma.
10.- Qu es XML
11.- Qu es VRML
VRML es un lenguaje para modelar mundos en virtuales en 3D. Conoce el
lenguaje, un poco de su historia, los materiales necesarios y algunos ejemplos.
Veamos que son esas pequeas galletitas, algunos de sus usos y ms cosas.
13.- Qu es SQL
Qu es y para qu sirve el SQL
14.- Qu es un Webmaster
Utilizamos muy habitualmente la palabra webmaster, pero sabemos bien lo que
significa?
15.- Qu es Streaming
Descubre la tecnologa que nos acerca hacia una Internet de radio y televisin.
Introducimos para los ms profanos las bases sobre las que se asienta la
Programacin Orientada a Objetos.
18.- Qu es CGI
19.- Qu es Perl
Documento introductorio al lenguaje Perl.
20.- Qu es C#
21.- Qu es .NET
La plataforma de Microsoft orientada a la creacin de software para Internet.
22.- Qu es JSP
La tecnologa Java para la creacin de pginas web con programacin en el
servidor.
23.- Qu es Oracle
Oracle es una potente herramienta cliente/servidor para la gestin de Bases de
Datos. Explicamos la herramienta y las ayudas que ofrece al desarrollador.
24.- Qu es ActiveX
Explicamos los detalles ms importantes de la tecnologa para el desarrollo de
pginas dinmicas de Microsoft.
26.- Qu es Fortran
Fortran es el primer lenguaje de alto nivel que sali al mercado. Ya que sigue
siendo til en Fsica, vamos a estudiarlo.
27.- Qu es Lisp
28.- Qu es Prolog
Estudiaremos un caso de lenguaje orientado a la programacin lgica (clculo de
predicados): Prolog.
34.- Qu es AJAX
Damos un repaso global a AJAX, desde su comienzo hasta la actualidad.
37.- Qu es RSS
38.- Qu es Webkit
Webkit Open Source Project. Una sencilla explicacin en castellano sobre este
sistema de cdigo abierto que es el motor de productos como el navegador Safari.
39.- Qu es el DOM
41.- Qu es un Blog
42.- Qu es un CMS
Definicin y ejemplos de sistemas CMS: Content Manager System (Sistema gestor
de contenidos).
43.- Qu es Podcast
Introduccin al termino Podcast, en resumen, la suscripcin o sindicacin de audio
y vdeo por RSS. Veremos qu es Podcasting y cmo acceder a ese tipo de
contenidos multimedia.
44.- Qu es HDR
En estos ltimos aos se ha hablado mucho acerca del cloud computing, la nube,
el cambio que esto supone en nuestra forma de desarrollar y gestionar nuestras
aplicaciones Pero Qu es realmente el cloud computing?
47.- Qu es la virtualizacin
Artculo para personas no tcnicas que explica con palabras sencillas el concepto
de la virtualizacin.
48.- Qu es el overclocking
Vemos qu es y en que consiste el llamado overclocking en equipos informticos.
52.- Qu es BackboneJS
BackboneJS es una librera Javascript para programacin del lado del cliente que
nos ofrece diferentes ventajas y utilidades en la programacin, atendiendo a
patrones, de una manera flexible.
54.- Qu es MVC
Te explicamos de manera general MVC, Model - View - Controller o Modelo - Vista
- Controlador un patrn de diseo de software para programacin que propone
separar el cdigo de los programas por sus diferentes responsabilidades.
56.- Qu es SVG
57.- Qu es Markdown
En el artculo de hoy veremos cmo trabajar con Markdown, un rpido sistema de
formateo de texto en XHTML.
58.- Qu es el SEO
59.- Qu es REST
Puede que te suene por las API REST. Te explicamos por qu se han popularizado
tanto en el mundo de Internet y qu caractersticas tienen estos sistemas.
61.- JSONP
Qu es JSONP y por qu se utiliza en el desarrollo de sitios web. Ejemplos
JSONP en la librera Javascript jQuery.
Qu es MVC
Seguir a midesweb
02 de enero de 2014
19 Comentarios
Desarrollo
Te explicamos de manera general MVC, Model - View Controller o Modelo - Vista - Controlador un patrn de diseo
de software para programacin que propone separar el
cdigo de los programas por sus diferentes
responsabilidades.
En lneas generales, MVC es una propuesta de diseo de software utilizada para
implementar sistemas donde se requiere el uso de interfaces de usuario. Surge de la
necesidad de crear software ms robusto con un ciclo de vida ms adecuado,
donde se potencie la facilidad de mantenimiento, reutilizacin del cdigo y la
separacin de conceptos.
MVC es un "invento" que ya tiene varias dcadas y fue presentado incluso antes
de la aparicin de la Web. No obstante, en los ltimos aos ha ganado mucha
fuerza y seguidores gracias a la aparicin de numerosos frameworks de desarrollo web
que utilizan el patrn MVC como modelo para la arquitectura de las aplicaciones web.
Nota: Como ya hemos mencionado, MVC es til para cualquier desarrollo en el que intervengan
interfaces de usuario. Sin embargo, a lo largo de este artculo explicaremos el paradigma bajo el prisma
del desarrollo web.
Por qu MVC
La rama de la ingeniera del software se preocupa por crear procesos que aseguren
calidad en los programas que se realizan y esa calidad atiende a diversos parmetros que
son deseables para todo desarrollo, como la estructuracin de los programas o
reutilizacin del cdigo, lo que debe influir positivamente en la facilidad de desarrollo y el
mantenimiento.
Quizs, para que a todos nos queden claras las ventajas del MVC podamos echar
mano de unos cuantos ejemplos:
1.
Aunque no tenga nada que ver, comencemos con algo tan sencillo como son el HTML
y las CSS. Al principio, en el HTML se mezclaba tanto el contenido como la presentacin. Es
decir, en el propio HTML tenemos etiquetas como "font" que sirven para definir las
caractersticas de una fuente, o atributos como "bgcolor" que definen el color de un fondo. El
resultado es que tanto el contenido como la presentacin estaban juntos y si algn da
pretendamos cambiar la forma con la que se mostraba una pgina, estbamos obligados a
cambiar cada uno de los archivos HTML que componen una web, tocando todas y cada una
de las etiquetas que hay en el documento. Con el tiempo se observ que eso no era prctico
3.
4.
Quizs te hayas visto en alguna de esas situaciones en el pasado. Son solo son
simples ejemplos, habiendo decenas de casos similares en los que resultara til
aplicar una arquitectura como el MVC, con la que nos obliguemos a separar
nuestro cdigo atendiendo a sus responsabilidades.
Ahora que ya podemos tener una idea de las ventajas que nos puede aportar el
MVC, analicemos las diversas partes o conceptos en los que debemos separar el
cdigo de nuestras aplicaciones.
Modelos
Es la capa donde se trabaja con los datos, por tanto contendr mecanismos para
acceder a la informacin y tambin para actualizar su estado. Los datos los tendremos
habitualmente en una base de datos, por lo que en los modelos tendremos todas las
funciones que accedern a las tablas y harn los correspondientes selects, updates,
inserts, etc.
No obstante, cabe mencionar que cuando se trabaja con MCV lo habitual tambin
es utilizar otras libreras como PDO o algn ORM como Doctrine, que nos
permiten trabajar con abstraccin de bases de datos y persistencia en objetos. Por
ello, en vez de usar directamente sentencias SQL, que suelen depender del motor
de base de datos con el que se est trabajando, se utiliza un dialecto de acceso a
datos basado en clases y objetos.
Vistas
Las vistas, como su nombre nos hace entender, contienen el cdigo de nuestra aplicacin
que va a producir la visualizacin de las interfaces de usuario, o sea, el cdigo que nos
permitir renderizar los estados de nuestra aplicacin en HTML. En las vistas nada ms
tenemos los cdigos HTML y PHP que nos permite mostrar la salida.
Controladores
Contiene el cdigo necesario para responder a las acciones que se solicitan en la
aplicacin, como visualizar un elemento, realizar una compra, una bsqueda de
informacin, etc.
En realidad es una capa que sirve de enlace entre las vistas y los modelos,
respondiendo a los mecanismos que puedan requerirse para implementar las
necesidades de nuestra aplicacin. Sin embargo, su responsabilidad no es
enlace entre los modelos y las vistas para implementar las diversas necesidades
del desarrollo.
En esta imagen hemos representado con flechas los modos de colaboracin entre
los distintos elementos que formaran una aplicacin MVC, junto con el usuario.
Como se puede ver, los controladores, con su lgica de negocio, hacen de puente
entre los modelos y las vistas. Pero adems en algunos casos los modelos pueden
enviar datos a las vistas. Veamos paso a paso cmo sera el flujo de trabajo
caracterstico en un esquema MVC.
1.
2.
El controlador comunica tanto con modelos como con vistas. A los modelos les
solicita datos o les manda realizar actualizaciones de los datos. A las vistas les solicita la
salida correspondiente, una vez se hayan realizado las operaciones pertinentes segn la
lgica del negocio.
3.
4.
Las vistas envan al usuario la salida. Aunque en ocasiones esa salida puede ir de
vuelta al controlador y sera ste el que hace el envo al cliente, por eso he puesto la flecha
en otro color.
tambin. Eso es una responsabilidad del modelo y forma parte de lo que se llama
la lgica del negocio.
Nota: Si no queremos que esos comentarios se pierdan otra posibilidad sera mantener el registro del
usuario en la tabla de usuario y nicamente borrar sus datos personales. Cambiaramos el nombre del
usuario por algo como "Jon Nadie" (o cualquier otra cosa), de modo que no perdamos la integridad
referencial de la base de datos entre la tabla de comentario y la tabla de usuario (no debe haber
comenarios con un id_usuario que luego no existe en la tabla de usuario). Esta otra lgica tambin forma
parte de lo que se denomina lgica del negocio y se tiene que implementar en el modelo.
Otro ejemplo. Tenemos un sistema para borrar productos. Cuando se hace una
solicitud a una pgina para borrar un producto de la base de datos, se pone en
marcha un controlador que recibe el identificador del producto que se tiene que
borrar. Entonces le pide al modelo que lo borre y a continuacin se comprueba si
el modelo nos responde que se ha podido borrar o no. En caso que se haya
borrado queremos mostrar una vista y en caso que no se haya borrado queremos
mostrar otra. Este proceso tambin est en los controladores y lo podemos
denominar como lgica de la aplicacin.
De momento eso es todo! Esperamos que este artculo haya podido aclarar los
distintos conceptos relacionados con el MVC y aunque no hayamos visto una
implementacin en cdigo, te sirva para poder investigar a partir de aqu. En
DesarrolloWeb.com hemos tratado con mayor detalle algunos aspectos de MVC y
la relacin entre vistas y modelos y sus interpretaciones en un artculo que seguro
te interesar. Adems podrs ver cmo trabajar con MVC en el Manual de
Codeigniter, en el Manual de Laravel y en el Manual del framework ASP.NET MVC.
Paralelamente queremos que conozcas nuestra plataforma para la formacin
EscuelaIT, donde podrs aprender con nosotros todo sobre este MVC y otros
asuntos relacionados con la arquitectura del software en este curso de MVC y
otras Tcnicas de desarrollo de aplicaciones web en PHP.