Algoritmos Fundamentales

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 7

1.

Algoritmos Fundamentales

Un algoritmo nos permite llevar a cabo una tarea o encontrar la


solución a un determinado problema a través de un flujo
de instrucciones bien definidas y estructuradas, que además
deben estar en orden, y ser finitas, es decir tener una solución o varias
soluciones posibles.

2. Diagrama de flujo de datos.

El diagrama de flujo o flujograma o diagrama de actividades es la representación


gráfica de un algoritmo o proceso. Se utiliza en disciplinas como programación,
economía, procesos industriales y psicología cognitiva

3. Introducción al lenguaje de programación.

4. Es un proceso mediante el cual se codifican una serie de instrucciones, en un


determinado lenguaje, para ser posteriormente decodificados y ejecutados por
un sistema computacional, todo ello con el fin de resolver un problema. Es
decir, implementar desde un algoritmo hacia un lenguaje de programación y
dar solución a un problema.

5. Tipos de datos

Para programar, es necesario identificar a qué tipo de datos


pertenecen cada una de las variables o constantes, ya sean estos
números, letras, palabras, frases, entre otros y cada uno
corresponde a un tipo de dato, que requerirá de una manipulación
específica para obtener los resultados deseados.

6. Manejo de Variables

Una variable es un espacio de la memoria del ordenador a la que


asignamos un contenido que puede ser un valor numérico (sólo números,
con su valor de cálculo) o alfanumérico (sólo texto o texto con números).
Cada variable tiene un único nombre el cual no puede ser cambiado.

7. Representación de la información en las computadoras.

Para representar los datos en la computadora se utiliza el sistema binario.


Este sistema sólo reconoce dos valores: el cero y el uno (0, 1). A cualquiera
de estos valores se le llama bit (de Binary digit, que significa dígito binario).
El bit es la unidad de información más pequeña que reconoce
una computadora.
El desarrollo de programas web.

Desarrollo web significa construir y mantener sitios web; es el trabajo


que tiene lugar en un segundo plano y que permite que una web tenga
una apariencia impecable, un funcionamiento rápido y un buen
desempeño para permitir la mejor experiencia de usuario

8. Pasos para la elaboración de un programa.

Los pasos para la elaboración de un programa son:

1. Analizar el problema. Entender profundamente cuál es el problema que se


trata de resolver, incluyendo el contexto en el cual se usará.

Una vez analizado el problema, asentar el análisis por escrito.

2. Especificar la solución. éste es el punto en el cual se describe qué debe


hacer el programa, sin importar el cómo. En el caso de los problemas sencillos
que abordaremos, deberemos decidir cuáles son los datos de entrada que se
nos proveen, cuáles son las salidas que debemos producir, y cuál es la relación
entre todos ellos.

Al especificar el problema a resolver, documentar la especificación por escrito.

3. Diseñar la solución. éste es el punto en el cuál atacamos el cómo vamos a


resolver el problema, cuáles son los algoritmos y las estructuras de datos que
usaremos. Analizamos posibles variantes, y las decisiones las tomamos usando
como dato de la realidad el contexto en el que se aplicará la solución, y los
costos asociados a cada diseño.

Luego de diseñar la solución, asentar por escrito el diseño, asegurándonos de


que esté completo.

4. Implementar el diseño. Traducir a un lenguaje de programación (en nuestro


caso, y por el momento, Python) el diseño que elegimos en el punto anterior.

La implementación también se debe documentar, con comentarios dentro y


fuera del código, al respecto de qué hace el programa, cómo lo hace y por qué
lo hace de esa forma.

5. Probar el programa. Diseñar un conjunto de pruebas para probar cada una


de sus partes por separado, y también la correcta integración entre ellas. Utilizar
el depurador como instrumento para descubir dónde se producen ciertos
errores.

Al ejecutar las pruebas, documentar los resultados obtenidos.


6. Mantener el programa. Realizar los cambios en respuesta a nuevas
demandas.

Cuando se realicen cambios, es necesario documentar el análisis, la


especificación, el diseño, la implementación y las pruebas que surjan para llevar
estos cambios a cabo.

9. Cloud Computing (computación en las nubes).

La computación en la nube (o cloud computing, en inglés) es una tecnología


que permite acceder remotamente, de cualquier lugar del mundo y en
cualquier momento, a softwares, almacenamiento de archivos y
procesamiento de datos a través de Internet, sin la necesidad de conectarse
a un ordenador personal o servidor local.

10. Software como servicio. (SaaS).

