You are on page 1of 10

Universidad Abierta y a Distancia

de México
División de Ciencias Exactas, Ingeniería y Tecnología
Desarrollo de software

Semestre: 1
Asignatura: Fundamentos de programación
Unidad de aprendizaje: 3
Funciones y Estructuras de Datos
Actividad: Actividad de reflexión

Nombre del estudiante: Juan José Sánchez Salinas


Matrícula: ES231104411
Grupo: DS-DFPR-2301-B1-016
Docente: Mtro. Luis Zárate Palacios
Fecha de entrega: 29 de marzo del 2023

Ciudad de México, marzo del 2023

Diseño: DL-CPL

ÍNDICE
INTRODUCCIÓN.......................................................................................................1
DESARROLLO DE LA ACTIVIDAD..........................................................................2
CONCLUSIÓN...........................................................................................................7
REFERENCIAS BIBLIOGRÁFICAS..........................................................................8
INTRODUCCIÓN

La asignatura de fundamentos de programación es de vital importancia en la


formación de los estudiantes de la carrera de ingeniería de software, ya que
establece las bases del pensamiento lógico y los elementos fundamentales de la
programación, que representan el primer paso, en el largo camino del desarrollo
de software. La información abordada en este módulo es esencial para la
comprensión de los temas por venir, que en un futuro permitirán la comprensión y
elaboración de sistemas complejos utilizados en el mundo real, ya que, como
sabemos el objetivo de el ingeniero de software es la resolución de problemas a
través de sistemas informáticos.

1
DESARROLLO DE LA ACTIVIDAD

a) ¿Qué importancia tienen los paradigmas de programación?

Los paradigmas de programación se refiere a la diferentes formas y estilos en los

que un programa puede ser organizado. Podría decirse que representan diferentes

formas de abordar un problema. “Los paradigmas son importantes porque definen

los lenguajes de programación y cómo funcionan” (Boudreau, 2020). Es el propio

lenguaje de programación el que decide el o los paradigmas que soporta, por lo

que el uso de un lenguaje especifico requiere el uso de un paradigma o

paradigmas específicos.

b) ¿Para qué tipos de problemas los algoritmos secuenciales son idóneos?

Los algoritmos secuenciales ejecutan las instrucciones una después de otra, por lo

que la salida de una es la entrada de la siguiente, los algoritmos de este tipo

poseen una secuencia fija, lo que significa que su comportamiento no cambiara

bajo ninguna circunstancia, es decir, una dato de estrada especifico, siempre

producirá la misma salida. Por lo tanto, son ideales para solucionar problemas en

donde el procedimiento no cambia.

c) ¿Consideras que es necesario seguir toda la metodología de la

programación para el desarrollo de un programa?


2
Considero que la metodología de la programación no es un elemento opcional en

el desarrollo de software, no es algo de lo que se puede prescindir, es decir, el

único modo para hallar la solución a un problema, es analizarlo, y diseñar una

solución a partir de la información que obtenemos a través de tal análisis. La

implementación de la solución en algún lenguaje de programación es básicamente

la esencia del desarrollo de software, las pruebas y validación son obligatorias, de

otro modo como sabríamos si la solución desarrollada realmente funciona.

d) Menciona 3 ejemplos donde se pueden utilizar los arreglos y/o

estructuras para solucionar un problema con programación.

“Un array es un conjunto finito y ordenado de elementos homogéneos” (Joyanes

Aguilar, 2003). Son útiles para almacenar y manipular datos relacionados del

mismo tipo. Por ejemplo, para almacenar cadenas con los días de la semana, para

almacenar un grupo de registros para su posterior análisis, por ejemplo, la

temperatura medida a intervalos regulares durante cierto tiempo. Por otro lado, las

estructuras se utilizan para agrupar elementos con diferentes tipos de datos, son

útiles para describir las características de una entidad, por ejemplo, para

almacenar datos relacionados con una persona, como su nombre, edad, genero,

etc.

e) ¿Cómo consideras que se han desarrollado tus habilidades en la

codificación de
3
programas en C?

Teniendo conocimientos previos en el desarrollo de software, así como

conocimiento de algunos lenguajes de programación, en los cuales se incluye el

lenguaje C, diría que, el curso me ha servido para recordar conceptos básicos, así

como las bases de la programación. Además, los ejercicios propuestos han

servido para ejercitar y practicar habilidades previamente adquiridas.

f) ¿Consideras que se puede aplicar todo lo que has aprendido en esta

materia en tu vida laboral?

Creo que la respuesta a esta pregunta depende completamente del tipo de trabajo

