domingo, 22 de marzo de 2020

PROGRAMACIÓN DE COMPUTADORES

1) ¿Que es un algoritmo?

Un algoritmo es una secuencia lógica y finita de pasos que permite solucionar un problema o cumplir con un objetivo.
Los algoritmos deben ser precisos e indicar el orden lógico de realización de cada uno de los pasos, debe ser definido y esto quiere decir que si se ejecuta un algoritmo varias veces se debe obtener siempre el mismo resultado, también debe ser finito o sea debe iniciar con una acción y terminar con un resultado o solución de un problema.
2) ¿cuáles son las ventajas de utilizar diagrama de flujo de datos (DFD)? en programación

- Ayudan a ilustrar modelos y a conectar ideas para aumentar nuestra productividad en el entorno profesional e incentivar nuestra creatividad.
 - Favorecen la comprensión del proceso al mostrarlo como un dibujo. El cerebro humano reconoce muy fácilmente los dibujos. Un buen diagrama de flujo reemplaza varias páginas de texto.
 - Permiten identificar los problemas y las oportunidades de mejora del proceso. Se identifican los pasos, los flujos de los re-procesos, los conflictos de autoridad, las responsabilidades, los cuellos de botella, y los puntos de decisión.
 - Muestran las interfaces cliente-proveedor y las transacciones que en ellas se realizan, facilitando a los empleados el análisis de las mismas.
 - Son una excelente herramienta para capacitar a los nuevos empleados y también a los que desarrollan la tarea, cuando se realizan mejoras en el proceso.
 - Al igual que el pseudocódigo, el diagrama de flujo con fines de análisis de algoritmos de programación puede ser ejecutado en un ordenador, con un IDE como Free DFD.


3) ¿qué es un lenguaje de programación?

En informática, se conoce como lenguaje de programación a un programa destinado a la construcción de otros programas informáticos. Su nombre se debe a que comprende un lenguaje formal que está diseñado para organizar algoritmos y procesos lógicos que serán luego llevados a cabo por un ordenador o sistema informático, permitiendo controlar así su comportamiento físico, lógico y su comunicación con el usuario humano
Dicho lenguaje está compuesto por símbolos y reglas sintácticas y semánticas, expresadas en forma de instrucciones y relaciones lógicas, mediante las cuales se construye el código fuente de una aplicación o pieza de software determinado. Así, puede llamarse también lenguaje de programación al resultado final de estos procesos creativos


4) ¿cuantas generaciones de lenguaje de programación existen?

• Primera generación: Los primeros ordenadores se programaban directamente en código de máquina (basado en sistema binario), que puede representarse mediante secuencias de ceros y unos sistema binario. Cada modelo de ordenador tiene su propio código, por esa razón se llama lenguaje de máquina u ordenadores.
1GL:
Código máquina y Ensambladores
La primera generación de lenguajes de programación consistía enteramente de una secuencia de 0s y 1s que los controles de la computadora interpretan como instrucciones, eléctricamente.
Representan los primeros lenguajes de programación que la computadora podía entender, son conocidos como lenguaje máquina.



• Segunda generación: Los lenguajes simbólicos, asimismo propios de la máquina, simplifican la escritura de las instrucciones y las hacen más legibles. También surgieron en esta generación los lenguajes ensambladores.
2GL:
Primeros lenguajes de alto nivel, no estructurados – Fortran, Cobol, Basic
La segunda generación de lenguajes de programación consistía se identificaron como lenguajes ensambladores. Un lenguaje ensamblador convierte las secuencias de 0s y 1s a un lenguaje entendido por los seres humanos, como “añadir”, “sumar”, etc.
El código escrito en un lenguaje ensamblador se convierte en lenguaje de máquina (1GL).

 

• Tercera generación: Los lenguajes de alto nivel sustituyen las instrucciones simbólicas por códigos independientes de la máquina, parecidas al lenguaje humano o al de las Matemáticas.
3GL:
Lenguajes estructurados: Algol, Pascal, C, ADA.
Lenguajes Específicos: Lisp, Prolog, Smalltalk