El software como servicio (SaaS) permite a los usuarios conectarse a


aplicaciones basadas en la nube a través de Internet y usarlas. Algunos
ejemplos comunes son el correo electrónico, los calendarios y las
herramientas ofimáticas (como Microsoft Office 365).

11. Internet de las cosas.

La internet de las cosas es un concepto que se refiere a una interconexión


digital de objetos cotidianos con internet. Es, en definitiva, la conexión de internet
más con objetos que con personas. También se suele conocer como internet de
todas las cosas o internet en las cosas

12. La Web semántica y la Web 3.0.

La Web 3.0, también conocida como la Web semántica, tiene como


objetivo el lograr que los ordenadores puedan leer y usar la Web de una
forma parecida a los humanos. La gran idea detrás de ello, es añadir
metadatos a las páginas web para que la WWW se transforme en un
mundo entendible para las máquinas.

13.   Lenguajes de programación (programas y programación).

Lenguaje de programación, se expresan mediante un conjunto de instrucciones


detalladas para una computadora digital. Dichas instrucciones se pueden ejecutar
directamente cuando están en la forma numérica específica del fabricante de la
computadora conocida como lenguaje de máquina, después de un simple proceso de
sustitución cuando se expresa en un lenguaje ensamblador correspondiente, o después
de la traducción de algún lenguaje de "nivel superior". Aunque hay muchos lenguajes de
computadora, relativamente pocos son ampliamente utilizados.
Tipos de lenguaje de programación

Un lenguaje de máquina consiste en los códigos numéricos para las


operaciones que una computadora en particular puede ejecutar directamente.
Los códigos son cadenas de 0s y 1s, o dígitos binarios (bits), que con
frecuencia se convierten de y a hexadecimales (base 16) para la visualización
y modificación humana. Las instrucciones del lenguaje de máquina
generalmente usan algunos bits para representar operaciones, como la suma, y
algunos para representar operandos, o tal vez la ubicación de la siguiente
instrucción. El lenguaje de máquina es difícil de leer y escribir, ya que no se
parece a la notación matemática convencional o al lenguaje humano, y sus
códigos varían de una computadora a otra.

15.   Lenguaje de alto nivel

Se trata de lenguajes de programación que aspiran a ser un lenguaje más


universal, por lo que pueden emplearse indistintamente de la arquitectura
del hardware, es decir, en diversos tipos de sistemas. Los hay de propósito
general y de propósito específico.

16.   Lenguaje de bajo nivel

Se trata de lenguajes de programación que están diseñados para un hardware


específico y que por lo tanto no pueden migrar o exportarse a
otros computadores. Sacan el mayor provecho posible al sistema para el que
fueron diseñados, pero no aplican para ningún otro.

17.   Traductores de lenguaje: el proceso de traducción de un programa.

El traductor es una herramienta esencial en la programación o desarrollo,


encargándose de convertir código fuente de un determinado lenguaje de
programación a código máquina que puede «entender» directamente el
ordenador.

18.   Intérpretes.

En ciencias de la computación, intérprete o interpretador es un programa


informático capaz de analizar y ejecutar otros programas

19.   Compiladores.
En informática, un compilador es un tipo de traductor que transforma un programa entero
de un lenguaje de programación a otro. Usualmente el lenguaje objetivo es código
máquina, aunque también puede ser traducido a un código intermedio o a texto

20.   La Compilación y sus fases.

Durante la Compilación de un Programa se realizan las siguientes fases:

Preprocesamiento Transformaciones al Archivo Fuente, previas a la Compilación.

Análisis Léxico Reconocimiento de los Elementos del Lenguaje.

Análisis Sintáctico Reconocimiento de la Estructura del Lenguaje.

Análisis Semántico Reconocimiento de la coherencia de la Entrada.

Generación de Código Intermedio Transformación de la Entrada en una representación


de código intermedio para una máquina abstracta.

Optimización de Código Mejoras a la representación intermedia que resulten en un


código más rápido de ejecutar.

Generación de Código Transformación del código intermedio en código objeto.

Depuración Reconocimiento de Errores.

Administración de la Tabla de Símbolos Reconocimiento de los nombres de los


identificadores utilizados en la Entrada y sus diferentes atributos.

21.   Evolución de los lenguajes de programación.

En la década de 1940 fueron creadas las primeras computadoras modernas, con


