🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
Pj100 modulo 01
1. Módulo 01
Introducción a las computadoras,
Internet y Web
Material basado en el libro Como programar en Java de Deitel/Deitel, Editorial Pearson Education
2. Indice
Introducción
¿Qué es una computadora?
Organización de una computadora
Los primeros sistemas operativos
Computación personal, distribuida y
cliente/servidor
Internet y World Wide Web
Lenguajes máquina, lenguajes ensambladores
y lenguajes de alto nivel
3. Indice
Historia de C y C++
Historia de Java
Biblioteca de clases de Java
FORTRAN, COBOL, Pascal y Ada
BASIC, Visual Basic, Visual C++, C# y .NET
Entorno de desarrollo típico en Java
4. Introducción
Java se ha convertido
en el lenguaje de
elección para
implementar
aplicaciones basadas
en Internet y software
para dispositivos que
se comunican a
través de una red
5. Introducción
Java Enterprise
Edition (Java EE)
está orientada hacia
el desarrollo de
aplicaciones de redes
distribuidas de gran
escala y aplicaciones
basadas en Web
6. Introducción
Java Micro Edition
(Java ME) está
orientada hacia el
desarrollo de
aplicaciones para
dispositivos
pequeños, con
memoria limitada,
como teléfonos
celulares,
radiolocalizadores y
PDAs
7. ¿Qué es una computadora?
Una computadora es
un dispositivo capaz
de realizar cálculos y
tomar decisiones
lógicas a velocidades
de millones de veces
más rápidas que los
humanos
8. ¿Qué es una computadora?
Las computadoras
procesan los datos
bajo el control de
conjuntos de
instrucciones
llamadas programas
de cómputo
9. ¿Qué es una computadora?
Los programas guían
a las computadoras a
través de acciones
especificadas por los
programadores de
computadoras
10. ¿Qué es una computadora?
Una computadora
está compuesta por
varios dispositivos
conocidos como
hardware
A los programas que
se ejecutan en una
computadora se les
denomina software
11. Organización de una computadora
Casi todas las computadoras pueden
representarse mediante seis unidades lógicas
Computadora
Unidad de
entrada
Unidad de
salida
Unidad de
memoria
Unidad
aritmética/lógica
CPU
Unidad de
almacenamiento
12. Organización de una computadora
La unidad de entrada obtiene información
desde los dispositivos de entrada y pone esa
información a disposición de las otras unidades
para que pueda procesarse
La unidad de salida toma información que ya
ha sido procesada por la computadora y la
coloca en los diferentes dispositivos de salida,
para que esté disponible fuera de la
computadora
13. Organización de una computadora
La unidad de memoria es la sección de
”almacen” de acceso rápido, pero con relativa
baja capacidad, de la computadora
Retiene la información que se introduce a
través de la unidad de entrada, para que la
información pueda estar disponible de manera
inmediata para procesarla cuando sea
necesario
También retiene la información procesada
hasta que ésta pueda ser colocada en los
dispositivos de salida por la unidad de salida
14. Organización de una computadora
La unidad de aritmética y lógica (ALU) es la
responsable de realizar cálculos (como suma,
resta, multiplicación y división) y tomar
decisiones
La unidad central de procesamiento (CPU)
coordina y supervisa la operación de las demás
secciones
15. Organización de una computadora
La CPU le indica a la unidad de entrada
cuándo debe grabarse la información dentro de
la unidad de memoria, a la ALU cuándo debe
utilizarse la información de la unidad de
memoria para los cálculos, y a la unidad de
salida cuándo enviar la información desde la
unidad de memoria, hasta ciertos dispositivos
de salida
16. Organización de una computadora
Los multiprocesadores contienen múltiples
CPUs y, por lo tanto, pueden realizar muchas
operaciones de manera simultánea
La unidad de almacenamiento es la sección de
”almacen” de alta capacidad y de larga
duración de la computadora
Los programas o datos que no se encuentran
en ejecución por las otras unidades,
normalmente se colocan en dispositivos de
almacenamiento secundario hasta que son
requeridos de nuevo
17. Los primeros sistemas operativos
Las primeras
computadoras eran
capaces de realizar
solamente una tarea
o trabajo a la vez
Los sistemas
operativos se
desarrollaron para
facilitar el uso de la
computadora
18. Los primeros sistemas operativos
La multiprogramación significa la operación
simultánea de muchas tareas
Con el tiempo compartido, la computadora
ejecuta una pequeña porción del trabajo de un
usuario y después procede a dar servicio al
siguiente usuario, con la posibilidad de
proporcionar el servicio a cada usuario varias
veces por segundo
20. Computación personal, distribuida y
cliente/servidor
En 1981, IBM
introdujo la
Computadora
Personal (PC), que
legitimó rápidamente
la computación en las
empresas, en la
industria y en las
organizaciones
gubernamentales
21. Computación personal, distribuida y
cliente/servidor
En la computación distribuida, en vez de que la
computación se realice sólo en una
computadora central, se distribuye mediante
redes a los sitios en donde se realiza el trabajo
de la empresa
Los servidores almacenan datos que pueden
utilizar las computadoras cliente distribuidas a
través de la red, de ahí el término
cliente/servidor
22. Computación personal, distribuida y
cliente/servidor
Java se está utilizando ampliamente para
escribir software para redes de computadoras y
para aplicaciones cliente/servidor distribuidas
23. Internet y World Wide Web
Internet es accesible
por más de mil
millones de
computadoras y
dispositivos
controlados por
computadora
24. Internet y World Wide Web
Con la introducción
de World Wide Web,
Internet se ha
convertido
explosivamente en
uno de los principales
mecanismos de
comunicación en todo
el mundo
25. Lenguajes máquina, lenguajes
ensambladores y lenguajes de alto nivel
Cualquier
computadora puede
entender de maner
directa sólo su propio
lenguaje máquina
El lenguaje máquina
es el ”lenguaje
natural” de una
computadora
26. Lenguajes máquina, lenguajes
ensambladores y lenguajes de alto nivel
Por lo general, los
lenguajes máquina
consisten en cadenas
de números (que
finalmente se reducen a
1s y 0s) que instruyen a
la computadora para
realizar sus operaciones
más elementales, una a
la vez
Lenguaje de
máquina
Los lenguajes de
máquina son
dependientes de
la máquina
Los lenguajes de
máquina son
dependientes de
la máquina
0010 0001 1010
1010 1011 1000
0110 1101 0001
0010 0001 1010
1010 1011 1000
0110 1101 0001
ComputadoraComputadora
27. EnsambladorEnsamblador
Lenguajes máquina, lenguajes
ensambladores y lenguajes de alto nivel
Los programadores
empezaron a utilizar
abreviaturas del inglés
para representar las
operaciones elementales
Estas abreviaturas
formaron la base de los
lenguajes ensambladores
Lenguaje ensamblador
Traductor
0010 0001 1010
1010 1011 1000
0110 1101 0001
0010 0001 1010
1010 1011 1000
0110 1101 0001
ComputadoraComputadora
SUB AX, AX
MOV AX, 18D
SUB AX, 18D
SUB AX, AX
MOV AX, 18D
SUB AX, 18D
28. Lenguajes máquina, lenguajes
ensambladores y lenguajes de alto nivel
Los programas traductores conocidos como
ensambladores se desarrollaron para convertir
los primeros en lenguaje ensamblador a
lenguaje máquina, a la velocidad de la
computadora
Los lenguajes de alto nivel permiten a los
programadores escribir instrucciones parecidas
al lenguaje inglés cotidiano, y contienen
notaciones matemáticas de uso común
29. Lenguajes máquina, lenguajes
ensambladores y lenguajes de alto nivel
Java es el lenguaje de programación de alto
nivel más utilizado en todo el mundo
Los programas intérpretes ejecutan los
programas en lenguajes de alto nivel
directamente
30. Historia de C y C++
Java evolucionó de C++, el cual
evolucionó de C, que a su vez
evolucionó de BCPL y B
El lenguaje C evolucionó a partir
de B, gracias al trabajo de
Dennis Ritchie en los
laboratorios Bell
Inicialmente, se hizo muy
popular como lenguaje de
desarrollo para el sistema
operativo UNIX
31. Historia de C y C++
A principios de la década
de los ochenta, Bjarne
Stroustrup desarrolló una
extensión de C en los
laboratorios Bell: C++
Este lenguaje proporciona
un conjunto de
características que
”pulen” al lenguaje C,
además de la capacidad
de una programación
orientada a objetos
32. Historia de Java
Java es un lenguaje
de programación
orientado a objetos
desarrollado por
James Gosling y su
equipo en Sun
Microsystems en
California
El lenguaje se basa en
C/C++ y al principio se
llamó Oak
33. Historia de Java
Java se utiliza para desarrollar aplicaciones
empresariales a gran escala, para mejorar la
funcionalidad de los servidores Web, para
proporcionar aplicaciones para dispositivos
domésticos y para muchos otros propósitos
Los programas en Java consisten en piezas
llamadas clases
Las clases incluyen piezas llamadas métodos,
los cuales realizan tareas y devuelven
información cuando se completan estas tareas
34. Biblioteca de clases de Java
La mayoría de los programadores en Java se
aprovechan de las ricas colecciones de clases
existentes en las bibliotecas de clases de Java,
que también se conocen como APIs (Interfaces
de Aplicaciones de Java)
La ventaja de crear sus propias clases y
métodos es que sabe como funcionan y puede
examinar el código. La desventaja es que se
requiere una cantidad considerable de tiempo y
esfuerzo potencialmente complejo
35. FORTRAN, COBOL, Pascal y Ada
Fortran (FORmula
TRANslator, Traductor
de fórmulas) fue
desarrollado por IBM
Corporation a mediados
de la década de los
cincuenta para utilizarse
en aplicaciones
científicas y de ingeniería
que requerían cálculo
matemáticos complejos
36. FORTRAN, COBOL, Pascal y Ada
COBOL (Common
Business Oriented
Language, Lenguaje
común orientado a
negocios) se utiliza
en aplicaciones
comerciales que
requieren de una
manipulación precisa
y eficiente de grandes
volúmenes de datos
37. FORTRAN, COBOL, Pascal y Ada
Las actividades de investigación en la década
de los sesenta dieron como resultado la
evolución de la programación estructurada (un
método disciplinado para escribir programas
que sean más claros, fáciles de probar y
depurar, y más fáciles de modificar que los
programas extensos producidos con técnicas
anteriores)
38. FORTRAN, COBOL, Pascal y Ada
Pascal se diseñó para
la enseñanza de la
programación
estructurada en
ambientes académicos,
y de inmediato se
convirtió en el lenguaje
de programación
preferido en la mayoría
de las universidades
39. FORTRAN, COBOL, Pascal y Ada
Ada se desarrolló
bajo el patrocinio del
Departamento de
Defensa de los
Estados Unidos
(DOD) para satisfacer
la mayoría de sus
necesidades
40. FORTRAN, COBOL, Pascal y Ada
Una característica de Ada conocida como
multitarea permite a los programadores
especificar que muchas actividades ocurrirán
en paralelo
Java, a través de una técnica que se conoce
como subprocesamiento múltiple, también
permite a los programadores escribir
programas con actividades paralelas.
41. BASIC, Visual Basic, Visual C++, C# y .NET
BASIC fué desarrollado a mediados de la
década de los sesenta para escribir programas
simples
Beginner's
AllPurpose
Symbolic
Instruction
Code
Diseñado para escribir
programas simples para las
computadoras de tiempo
compartido.
42. BASIC, Visual Basic, Visual C++, C# y .NET
El lenguaje Visual
Basic de Microsoft
simplifica el
desarrollo de
aplicaciones para
Windows
La plataforma .NET
de Microsoft integra
Internet y Web en las
aplicaciones de
computadora
43. BASIC, Visual Basic, Visual C++, C# y .NET
Visual C++ se basa en
el lenguaje C++ por lo
que disponemos de la
potencia de la
programación orientada
a objetos
C# es un lenguaje de
programación orientado
a objetos. Su sintaxis
básica deriva de C/C++
44. Entorno de desarrollo típico en Java
Por lo general, los
programas en Java
pasan a través de
cinco fases:
edición
compilación
carga
verificación y
ejecución
CompilaciónCompilación
EdiciónEdición
Cargador de
Clases
Cargador de
Clases
Verificación
Codígo
Verificación
Codígo
Ejecución
JVM
Ejecución
JVM
45. Entorno de desarrollo típico en Java
La fase 1 consiste en editar un archivo con un
editor. Escribimos un programa utilizando el
editor, realizando las correcciones necesarias y
guardando el programa en un dispositivo de
almacenamiento secundario
Un nombre de archivo que termina con la
extensión .java indica que éste contiene código
fuente en Java
46. Entorno de desarrollo típico en Java
Los entornos de desarrollo integrados (IDEs)
proporcionan herramientas que dan soporte al
proceso de desarrollo del software, incluyendo
editores para escribir y editar programas, y
depuradores para localizar errores lógicos
En la fase 2, el programador utiliza el comando
javac para compilar un programa
47. Entorno de desarrollo típico en Java
Si un programa se compila,
el compilador produce un
archivo .class que contiene
el programa compilado
El compilador de Java
traduce el código fuente de
Java en códigos de bytes
que representan las tareas
a ejecutar. La Máquina
Virtual de Java (JVM)
ejecuta los códigos de bytes
CompiladorCompilador
Codigo.java
Codigo.class
48. Entorno de desarrollo típico en Java
En la fase 3, de carga, el cargador de clases
toma los archivos .class que contienen los
códigos de bytes del programa y los transfiere
a la memoria principal
En la fase 4, a medida que se cargan las
clases, el verificador de códigos de bytes
examina sus códigos de bytes para asegurar
que sean válidos y que no violen las
restricciones de seguridad de Java
En la fase 5, la JVM ejecuta los códigos de
bytes del programa