FUNDAMENTOS DE LA PROGAMACION

FACTORES DEL SOFTWARE

EFICIENCIA

Capacidad de hacer un buen uso de los recursos que usa.

TRANSPORTABILIDAD (PORTABILIDAD)

Facilidad en la que un software puede ser transportado sobre diferentes sistemas físicos o lógicos.

INTEGRIDAD

Capacidad de un software a proteger sus propios componentes contra los procesos que no tenga el derecho de acceder .

FÁCIL DE UTILIZAR

Un software es fácil de utilizar si se puede comunicar consigo de manera cómoda.

CORRECCIÓN

Capacidad de los productos software de realizar exactamente las tareas definidas por su especificación.

ROBUSTEZ

Capacidad de los productos software de funcionar incluso en situaciones anormales.

EXTENSIBILIDAD

Capacidad de los productos de adaptarse a cambios en su especificación.

Diseño simple.

Descentralización.

REUTILIZACIÓN

Capacidad de los productos de ser reutilizados, en su totalidad o en parte, en nuevas aplicaciones.

COMPATIBILIDAD

Facilidad para ser combinados con otros.

EL CICLO DE VIDA DEL SOFTWARE

ANÁLISIS

Análisis y definición del problema

Definir cuál es el problema y lo que se necesita para resolverlo.

Se debe tener comunicación con el usuario.

Especificación de requisitos

Se trata de la escritura de un prototipo o modelo sencillo del sistema final que simule el comportamiento de las partes del producto software deseado.

DISEÑO

Se debe dividir en módulos indicando su interacción.

Indica como ha de hacerse el programa.

IMPLEMENTACIÓN

Traduce los algoritmos del diseño en un programa escrito en un lenguaje de programación.

PRUEBAS E INTEGRACIÓN

Se eliminan tantos errores tantos errores lógicos como se pueda.

VERIFICACIÓN

Construcción de pruebas matemáticas que ayudan a determinar si los programas hacen lo que se supone que deben de hacer.

MANTENIMIENTO

Un sistema de software producirá errores que serán detectados, casi con seguridad, por los usuarios del sistema y que no se descubrieron durante la fase de prueba.

LA OBSOLESCENCIA: PROGRAMAS OBSOLETOS

Fase en la que el software se queda anticuado y es preciso actualizar o escribir un nuevo programa sustitutorio al antiguo.

Algoritmos

Conjunto finito de pasos a seguir para resolver un
problema

Caracteristicas

Preciso

Definido

Finito

Estructuras de Control

Secuenciales

Selectivas

Simple

Doble (alternativa)

Multiple

Casos

Ciclicas (iterativas)

Mientras

Repetir

Hacer

Para

Para Cada

Anidamiento

Paradigmas de programacion

Declarativa

Funcional

Prolog

Logico

Iswim

Compone

Léxico

Sintaxis

Semantica

Imperativa

Estructurado

C Pascal

Orientado a objetos

Java c#

Método de un programador en el desarrollo de un programa

Tipos de compiladores

Compilador en una pasada. Examina el código fuente una sola vez, generando el código objeto.

Optimización

Lee un código fuente, lo analiza y descubre errores potenciales sin ejecutar el programa.

Compilador cruzado

Genera un código ejecutable en un ordenador distinto de aquel en que se realiza la compilación.

Autocompilador.

Es el compilador que está escrito en el mismo lenguaje a compilar, básicamente nos sirve para hacer ampliaciones al lenguaje, mejorar el código generado, etc.

Compilador de montaje y ejecución.

Se fragmenta el programa fuente en módulos que se compilan por separado, y una vez compilados se unen mediante un enlazador para formar un módulo ejecutable.

Compiladores incrementales

Generan un código objeto instrucción por instrucción (en vez de hacerlo para todo el programa) cuando el usuario teclea cada orden individual. El otro tipo de compiladores requiere que todos los enunciados o instrucciones se compilen conjuntamente.

Compilador de pasadas múltiples

Requieren pasos intermedios para producir un código en otro lenguaje, y una pasada final para producir y optimizar el código producido durante los pasos anteriores.

De compiladores

Traduce el código maquina a un lenguaje de alto nivel, como ejemplo Java, en lugar de traducir a ensamblador, que es lo que hace el desamblador.

Desambladores

Traduce el lenguaje maquina a lenguaje ensamblado. Se utilia para realizar ingenieria inversa

Ensambladores

Traduce los nombres simbolicos que tienen las instrucciones (ejemplo: LOAD) a cada una de las instrucciones en codigo binario (00010101).

LENGUAJES DE PROGRAMACION

Lenguajes ensambladores

Facilita la labor de los programas

Lenguaje de maquina

Consta de cadenas de numeros binarios

Lenguaje de declaracion

En donde podemos obtener informacion y escalar

Lenguaje de alto nivel

Para agilizar la codificacion conocida como ensamblador

Lenguajes complicados

Facilita la labor de los programas se desarrola

Lenguajes de interpretacion

Este lenguaje se puede guardar los codigos

Definicion

Es el conjuto limitado de palabras y simbolos

Programacion

Utiliza Paradigmas

Evento

Formulario (interfaz)

Lineal

Modular

Estructurada

Secuencial, Selectiva, Repetitiva

Recursos Abstractor

Diseño descendente

Compuesto Por

Propiedades y Metodos

POO

Sus pilares son

Abstraccion

Polimorfismo

Encapsulamiento

Herencia

Utiliza Lenguaje de Programacion

Se Clasifica por tipos de programacion

Por nivel

a) Alto nivel

b) Bajo nivel

Por como se ejecutan

a) Compilados

b) interpretados

Controla el comportamiento de la computadora

Se compone por simbolos, reglas sintaticas y semanticas

Crea Programas

Son Compilados

Utiliza Programa compilador

Convierte codigos fuente a codigo objeto

Se compone de

Codigos Fuente

Codigos Objeto

Implementa: Algoritmos (Pseudocodigos)

BRANDOM ALEXIS MARTINEZ ARANDA

Editores de Texto.

QUE SON?

Es un programa que permite crear y modificar archivos digitales compuestos unicamente por texto sin formato.

Oppen ofice.

es una suite ofimática gratuita que destaca por su elevada compatibilidad. Está desarrollada bajo el proyecto de código abierto de OpenOffice e incorpora todas las utilidades imprescindibles en este tipo de paquetes.

Stackedit.

lleno de herramientas, atajos de teclado y opciones. Desde Stackedit puedes escribir tu texto y publicarlo directamente a diversas plataformas

Markable.

es el típico con pantalla dividida: a la izquierda tienes el texto que estás escribiendo, y a la derecha, la previsualización de cómo lucirá una vez publicado.

Dillinger

En vez de guardar tu contenido en la nube, lo hace automáticamente en tu navegador: al entrar de nuevo a la página, ahí está tu texto automágicamente.

Quabel.

La cuenta gratuita permite acceder a todas sus características y tener documentos ilimitados

Draft.

su estilo minimalista te da una simple hoja en blanco donde escribir: una vez empiezas a escribir, todas las opciones desaparecen y sólo quedan dos pequeños botones para menús desplegables.

Word.

Puede usar Word para crear textos con una buena apariencia mediante fotografías o ilustraciones multicolores como imágenes o como fondo, y agregar figuras como mapas y tablas.

LO QUE APRENDI EN ESTA ACTIVIDAD

ESTA ACTIVIDAD ME AYUDO A RECORDAR LO QUE APRENDI EN LA PREPA Y ALGUNOS CONSEPTOS BASICOS DE LA MATERIA ES MUY INTERESANTE ESTUDIARLA Y ALGUNOS CONSEPTOS COMO LOS COMPILADORES NO TENIA MUY BIEN CLARO MAS QUE NADA ESTA ACTIVIDAD NOS AYUDO A RERESCAR LA MEMORIA Y NOS VA A SERVIR DE MUCHO