que se desempeñe, en trabajos que impliquen el uso de una computadora, los

temas abordados pueden tener algún tipo de influencia, sin embargo, con respecto

a mi situación actual, no puedo pensar en ninguna forma en la que la información

abordad pueda ser aplicable o de utilidad.

g) Menciona ¿cuál fue el tema que más te interesó y qué fue lo que

aprendiste de éste?, también ¿cuál fue el tema que más se te dificultó de

comprender? (Puedes elegir de la unidad 1, 2 o 3).

4
Como mencione anteriormente, tengo algunos conocimientos previos con respecto

a la programación, por lo que los temas abordados no representaron mucha

dificultad, ya que la información abordada no era nueva para mí. El tema que más

llamo mi atención fue estructura de datos, sin embargo, me hubiera gustado que

se profundizara un poco más en él.

h) ¿Consideras que al utilizar la programación modular puedes resolver

más rápido un estudio de caso amplio?

Dividir un problema grande en elementos mas pequeños y simples siempre ha

sido un método efectivo para resolver cualquier tipo de problema, en lo que

respecta a la programación, dividir un programa en funciones ayuda ha agilizar el

desarrollo y depuración de este, además de brindar mayor claridad al diseño.

i) De acuerdo con lo aprendido en la materia, ¿consideras que la

documentación de un software es necesaria o es un paso que se podría omitir?

Documentar el software es necesario para mantener un registro que detalle todos

los aspectos de la implementación, que hace y como lo hace, con el fin de brindar

información a cualquiera que necesite trabajar o modificar con dicho software.

Programas con poca o nula documentación son más difíciles de leer y depurar, y

casi imposibles de mantener y modificar.

j) ¿Cuál es tu idea central sobre la Programación?


5
La programación plantea soluciones a problemas mediante programas
informáticos ejecutados por algún dispositivo como la computadora. Las
soluciones inicialmente se plantean a través de un conjunto de pasos (algoritmo)
que después se traducen a un lenguaje que la computadora comprenda.
Asimismo, la programación es un proceso ya que conlleva el diseño de
programas, la codificación, su mantenimiento y protección.

k) ¿Cuál es la importancia de los algoritmos dentro del proceso de creación

de software?

Los algoritmos son la base de la programación, son la representación de la

solución a un problema específico, en forma de una secuencia de pasos simples y

bien definidos. El objetivo del desarrollo de software es traducir tales algoritmos a

un lenguaje que pueda ser interpretado por la computadora, con el fin de facilitar el

trabajo del hombre, al delegar las tareas complejas y repetitivas a la máquina.

6
CONCLUSIÓN

La programación consiste en definir el comportamiento de un sistema de cómputo


a través de un lenguaje comprensible para el mismo. Desde la creación de las
primeras computadoras se han estudiado y establecido diversos métodos o estilos
para resolver y representar las soluciones aplicadas en los sistemas informáticos.
El termino paradigma de programación se refiere a los todos esos estilos
diseñados para resolver un problema.
En sus inicios, la única forma de definir el comportamiento de una computadora
era a través del lenguaje máquina, un lenguaje que consiste únicamente de unos y
ceros para representar las instrucciones a ejecutar y los datos a manipular, este
lenguaje era y sigue siendo el idioma nativo de los sistemas de cómputo, sin
embargo, es claramente difícil para un ser humano interpretar esta información,
por lo que era necesario desarrollar lenguajes que fueran comprensibles para el
programador y para la máquina. Esto llevo a la creación de herramientas que son
capaces de traducir instrucciones comprensibles para el humano a el lenguaje
nativo de la máquina. Como consecuencia era posible utilizar lenguajes artificiales
parecidos al lenguaje natural para interactuar con la computadora, además de
hacer posible el uso directo de distintos paradigmas en la programación. Los
paradigmas de programación se han utilizado como base en la creación de los
lenguajes de programación modernos, ya que son creados a partir de uno o más
paradigmas específicos. Por lo que, en general, el uso de un lenguaje especifico,
significa el uso de un paradigma especifico. Sin embargo, muchos de los
lenguajes de programación actuales permiten el uso y combinación de distintos
paradigmas en un mismo programa.

7
REFERENCIAS BIBLIOGRÁFICAS

Boudreau, E. (16 de Octubre de 2020). What Is A Programming Paradigm?


Obtenido de Towards Data Science: https://towardsdatascience.com/what-
is-a-programming-paradigm-1259362673c2

Joyanes Aguilar, L. (2003). Fundamentos de programacion. Algoritmos,


Estructuras de datos y Objetos. McGraw-Hill.

You might also like