alimentación eléctrica. La velocidad y capacidad de memoria limitadas forzaron a los
programadores a escribir programas, en lenguaje ensamblador muy afinados. Finalmente
se dieron cuenta de que la programación en lenguaje ensamblador requería de un gran
esfuerzo intelectual y era muy propensa a errores.
En 1948, Konrad Zuse publicó un artículo acerca de su lenguaje de
programación Plankalkül. Sin embargo, no fue implementado en su vida y sus
contribuciones fueron aisladas de otros desarrollos.
Entre algunos lenguajes importantes que fueron desarrollados en este período se
encuentran:

 1943 - Plankalkül (Respetad a Konrad), diseñado, pero sin implementar


durante medio siglo
 1943 - se crea el sistema de codificación ENIAC.
 1949 - 1954 -- una serie de conjuntos de instrucciones nemotécnicas, como la
de ENIAC, comenzando en 1949 con C-10 para BINAC (que luego
evolucionaría en UNIVAC). Cada conjunto de instrucciones estaba destinado a
un fabricante específico
22.   Paradigmas de programación.

Los paradigmas de programación son una forma de clasificar los lenguajes de


programación en función de sus características. Los idiomas se pueden clasificar en
múltiples paradigmas.

23.   Lenguajes imperativos (procedimentales).

Los lenguajes de programación imperativa son como unas instrucciones paso


a paso (cómo) redactadas para el ordenador. Describen de forma explícita qué
pasos deben llevarse a cabo y en qué secuencia para alcanzar finalmente la
solución deseada.

24.   Lenguajes declarativos.

Un lenguaje declarativo es un tipo de lenguaje de programación basado más


en las matemáticas y en la lógica que los lenguajes imperativos, más cercanos
estos al razonamiento humano. Los lenguajes declarativos no dicen cómo
hacer una cosa, sino, más bien, qué cosa hacer.

25.   Lenguajes orientados a objetos.

Se le llama así a cualquier lenguaje de programación que implemente los conceptos


definidos por la programación orientada a objetos. Cabe notar que los conceptos definidos
en la programación orientada a objetos no son una condición sino que son para definir que
un lenguaje es orientado a objetos

26.   Metodología de la programación

Una metodología de programación es un conjunto o sistema de métodos,


principios y reglas que permiten enfrentar de manera sistemática el desarrollo
de un programa que resuelve un problema algorítmico.

27.   Programación estructurada.

La programación estructurada es un paradigma de programación orientado a mejorar la


claridad, calidad y tiempo de desarrollo de un programa de computadora recurriendo
únicamente a subrutinas y tres estructuras básicas: secuencia, selección (if y switch)
e iteración (bucles for y while); asimismo, se considera innecesario y contraproducente el
uso de la instrucción de transferencia incondicional (GOTO), que podría conducir a código
espagueti, mucho más difícil de seguir y de mantener, y fuente de numerosos errores de
programación.

28.   Programación orientada a objetos.


La Programación Orientada a Objetos es un paradigma de programación que viene a
innovar la forma de obtener resultados. Los objetos se utilizan como metáfora para emular
las entidades reales del negocio a modelar

29.   Herramientas de programación.

Las herramientas de programación, son aquellas que permiten realizar


aplicativos, programas, rutinas, utilitarios y sistemas para que la parte fisica del
computador u ordenador, funcione y pueda producir resultados.

30.   Editores de texto.

Editor de texto es un programa informático que permite crear y modificar archivos digitales
compuestos únicamente por textos sin formato, conocidos comúnmente como archivos de
texto o “texto plano”

31.   Programas ejecutables.

En informática, un ejecutable o archivo ejecutable, es tradicionalmente un


archivo binario, cuyo contenido se interpreta por el ordenador como
un programa.

32.   Proceso de compilación/ejecución de un programa.

Es el proceso por el cual se traducen las instrucciones escritas en un


determinado lenguaje de programación a lenguaje máquina. Además de un
traductor, se pueden necesitar otros programas para crear
un programa objeto ejecutable.

33.   Consola de línea de comandos.

Debe notarse que los conceptos de CLI, Shell y Emulador de Terminal no son
lo mismo, aunque suelen utilizarse como sinónimos. La Línea de
Comandos de Windows es una implementación de la consola MS-DOS para
la interfaz gráfica de las diversas versiones Microsoft Windows.

34.   Entorno de desarrollo integrado (IDE).

Un entorno de desarrollo integrado o entorno de desarrollo interactivo, en inglés Integrated


Development Environment, es una aplicación informática que proporciona servicios
integrales para facilitarle al desarrollador o programador el desarrollo de software.

También podría gustarte