programmer sesion 00
DESCRIPTION
ghhgTRANSCRIPT
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Quienes Somos
Somos una organizacin orientada a desarrollar, capacitar e investigar tecnologa JAVA a travs de un prestigioso staff de profesionales a nivel nacional.
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
VisinPoder aportar al desarrollo del Pas usando tecnologa Java.
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Misin
Nuestro equipo trabaja para integrar la tecnologa Java en la sociedad como solucin a todas sus necesidades.
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Servicio de Capacitacin Programer (Antes Java Developer Junior - 80 horas)
[Certificado: Java Programer]
Developer (Antes Java Web Developer - 80 horas) [Certificado: Java Developer]
Expert (Antes Java Developer Senior - 80 horas) [Certificado: Java Expert]
Arquitect (Antes ADS-RUP - 80 horas) [Certificado: Java Arquitect]
Carrera (12 meses de contenido Java)[Diploma: Carrera Java]
Mobile (Antes Desarrollo mviles con Android 40 horas)[Certificado: Android Developer]
Programmer
Developer Mobile
Expert
Architect
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Programmer
Contenido
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Requisitos para Saber Programar
Que te guste la matemtica y lgica.
Conocimientos bsicos de Sistemas Operativos.
Conocimientos bsicos de Algoritmos y estructuras de datos.
Conocimientos bsicos de Bases de Datos.
Conocimientos bsicos de desarrollo Web: HTML, CSS, JS
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Quienes lo deben llevar
A los que les guste la programacin y que por sutrabajo no tengan tiempopara estudiar.
Los que deseen incrementarsus conocimientos Java.
Los que asuman el reto de la nueva generacin de desasarrolladores.
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Java EE: Pasado, presente y futuro
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Conceptos fundamentales de Programacin.
Conceptos generales de computadores y procesamiento de datos.
Los lenguajes de programacinLas herramientas de desarrollo.
Etapas para la elaboracin de un programa..
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Clase de introduccin
1. Qu es un ordenador?
2. Programas y algoritmos
3. Lenguajes de programacin
4. Java
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Qu es un ordenador?
Un sistema digital con tecnologamicroelectrnica capaz de procesarinformacin a partir de un grupo de instrucciones denominado programa
Componentes principales: Procesador (CPU: Central Processing Unit) Memoria (RAM: Random Access Memory)
Componentes auxiliares: Disco duro Lector CD-ROM Teclado Pantalla etc.
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Elementos de un ordenador
Memoria Principal
(RAM)Unidad de
Control (CU)
Unidad aritmetica
y logica (ALU)
Programa
Dispositivos de entrada Dispositivos de salida Dispositivos de
almacenamiento de datosteclado
ratn
pantalla
impresora disco duro
lector/grabador de CD-ROM
lector/grabador de disquete
Procesador(CPU)
(hardware)
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Representacin de los datos en el ordenador
El nico cdigo que entiende la CPU son los bits.
Los bits son representados en circuitos electrnicos que pueden estar en estado on (1) u off (0)
Las instrucciones se mandan a la CPU en forma de bytes, que son palabras de 8 bits
1 byte = 8 bits
1 kilobyte = 1 024 bytes
1 megabyte = 1 024 kilobytes = 1 048 576 bytes
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Representacin de los datos en el ordenador
Base 10:
Dgitos = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
1111 = 1*103 + 1*102 + 1*101 + 1*100
Base 2:
Dgitos = {0, 1}
1111 = 1*23 + 1*22 + 1*21 + 1*20 = 8 + 4 + 2 + 1 = 15
Cuntos valores puede representar un byte?
1 byte = 8 bits (Ej: 01100101)
Cada bit puede representar 2 valores (0 y 1)
Un byte puede representar 28 = 256 valores
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Representacin de textos
TEXTO: My name is Anders.
ASCII: 77-121-32-110-97-109-101-32-105-115-32-65-110-100-101-114-115-46
18 bytes
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Representacin de imagen
Divisin de la imagen en una matriz de pixels (unidad de la imagen)
Cada pixel asociado con un color
0 0 0 0 0 0 0 0
0 0 1 1 0 1 1 0
0 0 1 0 0 0 1 0
0 0 1 0 0 0 1 0
0 0 1 1 0 1 1 0
0 0 0 0 0 0 0 0
0 0 1 1 0 1 1 0
0 0 0 0 0 0 0 0
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Representacin de sonido
Discretizacin de la amplitud
Un byte para cada valor
4 8 12 13 12 10 8
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Qu es un programa?
Un programa es una secuencia de instrucciones a la CPU
Cada instruccin es un conjunto de bytes
Ejemplos de instrucciones:
Leer un dato del teclado
Guardar un dato en la memoria
Ejecutar una operacin sobre dos datos
Mostrar un dato en la pantalla
etc.
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Acceso a la memoria
9
8
7
6
5
4
3
2
1
15
64
32
10
0
2
45
125
12
RAM
CPU
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.25
Algoritmo Un esquema para resolver cierto tipo de problema
Se puede traducir en un programa para ejecutarlo en un ordenador
Pasos para la resolucin de un problema con ordenador:
1. Diseo de un algoritmo
2. Codificacin de un programa
3. Ejecucin y validacin
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.26
Algoritmo Componentes:
Entrada: datos del problema a resolver
Salida: el resultado de la resolucin
Proceso: pasos a seguir para la resolucin
Propiedades:
Preciso: orden estricto + expresiones precisas
Definido: con la misma entrada, siempre resulta la misma salida
Finito: nmero finito de pasos
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.27
Algoritmo 1 Problema: Sumar dos nmeros
Solucin:
Entrada: dos nmeros
Salida: guardar la suma en la memoria y imprimirla por pantalla
Proceso:
1) Aadir los dos nmeros
2) Guardar el resultado en la memoria
3) Imprimir el resultado por pantalla
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.28
Lenguajes de programacin
Lenguajes mquina
Lenguajes ensamblador
Lenguajes de alto nivel: C, C++, Visual Basic, Java, Pascal, Prolog, LISP,
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.29
Lenguajes mquina
Programas son secuencias de instrucciones compuestas de bytes:
16 29 156 9 82 75
Ventajas:
La CPU entiende estos programas
Desventajas:
Pensar en modo de 0s y 1s es muydifcil para nosotros
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Lenguajes ensamblador
Instrucciones compuestas de palabras cortas y nmeros: LOD 15 6
LOD 16 8
ADD 15 16 17
JMP 10
Ventajas: Ms fcil a entender
Desventajas: Todava bastante abstracto
Necesita traducir el cdigo a lenguajes mquina
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.31
Lenguajes de alto nivel
Diseados para ser ms parecidos a lenguaje natural
Ventajas:
Mucho ms fcil de dar instrucciones
Desventajas:
Ms complicado convertir en lenguajes mquina
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.32
Lenguajes de programacin:Por qu hay tantos?
Cmo nacen, sobreviven y caducan?
1. Diferentes dominios de aplicacin: Programacin de sistemas rapidez y acceso de bajo nivel: C
Inteligencia artificial computacin simblica: LISP, Prolog
Programacin cientfica frmulas matemticas: Fortran
Negocios transacciones: COBOL
Uso especfico: SQL (bases de datos), Perl (manipulacin de textos), JavaScript (pginas web), Pascal (formacin)
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.33
Lenguajes de programacin:Por qu hay tantos?
Cmo nacen, sobreviven y caducan?
1. Diferentes necesidades: Fiabilidad: Ada
Escabilidad, paradigma orientado a objeto: C C++
Portabilidad: Java
2. Evolucin: Mejora del hardware
Mejor comprensin de como reforzar criterios de legibilidad, facilidad de aprender y escribir, fiabilidad
3. Importancia de la estandardizacin
4. Nmero de usuarios!
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.34
Traductores de lenguaje: intrpretes
PROGRAMA FUENTE
INTERPRETE
EJECUCION DE LA(S)
INSTRUCCION(ES)
INTERPRETADA(S)
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.35
Traductores de lenguaje: compiladores
PROGRAMA FUENTE
COMPILADOR
ENLAZADOR
(binder, linker)
EJECUCION
Fase de compilacin
Fase de ejecucin
OPCION 1
programa
ejecutable
Fase de compilacin
Fase de ejecucin
OPCION 2
programa
objeto
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.36
Java
Se desarroll en los comienzos de los aos 1990
La intencin era crear una herramienta para escribir programas cortos y efectivos
Ventajas:
Bsico, fcil de entender
Porttil: el mismo cdigo sirve para todos los sistemas operativos
Soporta interfaz grfica de usuario (GUI)
Apropiado para programas en Internet
Desventajas:
La ejecucin es ms lenta que algunos otros lenguajes
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.37
Java
El cdigo fuente se guarda en un archivo con extensin .java
Un compilador traduce el cdigo fuente en cdigo de byte, y lo guarda en un archivo con extensin .class
Las instrucciones son diferentes para diferentessistemas operativos
Un intrprete especfico al sistema operativointerpreta el cdigo byte para ejecutar el programa
Un programa puede ser compuesto de varios archivos
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
La Mquina Virtual Java (JVM)
PROGRAMA FUENTE
COMPILADOR JAVA
PROGRAMA OBJETO
.java
.class
Programa bytecode para JVM
INTERPRETE (JVM)
para Windows
INTERPRETE (JVM)
para Linux
INTERPRETE (JVM)
para Macintosh
WINDOWS LINUX MACINTOSH
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.39
Ejecucin de un programa Java
HolaMundo.java
HolaMundo.class
javac HolaMundo.java
System.class
java HolaMundo
SISTEMA OPERATIVO
compilador Java
llamar a la JVM
crear el programa
en un editor
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Componentes de un lenguaje
Sintaxis (gramtica): reglas que determinan de manera estricta el vocabulario, orden y formato de las instrucciones permitidas
Errores sintcticos: el programa no compila y/o no se puede interpretar
Semntica (sentido): el programa, al ejecutarlo, produce el resultado correcto que uno quiere
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Errores de programacin
Modificar o crear un archivo .java
Editar para corregir errores
Compilar
Ejecutar programaDepurar
(debugging)
errores de compilacin (sintaxis)
no hay errores
errores de ejecucin (semntica)
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
https://blockly-games.appspot.com/
-
Av. Arenales 395 Oficina 403 405 / 43376948 3327162 / [email protected] CJava, siempre para apoyarte.
Gracias