TECNICATURA DE REDES Y SOFTWARE

CONSEJO DE EDUCACIÓN TÉCNICO PROFESIONAL
Universidad del Trabajo del Uruguay
Escuela Técnica Superior Pedro Blanes Viale
TECNICATURA DE REDES Y SOFTWARE
Programación PHP
Plan 2013
Área 9151
PLANIFICACIÓN CICLO LECTIVO
2015
Tecnicatura de Redes y Software
Programación I
Índice de contenido
FUNDAMENTACIÓN.........................................................................................................................3
OBJETIVOS GENERALES................................................................................................................3
OBJETIVOS ESPECÍFICOS...............................................................................................................4
CONDICIÓN DE INGRESO...............................................................................................................4
PERFIL DE EGRESO..........................................................................................................................5
DESARROLLO DEL CURSO.............................................................................................................5
CRONOGRAMA.................................................................................................................................6
CONTENIDOS CONCEPTUALES....................................................................................................6
CONTENIDOS PROCEDIMENTALES.............................................................................................9
CONTENIDOS ACTITUDINALES....................................................................................................9
METODOLOGÍA...............................................................................................................................10
RECURSOS MATERIALES..............................................................................................................10
EVALUACIÓN..................................................................................................................................10
PROFESOR / INSTRUCTOR:...........................................................................................................11
DURACIÓN DEL CURSO................................................................................................................11
LUGAR A DESARROLLARSE:.......................................................................................................11
BIBLIOGRAFÍA PARA EL ESTUDIANTE.....................................................................................12
página 2 de 12
Tecnicatura de Redes y Software
Programación I
FUNDAMENTACIÓN
La asignatura “Programación”, a través del desarrollo de sus contenidos, brinda la
adecuada formación informática necesaria en todas las asignaturas que requiera encarar
con idoneidad la presente carrera. En los últimos años se ha revitalizado en forma
continuada el desarrollo de aplicaciones que operan sobre red y posibilitan nuevas
oportunidades para aquellos desarrolladores capacitados en esta tecnología, facilitando la
construcción de software con fines empresariales, sociales o de entretenimiento. PHP es
un lenguaje de programación de uso general de código del lado del servidor originalmente
diseñado para el desarrollo web de contenido dinámico. Este brinda adicionalmente un
entorno de trabajo y un conjunto de librerías y complementos para el programador,
posibilitando explotar al máximo las prestaciones de los dispositivos a nivel de multimedia
y comunicación, lo que hace posible dar acceso a una multitud de base de datos. De esta
manera, hay beneficios significativos para los programadores que acceden a un sinfín de
funciones y posibilidades, enriqueciendo la experiencia de los usuarios.
El Desarrollo de aplicaciones Web Robustas, requieren de un mayor énfasis en las
herramientas que se van a utilizar para su construcción, tal es así que el curso PHP Nivel
III ha sido elaborado considerando aquellas que van a ser de gran ayuda en la creación
de aplicaciones web robustas, y sobre todo reduciendo el tiempo de producción y
centrándose en la utilización eficiente de los recursos.
Este curso brindará a los participantes un marco integral en la elaboración de sus
proyectos, permitirá a su vez incrementar sus conocimientos sobre las últimas tendencias
en la utilización de tecnología de servidor. Además trata de orientar al participante para
que concentre todos sus esfuerzos en diseñar la lógica del negocio y utilizar todo el
potencial de los Frameworks en cuestiones técnicas.
OBJETIVOS GENERALES
El objetivo general de la asignatura es formar un profesional con sólidos conocimientos en
el paradigma de la programación orientada a objetos que se utilizan en los modernos
lenguajes de programación y brindarle los conocimientos necesarios para el desarrollo de
aplicaciones de software escalables y eficientes.
Brindar una capacitación basada en un entorno de desarrollo para PHP que permitirá al
estudiante adquirir la competencia de programar para desarrollar aplicaciones web
combinándolas a una base de datos.
Favorecer el desarrollo de la habilidad de pensamiento crítico y habilidades de ‘aprender a
aprender’. Potenciar y Valorar la importancia de la creatividad para innovar.
Incentivar a los estudiantes a trabajar cooperativamente, apoyarse unos a otros y respetar
a sus compañeros y profesor como un medio de maximizar el aprendizaje.
página 3 de 12
Tecnicatura de Redes y Software
Programación I
Se ampliarán conocimientos adquiridos los años anteriores organizando y ampliando los
saberes sobre otros lenguajes de programación.
El alumno deberá desempeñarse como programador de un centro de cómputos, en la
gestión y mantenimiento de un sitio web; aplicando conocimientos técnicos y
procedimentales adquiridos durante el curso además de tener la capacidad de ampliarlos
de acuerdo a las necesidades.
Promover el trabajo en equipo, asignar responsabilidades a cada integrante y valorando la
colaboración y el aporte de ideas del grupo para solucionar los problemas planteados.
Lograr que los alumnos comprendan y apliquen los conceptos fundamentales del
paradigma orientado objetos para implementarlo combinándolo con las buenas prácticas
de programación.
Actualizar y formar en programación del lenguaje PHP que favorezca y faciliten los
aprendizajes de los estudiantes, proporcionándoles una mirada integradora a los
contenidos, e incorporando las TICs como herramienta de acercamiento con el objeto de
aprendizaje.
Fomentar habilidades para crear soluciones y comprender los diferentes recursos que
permiten programar en PHP.
OBJETIVOS ESPECÍFICOS
Se pretende que al finalizar el curso el alumno sea capaz de:



Analizar los requerimientos básicos que debe de cumplir una aplicación. Estos
requerimientos (lógicos) son de diferentes tipos: Estabilidad, diseño y optimización
de funciones, interfaz de usuario amigable, y otros.
Reconocer la estructura fundamental de un aplicación, la conexión de sus métodos,
atributos, estructuras de control y nociones de modularización.
Instalar y configurar un entorno de prueba para ejecutar los archivos en PHP sobre
un servidor web.
CONDICIÓN DE INGRESO
El curso está dirigido al estudiante que sea:



Egresado del Bachillerato Tecnológico en Procesamiento y Mantenimiento
Informático (Plan 1997).
Egresado de la Educación Media Tecnológica en Informática (Plan 2004).
Egresado de la Articulación para Tecnicaturas Informáticas.
página 4 de 12
Tecnicatura de Redes y Software
Programación I
PERFIL DE EGRESO
Al finalizar el curso el egresado podrá:

Implementar aplicaciones para la web basada en el lenguaje PHP, ejecutarlas en
un servidor web sobre diferentes plataformas o sobre la misma herramienta de
desarrollo de la aplicación.

Sabrá cómo funciona la arquitectura de las aplicaciones y cómo opera en un
servidor web y las técnicas necesarias para acceder a las funciones más
interesantes como el acceso a base de datos.

El Desarrollador de Aplicaciones web estará capacitado con las herramientas
básicas para construir software independiente o participar en proyectos de
integración con otras aplicaciones y ambientes de trabajo.

Estarán en capacidad de discriminar sobre los beneficios de utilizar los diversos
IDEs que existen el mercado.

Utilizar librerías/extensiones de mayor demanda y eficiencia e incorporarlas en sus
proyectos.

Orientar los proyectos web al trabajo especializado según los roles de los
integrantes, sean diseñadores, desarrolladores, analistas de negocio, todos podrán
realizar su trabajo en paralelo.

Entender los patrones de diseño web y utilizar eficientemente el IDE utilizado
según sus beneficios.

Crear proyectos web de fácil mantenimiento y escalables en el tiempo y en
funcionalidad.

