Fundamentos de programación

47
Fundamentos de programación Unidad 4. Introducción a la programación.

description

Fundamentos de programación. Unidad 4. Introducción a la programación. 4.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados que forman parte de las operaciones de un sistema de computación. - PowerPoint PPT Presentation

Transcript of Fundamentos de programación

Page 1: Fundamentos de programación

Fundamentos de programación

Unidad 4. Introducción a la programación.

Page 2: Fundamentos de programación

4.1 Clasificación del software.

Definición de software.

• Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados que forman parte de las operaciones de un sistema de computación.

Page 3: Fundamentos de programación

Capas del software.

Page 4: Fundamentos de programación

Tipos de software.

• Software de sistema. Como Sistemas operativos, controladores de dispositivo, herramientas de diagnóstico, etc.

• Software de programación. Editores de texto, compiladores, IDE – como Netbeans-, etc.

• Software de aplicación. Aplicaciones ofimáticas, bases de datos, sistemas de control, videojuegos, etc.

Page 5: Fundamentos de programación

4.1.1 Software del sistema.

• Su objetivo es desvincular adecuadamente al usuario y al programador de los detalles del computador en particular, aislándolo especialmente del procesamiento referido a las características internas de: memoria, discos, puertos y dispositivos de comunicaciones, impresoras, pantallas, teclados, etc.

• El software de sistema le procura al usuario y programador adecuadas interfaces de alto nivel, herramientas y utilidades de apoyo que permiten su mantenimiento.

Page 7: Fundamentos de programación

4.1.2 Software de aplicación.

• Aquel que permite a los usuarios llevar a cabo una o varias tareas específicas, en cualquier campo de actividad susceptible de ser automatizado o asistido, con especial énfasis en los negocios.

Page 8: Fundamentos de programación

Ejemplos de software de aplicación.

• Aplicaciones de Sistema de control y automatización industrial • Aplicaciones ofimáticas • Software educativo • Software empresarial • Bases de datos • Telecomunicaciones (p.ej. internet y toda su estructura lógica) • Videojuegos • Software médico • Software de Cálculo Numérico • Software de Diseño Asistido (CAD) • Software de Control Numérico (CAM)

Page 9: Fundamentos de programación

4.2 Conceptos de programación.

• 4.2.1 Definición de programa.• Un programa, o también

llamado programa informático, programa de computación o programa de ordenador, es simplemente un conjunto de instrucciones para una computadora.

Page 10: Fundamentos de programación

Programa

• Las computadoras necesitan de los programas para funcionar, y un programa no hace nada a menos que sus instrucciones sean ejecutadas por el procesador.

• Un programa se puede referir tanto a un programa ejecutable como a su código fuente, el cual es transformado en un ejecutable cuando es compilado.

Page 11: Fundamentos de programación

4.2.2 Definición de programación.

•La programación es un proceso el cual consiste en escribir o editar el código fuente.

•Editar el código fuente significa poner a prueba, analizar y redefinir.

•La persona que tiene la habilidad para programar se le llama programador o desarrollador de software.

Page 12: Fundamentos de programación

La primer programadora.

• Ada Lovelace, hija del prestigioso poeta Lord Byron, es considerada la primera programadora de la historia. Su contribución consistió en un método para calcular los números de Bernoulli en la máquina analítica de Charles Babbage, matemático con el que colaboraba en 1842.

Page 13: Fundamentos de programación

El programador hoy.

• Hoy por hoy, un programador requiere profundos conocimientos que incluyen: matemáticas, electrónica, algorítmica, ingeniería del software, teoría de la computación, interacción persona-ordenador, etc. Por tanto, se trata de una profesión de alta calificación.

Page 14: Fundamentos de programación

4.2.3 Definición de lenguaje de programación.

• Un lenguaje de programación es un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. Es utilizado para controlar el comportamiento físico y lógico de una máquina.

Page 15: Fundamentos de programación

Algunos “lenguajes de programación”.

Page 16: Fundamentos de programación

4.3 Datos

• 4.3.1 Definición.• El dato (del latín datum), es una

