Tecnología de Programación



Documentos relacionados
APLICACIONES PARA INTERNET

Lo básico de Javascript. ISIS2603 Departamento de Sistemas y Computación Universidad de los Andes

Tutorial Servicios Web

Desarrollo Web en Entorno Servidor

Clases y objetos en JavaScript

XAJAX: una librería de AJAX para PHP (parte 1)

PHP y MySQL. Inicio: - Herencia - Palabra clave Final - Polimorfismo - Type Hinting - Abstracción de clases

Introducción a la Programación Orientada a Objetos

GENERAR DOCUMENTOS HTML USANDO LENGUAJE PHP. EJERCICIO RESUELTO EJEMPLO SENCILLO. (CU00733B)

Tema 3: Herencia en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle

INDICE DEL CURSO APRENDER PROGRAMACIÓN JAVA DESDE CERO. PROGRAMACIÓN ORIENTADA A OBJETOS (CU00601B)

CLASS JAVASCRIPT CLASES? OBJETOS PREDEFINIDOS. WINDOW, OBJETO GLOBAL. NUMBER, MATH, DATE, REGEXP, ERROR. (CU01144E)

Programación Orientada a Objetos con Java

GUIA PROGRAMACIÓN ORIENTADA A OBJETOS

1.1.- Introducción a la Web Vemos una introducción al medio donde se encajan los lenguajes que vamos a tratar: la web.

9. Objetos y clases Clases

Curso de Java POO: Programación orientada a objetos

Objetivo: Introducción conceptual y aplicación básica de los lenguajes del lado del servidor.

JavaScript como Orientación a Objetos

Java Inicial (20 horas)

Curso Especialista Técnico Programador Web

El lenguaje de programación Java

LENGUAJES DE PROGRAMACIÓN 4 MÓDULOS. 56 Horas

Herencia. 3.- Herencia. Declaración de una clase derivada en Delphi. Jerarquía de clases

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez

Programación Orientada a Objetos en Java

Introducción a PHP. * No es necesario declarar previamente las variables.

Modulo 1 El lenguaje Java

INSTITUTO TECNOLOGICO de la laguna Programación Orientada a Objetos en C++