Orientar la construcción de aplicaciones web, a la disposición y publicación de
servicios empresariales.
DESARROLLO DEL CURSO.
El curso de PHP tendrá un enfoque práctico, apoyado por la teoría y la investigación para
la resolución de los distintos problemas planteados.
Las horas presenciales se desarrollarán a lo largo de dos módulos específicos (64 horas
cada uno) más un módulo como tutoría (32 horas), quedando abierta la posibilidad si el
profesor lo decide para dedicar tiempo adicional para prestar orientar y asistir a los
estudiante de manera virtual ya sea mediante correo electrónico o red social.
página 5 de 12
Tecnicatura de Redes y Software
Programación I
Módulo
I
Programación I. En este módulo se enseña la base de programación de PHP.
PHP es el lenguaje de lado servidor más extendido de internet. Nacido en 1994,
se trata de un lenguaje de creación relativamente reciente. Es un lenguaje que
ha tenido una gran aceptación en la comunidad de desarrolladores, debido a la
potencia y simplicidad que lo caracterizan, así como al soporte generalizado en
la mayoría de los servidores de hosting.
II
Programación
programación.
III
Tutoría Programación
Esta dedicada a analizar, calificar y hacer seguimiento de la implementación de
la programación en PHP.
Los grupos de proyecto deben asistir regularmente a la tutoría con los avances
de su proyecto final para ser evaluados y orientados sobre el mismo.
II.
Profundiza
los
conocimientos
de
este
lenguaje
de
CRONOGRAMA
CONTENIDOS CONCEPTUALES
MÓDULO SEMANA
ACTIVIDADES
Introducción a la programación
1
Los lenguajes de programación
Pseudocódigo y diagrama de flujo
I
2
IDEs (Entorno de Desarrollo Integrado)
SublimeText
3
El lenguaje HTML
Montaje de un servidor de pruebas.
4
Descarga e Instalación de Debian sobre máquina virtual
Instalación y configuración sobre Debian de:
5
Servidor web Apache
Servidor de Base de Datos MySQL
Servidor FTP vsftpd
Intérprete PHP
Introducción a PHP
página 6 de 12
Tecnicatura de Redes y Software
Programación I
MÓDULO SEMANA
6
ACTIVIDADES
Arquitectura PHP
Sintaxis.
Comentarios
Identación
Variables (de usuario y predefinidas)
7
Ámbito de las variables
Tipos de dato
Asignación
Constantes
Operadores
Aritméticos (Regla de los signos)
8
De asignación
De comparación
Lógicos
Precedencia o jerarquía de los operadores
Estructuras de control
Secuenciales
9
Selectivas (de decisión)
Simple (Si)
Doble (Si - sino)
Múltiple (Si – elseif - else, Switch)
Iterativas
Contadores, acumuladores
Anidación de estructuras de control
Break, Continue, Exit;
Arreglos
10
Numéricos
Asociativos
Unidimensionales, bidimensionales y tridimensionales
Inserción, extracción, recorridos, búsqueda, (for each, for, while)
Algoritmos de ordenación (Burbuja)
Modularización
11
Funciones (de usuario y predefinidas).
Pasaje de parámetros (por valor, por referencia)
Nativas (cadenas, fechas, red,...)
página 7 de 12
Tecnicatura de Redes y Software
Programación I
MÓDULO SEMANA
ACTIVIDADES
Definidas por el programador
Anidadas
Recursivas
Operaciones sobre cadenas.
Include y Require
Manejo de formularios.
12
Controles,
Atributos, eventos
Envío y recepción de la información
13
14
Programación orientada a objetos (POO)
Clases
Objetos
Herencia
Polimorfismo y encapsulamiento
Integración con bases de datos (SQLite y MySQL).
15
PhpMyAdmin (MySQL) y Adminer (SQLite).
Conexión, Creación y modificación de bases de datos y tablas (DDL).
Consultas SQL (DML)
16
II
Operaciones
Selección (Select)
Listado, Paginación, Búsqueda, Joins,
Inserción (Insert)
Altas
Actualización (Update)
Modificaciones
Eliminación (Delete)
Bajas
1
Procedimientos almacenados (Stored Procedure)
2
Disparadores (Triggers)
3
Transacciones (Begin, Commit, Rollback)
4
Manejo de archivos. Apertura, inserción y lectura de datos
5
Control de errores y excepciones.
6
Envío de e-mails.
7
Validación de cadenas. Expresiones regulares: preg_match(arg1,arg2) y
filter_var().
8
Procesamiento de imágenes (GD)
9
Impresión en PDF
10
Seguridad
Codificación con MD5 y SHA1
Inyección SQL
página 8 de 12
Tecnicatura de Redes y Software
MÓDULO SEMANA
Programación I
ACTIVIDADES
HTACCESS (Linux)
11
III
Manejo de sesiones y cookies
12
13
Validación local sobre formularios (JavaScript)
Plantillas (Templates)
14
Interfaz de usuario (CSS)
15
Uso de funciones en Ajax
Aplicación en el proyecto e implementación de lo aprendido en los módulos
previos
CONTENIDOS PROCEDIMENTALES
















Activación de conocimientos previos.
Integración del HTML a la programación en PHP y viceversa.
Instalación y configuración del entorno de desarrollo en un servidor web sobre una
máquina virtual (VirtualBox) para no alterar los equipos de la sala de informática.
Adopción de técnicas y herramientas ( IDEs) de codificación adecuadas al lenguaje
de programación usado.
Comprensión de la arquitectura cliente-servidor de PHP
Reconocimiento e identificación de aspectos sintácticos del lenguaje PHP.
Utilización adecuada de variables, operadores, estructuras de control, arreglos.
Comprender la conveniencia de la modularización y el uso de funciones.
Integración de formularios al espacio de trabajo.
Aplicación del paradigma de Programación Orientada a Objetos en diversas
situaciones.
Identificación de funciones nativas para entender las personalizadas.
Adquisición del uso correcto de las expresiones lógicas.
Deducción y construcción de un algoritmo a partir de problemas puntuales.
Producción de aplicaciones integradas a base de datos
Integración de técnicas para el control de errores y de seguridad.
Aplicación de las técnicas y recursos aprendidos en el proyecto
CONTENIDOS ACTITUDINALES

