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