representación simbólica (numérica, alfabética, algorítmica etc.), atributo o característica de una entidad.

• En programación un dato es la expresión general que describe las características de las entidades sobre las cuales opera un algoritmo.

Page 17: Fundamentos de programación

Datos

• Un dato por sí mismo no constituye información, es el procesado de los datos lo que nos proporciona información.

Page 18: Fundamentos de programación

4.3.2 Tipos de datos.• En Java los tipos de datos básicos son:

Page 19: Fundamentos de programación

4.3.2 Tipos de datos.

Otros tipos de datos en Java:

• String. Para cadenas de caracteres (texto).

• class. Para declarar clases.

• Arreglos. Para agrupar varios datos del mismo tipo.

Page 20: Fundamentos de programación

Tipos de datos, ejemplo en Java.

public class UsoVariables{

public static void main(String args[]) {

String saludo;

saludo = "Hola Mundo!"; System.out.println( saludo );

saludo = "Estoy utilizando variables"; System.out.println( saludo );

}

}

Page 21: Fundamentos de programación

4.3.3 Identificadores.

• Un identificador es un nombre que el programador selecciona para diferentes elementos del programa.

• Los identificadores se pueden definir para:– Variables (atributos).– Constantes.– Nombre del programa.– Nombres de métodos.– Argumentos o parámetros de los métodos.

Page 22: Fundamentos de programación

Recomendaciones sobre el uso de identificadores.

• No deben usarse las palabras reservadas del lenguaje, ejemplo: class, if, for, etc.

• Deben ser nombres descriptivos, por ejemplo: “area” en vez de “a”.

• No deben usarse espacios en blanco, ni caracteres especiales.

• Tener en cuenta que Java hace diferencia entre mayúsculas y minúsculas. Por lo tanto, “area” es diferente que “Area”.

Page 23: Fundamentos de programación

Subrayar los identificadores del programa.

Page 24: Fundamentos de programación

4.3.4 Almacenamiento, direccionamiento y representación en memoria.

• La computadora digital utiliza internamente el sistema binario (0, 1) (encendido, apagado) para el almacenamiento y acceso a los datos.

• Un número binario (0 ó 1) se representa mediante un bit. Las equivalencias son:– 1 byte = 8 bits.– 1 KiloByte (KB) = 1024 bytes.– 1 MegaByte(MB) = 1024 KB.– 1 GigaByte(GB) = 1024 MB.

• En la práctica la computadora digital utiliza el sistema de numeración binario y sistemas relacionados (octal y hexadecimal).

Page 25: Fundamentos de programación

Almacenamiento.

• La memoria esta compuesta por celdas que almacenan información.

• Cada celda se reconoce de manera única por una dirección.

• Para acceder a una dirección, el CPU envía señales en el bus de dirección .

Page 26: Fundamentos de programación

Almacenamiento

• Un tamaño normal del bus es de 32 bits, este permite acceder a 4,294,967,296 direcciones diferentes (232).

• Las direcciones de memoria se representan mediante el sistema numérico hexadecimal.

Page 27: Fundamentos de programación

Java y el almacenamiento.• En Java para almacenar un dato se tiene que definir de que tipo

será, ejemplo:– double area;

• Para asignarle un valor usamos el operador de asignación:– area = lado1 * lado2;

• Java almacena en una dirección de memoria ese dato, usando una representación en memoria que depende del tipo de datos (int, double, String, etc.).

• El programador puede acceder al dato, con el nombre de la variable (realmente el nombre es una referencia a la dirección de memoria real donde se almacena el valor). Ejemplo de acceso:– System.out.println(“Área = “ + area);

Page 28: Fundamentos de programación

4.3.5 Sistema de numeración binaria y hexadecimal.

• La computadora digital usa estos sistemas.

• Java proporciona operadores a nivel de bits.

Page 29: Fundamentos de programación

4.4 Operadores, operandos y expresiones.

• Operadores. Permiten realizar diferentes tipos de operaciones. Se clasifican en:– Aritméticos.– De asignación.– Relacionales o de comparación.– Lógicos o booleanos.