Valoración e interés por descubrir nuevas técnicas de programar.
página 9 de 12
Tecnicatura de Redes y Software









Programación I
Desarrollo de una actitud de confianza positiva ante la propia capacidad para
aprender a comunicarse con sus pares.
Ser creativo en la inducción y deducción de reglas de la programación.
Esforzarse por trabajar en orden, colaborando así con el docente y sus pares.
Considerar el respeto por el docente y los pares como uno de los pilares
fundamentales para lograr la armonía en el aula.
Desarrollar una actitud de tolerancia y colaboración ante los errores y dificultades
de los otros.
Manifestar un comportamiento de dedicación y compromiso en la entrega de
tareas.
Reconocer el valor del trabajo y la solidaridad en un grupo.
Respetar los hábitos individuales y las habilidades distintas.
Demostrar una actitud crítica frente a la información que recibe.
METODOLOGÍA
El curso se realiza en modalidad presencial, aunque se prevee una tutoría online para
asistir y orientar al estudiante fuera de horarios de clase, se desarrollará desde un punto
de vista práctico, haciendo especial hincapié en los elementos más novedosos de esta
plataforma. Incluyendo: el diseño de interfaz de usuario, ciclo de procesos, acceso a base
de datos, seguridad, Internet. Cada uno de los temas abordados serán complementados
con
ejemplos del
empleo
de
dichas técnicas y procedimientos
El curso incluye un taller que implica la aplicación de los conceptos del curso a través de
casos concretos.
Clases magistrales con la PC, el cañón y el pizarrón.
Trabajos prácticos domiciliarios y en clase.
Propuestas teóricas para potenciar el dominio de conceptos propios en programación.
RECURSOS MATERIALES

Sala equipada con una computadora con acceso a internet.

Proyector multimedia.

Pizarrón.
página 10 de 12
Tecnicatura de Redes y Software
Programación I
EVALUACIÓN

La evaluación informal se realizará a través de la observación continua y diaria,
corrección y control del alumno y se tendrá en cuenta: interpretación y ejecución de
consignas, desempeño oral y escrito en clase, participación en clase, producciones
individuales y grupales, tareas para la casa, responsabilidad, esfuerzo, interés por la
materia, hábitos de orden e integración, cumplimiento de pautas y normas vigentes en
la comunidad educativa, respeto a la institución, al docente y a sus pares.
 La evaluación formal se realizará a través de evaluación escrita, trabajos prácticos
orales y escritos, individuales y grupales y proyectos.
La evaluación será permanente, de forma escrita y de forma digital, evaluándose de tanto
contenidos teóricos como prácticos. Se evaluará de forma individual, como grupal;
atendiendo a la metodología de proyectos.
Se exigirá 80% de asistencia.
Se realizara una propuesta de evaluación de proceso y en la etapa final.
PROFESOR / INSTRUCTOR:
La totalidad del curso estará a cargo del profesor Walter Nores
DURACIÓN DEL CURSO
Semestre
1
2
3
Módulo/ Asignatura
Programación 1 (PHP)
Programación 2 (PHP)
Tutoría Programación
Hs/Sem
4
4
2
Hs Totales
64
64
32
LUGAR A DESARROLLARSE:
Escuela Técnica Superior Pedro Blanes Viale -- Mercedes – Soriano.
página 11 de 12
Tecnicatura de Redes y Software
Programación I
BIBLIOGRAFÍA PARA EL ESTUDIANTE
.

Davis, Michele; Phillips, Jon. PHP y MySQL. Anaya Multimedia. 2008

Vikram Vaswani. Fundamentos de PHP. Mc Graw Hill .2009

Recursos en PHP varios. Blog del profesor Walter Nores. (s.f.). Recuperado el 13
de febrero de 2013, de http://www.walternores.com/?cat=30

Sitio oficial de PHP. Documentación y descarga de PHP. (s.f.). Recuperado el 13
de febrero de 2013, de http://php.net/
página 12 de 12