Partes de un programa en Java. A. Ejemplo de un Programa en Java /* Programa Ejemplo de Java: Muestra una Ventana Archivo: Ejemplo1.

8º Unidad Didáctica PHP. Eduard Lara

Tema: Arreglos de Objetos en C++.

Curso PHP Módulo 1 R-Luis

Introducción al lenguaje Java

Benemérita Universidad Autónoma del Estado de Puebla

RECUPERAR DATOS DE UN FORMULARIO HTML USANDO PHP. USO DE $_GET. EJEMPLOS Y EJERCICIOS RESUELTOS. (CU00833B)

Java en 3 horas. Ampliación de Sistemas Operativos. Rodrigo Santamaría

Formularios HTML. Elementos de Programación y Lógica

Universidad de Cantabria

Programación Orientada a Objetos en JAVA

HTML. HTML (HyperText Markup Language) Creado en 1989 por el físico nuclear TIM BERNERS- LEE

Curso Java Web (JSP's/Servlets)

Programación en Java. Programación en OO

Tema: Sobrecarga de Operadores.

Diplomado Programación Web con PHP, MySQL 5.0, Apache y Ajax

JavaScript,, AJAX y otras tecnologías web. Área de Ingeniería Telemática

INTRODUCCIÓN A PHP. Javier Enciso

Centro de Capacitación en Tecnologías de la Información

Desarrollo de sitios web con PHP y MySQL

Objective C (Desarrollo con Apple)

Clases abstractas e interfaces

Diseño de sitios Web mediante estándares

EXAMEN FINAL Metodología y Programación Orientada a Objetos. Curso Cuatrimestre de otoño. 17 de Enero de 2011

CAPAS O CONTENEDORES EN HTML. ETIQUETAS DIV Y SPAN. EJEMPLOS. MAQUETAR O DAR ESTRUCTURA A LAS PÁGINAS WEB. (CU00726B)

INSTITUTO DE ESTUDIOS SUPERIORES DEL ISTMO DE TEHUANTEPEC Tema 1: Programación Orientada a Objetos en PHP

INYECCIóN DE CóDIGO EN APLICACIONES PHP. Autor: Iñaki Rodriguez (2005)

Introducción a la programación orientada a objetos

Javascript parte II: AJAX

RESUMEN DE CONCEPTOS BASICOS DE PROGRAMACION JAVA

Tema: Clases y Objetos en C++.

PROYECTO MIS IMÁGENES,

CURSO ONLINE INSTALACIÓN Y ADMINISTRACIÓN DE CENTRALITAS VoIP ASTERISK

PHP: Interacción con HTML

Carlos Roberto Jaimez González. Programación de Web Dinámico

Especialista Universitario Java Enterprise. Struts. Sesión 4: Introducción a Struts Depto. Ciencia de la Computación e IA

Multitarea en Java. Rafa Caballero - UCM

Notación UML para modelado Orientado a Objetos

CEFIRE: Curso Administración de APACHE

OPERADORES LÓGICOS Y DE COMPARACIÓN EN PHP. PRIORIDADES. EJEMPLOS. EJERCICIOS RESUELTOS. (CU00818B)

TEMA 5. CONTROL DE FLUJO DEL PROGRAMA. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ;

PREPARANDO EL ENTORNO DE DESARROLLO PARA PROGRAMAR EN PHP. DESCARGAR E INSTALAR NOTEPAD++ (CU00808B)

2. Estructura de un programa en Java

Objetivo de aprendizaje del tema

POO en Java IV: Herencia (Parte 1)

Tema 7. Construcción de Applets en Java

Introducción al desarrollo de RIA's con Adobe Flex 3.0 Dia 4

Java: Clases Abstractas e Interfaces

Pruebas de unidad con JUnit

Curso de PHP con MySQL Gratis

JavaScript. Contenidos. Introducción El lenguaje Validación de formularios. Programación en Internet DLSI - Universidad de Alicante 1

POLIMORFISMO "una interfaz, múltiples métodos".

Java en 2 horas. Rodrigo Santamaría

Curso de Python Inicial

Tutorial de UML. Introducción: Objetivos: Audiencia: Contenidos:

Práctica 2: Java Remote Method Invocation (RMI)

LENGUAJES DE CONSULTA ORIENTADOS A OBJETOS

Desarrollo de Aplicaciones Web con AJAX Huibert Aalbers Senior Certified Software IT Architect

Informática I Notas del curso

Tema 6 Parte III. Frameworks web para dispositivos móviles

class Nombre_Clase extends Nombre_SuperClase { cuerpo de la clase extendida }

Transcripción:

Tecnología de Programación Clase 4 Diego C. Martínez Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur

PHP

Clientes y servidores... <HTML> <TITLE> MiPagina </TITLE> <BODY>... HTTP servidor cliente

PHP La sintaxis y las características orientadas a objetos del lenguaje PHP(5) son fáciles de aprender, pues guardan similitud con lenguajes vistos anteriormente. Por lo general, la confusión inicial reside en ciertos detalles que hacen a la utilización de los scripts, por lo que requiere algo de práctica poder dominar claramente estos lenguajes. Los archivos que contienen tags con código PHP residen en el servidor, con extensión.php y se ejecutarán en cuanto son solicitados. El preprocesador PHP se limita a ejecutar el script. El output del programa (el código HTML que nuestro cliente espera) debe ser generado por el script. Podemos pensar que imprimimos en una pantalla que finalmente verá nuestro cliente, al estilo PERL La sintaxis es básicamente la misma que C... if (cond) {... else {... while (cond) {... do{... while (cond) for ($i=1; $i<=5; $i++) {...

PHP Si bien TODO el archivo es considerado ejecutable, las sentencias específicas de PHP se encierran con los tags <?php?> ( o eventualmente <??>) Todo código restante HTML se envía tal cual al cliente. <html> <head> <title>ejemplo</title> </head> <body> <?php echo Hola Mundo!";?> </body> </html> hola.php <html> <head> <title>ejemplo</title> </head> <body> Hola Mundo! </body> </html> Resultado recibido por el cliente

PHP El script.php no necesariamente debe incluir código HTML... <?php echo <HTML> ; echo <TITLE>Ejemplo</TITLE> ; echo <BODY> ; echo Hola Mundo!"; if date('w')=5 { echo Hoy es sabado ; else { echo Hoy no es sabado ; echo </BODY></HTML> ;?> <HTML> <TITLE>Ejemplo</TITLE> <BODY> Hola Mundo! Hoy no es sabado </BODY> </HTML> Resultado recibido por el cliente todophp.php El exceso de mezcla HTML-PHP en general no es adecuado para aplicaciones grandes, pues es dificil de mantener. Veremos luego qué técnicas se utilizan para poner orden en este sentido.

PHP Pueden implementarse funciones... <?php { function cuadrado($num) return $num*$num; $cartel1 = "El cuadrado de "; $cartel2 = " es "; $numero=4; echo $cartel1; echo $numero; echo $cartel2; echo cuadrado($numero); echo "<BR>"; $numero=10; echo $cartel1.$numero.$cartel2.cuadrado($numero);?>

PHP - clases Las clases se definen de manera similar a Java. <?php class A { public $var = un valor'; function funcion1() { //codigo Los objetos se crean con la palabra reservada new y el acceso a los miembros de los objetos es por medio del operador -> Para referenciar el objeto actual se utiliza la pseudovariable $this.?> function funcion2() { //codigo No se aplican las reglas de ámbito tradicionales (como en Pascal). Debe indicarse explicitamente que datos pueden accederse globalmente: global $dato1;

PHP <?php class SimpleClass { // Declaración de atributo public $var = Hola Mundo!'; // Declaración de método public function displayvar(){ echo $this->var;?> <?php include( simpleclass.php ); $a = new SimpleClass(); $a->displayvar(); $a->var = Chau Mundo ; $a->displayvar();?> holachau.php simpleclass.php En PHP4, solo las constantes se inicializaban en la declaración

PHP - herencia La herencia se denota con la palabra reservada extends. PHP no admite herencia múltiple. Los métodos y miembros heredados pueden redefinirse, a menos que el ancestro incluya la palabra reservada final. Una clase también puede ser final. Es posible acceder a métodos de la clase padre por medio del prefijo parent:: <?php class SimpleClass { // Declaración de atributo public $var = Hola Mundo!'; // Declaración de método public function displayvar() { echo $this->var;?> <?php class ExtendClass extends SimpleClass { function displayvar(){ //redefinición echo Heredando \n"; parent::displayvar(); $extended = new ExtendClass(); $extended->displayvar();?> PHP también permite clases abstractas e interfaces.

PHP - constructores Los constructores deben tener el siguiente encabezado: void construct ( [mixed args [,...]] ) <?php class BaseClass { function construct() { print "In BaseClass constructor\n"; class SubClass extends BaseClass { function construct() { parent:: construct(); print "In SubClass constructor\n"; $obj = new BaseClass(); $obj = new SubClass();?>

PHP - atributos Los atributos pueden ser públicos, privados o protegidos. Los atributos privados no se heredan, por lo que un intento de acceso a ellos queda indefinido. Los métodos pueden tener los mismos modificadores de visibilidad, con el mismo significado. <?php class MyClass { public $public = 'Public'; protected $protected = 'Protected'; private $private = 'Private'; function printhello() { echo $this->public; echo $this->protected; echo $this->private; $obj = new MyClass(); echo $obj->public; // Funciona OK! echo $obj->protected; // Error fatal echo $obj->private; // Error fatal $obj->printhello(); // Muestra todos?>

PHP comparaciones La comparación de objetos es algo mas complicada que en PHP4. Existen dos operadores: == Los objetos son iguales si poseen los mismos atributos y son instancias de la misma clase. === Las variables de objeto son idénticas si y sólo si refieren a la misma instancia de la misma clase.

Javascript

JavaScript JavaScript fué creado por Brendan Eich a mediados de los 90, para la empresa Netscape Communications y se llamaba inicialmente Mocha, luego Livescript. Brendan Eich luego fundó Mozilla. Algunas de las bondades de JavaScript: Sintaxis simple, sin tipos de datos. JavaScript puede modificar dinámicamente el documento en el que se encuentra, por medio de la interfaz DOM. JavaScript puede reaccionar ante eventos ocurriendo en la página en la que se encuentra (onmouseover,onclick,onload,etc). JavaScript puede ser utilizado para la validación de datos. JavaScript puede detectar el browser del visitante y ayudar a optimizar la visualización. JavaScript puede crear cookies. JavaScript puede realizar pedidos adicionales a un servidor, en background, en forma asincrónica (AJAX).

JavaScript - ejemplo <HTML> <HEAD> <TITLE>Ejemplo JS</TITLE> </HEAD> <BODY> A continuación, Javascript <BR> <SCRIPT > document.write("hola Javascript!<BR>"); </SCRIPT> Esto fue Javascript. </BODY> </HTML> Browser: Ejemplo A continuación, Javascript Hola Javascript! Esto fue Javascript. Una técnica aceptable es mantener las definiciones de objetos en archivos separados. Estos deben tener todos extensión.js.

JavaScript Podemos declarar variables con la palabra reservada var. Estas variables no se declaran con tipos, lo cual es razonable al carecer de clases. var robot = C3P0 ; var episodio=3; var estreno = true; Las sentencias son del estilo del lenguaje Java. Las funciones se declaran de forma similar, pero sin mencionar los tipos, ausentes en el lenguaje function nombre(param1, param2, p, paramn) { // sentencias Se invocan de la manera tradicional nombre(p1, p2,..., pn);

JavaScript - ejemplo <HTML> <HEAD> <TITLE>Ejemplo JS</TITLE> </HEAD> <BODY> Antes.<BR> <SCRIPT > function mostrar(){ document.write("hola Javascript!<BR>"); </SCRIPT> En el medio <SCRIPT > mostrar(); </SCRIPT> Despues. </BODY> </HTML> Browser: Ejemplo Antes. En el medio Hola Javascript! Despues.

Objetos en JavaScript Es posible crear objetos en Javascrpt. Sin embargo, al ser un lenguaje basado en objetos, estos no se crean por medio de clases, sino por medio de operaciones que definen la estructura del objeto mismo. function crearobj(param1, param2, p, paramn) { this.atributo1 = param1; this.atributo2 = param2; this.operacion1 = operacion1; this.operacion2 = operacion2; Donde operacion1, operacion2, son operaciones declaradas en el mismo script. La función trabaja como un constructor, que al mismo tiempo define los atributos y las operaciones del objeto.

JavaScript - ejemplo <HTML><HEAD><TITLE>Ejemplo JS</TITLE> </HEAD> <BODY> Antes.<BR> <SCRIPT > function imprimir(){ document.write("<"); document.write(this.coordx); document.write(","); document.write(this.coordy); document.write(">"); function crearpunto(x,y){ this.coordx=x; this.coordy=y; this.imprimir=imprimir; </SCRIPT>...... En el medio <SCRIPT > p1=new crearpunto(2,3); p1.imprimir(); </SCRIPT> Despues. </BODY> </HTML> Browser: Ejemplo Antes. En el medio <2,3> Despues.