Page 30: Fundamentos de programación

Operadores aritméticos.

• Pemiten realizar operaciones aritméticas básicas:– Suma (+)– Resta (-)– Multiplicación (*)– División (/)– Módulo (%)

– Ejemplos:a = b * c / 2;d = 11 % 3;

Page 31: Fundamentos de programación

Operadores de asignación.

• Permiten asignar un valor a una variable.

• El operador de asignación es “=“

• Otros operadores:

Page 32: Fundamentos de programación

Operadores de comparación o relacionales.

• Permiten realizar comparaciones y regresan un resultado booleano (true o false).

Page 33: Fundamentos de programación

Operadores lógicos.

• Para construir expresiones lógicas. Generan un resultado booleano (true o false).

Page 34: Fundamentos de programación

Operadores (otros)• Unitarios (+, -). Ejemplo: -x

• Incrementales (++, --). Ejemplo:int x = 10;

x++;

System.out.println(“x = “ + x);

Concatenación de caracteres (+). Ejemplo:String nombre;

nombre = “Pedro ” + “Perez”;

Page 35: Fundamentos de programación

Operadores (otros)

• Condicional ?. Su formato es:expresionBooleana ? res1 : res2;

Donde se evalúa expresionBooleana y se devuelve res1 si el resultado es true y res2 si el resultado es false. Ejemplo:

x = 1; y = 10; z = (x < y) ? X + 3 : y + 8;

(asigna a z el valor de 4, es decir x + 3)

Page 36: Fundamentos de programación

Operandos.

• Son los valores constantes, variables o expresiones sobre los cuales trabajan los operadores. Identificar los operandos del código:

boolean x;

x = ( 20 > y / 3) || ( m * 3 <= a / b);

Page 37: Fundamentos de programación

Expresiones.

• Una expresión es un conjunto de variables unidos por operadores.

• Son ordenes que se le dan a la computadora para que realice una tarea determinada.

Page 38: Fundamentos de programación

Sentencia.

• En Java, una sentencia es una expresión que termina con punto y coma (;).

• Se pueden incluir varias sentencias en una línea, aunque lo habitual es usar una línea para cada sentencia. Ejemplo:

• i = 0; j = 5; x = i + j; // Línea de tres // sentencias

Page 39: Fundamentos de programación

4.5 Prioridad de operadores, evaluación de expresiones.

• Java usa un orden de prioridad para evaluar los operadores. Ese orden de mayor a menor es:

Page 40: Fundamentos de programación
Page 41: Fundamentos de programación

Evaluación de expresiones.

• Por lo anterior, para escribir una expresión de manera correcta en Java, se debe considerar los operadores disponibles y la prioridad. Ejercicio, escribir en Java las expresiones:

Page 42: Fundamentos de programación

4.6 Estructura básica de un programa.

• Ejemplo de un programa en Java:

Page 43: Fundamentos de programación

Elementos principales del programa.

• Paquete.

• Importar librerías.

• Clase que define el programa.

• Método principal (main) de la clase.

• Variables globales y locales.

• Sentencias.

Page 44: Fundamentos de programación

4.7 Proceso de creación de un ejecutable.

• ¿Java permite crear ejecutables directamente para una plataforma particular?

• ¿Qué es la JVM?

Page 45: Fundamentos de programación

4.7 Proceso de creación de un ejecutable.

• Programa fuente: Main.java

• Archivo en código intermedio: Main.class

• Archivo “ejecutable” de Java: Main.jar

• Si la computadora tiene instalada la JVM, se puede ejecutar el programa Java mediante el archivo “.jar”

Page 46: Fundamentos de programación

Para crear un archivo .jar en Java.

• Una vez terminado el programa, seleccionar del menú principal la opción “Build” y “Build Main Project F11”.

Page 47: Fundamentos de programación

• Lo anterior, crea una carpeta llamada “dist” dentro de la carpeta del proyecto.

• Abrir dicha carpeta y ejecutar desde ahí el programa con doble clic: