De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

La informática (también llamada ciencia de la computación ) es el estudio de los fundamentos teóricos de la información y la computación y su implementación y aplicación ensistemas informáticos . Un sistema de clasificación de materias muy conocido para las ciencias de la computación es el Sistema de Clasificación de Computación ACM ideado por la Asociación de Maquinaria de Computación .

¿Qué es la informática? [ editar ]

La informática se puede describir como todo lo siguiente:

Subcampos [ editar ]

Fundamentos matemáticos [ editar ]

Algoritmos y estructuras de datos [ editar ]

  • Algoritmos : procedimientos computacionales secuenciales y paralelos para resolver una amplia gama de problemas.
  • Estructuras de datos : organización y manipulación de datos.

Inteligencia artificial [ editar ]

Esquema de la inteligencia artificial

  • Inteligencia artificial : la implementación y el estudio de sistemas que exhiben una inteligencia autónoma o un comportamiento propio.
  • Razonamiento automatizado : motores de resolución, como los utilizados en Prolog , que producen pasos para un resultado dada una consulta en una base de datos de hechos y reglas, y probadores de teoremas automatizados que tienen como objetivo probar teoremas matemáticos con la ayuda de un programador.
  • Visión por computadora : algoritmos para identificar objetos tridimensionales a partir de una imagen bidimensional.
  • Computación blanda , el uso de soluciones inexactas para problemas que de otro modo serían extremadamente difíciles:
    • Aprendizaje automático: creación automatizada de un conjunto de reglas y axiomas basados ​​en la entrada.
    • Computación evolutiva : algoritmos de inspiración biológica.
  • Procesamiento del lenguaje natural : sistemas y algoritmos de construcción que analizan, comprenden y generan lenguajes naturales (humanos).
  • Robótica : algoritmos para controlar el comportamiento de los robots.

Comunicación y seguridad [ editar ]

  • Redes : algoritmos y protocolos para comunicar datos de manera confiable a través de diferentes medios compartidos o dedicados, que a menudo incluyen corrección de errores .
  • Seguridad informática : aspectos prácticos de la protección de sistemas informáticos y redes informáticas.
  • Criptografía : aplica resultados de complejidad, probabilidad, álgebra y teoría de números para inventar y descifrar códigos y analizar la seguridad de los protocolos criptográficos .

Arquitectura informática [ editar ]

  • Arquitectura de la computadora : el diseño, la organización, la optimización y la verificación de un sistema informático, principalmente sobre las CPU y el subsistema de memoria (y el bus que los conecta).
  • Sistemas operativos : sistemas para administrar programas informáticos y proporcionar la base de un sistema utilizable.

Gráficos por computadora [ editar ]

  • Gráficos por computadora : algoritmos tanto para generar imágenes visuales sintéticamente como para integrar o alterar información visual y espacial muestreada del mundo real.
  • Procesamiento de imágenes : determinación de información de una imagen mediante cálculo.
  • Visualización de información : métodos para representar y mostrar datos abstractos para facilitar la interacción humana para la exploración y la comprensión.

Sistemas concurrentes, paralelos y distribuidos [ editar ]

  • Computación paralela : teoría y práctica de la computación simultánea; seguridad de los datos en cualquier entorno multitarea o multiproceso.
  • Concurrencia (ciencias de la computación) : Computación usando múltiples subprocesos de ejecución concurrentes, ideando algoritmos para resolver problemas en múltiples procesadores para lograr una máxima aceleración en comparación con la ejecución secuencial.
  • Computación distribuida : Computación que utiliza múltiples dispositivos informáticos a través de una red para lograr un objetivo o tarea común y, por lo tanto, reducir la latencia involucrada en las contribuciones de un solo procesador para cualquier tarea.

Bases de datos [ editar ]

Esquema de bases de datos

  • Bases de datos relacionales - la teoría de conjunto y la base algorítmica de bases de datos.
  • Almacenamiento estructurado : bases de datos no relacionales como bases de datos NoSQL .
  • Minería de datos - Estudio de algoritmos para buscar y procesar información en documentos y bases de datos; estrechamente relacionado con la recuperación de información .

Lenguajes de programación y compiladores [ editar ]

  • Compilador de la teoría - Teoría del compilador de diseño, basado en la teoría de autómatas .
  • Pragmática del lenguaje de programación: taxonomía de los lenguajes de programación, sus fortalezas y debilidades. Varios paradigmas de programación , como la programación orientada a objetos .
  • Teoría del lenguaje de programación
  • Semántica formal : estudio matemático riguroso del significado de los programas.
  • Teoría de tipos: análisis formal de los tipos de datos y el uso de estos tipos para comprender las propiedades de los programas, especialmente la seguridad del programa.

Computación científica [ editar ]

  • Ciencia computacional : construcción de modelos matemáticos y técnicas de análisis cuantitativo y uso de computadoras para analizar y resolver problemas científicos .
  • Análisis numérico: solución numérica aproximada de problemas matemáticos tales como búsqueda de raíces , integración , solución de ecuaciones diferenciales ordinarias ; la aproximación de funciones especiales .
  • Computación simbólica : manipulación y solución de expresiones en forma simbólica, también conocida como álgebra informática .
  • Física computacional : simulaciones numéricas de grandes sistemas no analíticos
  • Química computacional: modelado computacional de la química teórica para determinar estructuras y propiedades químicas.
  • Bioinformática y biología computacional : el uso de la informática para mantener, analizar, almacenar datos biológicos y ayudar a resolver problemas biológicos como el plegamiento de proteínas , la predicción de funciones y la filogenia .
  • Neurociencia computacional - Modelado computacional de neurofisiología .

Ingeniería de software [ editar ]

Esquema de la ingeniería de software

  • Métodos formales : enfoques matemáticos para describir y razonar sobre el diseño de software.
  • Ingeniería de software : los principios y la práctica de diseñar, desarrollar y probar programas, así como las prácticas de ingeniería adecuadas.
  • Diseño de algoritmos : uso de ideas de la teoría de algoritmos para diseñar creativamente soluciones para tareas reales.
  • Programación informática : práctica de utilizar un lenguaje de programación para implementar algoritmos.
  • Interacción persona-computadora : estudio y diseño de interfaces de computadora que utilizan las personas.
  • Ingeniería inversa : la aplicación del método científico a la comprensión de software existente arbitrario.

Teoría de la computación [ editar ]

  • Teoría de los autómatas : diferentes estructuras lógicas para la resolución de problemas.
  • Teoría de la computabilidad : lo que se puede calcular con los modelos actuales de computadoras. Las pruebas desarrolladas por Alan Turing y otros brindan información sobre las posibilidades de lo que se puede computar y lo que no.
    • Lista de problemas no resueltos en informática
  • Teoría de la complejidad computacional : límites fundamentales (especialmente tiempo y espacio de almacenamiento) en clases de cálculos.
  • Teoría de la computación cuántica : explora modelos computacionales que involucran la superposición cuántica de bits.

Historia [ editar ]

  • History of computer science
  • List of pioneers in computer science

Professions[edit]

  • Programmer(Software developer)
  • Teacher/Professor
  • Software engineer
  • Software architect
  • Software tester
  • Hardware engineer
  • Data analyst
  • Interaction designer
  • Network administrator
  • Data scientist

Data and data structures[edit]

  • Data structure
  • Data type
  • Associative array and Hash table
  • Array
  • List
  • Tree
  • String
  • Matrix (computer science)
  • Database

Programming paradigms[edit]

  • Imperative programming/Procedural programming
  • Functional programming
  • Logic programming
  • Object oriented programming
    • Class
    • Inheritance
    • Object

See also[edit]

  • Abstraction
  • Big O notation
  • Closure
  • Compiler
  • Cognitive science

External links[edit]

  • Outline of computer science at Curlie
  • ACM report on a recommended computer science curriculum (2008)
  • Directory of free university lectures in Computer Science
  • Collection of Computer Science Bibliographies
  • Photographs of computer scientists (Bertrand Meyer's gallery)