La tercera generación de lenguajes de programación se conoce como lenguajes de alto nivel. Un lenguaje de alto nivel tiene una gramática y sintaxis similar a las palabras en una oración. Un compilador se encarga de traducir el lenguaje de alto nivel a lenguaje ensamblador o código máquina.
Todos los lenguajes de programación de software necesitan ser traducidos a código de máquina para una computadora para utilizar las instrucciones que contienen.

 

• Cuarta generación: se ha dado este nombre a ciertas herramientas que permiten construir aplicaciones sencillas combinando piezas prefabricadas. Hoy se piensa que estas herramientas no son, propiamente hablando, lenguajes. Algunos proponen reservar el nombre de cuarta generación para la programación orientada a objetos.
Estos lenguajes tienen una estructura lo más parecido al idioma inglés, algunas características son:
- Acceso a base de datos.
- Capacidades Gráficas.
- Generación de código automáticamente.
- Puede programarse visualmente como Visual Basic (Programación Visual).
4GL:
Lenguajes Declarativos: SQL Generadores de aplicaciones, Herramientas CASE
Programación Visual: Visual Basic, Visual C
Lenguajes Orientados a Objeto C++, Java, Eiffel
La cuarta generación de lenguajes de programación avanza en la sintaxis utilizada. Lenguajes 4GL se utilizan típicamente para acceder a bases de datos.

 


• Quinta generación: se llama así a veces a los lenguajes de la inteligencia artificial, aunque con el fracaso del proyecto japonés de la quinta generación el nombre ha caído en desuso.
5GL:
Imitación de la mente humana
La quinta generación de lenguajes de programación es utilizada para redes neuronales. Una red neuronal es una forma de inteligencia artificial que trata de imitar la mente humana.



5) ¿Qué es la codificación?

La codificación es el proceso de poner juntos los segmentos de sus datos que parecen ilustrar una idea o un concepto (representados en su proyecto como nodos). De esa forma, la codificación es una forma de hacer abstracción a partir de los datos existentes en sus recursos para construir un mayor entendimiento de las fuerzas que intervienen.


6) ¿a qué le llamamos pseudocodigo?

Se trata de un falso lenguaje, ya que apela a las normas de estructura de un lenguaje de programación aunque se encuentra desarrollado para que pueda ser leído por un ser humano y no interpretado por una máquina.
El pseudocódigo, en este sentido, está considerado como una descripción de un algoritmo que resulta independiente de otros lenguajes de programación. Para que una persona pueda leer e interpretar el código en cuestión, se excluyen diversos datos que no son clave para su entendimiento.

Un pseudocódigo, por lo tanto, se emplea cuando se pretende describir un algoritmo sin la necesidad de difundir cuáles son sus principios básicos. De esta manera, un ser humano encontrará mayores facilidades para comprender el mensaje, a diferencia de lo que ocurriría si estuviese frente a un lenguaje de programación real.

7) ¿cuáles son los lenguajes de programación más comunes?

1. PHP
   -Muy fácil de usar si estás empezando en esto de la programación, pero muy completo para los programadores profesionales.
  -Se orienta al desarrollo de aplicaciones web dinámicas.
  -Es un código seguro y confiable, ya que el código fuente está oculto para el navegador y cliente.
  -Licencia abierta de uso.
  -Las últimas versiones hacen que PHP sea un lenguaje orientado a objetos muy potente y con un rendimiento muy mejorado.
  -Necesitas un servidor web para ejecutar una aplicación, aunque las últimas versiones traen un       servidor incorporado.
  -Debes tener un conocimiento genérico de HTML para trabajar con PHP o con JSON.

2. PERL
  -Es uno de los lenguajes de programación más sencillos que existen.
  -Muy eficiente y de elevado rendimiento a la hora de tratar un gran volumen de datos.
  -Puede usarse tanto en desarrollo web como en otros entornos.
  -No necesitas hacer instalaciones a posterior, ya que el intérprete viene por defecto.
  -Un mismo código corre en multitud de distribuciones sin necesidad de que toques una sola línea.
  -Puede ser lento comparado con otras herramientas, ya que se compila al principio de su ejecución.
  -Su código es difícil de leer.
  -Al no disponer de control de excepciones es complicado encontrar algunos errores.

