Download Evaluación Diagnóstico

Document related concepts

Polimorfismo (informática) wikipedia , lookup

Rust (lenguaje de programación) wikipedia , lookup

JavaScript wikipedia , lookup

F Sharp wikipedia , lookup

Objeto inmutable wikipedia , lookup

Transcript
Evaluación Diagnóstico
puesta en común
Escuela Técnica ORT - TIC 2009
1
Ojo
La mayoría de los conceptos que vamos a discutir
los vamos a ver en profundidad en clase, por l
otanto hoy no vamos a discutirlos en profundidad.
Las respuestas que esta presentación expone no
son, bajo ningún punto de vista, verdades
abasolutas. Por lo tanto, discútanlas!
Escuela Técnica ORT - TIC 2009
2
¿Qué es un esquema cliente / servidor?
●
Es un sistema distribuido entre 2 entidades
distinguibles:
–
Servidor: Provee uno o mas servicios a uno o mas
clientes. Puede ser pasivo y estar esperando que
un cliente le haga una solicitud o ser activo y
contactar a los clientes cada un intervalo de tiempo.
–
Cliente: Consume los servicios que el servidor le
provee.
Escuela Técnica ORT - TIC 2009
3
¿Qué es HTML? ¿Para qué sirve? ¿Es un
lenguaje de programación?
●
HyperText Markup Language
●
Es un lenguaje de marcas
–
NO de programación como los que conocemos...
–
Se construye mediante tags
●
Sirve para construir documentos
●
Es interpretado por los browsers
●
Permite embeber otros tipos de
documentos
Escuela Técnica ORT - TIC 2009
4
¿Qué es CSS? ¿Para qué sirve? ¿Es un
lenguaje de programación?
●
Cascading Style Sheet
●
NO es un lenguaje de programación
●
●
Permite cambiar la apariencia de los
documentos HTML
Permite separar la información cruda de su
presentación visual
Escuela Técnica ORT - TIC 2009
5
¿Qué es Javascript? ¿Para qué sirve?
¿Es un lenguaje de programación?
●
Si, ES un lenguaje de programación
●
Es ejecutado dentro del browser
●
●
●
●
En general se encuentra dentro de un documento
HTML (su ejecución tiene lugar dentro del 'scope' de
un dominio)
Permite la interacción con elementos del cuerpo
HTML de un documento (y otras cosas también)
Tecnologías mas nuevas ayudan a hacer páginas
más dinámicas (por ejemplo, AJAX)
Muy, muy potente
Escuela Técnica ORT - TIC 2009
6
¿Qué es un DNS? ¿Para qué sirven?
●
●
Domain Name System. Son servicios y
servidores encargados de relacionar, entre otra
información, los nombres de dominio y los
identificadores numéricos que los identifican
(IP)
Los servidores DNS propagan, mantienen y
actualizan información sobre los dominios
solicitados a través del tiempo.
Escuela Técnica ORT - TIC 2009
7
¿Qué son las cookies? ¿Para qué sirven?
●
●
Es información útil para un servidor web
almacenada en la máquina del cliente.
Específicamente usada en tecnologías web.
Mas adelante lo veremos en profundidad.
Escuela Técnica ORT - TIC 2009
8
¿Qué es PHP? ¿Para qué sirve?
●
●
●
●
PHP Hypertext Processor. Es un lenguaje de
scripting
Open Source :D
Es popularmente usado en servidores web
para desarrollar páginas dinámicas
También se utiliza para hacer aplicaciones noweb
Escuela Técnica ORT - TIC 2009
9
¿Cuál es la diferencia entre un lenguaje
interpretado y uno compilado? ¿Qué es
un lenguaje de scripting?
●
●
En cuanto a los lenguajes propiamente dichos,
ninguna.
La diferencia está en cómo son ejecutados los
programas:
–
En los lenguajes interpretados por un intérprete-VM que
ejectua línea por línea. Antes de ejecutarlo sólo se chequea
que la sintaxis del programa sea la correcta. En general los
tipados son dinámicos (es decir, no se declaran, o algunos
no)
–
Los lenguajes compilados son convertidos a formato
ejecutable. Al momento de ser compilados-linkeados se
chequean los tiposEscuela
y laTécnica
sintaxis.
En
ORT - TIC
2009general son fuertemente
10
tipados.
¿Qué es una clase? ¿Qué es la
programación orientada a objetos
(OOP)?
●
●
●
Es el “plano” para construir instancias de objetos con
ciertas características distintivas.
Se pueden formar jerarquías de objetos, con distintos
tipos de dependencias (herencia, extensión,
implementación, inclusión, etc.)
La OOP es un paradigma cuyo objetivo es capturar
las cualidades de un problema dado en un modelo
basado en objetos. Tiene algunos principios básicos
que intenta preservar
(ocultamiento, abstraccion,
Escuelaencapsulacion,
Técnica ORT - TIC 2009 modularidad,
polimorfismo, etc.)
11
¿Qué es un método de clase? ¿Y una
propiedad?
●
●
●
Un método es una función miembro de una clase,
que define una forma de interactuar con las
instancias de esa clase.
Una propiedad es una variable/objeto miembro de la
clase
Como miembros de una clase tienen un especificador
de acceso. La mayoría de los lenguajes tienen
privado, protegido, publico aunque la interpretación de
cada uno puede variar sutilmente entre lenguajes.
Escuela Técnica ORT - TIC 2009
12
¿Qué es un constructor?
●
Es un método especial de la clase, que es
ejecutado en el instante en el cual un objeto es
creado
Escuela Técnica ORT - TIC 2009
13
¿Qué es la herencia? ¿Para qué se
utiliza?
●
Una clase puede ser heredera de otra (y en
algunos lenguajes como C++ de mas de una)
●
Al heredar de una clase, la heredera obtiene
TODO el comportamiento definido en la clase
padre
perro
+ladrar()
+caminar()
+jadear()
+dormir()
caniche
+subirseAlAmo()
+perderPelo()
+serMolesto()
pitbull
+luchar()
+gruñir()
+colgarseDeArbol()
Escuela Técnica ORT - TIC 2009
14
¿Qué una interfaz en términos de OOP?
●
●
●
●
Es una abstracción que un objeto puede ofrecer para
que interactúen con él desde fuera de la clase.
Es una definición de métodos que la clase debe
implementar si implementa la interfaz
Una clase puede implementar más de una interfaz
Permite establecer de manera precisa la forma en la
cual se debe interactuar con un objeto de esa clase y
acepta que por “debajo” cambie constantemente la
implementación siempre
cuando
Escuela TécnicayORT
- TIC 2009 se conserve la
15
interfaz
¿Qué es una clase abstracta? ¿Cuál es la
diferencia con una interfaz?
●
●
Es una clase que no puede ser instanciada de
manera explicita
Otra clase puede heredar de ella (solo puede
heredar de una clase abstracta, a diferencia de las interfaces)
●
La clase heredera puede o no redefinir
metodos definidos por la clase abstracta (en las
interfaces hay que implementar todos los métodos)
●
Los métodos de la clase abstracta pueden o no
ser abstractos.
Escuela Técnica ORT - TIC 2009
16
¿Qué es un patrón de diseño? ¿Conocés
alguno (solo nombrarlo)?
●
●
Son esquemas “prefabricados” que ejemplifican
cual seria la manera optima (o la mas probada)
para resolver determinada clase de problemas.
También tienen “tipos” como creacion,
estructura, comportamiento, etc.
Algunos patterns:
–
Facade
–
Factory
–
Proxy
–
Singleton
–
Visitor
Escuela Técnica ORT - TIC 2009
17
¿Qué es un motor de base de datos?
¿Cuál/cuales conoces?
●
●
●
Es el encargado de ejecutar consultas sobre
los datos almacenados
Se encarga de los permisos de acceso a los
distintos objetos (tablas, bases de datos, stored
procedures, etc) por los usuarios que se
conectan a el.
Es el encargado de mantener meta-datos sobre
los datos (informacion de indices, costos de algortimos, etc)
Escuela Técnica ORT - TIC 2009
18
¿Qué es SQL? ¿Para qué sirve?
●
●
Structured Query Language. Es un lenguaje
para interactuar con motores de base de datos.
Es estándar y lo usan todos los motores
relacionales.
Mediante SQL podemos
–
Definir estructuras (crear tablas, bases de datos,
etc)
–
Consultarlos
–
Insertar / modificar / borrar datos
Escuela Técnica ORT - TIC 2009
19
¿Qué quiere decir que una función sea
recursiva?
Una función recursiva es aquella que dentro de
su cuerpo, hace un llamado a ella misma:
●
funcion factorial ( n )
fin
si (n = 0):
devolver 1
si no:
devolver n * factorial ( n-1 )
1, 1, 2, 3, 5, 8, 13, 21,
Escuela34,
Técnica........
ORT - TIC 2009
20