Fundamentos de Programación y Bases de Datos
Por Ángel Arias
()
Información de este libro electrónico
En estos días, no saber cómo trabajar con un ordenador es considerado como un tipo de analfabetismo y el coste por no saber cómo usar un ordenador puede ser muy elevado.
Cuando usamos los equipos informáticos podemos hacer muchas cosas. Un adolescente puede utilizar Internet para enviar un mensaje, un estudiante puede usar una hoja de cálculo para realizar el cálculo de un promedio o la cantidad de puntos que necesita para aprobar cada materia, un cocinero puede guardar sus recetas en un editor de texto como Word, etc. De hecho, la cantidad de productos especializados es tan grande que si nos fijamos bien seguramente encontrará algún programa que haga algo muy parecido a lo que quiera realizar.
Ángel Arias
Ángel Arias es un consultor informático con más de 12 años de experiencia en sector informático. Con experiencia en trabajos de consultoría, seguridad en sistemas informáticos y en implementación de software empresarial, en grandes empresas nacionales y multinacionales, Ángel se decantó por el ámbito de la formación online, y ahora combina su trabajo como consultor informático, con el papel de profesor online y autor de numerosos cursos online de informática y otras materias. Ahora Ángel Arias, también comienza su andadura en el mundo de la literatura sobre la temática de la informática, donde ,con mucho empeño, tratará de difundir sus conocimientos para que otros profesionales puedan crecer y mejorar profesional y laboralmente.
Lee más de ángel Arias
Aprende a programar en C# Calificación: 5 de 5 estrellas5/5Bases de Datos con MySQL Calificación: 4 de 5 estrellas4/5Aprende a Programar con Java Calificación: 4 de 5 estrellas4/5Computación en la Nube Calificación: 4 de 5 estrellas4/5Programación y Lógica Proposicional Calificación: 4 de 5 estrellas4/5Curso de Programación y Análisis de Software Calificación: 4 de 5 estrellas4/5Las Estafas Digitales Calificación: 5 de 5 estrellas5/5Aprende a Programar a Python Calificación: 0 de 5 estrellas0 calificacionesIngeniería y Arquitectura del Software Calificación: 3 de 5 estrellas3/5Las Nuevas Tecnologías y el Marketing Digital Calificación: 3 de 5 estrellas3/5Aprende a Programar en Python Calificación: 5 de 5 estrellas5/5Aprende sobre la Ingeniería de Software Calificación: 0 de 5 estrellas0 calificacionesCurso de Introducción a la Administración de Bases de Datos Calificación: 3 de 5 estrellas3/5Aprende a Programar para Android Calificación: 5 de 5 estrellas5/5Aprende a Desarrollar Videojuegos Calificación: 3 de 5 estrellas3/5Aprende Programación Web con PHP y MySQL Calificación: 4 de 5 estrellas4/5Curso de Programación y Análisis de Software - 2ª Edición Calificación: 0 de 5 estrellas0 calificacionesAprende sobre la Ingeniería del Software Calificación: 0 de 5 estrellas0 calificacionesCurso de Programación con Java Calificación: 4 de 5 estrellas4/5Curso de Marketing Online Calificación: 0 de 5 estrellas0 calificacionesAprende a Programar ASP .NET y C# - Segunda Edición Calificación: 0 de 5 estrellas0 calificacionesAprende a Programar en ASP .NET y C# Calificación: 0 de 5 estrellas0 calificacionesCurso de Programación con Java - 2ª Edición Calificación: 5 de 5 estrellas5/5Curso de Programación de Apps. Android y iPhone Calificación: 5 de 5 estrellas5/5Fundamentos de Programación y Bases de Datos: 2ª Edición Calificación: 0 de 5 estrellas0 calificacionesAprende a Programar con Android Calificación: 3 de 5 estrellas3/5Curso de Programación y Análisis de Software - Tercera Edición Calificación: 0 de 5 estrellas0 calificacionesAprende a Programar con Ajax Calificación: 0 de 5 estrellas0 calificacionesCurso de Programación con iOS Calificación: 4 de 5 estrellas4/5
Relacionado con Fundamentos de Programación y Bases de Datos
Libros electrónicos relacionados
Curso de Introducción a la Administración de Bases de Datos Calificación: 3 de 5 estrellas3/5Fundamentos de Programación y Bases de Datos: 2ª Edición Calificación: 0 de 5 estrellas0 calificacionesCurso de Programación y Análisis de Software Calificación: 4 de 5 estrellas4/5Aprende a Programar ASP .NET y C# - Segunda Edición Calificación: 0 de 5 estrellas0 calificacionesEstructuras de datos orientadas a objetos Calificación: 0 de 5 estrellas0 calificacionesAprende Programación Web con PHP y MySQL Calificación: 4 de 5 estrellas4/5Conexión SQL SERVER & C# (Manual para principiantes) Calificación: 1 de 5 estrellas1/5Programación orientada a objetos en Java Calificación: 4 de 5 estrellas4/5Curso de Ingeniería de Software Calificación: 4 de 5 estrellas4/5Curso de Programación con Java - 2ª Edición Calificación: 5 de 5 estrellas5/5Curso de Programación y Análisis de Software - 2ª Edición Calificación: 0 de 5 estrellas0 calificacionesEl Libro Práctico Del Programador Ágil Calificación: 5 de 5 estrellas5/5Aprende a programar con pseudocódigo, diagramas de flujo y ejercicios de ejemplo resueltos en C: Algoritmos y lógica para aprender programación desde cero Calificación: 0 de 5 estrellas0 calificacionesCurso de Programación con Java Calificación: 4 de 5 estrellas4/5Aprende a Programar en ASP .NET y C# Calificación: 0 de 5 estrellas0 calificacionesDesarrollo Web en Java Calificación: 3 de 5 estrellas3/5Java a fondo - estudio del lenguaje y desarrollo de aplicaciones - 2a ed. Calificación: 5 de 5 estrellas5/5Programación en C# para Principiantes Calificación: 0 de 5 estrellas0 calificacionesAprender a programar: algoritmos y fundamentos de programación orientados a la ingeniería y ciencias Calificación: 0 de 5 estrellas0 calificacionesDiseño de Software Calificación: 0 de 5 estrellas0 calificacionesCurso de Programación con iOS Calificación: 4 de 5 estrellas4/5HTTP - Lo mínimo que todo desarrollador web debe saber Calificación: 5 de 5 estrellas5/5Programación en C++ Calificación: 2 de 5 estrellas2/5Aprender Javascript Avanzado con 100 ejercicios prácticos Calificación: 5 de 5 estrellas5/5Estructuras de datos en java Calificación: 0 de 5 estrellas0 calificacionesEl Libro Negro del Programador Calificación: 4 de 5 estrellas4/5Estructuras de Datos Básicas: Programación orientada a objetos con Java Calificación: 5 de 5 estrellas5/5Programación de Computadoras: De Principiante a Malvado—JavaScript, HTML, CSS, & SQL Calificación: 1 de 5 estrellas1/5La Nube Y Ciber Seguridad: Guía Rápida Calificación: 0 de 5 estrellas0 calificacionesLa Era del Código Calificación: 5 de 5 estrellas5/5
Programación para usted
Excel de la A a la Z: El Manual Práctico Paso a Paso de Microsoft Excel para Aprender Funciones Básicas y Avanzadas, Fórmulas y Gráficos con Ejemplos Fáciles y Claros Calificación: 0 de 5 estrellas0 calificacionesPython Paso a paso: PROGRAMACIÓN INFORMÁTICA/DESARROLLO DE SOFTWARE Calificación: 4 de 5 estrellas4/5GuíaBurros Microsoft Excel: Todo lo que necesitas saber sobre esta potente hoja de cálculo Calificación: 4 de 5 estrellas4/5Python a fondo Calificación: 5 de 5 estrellas5/5VBA Excel Guía Esencial Calificación: 5 de 5 estrellas5/5Aprender a programar con Excel VBA con 100 ejercicios práctico Calificación: 5 de 5 estrellas5/5Tablas dinámicas y Gráficas para Excel: Una guía visual paso a paso Calificación: 0 de 5 estrellas0 calificacionesPython para principiantes Calificación: 5 de 5 estrellas5/5JavaScript: Guía completa Calificación: 4 de 5 estrellas4/5Aprende programación Python: python, #1 Calificación: 0 de 5 estrellas0 calificacionesHTML para novatos Calificación: 5 de 5 estrellas5/5El gran libro de Python Calificación: 5 de 5 estrellas5/5Curso básico de Python: La guía para principiantes para una introducción en la programación con Python Calificación: 0 de 5 estrellas0 calificacionesFundamentos De Programación Calificación: 5 de 5 estrellas5/5Programación (GRADO SUPERIOR): PROGRAMACIÓN INFORMÁTICA/DESARROLLO DE SOFTWARE Calificación: 4 de 5 estrellas4/5Aprendizaje automático y profundo en python: Una mirada hacia la inteligencia artificial Calificación: 0 de 5 estrellas0 calificacionesProgramación orientada a objetos con C++, 5ª edición. Calificación: 5 de 5 estrellas5/5Linux Essentials: una guía para principiantes del sistema operativo Linux Calificación: 5 de 5 estrellas5/5Arduino. Trucos y secretos.: 120 ideas para resolver cualquier problema Calificación: 5 de 5 estrellas5/5Aprender PHP, MySQL y JavaScript Calificación: 5 de 5 estrellas5/5Todo el mundo miente: Lo que internet y el big data pueden decirnos sobre nosotros mismos Calificación: 4 de 5 estrellas4/5Tablas dinámicas para todos. Desde simples tablas hasta Power-Pivot: Guía útil para crear tablas dinámicas en Excel Calificación: 0 de 5 estrellas0 calificacionesPython Aplicaciones prácticas Calificación: 4 de 5 estrellas4/5Ortografía para todos: La tabla periódica de la ortografía Calificación: 5 de 5 estrellas5/5Controles PLC con Texto Estructurado (ST): IEC 61131-3 y la mejor práctica de programación ST Calificación: 3 de 5 estrellas3/5AngularJS: Conviértete en el profesional que las compañías de software necesitan. Calificación: 4 de 5 estrellas4/5115 Ejercicios resueltos de programación C++ Calificación: 3 de 5 estrellas3/5Aprende a Programar en C++ Calificación: 5 de 5 estrellas5/5Arduino para Principiantes Calificación: 4 de 5 estrellas4/5
Comentarios para Fundamentos de Programación y Bases de Datos
0 clasificaciones0 comentarios
Vista previa del libro
Fundamentos de Programación y Bases de Datos - Ángel Arias
Tabla de contenidos
Tabla de contenidos
Notas del autor
Introducción
La programación
Motivación
Programación
Estructura interna de un ordenador
Procesamiento de datos
Lógica de Programación
Formalismo
Definición de algoritmo
Implementación
Análisis de algoritmos
Clasificación
Clasificación por metodología
La programación lineal
Clasificación por campo de estudio
Clasificación por complejidad
Un apunte histórico
Lógica binaria
Operaciones
Aprendizaje
Algoritmos
Fundamentos
Lógica de programación
Algoritmo
Estructuras de manipulación de datos
Estructuras básicas
Variables y constantes
Instrucciones
Estructuras de control
Funciones
Arrays
Operaciones Aritméticas
Aritmética
Operaciones complejas
Conclusión
Pseudo Código
Constantes y variables
Tipos de variables
Modelo de Pseudo-código
Ejemplo de programa en pseudo-código
Asignación de valores a las variables
Expresiones en pseudo-código
Comando Algoritmo
Comando Var
Comando Inicio
Orientación a Objetos
Conceptos
Historia y Evolución de la programación
Ensamblador
Fortran
Pascal
Cobol
Lenguaje C.
C++
Java, C #
PHP
Perl, Python, Ruby
Similitudes y diferencias
Introducción a las bases de datos
Conceptos iniciales de bases de datos
Modelo Conceptual de Bases de Datos
Ingeniería de Bases de datos
Usando MySQL
Data Definition Language en MySQL
Manipulación de datos en MySQL
Sentencia SELECT en MySQL
Uniones en MySQL
Tópicos en MySQL
Vistas en Bases de datos
Procedimientos y funciones en MySQL
Comandos de Programación en MySQL
Triggers
Las transacciones en las bases de datos
Los índices en MySQL
Comandos DCL en MySQL
Backup y Seguridad con MySQL
Dispositivos de almacenamiento de bases de datos
Matriz redundante de discos independientes (RAID)
Registros, archivos y organizaciones de archivos primarios en bases de datos
Estructuras de indexación para archivos de bases de datos
Algoritmos para el procesamiento y optimización de consultas
Teoría del Procesamiento de Transacciones en las bases de datos
Concurrencia de transacciones en bases de datos
Recuperación de bases de datos
Seguridad en bases de datos
Proyecto físico y ajustes
Open Database Connectivity (ODBC)
Conceptos iniciales y acceso a través de la línea de comandos en SQLite
Bases de datos distribuidas
Conclusiones finales
Referencia bibliográfica
Acerca del autor
Notas del autor
Esta publicación está destinada a proporcionar el material útil e informativo. Esta publicación no tiene la intención de conseguir que usted sea un maestro de las bases de datos, sino que consiga obtener un amplio conocimiento general de las bases de datos para que cuando tenga que tratar con estas, usted ya pueda conocer los conceptos y el funcionamiento de las mismas. No me hago responsable de los daños que puedan ocasionar el mal uso del código fuente y de la información que se muestra en este libro, siendo el único objetivo de este, la información y el estudio de las bases de datos en el ámbito informático. Antes de realizar ninguna prueba en un entorno real o de producción, realice las pertinentes pruebas en un entorno Beta o de prueba.
El autor y editor niegan específicamente toda responsabilidad por cualquier responsabilidad, pérdida, o riesgo, personal o de otra manera, en que se incurre como consecuencia, directa o indirectamente, del uso o aplicación de cualesquiera contenidos de este libro.
Todas y todos los nombres de productos mencionados en este libro son marcas comerciales de sus respectivos propietarios. Ninguno de estos propietarios han patrocinado el presente libro.
Procure leer siempre toda la documentación proporcionada por los fabricantes de software usar sus propios códigos fuente. El autor y el editor no se hacen responsables de las reclamaciones realizadas por los fabricantes.
Introducción
Con la evolución de la tecnología cada vez más personas tienen acceso a un ordenador, ya sea en su casa, en la escuela, en el trabajo o en cualquier otro lugar. Los usuarios más curiosos pueden plantearse preguntas como: ¿cómo consiguen hacer esto?
, ¿como podría hacerlo o aprenderlo yo?
, ¿cómo es un ordenador internamente?
Muchos se han aventurado a buscar respuestas de sus auto-preguntas pero no siempre es fácil encontrar lo que se busca. En este libro, el lector tiene la oportunidad de entender cómo funciona esto.
El objetivo de este libro es servir como base a cualquiera que desee introducirse, o simplemente unirse, al maravilloso mundo de la programación, incluso si usted tiene pocos o ningún conocimiento sobre la materia.
Este libro también puede servir como una forma de enriquecimiento cultural sobre temas ya olvidados, ya que aborda aspectos de la arquitectura de los procesadores y ordenadores, los cálculos, la lógica y las matemáticas, hasta una breve historia de los lenguajes de programación y programación básica de algoritmos.
Este libro también está dirigido a aquellos que quieran participar en la actividad de la comunidad de producción de software libre pero que no han recibido capacitación técnica del género.
La programación
Motivación
En estos días, no saber cómo trabajar con un ordenador es considerado como un tipo de analfabetismo y el coste por no saber cómo usar un ordenador puede ser muy elevado.
Cuando usamos los equipos informáticos podemos hacer muchas cosas. Un adolescente puede utilizar Internet para enviar un mensaje, un estudiante puede usar una hoja de cálculo para realizar el cálculo de un promedio o la cantidad de puntos que necesita para aprobar cada materia, un cocinero puede guardar sus recetas en un editor de texto como Word, etc. De hecho, la cantidad de productos especializados es tan grande que si nos fijamos bien seguramente encontrará algún programa que haga algo muy parecido a lo que quiera realizar.
El problema es que a veces queremos hacer algo específico: queremos un programa para hacer algo que nos va a servir únicamente a nosotros o a nuestra empresa. En este caso, en lugar de comprar uno de los muchos programas que se ofertan en el mercado, desarrollaremos nuestro propio programa. Esto requiere el dominio de una nueva forma de trabajar con el equipo: la programación. Nuestro motivo puede ser un negocio, un proyecto de la escuela, un pasatiempo o simple curiosidad. Hoy en día, un programa se puede hacer de varias maneras. Puede, por ejemplo, modificar ligeramente el comportamiento de la aplicación a través de macros, como se realiza en programas como Microsoft Word. Usted puede hacer incluso modificaciones mayores a través de lenguajes integrados, como también se puede hacer en los programas de Microsoft Office, o incluso juegos de ordenador como Neverwinter Nights. También puede coger un programa de código abierto existente o software libre y modificarlo. O puede empezar de cero y realizar la programación de prácticamente todo, desde luego con la ayuda de las bibliotecas disponibles que son parte del trabajo.
Para programar usted tiene muchas opciones: paquetes que se pueden extender con macros o lenguajes integrados, entornos de programación point-and-click, lenguajes más fáciles de aprender y lenguajes más difíciles, pero con gran poder o características apropiadas para sistemas grandes. En cualquier caso, el objetivo detrás de todo esto es el mismo: programar es dar órdenes a un ordenador, mostrar cómo este debe reaccionar ante el usuario y cómo debe procesar los datos disponibles.
Prácticamente no hay límites a lo que se puede hacer con un ordenador. Los ordenadores ayudan a la gente a hablar, existen aparatos de control, envío de información, entre otros aspectos. Aún algo más difícil, cómo simular una emoción o inteligencia, se estudia con diligencia en todo el mundo. Algunos de los problemas son muy grandes y requieren la construcción de un gran equipo. Otros son tan simples que podemos resolverlos en equipos normales. La noción del tamaño de un problema también cambia con el tiempo: así el chip que se utilizaba en los ordenadores personales en el año 1988, el w:Z80 , ahora se utiliza en dispositivos como faxes.
Hoy en día es difícil imaginar un área de actividad humana en la que el uso de los ordenadores no sea deseable. Así, el dominio de la programación es dictada sustancialmente por la imaginación y la creatividad. Podemos decir que la gran ventaja de saber programar es la capacidad de crear lo que se quiera cuando se quiera. No sólo para los PC sino también para los teléfonos móviles, PDAs y otros. Por supuesto, requiere un poco de esfuerzo pero para muchos este esfuerzo es en realidad un reto cuya recompensa es ver su idea convertida en realidad.
Programación
Probablemente ya ha escuchado la palabra programación, conoce su significado, pero probablemente no sea consciente de lo que hace, cómo se hace y quién lo hace. La programación es fácil y divertida, la dificultad para la mayoría de los principiantes es comenzar a entender cómo funciona un ordenador.
Bueno, un ordenador puede entenderse de varias maneras. Dentro de ellos están las señales electrónicas. Los humanos que los diseñan generalmente piensan en estas señales como 1
y 0
. En un momento, empezamos a pensar en algo que se conoce como lenguaje de máquina, es decir, secuencias de 1
y 0
, normalmente escritos como números enteros, que indican un cierto comportamiento, tales como la suma de dos números. Para hacerlo más fácil aún, este lenguaje máquina está normalmente transcrito por el lenguaje ensamblador o de montaje que describe las acciones que una computadora puede hacer a través de w: mnemotécnicos como ADD y MOV. Sin embargo, desde hace algún tiempo nosotros hacemos funcionar un ordenador a través de programas escritos en lenguajes de programación que tratan de hacer la tarea de explicar lo que el equipo tiene que hacer más fácil a los seres humanos, si bien, debido a la alta especialización del lenguaje, sólo unos pocos de ellos lo entienden. Todos los lenguajes de programación tienen esencialmente el mismo propósito que es permitir al programador dar instrucciones a la máquina.
En nuestro mundo cotidiano la comunicación se hace de una manera natural y rara vez somos conscientes de las reglas que aplicamos en nuestro idioma. El objetivo de aprender un lenguaje de programación es exactamente el mismo: la aplicación de normas llegando a estar tan arraigadas en nuestra mente que se realice de forma inconsciente (abstraer). Un buen programador entiende los entresijos
de la lengua que utiliza e incluso puede ver la belleza o la fealdad de un código, de la misma forma que a veces un texto nos gusta no por su contenido sino por la forma en que fue escrito.
Los lenguajes se crean con dos objetivos: lenguajes de propósito general, que sirven para hacer cualquier cosa, y lenguajes de uso específico. Si quiere hacer un programa que se ocupe de problemas estadísticos, probablemente lenguajes como R
, que es un lenguaje creado específicamente para este uso, sean el más adecuado. Si usted desea hacer un programa para calcular la nómina de una empresa, probablemente lenguajes como COBOL, C, C + + o Java, que son lenguajes de uso general, serán los adecuados.
Un programa informático
Un programa de un ordenador es como una receta de cocina: es una secuencia de pasos que se deben realizar. Si los equipos cocinaran en lugar de procesar los datos, un programa típico podría ser:
PROGRAMA FREIR_HUEVO
RESERVAR HUEVO, PAN, SAL, MANTEQUILLA;
USAR COCINA;
COLOCAR SARTEN EN COCINA;
PONER LA MANTEQUILLA EN LA SARTÉN;
ENCENDER COCINA;
ESPERAR A QUE LA MANTEQUILLA SE CALIENTE;
ROMPER EL HUEVO;
DERRAMAR EL HUEVO EN LA SARTEN;
PONER SAL EN