3. JAVA
 -De hecho, no sé si sabes que Java es quien impulsa Android, el sistema operativo más usado del mundo.
-Lenguaje multiplataforma, ejecutable en la mayoría de los sistemas operativos.
-Software de distribución libre.
-Lenguaje completo y dispone de una librería y utilidades amplias.
-Lenguaje de ejecución lenta al ser interpretado.
-Difícil de aprender debido a su compleja sintaxis.

4. C++
-Lenguaje muy didáctico, y a través del mismo puedes aprender otros como C#, Java, PHP.
-Muy utilizado en la creación de sistemas operativos, utilidades, bibliotecas…
-Permite programar con múltiples estilos, como los estructurados.
-Admite la compilación de nuestro código en múltiples plataformas.
-El uso de librerías dinámicas se hace muy complicado, ya que la carga y la liberación de memoria de la librería corre a cargo de los programadores.
-No es muy usable para desarrollar páginas web.
-Complejo programar bases de datos.
-Más pesado que otros programas similares.

5. PYTHON
-Es escalable y flexible.
-Funciona en múltiples plataformas (Windows, Mac, Linux).
-Soporte de programación de interfaces gráficas de usuario.
-Conexión con las bases de datos más usadas.
-Se integra fácilmente con lenguajes como C, C++, y Java entre otros.
-No dispone de una buena documentación.
-Es más lento comparado con otros lenguajes como Java o C.
-Difícil de ejecutar múltiples hilos.

8) ¿qué es compilar?

La palabra compilar significa traducir un código de programación a código ejecutable por la máquina. Para compilar un código fuente y convertirlo en ejecutable

9) ¿qué papel desempeñan los compiladores e intérpretes?

o Compilador, que analiza el programa fuente y lo traduce a otro equivalente escrito en otro lenguaje (por ejemplo, en el lenguaje de la máquina). Su acción equivale a la de un traductor humano, que toma un libro y produce otro equivalente escrito en otra lengua.

o Intérprete, que analiza el programa fuente y lo ejecuta directamente, sin generar ningún código equivalente. Su acción equivale a la de un intérprete humano, que traduce las frases que oye sobre la marcha, sin producir ningún escrito permanente. Intérpretes y compiladores tienen diversas ventajas e inconvenientes que los hacen complementarios:

o Un intérprete facilita la búsqueda de errores, pues la ejecución de un programa puede interrumpirse en cualquier momento para estudiar el entorno (valores de las variables, etc.). Además, el programa puede modificarse sobre la marcha, sin necesidad de volver a comenzar la ejecución.

o Un compilador suele generar programas más rápidos y eficientes, ya que el análisis del lenguaje fuente se hace una sola vez, durante la generación del programa equivalente. En cambio, un intérprete se ve obligado generalmente a analizar cada instrucción tantas veces como se ejecute (incluso miles o millones de veces).

o Un intérprete permite utilizar funciones y operadores más potentes, como por ejemplo ejecutar código contenido en una variable en forma de cadenas de caracteres. Usualmente, este tipo de instrucciones es imposible de tratar por medio de compiladores. Los lenguajes que incluyen este tipo de operadores y que, por tanto, exigen un intérprete, se llaman interpretativos. Los lenguajes comparativos, que permiten el uso de un compilador, prescinden de este tipo de operadores.

10) mapa mental sobre la programación de un  computador 


No hay comentarios:

Publicar un comentario

¿QUE SABES SOBRE EL COVID-19? INFÓRMATE

¿QUE SABES SOBRE EL COVID-19?INFÓRMATE 05/08/2020 Por: Laura Daniela Salamanca Páez ¿QUE ES EL COVID-19 O MAS CONOCIDO COMO CORONA VIRUS? Lo...