47
Software Clasificación del Software

Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

Embed Size (px)

Citation preview

Page 1: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

Software

Clasificación del Software

Page 2: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

5.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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

Capas del software.

Page 4: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

5.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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

5.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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

5.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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

5.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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

5.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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

Algunos “lenguajes de programación”.

Page 16: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

5.3 Datos

• 5.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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

Datos

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

Page 18: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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

Page 19: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

5.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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

5.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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

Subrayar los identificadores del programa.

Page 24: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

5.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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

5.3.5 Sistema de numeración binaria y hexadecimal.

• La computadora digital usa estos sistemas.

• Java proporciona operadores a nivel de bits.

Page 29: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

5.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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

Operadores de asignación.

• Permiten asignar un valor a una variable.

• El operador de asignación es “=“

• Otros operadores:

Page 32: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

Operadores de comparación o relacionales.

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

Page 33: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

Operadores lógicos.

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

Page 34: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

5.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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,
Page 41: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

5.6 Estructura básica de un programa.

• Ejemplo de un programa en Java:

Page 43: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

5.7 Proceso de creación de un ejecutable.

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

• ¿Qué es la JVM?

Page 45: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

5.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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

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: Software Clasificación del Software. 5.1 Clasificación del software. Definición de software. Es el conjunto de los programas de cómputo, procedimientos,

• 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: