Este documento trata sobre herramientas auxiliares de programación como la documentación de código, el formato Javadoc y Doxygen para generar documentación, y el uso de Make para el mantenimiento de proyectos de software. En particular, describe cómo Javadoc y Doxygen permiten generar documentación a partir de comentarios en el código, y cómo Make automatiza el proceso de compilación mediante la especificación de tareas y dependencias.
Reporte de visual c#(jose gonzalo estrada lopez)josegonzalo130
Este documento describe el lenguaje de programación C# y sus características principales en 3 oraciones o menos: El lenguaje C# fue creado por Anders Hejlsberg y combina las cualidades de lenguajes como C, C++ y Java, siendo orientado a objetos, tipado seguro y con una fuerte herencia de C/C++. C# es un lenguaje moderno, sencillo y potente que permite desarrollar aplicaciones de forma rápida y productiva gracias a su biblioteca de clases y al entorno de desarrollo Visual Studio.
Lenguaje C y los Sistemas Operativos Actualesjuan_briceo
C es un lenguaje de programación ampliamente utilizado para el desarrollo de sistemas operativos y aplicaciones. Fue creado en 1972 y es apreciado por producir código eficiente. Se usa comúnmente para crear software de sistemas como UNIX, Linux y Windows, además de aplicaciones.
El Lenguaje C y Sistemas Operativos Actualesgabirevillag
Tras investigar y analizar varios sistemas operativos, se puede ver que han evolucionado para servir como intermediarios entre el usuario y el hardware del computador, proporcionando un entorno cómodo para ejecutar programas y usar el hardware de manera eficiente, aunque difieran en interfaces y categorías.
C# es un lenguaje de programación orientado a objetos desarrollado por Microsoft como parte de su plataforma .NET. Su sintaxis se deriva de C y C++ pero incluye características de Java. Fue creado por Anders Hejlsberg para aprovechar las lecciones aprendidas de otros lenguajes y hacerlo moderno, seguro y orientado a objetos, componentes y la web.
Este documento resume las características del lenguaje de programación C. Explica que C fue desarrollado originalmente en los años 70 y es ampliamente usado para crear software de sistemas. Detalla algunas características clave de C como su tipado estático, uso de punteros, estructuras de datos y bibliotecas. También reconoce algunas carencias de C como la falta de recolección de basura y soporte nativo para programación orientada a objetos y multihilo.
LINQ permite escribir consultas directamente en C# a través de expresiones de consulta declarativas que pueden usarse para consultar y transformar datos de diferentes orígenes. LINQ ofrece un modelo coherente para trabajar con datos de múltiples formatos y orígenes simplificando la necesidad de aprender diferentes lenguajes de consultas.
El documento describe diferentes tipos de lenguajes de programación, incluyendo lenguajes de bajo, medio y alto nivel. También discute las diferencias entre los lenguajes C y C++, señalando que C++ agrega características orientadas a objetos como clases a C. Además, explica que un lenguaje estructurado es preciso y claro, mientras que un lenguaje orientado a objetos implementa conceptos como tipos de datos, operaciones y la capacidad de instanciar tipos.
Un lenguaje de programación es un lenguaje inventado para controlar una máquina como un ordenador. Existen muchos tipos de lenguajes de programación que se diferencian por su nivel de abstracción, propósito, paradigma de programación y forma de ejecución. Los lenguajes evolucionan hacia mayores niveles de abstracción pero los de generaciones anteriores todavía se usan.
Reporte de visual c#(jose gonzalo estrada lopez)josegonzalo130
Este documento describe el lenguaje de programación C# y sus características principales en 3 oraciones o menos: El lenguaje C# fue creado por Anders Hejlsberg y combina las cualidades de lenguajes como C, C++ y Java, siendo orientado a objetos, tipado seguro y con una fuerte herencia de C/C++. C# es un lenguaje moderno, sencillo y potente que permite desarrollar aplicaciones de forma rápida y productiva gracias a su biblioteca de clases y al entorno de desarrollo Visual Studio.
Lenguaje C y los Sistemas Operativos Actualesjuan_briceo
C es un lenguaje de programación ampliamente utilizado para el desarrollo de sistemas operativos y aplicaciones. Fue creado en 1972 y es apreciado por producir código eficiente. Se usa comúnmente para crear software de sistemas como UNIX, Linux y Windows, además de aplicaciones.
El Lenguaje C y Sistemas Operativos Actualesgabirevillag
Tras investigar y analizar varios sistemas operativos, se puede ver que han evolucionado para servir como intermediarios entre el usuario y el hardware del computador, proporcionando un entorno cómodo para ejecutar programas y usar el hardware de manera eficiente, aunque difieran en interfaces y categorías.
C# es un lenguaje de programación orientado a objetos desarrollado por Microsoft como parte de su plataforma .NET. Su sintaxis se deriva de C y C++ pero incluye características de Java. Fue creado por Anders Hejlsberg para aprovechar las lecciones aprendidas de otros lenguajes y hacerlo moderno, seguro y orientado a objetos, componentes y la web.
Este documento resume las características del lenguaje de programación C. Explica que C fue desarrollado originalmente en los años 70 y es ampliamente usado para crear software de sistemas. Detalla algunas características clave de C como su tipado estático, uso de punteros, estructuras de datos y bibliotecas. También reconoce algunas carencias de C como la falta de recolección de basura y soporte nativo para programación orientada a objetos y multihilo.
LINQ permite escribir consultas directamente en C# a través de expresiones de consulta declarativas que pueden usarse para consultar y transformar datos de diferentes orígenes. LINQ ofrece un modelo coherente para trabajar con datos de múltiples formatos y orígenes simplificando la necesidad de aprender diferentes lenguajes de consultas.
El documento describe diferentes tipos de lenguajes de programación, incluyendo lenguajes de bajo, medio y alto nivel. También discute las diferencias entre los lenguajes C y C++, señalando que C++ agrega características orientadas a objetos como clases a C. Además, explica que un lenguaje estructurado es preciso y claro, mientras que un lenguaje orientado a objetos implementa conceptos como tipos de datos, operaciones y la capacidad de instanciar tipos.
Un lenguaje de programación es un lenguaje inventado para controlar una máquina como un ordenador. Existen muchos tipos de lenguajes de programación que se diferencian por su nivel de abstracción, propósito, paradigma de programación y forma de ejecución. Los lenguajes evolucionan hacia mayores niveles de abstracción pero los de generaciones anteriores todavía se usan.
El documento presenta resúmenes breves de varios lenguajes de programación populares como Perl, Delphi/Object Pascal, Java, PHP, Javascript, C, Python, C#, Visual Basic .NET y C++, describiendo sus características principales y orígenes.
Lenguaje de programación C - Cleibery.cleiberylobo
El documento describe el lenguaje de programación C. C fue desarrollado originalmente en los años 1960 y 1970 y es ampliamente utilizado para crear software de sistemas como sistemas operativos. C es un lenguaje de tipos de datos estáticos y débilmente tipificado que ofrece control a bajo nivel pero también estructuras de alto nivel. El documento luego explica la estructura básica de C y cómo declarar variables y tipos de datos estructurados.
El documento describe las características fundamentales del lenguaje de programación Java. Explica que Java es un lenguaje orientado a objetos desarrollado por Sun Microsystems en los años 90 que toma su sintaxis de C y C++ pero tiene un modelo de objetos más simple. Las aplicaciones Java se compilan típicamente a bytecode, que puede ser interpretado o compilado a código nativo para su ejecución. También describe brevemente la historia y evolución de Java.
C# es un lenguaje de programación orientado a objetos diseñado por Microsoft para su plataforma .NET. Tomó las mejores características de lenguajes como C++, Java y Visual Basic, y agregó características como seguridad de tipos, gestión automática de memoria y compatibilidad con múltiples plataformas. C# es el lenguaje nativo de .NET debido a que fue diseñado específicamente para esta plataforma, haciendo la programación más sencilla e intuitiva que con otros lenguajes.
Características de los 10 lenguajes de programaciónGabriel Solano
El documento describe características de 10 lenguajes de programación, incluyendo Java, C, C++, C#, Python, Delphi/Object Pascal y PHP. Describe que Java es orientado a objetos y multiplataforma, C es usado para sistemas operativos y aplicaciones, y PHP es popular para desarrollo web con contenido dinámico.
Este documento presenta el lenguaje de programación C. Cubre temas como las características del lenguaje C, la estructura de un programa C, ejemplos básicos de programas C, la compilación de programas C, directivas del preprocesador, depuración con gdb y el uso de makefiles. También incluye secciones sobre tipos de datos, operadores, control de flujo, funciones, arrays, punteros, estructuras, la biblioteca estándar de C y herramientas de desarrollo.
El documento describe las características, utilidad y aplicaciones del lenguaje de programación C. C es un lenguaje de propósito general que ofrece control de flujo, estructuras sencillas y operadores. Se usa para crear aplicaciones y software de sistemas. Algunas ventajas incluyen su portabilidad, flexibilidad y acceso a memoria de bajo nivel mediante punteros. Las desventajas son la falta de soporte nativo para programación orientada a objetos y multihilo.
El documento describe el lenguaje de programación C, incluyendo sus creadores Dennis Ritchie y Ken Thompson, sus ventajas como su portabilidad y flexibilidad, y sus desventajas como su falta de soporte para programación orientada a objetos. El C fue creado en 1972 y se ha convertido en un lenguaje ampliamente utilizado para una variedad de aplicaciones debido a su simplicidad y eficiencia.
C es un lenguaje de programación creado en 1972 por Dennis Ritchie para la implementación de sistemas operativos como Unix. Es un lenguaje estático y de tipado débil pero con características de bajo nivel que permiten control y eficiencia. C# es la evolución del lenguaje B y fue creado originalmente por Microsoft como un lenguaje orientado a objetos para desarrollar aplicaciones de escritorio.
El documento describe el lenguaje de programación C. Explica que C fue diseñado por Dennis Ritchie en 1970 y tiene características como ser de propósito general, permitir programación estructurada, tipos de datos abundantes y portabilidad. También describe entornos de desarrollo integrados populares como Dev-C++ y Eclipse que permiten programar en C. Finalmente, señala que a pesar de su antigüedad, C sigue siendo ampliamente utilizado en la industria del desarrollo de software.
Este documento describe los conceptos básicos de los lenguajes de programación. Explica que un lenguaje de programación es un conjunto de símbolos y reglas que permiten comunicarse con las computadoras. Describe elementos como variables, vectores, condicionantes y bucles que permiten estructurar programas. También habla sobre técnicas como corrección, claridad y eficiencia que mejoran la calidad de los programas, así como diferentes paradigmas como el imperativo y declarativo. Finalmente, explica que existen diferentes niveles de lenguajes de programación, desde el
El documento proporciona una introducción al lenguaje de programación C. Explica que C es un lenguaje de propósito general que ofrece estructuras sencillas y buen conjunto de operadores. También describe algunas características clave como su portabilidad, tipos de datos directamente tratables por hardware, y uso de funciones.
Un lenguaje de programación, es un idioma artificial diseñado para expresar computaciones que pueden ser llevadas a cabo por máquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana
Este documento describe varios lenguajes de programación importantes. Explica que PHP es un lenguaje del lado del servidor para crear páginas web dinámicas, mientras que JavaScript es del lado del usuario y permite interactividad. También describe a Python, destacando su sintaxis limpia y cantidad de librerías incorporadas.
El documento define los lenguajes de programación y clasifica los tipos de lenguajes. Explica que los lenguajes de bajo nivel como el lenguaje de máquina y ensamblador son dependientes de la máquina, mientras que los lenguajes de alto nivel como Visual Basic y SQL son independientes y más fáciles de usar. También introduce los lenguajes de medio nivel como C que tienen características de alto y bajo nivel.
El documento describe la historia y características del lenguaje de programación C. Comenzó siendo desarrollado por Dennis Ritchie en los años 1970 en Bell Labs para crear el sistema operativo Unix. Desde entonces ha evolucionado a través de varias versiones estandarizadas como ANSI C, C99 y C11. C es un lenguaje portable, flexible y de propósito general que ha sido la base para muchos otros lenguajes como C++.
El documento describe la evolución de los lenguajes de programación, desde los lenguajes de bajo nivel como el lenguaje de máquina y el ensamblador, hasta los lenguajes de alto nivel estructurados y orientados a objetos. También discute la clasificación de los lenguajes según generaciones, con los lenguajes de primera generación siendo lenguajes de máquina, los de segunda generación siendo ensambladores, y los de tercera generación siendo lenguajes de alto nivel. Finalmente, explica conceptos clave de la programación orient
El documento describe los elementos básicos del lenguaje de programación C, incluyendo tipos de datos, variables, constantes, operadores, sentencias de control, funciones y estructuras. Explica conceptos como identificadores, conversiones de tipos de datos, operadores aritméticos y lógicos, bucles for, while y do/while, y punteros. También cubre temas como entrada y salida, asignación dinámica de memoria y funciones estándar de la biblioteca C.
Este documento trata sobre objetos distribuidos e invocación remota. Explica tres modelos de programación para aplicaciones distribuidas: llamada a procedimiento remoto, invocación remota de métodos, y programación basada en eventos. También describe conceptos como middleware, interfaces, lenguajes de definición de interfaces, y el modelo de objetos distribuidos.
C es un lenguaje de programación creado en los años 1970 que se usa ampliamente para crear software de sistemas como sistemas operativos y aplicaciones embebidas debido a que genera código eficiente. También se usa para aplicaciones científicas, industriales y de simulación. A pesar de su antigüedad, sigue siendo popular debido a que es portable, permite programación modular y acceso a nivel de hardware.
El documento habla sobre la anulación y sustitución de métodos en programación orientada a objetos. La anulación permite que una subclase sobrescriba un método heredado de la superclase, reemplazando su implementación. La versión del método que se ejecuta depende del objeto usado para invocarlo. También se menciona que las propiedades y métodos pueden ser redefinidos en una clase derivada, lo que se conoce como sobrescritura.
El documento presenta resúmenes breves de varios lenguajes de programación populares como Perl, Delphi/Object Pascal, Java, PHP, Javascript, C, Python, C#, Visual Basic .NET y C++, describiendo sus características principales y orígenes.
Lenguaje de programación C - Cleibery.cleiberylobo
El documento describe el lenguaje de programación C. C fue desarrollado originalmente en los años 1960 y 1970 y es ampliamente utilizado para crear software de sistemas como sistemas operativos. C es un lenguaje de tipos de datos estáticos y débilmente tipificado que ofrece control a bajo nivel pero también estructuras de alto nivel. El documento luego explica la estructura básica de C y cómo declarar variables y tipos de datos estructurados.
El documento describe las características fundamentales del lenguaje de programación Java. Explica que Java es un lenguaje orientado a objetos desarrollado por Sun Microsystems en los años 90 que toma su sintaxis de C y C++ pero tiene un modelo de objetos más simple. Las aplicaciones Java se compilan típicamente a bytecode, que puede ser interpretado o compilado a código nativo para su ejecución. También describe brevemente la historia y evolución de Java.
C# es un lenguaje de programación orientado a objetos diseñado por Microsoft para su plataforma .NET. Tomó las mejores características de lenguajes como C++, Java y Visual Basic, y agregó características como seguridad de tipos, gestión automática de memoria y compatibilidad con múltiples plataformas. C# es el lenguaje nativo de .NET debido a que fue diseñado específicamente para esta plataforma, haciendo la programación más sencilla e intuitiva que con otros lenguajes.
Características de los 10 lenguajes de programaciónGabriel Solano
El documento describe características de 10 lenguajes de programación, incluyendo Java, C, C++, C#, Python, Delphi/Object Pascal y PHP. Describe que Java es orientado a objetos y multiplataforma, C es usado para sistemas operativos y aplicaciones, y PHP es popular para desarrollo web con contenido dinámico.
Este documento presenta el lenguaje de programación C. Cubre temas como las características del lenguaje C, la estructura de un programa C, ejemplos básicos de programas C, la compilación de programas C, directivas del preprocesador, depuración con gdb y el uso de makefiles. También incluye secciones sobre tipos de datos, operadores, control de flujo, funciones, arrays, punteros, estructuras, la biblioteca estándar de C y herramientas de desarrollo.
El documento describe las características, utilidad y aplicaciones del lenguaje de programación C. C es un lenguaje de propósito general que ofrece control de flujo, estructuras sencillas y operadores. Se usa para crear aplicaciones y software de sistemas. Algunas ventajas incluyen su portabilidad, flexibilidad y acceso a memoria de bajo nivel mediante punteros. Las desventajas son la falta de soporte nativo para programación orientada a objetos y multihilo.
El documento describe el lenguaje de programación C, incluyendo sus creadores Dennis Ritchie y Ken Thompson, sus ventajas como su portabilidad y flexibilidad, y sus desventajas como su falta de soporte para programación orientada a objetos. El C fue creado en 1972 y se ha convertido en un lenguaje ampliamente utilizado para una variedad de aplicaciones debido a su simplicidad y eficiencia.
C es un lenguaje de programación creado en 1972 por Dennis Ritchie para la implementación de sistemas operativos como Unix. Es un lenguaje estático y de tipado débil pero con características de bajo nivel que permiten control y eficiencia. C# es la evolución del lenguaje B y fue creado originalmente por Microsoft como un lenguaje orientado a objetos para desarrollar aplicaciones de escritorio.
El documento describe el lenguaje de programación C. Explica que C fue diseñado por Dennis Ritchie en 1970 y tiene características como ser de propósito general, permitir programación estructurada, tipos de datos abundantes y portabilidad. También describe entornos de desarrollo integrados populares como Dev-C++ y Eclipse que permiten programar en C. Finalmente, señala que a pesar de su antigüedad, C sigue siendo ampliamente utilizado en la industria del desarrollo de software.
Este documento describe los conceptos básicos de los lenguajes de programación. Explica que un lenguaje de programación es un conjunto de símbolos y reglas que permiten comunicarse con las computadoras. Describe elementos como variables, vectores, condicionantes y bucles que permiten estructurar programas. También habla sobre técnicas como corrección, claridad y eficiencia que mejoran la calidad de los programas, así como diferentes paradigmas como el imperativo y declarativo. Finalmente, explica que existen diferentes niveles de lenguajes de programación, desde el
El documento proporciona una introducción al lenguaje de programación C. Explica que C es un lenguaje de propósito general que ofrece estructuras sencillas y buen conjunto de operadores. También describe algunas características clave como su portabilidad, tipos de datos directamente tratables por hardware, y uso de funciones.
Un lenguaje de programación, es un idioma artificial diseñado para expresar computaciones que pueden ser llevadas a cabo por máquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana
Este documento describe varios lenguajes de programación importantes. Explica que PHP es un lenguaje del lado del servidor para crear páginas web dinámicas, mientras que JavaScript es del lado del usuario y permite interactividad. También describe a Python, destacando su sintaxis limpia y cantidad de librerías incorporadas.
El documento define los lenguajes de programación y clasifica los tipos de lenguajes. Explica que los lenguajes de bajo nivel como el lenguaje de máquina y ensamblador son dependientes de la máquina, mientras que los lenguajes de alto nivel como Visual Basic y SQL son independientes y más fáciles de usar. También introduce los lenguajes de medio nivel como C que tienen características de alto y bajo nivel.
El documento describe la historia y características del lenguaje de programación C. Comenzó siendo desarrollado por Dennis Ritchie en los años 1970 en Bell Labs para crear el sistema operativo Unix. Desde entonces ha evolucionado a través de varias versiones estandarizadas como ANSI C, C99 y C11. C es un lenguaje portable, flexible y de propósito general que ha sido la base para muchos otros lenguajes como C++.
El documento describe la evolución de los lenguajes de programación, desde los lenguajes de bajo nivel como el lenguaje de máquina y el ensamblador, hasta los lenguajes de alto nivel estructurados y orientados a objetos. También discute la clasificación de los lenguajes según generaciones, con los lenguajes de primera generación siendo lenguajes de máquina, los de segunda generación siendo ensambladores, y los de tercera generación siendo lenguajes de alto nivel. Finalmente, explica conceptos clave de la programación orient
El documento describe los elementos básicos del lenguaje de programación C, incluyendo tipos de datos, variables, constantes, operadores, sentencias de control, funciones y estructuras. Explica conceptos como identificadores, conversiones de tipos de datos, operadores aritméticos y lógicos, bucles for, while y do/while, y punteros. También cubre temas como entrada y salida, asignación dinámica de memoria y funciones estándar de la biblioteca C.
Este documento trata sobre objetos distribuidos e invocación remota. Explica tres modelos de programación para aplicaciones distribuidas: llamada a procedimiento remoto, invocación remota de métodos, y programación basada en eventos. También describe conceptos como middleware, interfaces, lenguajes de definición de interfaces, y el modelo de objetos distribuidos.
C es un lenguaje de programación creado en los años 1970 que se usa ampliamente para crear software de sistemas como sistemas operativos y aplicaciones embebidas debido a que genera código eficiente. También se usa para aplicaciones científicas, industriales y de simulación. A pesar de su antigüedad, sigue siendo popular debido a que es portable, permite programación modular y acceso a nivel de hardware.
El documento habla sobre la anulación y sustitución de métodos en programación orientada a objetos. La anulación permite que una subclase sobrescriba un método heredado de la superclase, reemplazando su implementación. La versión del método que se ejecuta depende del objeto usado para invocarlo. También se menciona que las propiedades y métodos pueden ser redefinidos en una clase derivada, lo que se conoce como sobrescritura.
El documento resume las características principales del lenguaje de programación C++, incluyendo su definición, funciones, ventajas, desventajas y áreas de aplicación común. C++ es una extensión del lenguaje C diseñado en la década de 1980 que combina programación estructurada, orientada a objetos y genérica. Tiene muchas funciones útiles pero también algunas desventajas como no detectar errores lógicos. Se usa comúnmente en compañías de consultoría, aplicaciones científicas y videojue
Escribí este artículo en coautoría con Elvia Morales Turruviates, como parte de su Tesis de Maestría que yo asesoré. Estábamos haciendo ingenieŕia inversa a código fuente de C y ASM de la GUI GEM.
El documento describe las características principales de varios lenguajes de programación como Java, C#, Ruby, Python, C++, HTML, SQL Server Management Studio y Perl. Java se destaca por ser orientado a objetos, distribuido, robusto y seguro. C# es una evolución de C y C++. Ruby es orientado a objetos con recolección de basura automática. Python es de propósito general, de alto nivel y tiene extensas librerías. C++ usa punteros y pasa argumentos por valor. HTML fue creado para ser distribuido, hipertexto y compatible
La Programación Orientada a Objetos se centra en los datos más que en los procedimientos. Los elementos de datos (como alumnos, materias y profesores) se conceptualizan como objetos que interactúan entre sí. El paradigma de la Programación Orientada a Objetos define clases de objetos y la herencia entre ellas. Java es un lenguaje orientado a objetos que ayuda a entender este paradigma.
C es un lenguaje de programación de alto nivel basado en funciones que permite la programación estructurada mediante la definición de estructuras de datos, recursividad y punteros. C++ es un superconjunto de C que añade soporte para programación orientada a objetos a través de clases, herencia y polimorfismo. Visual C++ es un entorno de desarrollo integrado que permite crear aplicaciones C++ para Windows y .NET.
El documento proporciona una introducción a las tecnologías .NET, incluyendo Visual Basic .NET, Visual Studio .NET, el marco de trabajo .NET, C#, C++, ASP.NET y el Common Language Runtime. Explica que estas tecnologías permiten el desarrollo de aplicaciones orientadas a objetos que se pueden implementar de forma local o distribuida a través de Internet.
C++ es un lenguaje de programación multiparadigma diseñado en los años 1980 como extensión del lenguaje C para permitir la manipulación de objetos. C++ soporta programación estructurada, orientada a objetos y genérica. Incluye características como tipos de datos primitivos, punteros, funciones y clases. Actualmente existe un estándar ISO para C++ usado por la mayoría de compiladores.
El documento describe los conceptos básicos de la programación orientada a objetos y el lenguaje Java. Explica que Java surgió como una alternativa portable a C++ y que su principal característica es "escribir una vez, ejecutar en cualquier lugar" gracias a su máquina virtual. También define conceptos clave como clases, objetos, paquetes y el modelo de directorios de un proyecto Java.
Presentación lenguaje c (pedro luis rodriguez c.i. 16388340)pedrolrc
El documento proporciona una introducción al lenguaje de programación C. Define C como un lenguaje de programación de nivel medio creado en 1972 que combina características de lenguajes de alto y bajo nivel. Detalla algunas características clave de C como su flexibilidad, eficiencia, capacidad multiplataforma y uso extensivo en aplicaciones como sistemas operativos, software científico e industrial y sistemas embebidos. También cubre temas como funciones, ventajas, desventajas y ejemplos de uso del
El documento habla sobre Java, un popular lenguaje de programación. Describe algunas de sus principales características como ser compilado e interpretado, orientado a objetos, independiente de la plataforma, seguro y dinámico. También menciona algunas ventajas como su sencillez, portabilidad y capacidad para crear aplicaciones móviles y web. El documento proporciona una introducción general a Java y sus usos.
Este documento proporciona información sobre 10 lenguajes de programación populares. Incluye breves descripciones de Java, C, C++, C#, Python, Delphi/Object Pascal, PHP, Visual Basic .NET, JavaScript y Perl, detallando sus orígenes, características y usos.
El documento describe varios lenguajes de programación orientados a objetos como Java, Fortran, Ada, C#, C++, Pascal y Smalltalk. Explica brevemente el origen y características principales de cada uno, así como ejemplos básicos del "Hola Mundo" en cada lenguaje.
Este documento presenta información sobre el lenguaje de programación Visual Basic. Explica que Visual Basic es un lenguaje orientado a eventos desarrollado por Microsoft que es fácil de aprender y poderoso. Detalla las funciones de Visual Basic como el diseñador de entorno de datos, asistente para formularios y asistente para barras de herramientas. También discute las ventajas como el acceso a la API de Windows y la capacidad de desarrollar grandes aplicaciones, así como las desventajas como problemas de versionado. Finalmente, concluye que a pes
Evolucion historica del lenguaje de programacionSergio Maidana
Este documento describe la evolución histórica de los lenguajes de programación desde el lenguaje máquina hasta los lenguajes modernos. Comenzó con el lenguaje máquina directamente entendido por las computadoras, seguido por el lenguaje ensamblador que era más fácil de usar para los humanos. Luego vinieron los lenguajes de alto nivel como FORTRAN, COBOL y BASIC que eran aún más fáciles de usar y menos dependientes del hardware. Finalmente, se desarrollaron lenguajes orientados a objetos como C++ y lengu
Este documento describe Objective-C, el lenguaje de programación utilizado para desarrollar aplicaciones para iPhone. Explica que Objective-C es una extensión orientada a objetos del lenguaje C creada por NeXT e influenciada por Smalltalk. También describe características clave como la herencia, polimorfismo, manejo de memoria dinámico y categorías. Finalmente, explica el proceso de desarrollo de aplicaciones para iPhone utilizando el framework Cocoa Touch y la publicación en la App Store de Apple.
Este documento presenta una introducción a varios lenguajes de programación como PHP, Java, C, AJAX y Perl. Describe brevemente las características y usos de cada lenguaje. También explica qué es SlideShare y cómo se puede usar para compartir presentaciones en línea de manera gratuita.
Este documento describe las características, requisitos, ventajas e inconvenientes del lenguaje de programación Python. Incluye un ejemplo de programa sencillo del juego del ahorcado que mantiene estadísticas de partidas jugadas, ganadas y perdidas. Finalmente, proporciona referencias sobre Python.
Este documento presenta el temario de un curso de Programación Orientada a Objetos y Programación Orientada a Eventos en Java. Incluye introducciones a conceptos clave de POO como objetos, clases, herencia y polimorfismo, así como historia y herramientas de Java, instalación del JDK, y ejemplos básicos de programas y arrays en Java.
El documento presenta un taller sobre el uso de gráficos en el aula. El taller cubre diferentes formatos gráficos como bitmap y vectoriales e introduce la herramienta de gráficos vectoriales libre Inkscape. El taller también discute la importancia de los gráficos para el aprendizaje y ofrece consejos sobre el uso y formatos adecuados de imágenes en documentos y presentaciones.
IW-UTXX: Programación web en PHP con bases de datosDavid Martin
El documento describe conceptos relacionados con la programación orientada a objetos en PHP y el acceso a bases de datos. Explica la definición de clases, atributos, métodos y objetos. También cubre temas como internacionalización, localización, herencia y diagramas UML.
El documento presenta información sobre esquemas y vocabularios en XML. Explica las DTD (Document Type Definition) como un modelo estructural para definir elementos, atributos, contenido y jerarquía de elementos en un documento XML. También cubre conceptos como entidades, espacios de nombres y esquemas XML para definir vocabularios. El documento incluye varios ejemplos prácticos de cómo aplicar estas definiciones y validar documentos XML.
LM-UT8: Sistemas de Gestión empresarialDavid Martin
Este documento describe los sistemas de gestión empresarial y los lenguajes de marcas utilizados. Explica que las empresas necesitan gestionar grandes cantidades de información para sus actividades y por razones legales. También describe los componentes clave de un sistema de gestión como el hardware, software y personas involucradas. Finalmente, analiza opciones de software como los paquetes ERP, CRM y otras herramientas de gestión tanto comerciales como de código abierto.
Este documento describe cómo los sistemas de bases de datos relacionales como SQL Server y MySQL pueden almacenar y consultar datos XML. Explica dos enfoques para integrar XML y bases de datos: almacenar datos XML en tablas relacionales o almacenar documentos XML de forma nativa. Luego, detalla cómo SQL Server y MySQL permiten consultas SQL que devuelven resultados en formato XML, así como almacenar y consultar datos XML de forma nativa usando XQuery.
Este documento presenta información sobre transformaciones de documentos XML y hojas de estilo. Introduce los conceptos de CSS, XSLT, XPath y XSL-FO, y cómo estos lenguajes complementarios permiten transformar y dar formato a documentos XML para diferentes usos como visualización, impresión o transferencia entre aplicaciones. Incluye ejemplos de cómo aplicar CSS y transformaciones XSLT a documentos XML.
Este documento describe las hojas de estilo CSS (Cascading Style Sheets). Explica la estructura y sintaxis de CSS, incluyendo selectores, propiedades de formato como colores, fuentes y dimensiones, y el modelo de cajas. También cubre temas como posicionamiento, tablas, historia y aplicación de CSS.
Este documento proporciona una introducción a los lenguajes de marcas para la web, incluyendo HTML y XHTML. Explica la estructura y composición de la web, así como los lenguajes y estándares relacionados. También describe brevemente la historia y evolución de Internet y la web.
Este documento introduce los lenguajes de marcas y XML. Explica brevemente la historia de los lenguajes de marcas desde SGML hasta HTML y XML. Describe la estructura básica de los documentos XML, incluyendo elementos, atributos y validación.
Este documento proporciona información sobre los formatos RSS y Atom para la sindicación de contenidos. Explica que RSS y Atom son estándares basados en XML que permiten compartir actualizaciones de contenido de forma automática entre sitios web. También describe los elementos principales de RSS como canal y elementos, y los tipos de documento en Atom: feed y entry. Finalmente, incluye ejemplos de código RSS y Atom.
Este documento presenta una introducción al software de gráficos vectoriales Inkscape. Explica formatos como SVG y herramientas como trayectos, capas, propiedades, opciones avanzadas y digitalización. Propone cinco proyectos prácticos como dibujar una figura, trabajar con color y transparencia, calcar un mapa, vectorizar una imagen y crear logotipos.
Este documento presenta una introducción a Internet y la web. Explica conceptos clave como la evolución de Internet desde las redes militares hasta la web 2.0 participativa de hoy. También describe tecnologías fundamentales como HTML, CSS, PHP y bases de datos, y cómo se pueden usar plataformas educativas en línea como Moodle.
Este documento describe las plataformas web con fines educativos. Explica la evolución de Internet y la web, incluyendo lenguajes como HTML y CSS. También cubre el uso de la web en el aula, como un sistema de acceso a información y recursos educativos. Finalmente, presenta algunas plataformas educativas populares como Moodle y Claroline, y propone actividades prácticas como editar artículos de Wikipedia y crear un curso en Moodle.
Este documento presenta un proyecto para diseñar una red local ("BurgoRED") que conecte varias instalaciones municipales en un área rural. El proyecto propone conectar un ayuntamiento, un centro social y una escuela, y requiere soluciones para conectividad interna y externa, así como propuestas de documentación, costes e infraestructura de red. El documento establece los objetivos, criterios de evaluación y fechas de entrega para el proyecto.
Este documento describe la historia y tecnología de Ethernet. Comenzó en la década de 1970 en Xerox PARC a 2.94 Mbps. En la década de 1980 se estableció como estándar IEEE 802.3. Ha evolucionado a velocidades de 100 Mbps, 1 Gbps, y 10 Gbps. Existen varios tipos físicos como 10BASE5 (cable coaxial grueso), 10BASE2 (cable coaxial fino), y 10BASE-T (par trenzado). Ethernet usa direcciones MAC únicas de 6 bytes para cada interfaz de red y
Este documento presenta un proyecto para diseñar una red para un complejo de ocio y negocios llamado Ociburgo. Describe la distribución del complejo, los requisitos de conectividad para las diferentes áreas, y los objetivos del proyecto como proponer modelos de conectividad física y lógica de red, estimar las necesidades de conectividad exterior y de mantenimiento, y desarrollar la documentación y presentación del proyecto. El proyecto deberá entregarse antes del 2 de junio.
Este documento presenta un proyecto para diseñar una red para una fundación. Se describe la distribución física del edificio con diferentes salas y espacios. Se enumeran los requisitos técnicos para cada espacio. Los objetivos del proyecto son proponer una conectividad física y lógica para la red, estimar las necesidades de conectividad exterior y de mantenimiento, y documentar el diseño completo. Se especifican los criterios de evaluación y las instrucciones para la entrega del proyecto final.
Este documento resume la historia y tecnología detrás de Ethernet de 100 Mb/s (Fast Ethernet). Explica que surgió en 1995 para competir con Token Ring y fue un éxito rápido e inesperado debido a su sencillez y facilidad de transición. Detalla las variantes tecnológicas clave como 100BASE-TX, 100BASE-T4 y 100BASE-T2, las cuales usan codificaciones como 4B5B, 8B6T y PAM5 para transmitir a 100 Mb/s a través de cableado UTP categoría 3
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...AMADO SALVADOR
Descarga el Catálogo General de Tarifas 2024 de Vaillant, líder en tecnología para calefacción, ventilación y energía solar térmica y fotovoltaica. En Amado Salvador, como distribuidor oficial de Vaillant, te ofrecemos una amplia gama de productos de alta calidad y diseño innovador para tus proyectos de climatización y energía.
Descubre nuestra selección de productos Vaillant, incluyendo bombas de calor altamente eficientes, fancoils de última generación, sistemas de ventilación de alto rendimiento y soluciones de energía solar fotovoltaica y térmica para un rendimiento óptimo y sostenible. El catálogo de Vaillant 2024 presenta una variedad de opciones en calderas de condensación que garantizan eficiencia energética y durabilidad.
Con Vaillant, obtienes más que productos de climatización: control avanzado y conectividad para una gestión inteligente del sistema, acumuladores de agua caliente de gran capacidad y sistemas de aire acondicionado para un confort total. Confía en la fiabilidad de Amado Salvador como distribuidor oficial de Vaillant, y en la resistencia de los productos Vaillant, respaldados por años de experiencia e innovación en el sector.
En Amado Salvador, distribuidor oficial de Vaillant en Valencia, no solo proporcionamos productos de calidad, sino también servicios especializados para profesionales, asegurando que tus proyectos cuenten con el mejor soporte técnico y asesoramiento. Descarga nuestro catálogo y descubre por qué Vaillant es la elección preferida para proyectos de climatización y energía en Amado Salvador.
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)AbrahamCastillo42
Power point, diseñado por estudiantes de ciclo 1 arquitectura de plataformas, esta con la finalidad de dar a conocer el componente hardware llamado tarjeta de video..
1. Programación en
Lenguajes Estructurados
U.T. 8: Programación avanzada
Herramientas auxiliares de programación
C.F.G.S. “Desarrollo de Aplicaciones Informáticas”
C.E.F.P. Juan de Colonia (Burgos)
Francisco Iglesias Villasol
David H. Martín Alonso
Serafina Martín Marcos
José Antonio Palma Escudero
- Curso 2005/2006 -
2. 2
Contenidos
1.- Documentación: Finalidad
2.- Documentación: Etapas
3.- Documentación de código
4.- Documentación de interfaz
5.- El formato quot;Javadocquot;
– Sintaxis
– Doxygen
– Reglas de estilo
– Etiquetas de código
6.- Herramientas de mantenimiento (make)
– Otras herramientas
7.- Vulnerabilidades y seguridad
8.- Referencias
9.- Licencia
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
3. 3
U.T. 8: Programación avanzada
Documentación de código
– Javadoc
– Doxygen
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
4. 4
Documentación: Finalidad
Finalidad de la documentación
Intercambio de conocimiento acerca de la aplicación y su desarrollo
Aprovechamiento óptimo de la funcionalidad programada
Calidad → Reducción de costes
Costes de desarrollo
– Adecuación a las especificaciones
– Reutilización de código
– Reducción de errores
– Reducción del esfuerzo de reparación
– Reducción del esfuerzo de adaptación y mejora
Costes de explotación
– Tiempo de aprendizaje
– Uso eficiente
– Reducción de errores de uso
Supone un coste inicial amortizado inmediatamente
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
5. 5
Documentación: Etapas
Distintas metodologías de desarrollo concretan distintos modelos
Análisis y desarrollo
Organigramas, ordinogramas, pseudocódigo. (Prog. estructurada)
UML (Prog. Orientada a Objetos)
Diagramas entidad-relación (Bases de Datos)
Codificación
Paradigmas: modular, estructurado, orientado a objetos
Identificadores
Comentarios en línea (aclaración del algoritmo)
Comentarios formales (ficheros, clases, funciones, parámetros)
Puesta en producción
Manual de usuario
Manual de administrador
Manual de programador
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
6. 6
Documentación de código
La falta de claridad en el código limita seriamente el desarrollo
El esfuerzo de programación crece exponencialmente
La programación estructurada emplea patrones conocidos
Fácil comprensión
Fácil adaptación
Importancia de espaciado y sangrado
Los identificadores facilitan la lectura y la comprensión
Nombres significativos
Importancia de evitar nombres crípticos
Diferentes convenios asociados históricamente con cada lenguaje
Comentarios intercalados
Para explicar procesos complicados
NO sustituyen ni a la claridad, ni a la sencillez ni a los identificadores
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
7. 7
Documentación de interfaz
Comentarios a nivel de módulos
Funciones, ficheros, clases. Identifican el módulo.
Informan de su funcionalidad y condiciones de uso (interfaz)
Simultáneos a la codificación
– Ayuda del propio programador
– Perdida de utilidad y de contenido si se hacen en diferido.
Formatos predeterminados
Establecidos por la organización o comunidad de programadores
Propuestos por el lenguaje en lenguajes OO como Java o C# (.NET)
Determinados por las herramientas
Generadores de documentación
Generación automática en formatos múltiples
A partir de los comentarios en el propio código
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
8. 8
El formato “Javadoc” (I)
Java: lenguaje de programación orientado a objetos
Origen 1990 (Sun Microsystems)
Inspirado en C y C++
Interpretado, multiplataforma
Lenguaje de propósito general muy popular y referente en POO
Javadoc: Herramienta de generación de documentación para Java
Parte del entorno de desarrollo básico (Java Development Kit, JDK)
A partir de comentarios en el código genera HTML (páginas web)
Uniformidad de estilo de TODA la documentación de Java
Mecanismo de comunicación universal → Reutilización
Objetivo: documentar elementos reutilizables
Paquetes, clases, métodos, parámetros, atributos
Documentación de la interfaz para poder reutilizar clases
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
9. 9
El formato “Javadoc” (II)
Compatible C, pero con dos **
/** Punto en un espacio 2D.
* @author <a href=quot;mailto:profe@cesburquot;>Profe de PLE</a>
*/ Identificación Formatos HTML
public class Punto {
Hiperenlaces a código
/** Crea un {@link Punto} a partir de sus coordenadas.
* @param cartesianas true para cartesianas, false para angulares
* @param a abscisa o módulo
* @param b ordenada o argumento
*/
public Punto(boolean cartesianas, double a, double b) {
...
} Descripción de la funcionalidad
Palabras clave, con @
/** Realiza un desplazamiento horizontal.
* @param dx desplazamiento Parámetros necesarios
* @return la abscisa tras el desplazamiento
*/ Resultados
public void moverx(double dx) {
...
return x;
}
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
10. 10
Doxygen
Generador de documentación con licencia libre GPL de GNU
Multiplataforma: GNU/Linux, MAC OS X, MS Windows
Aplicable a C, C++, Java, C#, PHP, Python y alguno más
Compatible con Javadoc, aunque requiera algún ajuste para C
Genera ficheros HTML, pero también RTF y LATEX
Operación:
Descarga e instalación
– En Linux está disponible en las distribuciones habituales
– DOS: Descargar, descomprimir y agregar al PATH. También hay instalador.
En el directorio de código fuente crear el fichero de configuración
– doxygen -g → Doxyfile
– Recomendable crear directorios separados: src, bin y docs
Editar el fichero Doxyfile a gusto con un editor de texto
Ejecutando nuevamente “doxygen” se generan los documentos
– Genera avisos de código no documentado
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
11. 11
Doxyfile
PROJECT_NAME = quot;PLE-UT8quot;
PROJECT_NUMBER = 1.0
OUTPUT_DIRECTORY = ../docs
OUTPUT_LANGUAGE = Spanish
ALWAYS_DETAILED_SEC = YES
JAVADOC_AUTOBRIEF = YES
DETAILS_AT_TOP = YES
OPTIMIZE_OUTPUT_FOR_C = YES
RECURSIVE = YES
SOURCE_BROWSER = YES
ALPHABETICAL_INDEX = YES
No genera nada hasta que no se documentan los ficheros
Etiqueta @file al frente de los ficheros deseados
Descripción de funciones incluyendo @param y @return
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
12. 12
Ejemplo: buffer.h
/** @file buffer.h Función para concatenar cadenas */
/**
* Tamaño de buffer empleado.
*/
#define TAMBUF 1024
/** Mantiene una cadena de texto a la que se puede agregar otras
* cadenas. En caso de que el tamaño sobrepase el valor de
* {@link #TAMBUF} la cadena total queda truncada, pero correctamente
* terminada (con un cero).
* @param texto una cadena de texto o NULL para inicializar
* @return la cadena completa
*/
const char *meteBuffer (const char *texto);
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
13. 13
Reglas de estilo
Nuestro objetivo es documentar la funcionalidad de las funciones
Texto concreto y conciso
Tratar de no calcar el identificador, sino darle más sentido
No repetir: “Función que..”
Comienzan con un verbo en tercera persona de singular
La primera frase se emplea en los índices: ser muy concretos
– Hasta el primer punto '.' y espacio (para no cortar direcciones de correo)
– Podemos ampliar la explicación en oraciones sucesivas, pero teniendo en
cuenta que tampoco se busca explicar aquí el algoritmo: el código debe ser
autoexplicativo.
Indicar los comportamientos excepcionales y errores tratados
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
14. 14
Etiquetas Javadoc / Doxygen
Delimitación de comentarios: /** */
Descripciones: texto. Permiten HTML básico para formato.
Parámetros de funciones: @param identificador
Valor devuelto: @return (sin identificador)
Enlaces internos:
En bloque: @see funcion() / @see #identificador
En línea: {@link funcion()} / {@link #identificador}
– Entre llaves; se pueden intercalar en cualquier texto
Identificación: @author nombre / @version numero
Ficheros (en Doxygen): @file nombre.ext Contenido
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
15. 15
U.T. 8: Programación avanzada
Mantenimiento de proyectos
– Make
– Otras herramientas
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
16. Mantenimiento de proyectos: 16
make
La compilación de proyectos se torna compleja
Gran número de ficheros implicados
Opciones de compilación
Diferencias de compilación entre sistemas heterogéneos
Posibilidad de compilación parcial de los elementos actualizados
Solución: Mantenimiento externo de datos de compilación
Archivos de opciones adicionales, distribuidos junto al código
Estándar de facto para C: make
Entornos gráficos de desarrollo: modelos particulares
– Complejidad adicional, particular del entorno
Make: Herramienta de gestión y mantenimiento de programas
Descripción de cada proyecto: Archivos Makefile propios
Colección de tareas subordinadas
Admite macros para referencias repetibles
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
17. 17
Ejemplo: Makefile
Tareas/dependencias/instrucciones
– Antes de cada tarea se revisan las tareas de las que depende
– Sólo ejecuta la tarea si está desactualizada respecto a las dependencias
OBJS = modulo1.o modulo2.o
FICH = modulo1.c modulo2.c cabecero.h Makefile
miprograma: $(OBJS) Tarea: dependencias
→ instrucciones
gcc -o miprograma modulo1.o modulo2.o
modulo1.o: modulo1.c cabecero.h gcc -c: Compilar, pero no enlazar
gcc -Wall -c modulo1.c (ficheros objeto con extensión .o)
modulo2.o: modulo2.c cabecero.h Dependencias: Sólo compilar
gcc -Wall -c modulo2.c si x.c o x.h han cambiado
clean borrar:
rm -f $(OBJS) PLE> make
...
PLE> make borrar
zip comprimir: ...
zip miprograma.zip $(FICH) PLE> _
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
18. 18
Otras herramientas
Autoconf y automake
Rizando el rizo: Generación automática del Makefile
Diagnóstico del sistema, herramientas y/o librerías disponibles
A partir de plantillas Makefile.in
Se incluyen scripts para el usuario: configure, setup, etc.
CVS, Subversion [MC]
Sistemas centralizados en red de control de versiones
Recoge las actualizaciones de código de todos los programadores
Control de acceso de los usuarios por zonas
Controla incompatibilidades
Permite ramificaciones, congelaciones, reversiones, etc
Permite acceso histórico (versión del día tal, a tal hora)
Integrado, accesible en entornos de desarrollo
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
19. 19
Otras herramientas (II)
Depuradores
Ejecución de programas en entornos controlables
Ejecución paso a paso, puntos de parada condicional
Monitorización del estado de las variables
Análisis post-mortem de volcados de memoria de programas acabados
Requieren una compilación diferenciada
– Genera ejecutables ampliados, de mayor tamaño
Integrados en entornos de desarrollo
Refactorizaciones
Herramientas que modifican el código fuente sin alterar su función
Mejora del código
– Redenominación de identificadores
– Extracción de variables y subprogramas
– Reordenación de elementos en el código fuente
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
20. 20
Otras herramientas (III)
Métricas
Análisis de código fuente: Indicadores de calidad
Aspectos, patrones, plantillas, componentes
Modelos de código adaptables para ciertas situaciones
Facilitan la generación automática de código
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
21. 21
U.T. 8: Programación avanzada
Vulnerabilidades
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
22. Efecto de los fallos 22
del programador
Los errores de programación no sólo afectan a la funcionalidad
esperada del programa sino que pueden comprometer a terceros y
poner en peligro la seguridad de todo el sistema.
La seguridad es prioritaria sobre el rendimiento del programa
Un pequeño error escondido, puesto en Internet, deja de ser pequeño
No podemos suponer que el usuario siga las instrucciones dadas
– Los atacantes, al contrario, tratarán de forzar las entradas y sacar provecho
Consecuencias
Destrucción del sistema
Pérdida de información o revelación de información clasificada
Denegación de servicio, imposibilidad de acceso
Ataque indirecto a otros sistemas
Soluciones combinadas: programación + sistemas + recuperación
Medidas proactivas (previsión) y reactivas (reacción)
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
23. Guía de buenos hábitos 23
del programador
Simplicidad del código (= modularidad, programación estructurada)
Vigilancia del uso de memoria evitando desbordamientos
– Uso de funciones de librería con límite de búffer
Vigilancia de las entradas de usuario
– Evitar reintento de entradas fallidas → Denegaciones de servicio
Vigilancia de los accesos a disco
– Bloqueando los ficheros se puede bloquear el programa
– Los ficheros temporales pueden ser muy vulnerables
Registro de operaciones
– Permite investigar ataques sufridos: origen y alcance
– Puede facilitar la recuperación de datos
Lecturas
– Los hácker son los primeros en leer los foros de seguridad
Otro: está lista siempre estará incompleta, siempre faltará uno...
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
24. 24
Referencias
Doxygen Manual. [DOXMAN]
Patricio Salinas C. <psalinas@dcc.uchile.cl>
http://www.stack.nl/~dimitri/doxygen/manual.html
How to Write Doc Comments for the Javadoc Tool. [JDTUT]
Sun Microsystems <JavadocTool@sun.com>
http://java.sun.com/j2se/javadoc/writingdoccomments/
Midnight Commander - CVS Repositories. [MC]
GNU - Free Software Foundation
http://cvs.savannah.gnu.org/viewcvs/?root=mc
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006
25. 25
Licencia de uso
Este material está disponible bajo una Licencia Creative Commons,
http://creativecommons.org/licenses/by-nc-sa/2.5/es/
ple-ut8 v1.0.odp C.E.F.P. Juan de Colonia - Programación en Lenguajes Estructurados 02/07/2006