¿Por qué es importantes que las nuevas generaciones de estudiantes aprendan a programar?
La revolución tecnológica que se ha dado en esta última década ha alcanzado y transformado profundamente la sociedad. En esta situación es muy importante ayudar a las generaciones futuras a tener las herramientas y actitud adecuadas para contribuir a que este cambio sea para su beneficio y de toda la humanidad. El mercado laboral se enfrenta a un desajuste entre la formación actual y las habilidades profesionales demandadas por las empresas. Este “deficit de talento” es especialmente notable en los perfiles relacionadas con las habilidades tecnológicas. Las previsiones para el año 2020 son devastadoras.
El objetivo de este lenguaje de programación no es otro que el de aprender jugando a construir programas dinámicos e interactivos, de esa forma se podrá mostrar el lenguaje de la programación profesional para quien se quiera dedicar a ello en un futuro
Imagina tener el poder de crear herramientas que te ayuden a hacer tu vida, y la de otras personas que comparten tu necesidad, más sencilla. Eso es exactamente lo que sucede con las aplicaciones, sitios, programas y todos aquellos software exitosos: satisfacen una necesidad común.
Aprender a programar puede abrirte las puertas a un mejor empleo, nuevas áreas de trabajo o incluso a una nueva forma de ver cómo funciona todo a nuestro alrededor.
En ocasiones una de las grandes barreras para aprender algo nuevo es el miedo. Pero cuando se trata de algo tan común e importante para la vida cotidiana y que además nos acerca al entorno tecnológico, se convierte en una oportunidad que no podemos dejar pasar.
Sin duda alguna, los beneficios que otorga aprender a programar no solo se reflejan en el mundo digital, sino también en la solución de problemas de la vida cotidiana.
Qué habilidades desarrollan los estudiantes que aprenden a programar ?
El programador se ha convertido en una figura básica en la mayoría de las empresas modernas. Incluso en compañías pequeñas y no dedicadas al software, contar con un programador en sus filas que pueda producir producto propio se ha vuelto fundamental.
Mucha gente piensa que los programadores son profesionales muy técnicos, que trabajan de forma aislada sin interactuar con el resto del equipo. No pueden estar más equivocados. Hay una serie de habilidades que los programadores desarrollan
Resolución de problemas
Cuando enseño a la gente a programar, veo a mucha más gente «luchando» con la resolución del problema que con el código en sí mismo. La capacidad de dividir un problema en otros más pequeños y luego resolver todos esos problemas ordenadamente requiere mucha práctica. Obtener buenos resultados en la resolución de problemas puede convertirte en un gran programador.
Además, para la mayoría de los problemas, suele haber más de una solución posible. Una gran parte de nuestro trabajo como desarrolladores de software es pensar en esas diferentes soluciones y elegir la mejor..
Creatividad
Lo que más me gusta de ser programador es que puedo usar mi energía creativa para construir cosas de las que otras personas puedan beneficiarse. Puedes pensar de forma original para crear cosas realmente geniales.
Tener ideas creativas es importante para crear nuevas funciones, interfaces y aplicaciones. Una vez conseguí que alguien comprara una licencia para un producto que diseñé en gran parte debido a la interfaz creativa.
Además, muchos de los problemas requieren creatividad para resolverse. Hay más de una solución para casi todos los problemas de programación y proponer enfoques creativos para resolverlos a menudo puede llevar a una solución optimizada.
Adaptabilidad
La programación sigue siendo un mundo nuevo, y está evolucionando súper rápido. Ser capaz de adaptarse cuando las cosas cambian es fundamental. Cuando sale una nueva biblioteca o un lenguaje nuevo aparece en escena, es importante ser capaz de aprenderlo (dentro de lo razonable, por supuesto). Nuestra industria se vería dramáticamente diferente si todavía estuviéramos escribiendo código en Fortran. Tenemos que ser capaces de evolucionar y adaptarnos cuando las cosas cambian.
Además, los objetivos y las características de los proyectos a menudo cambian, especialmente con el trabajo de los clientes.
Colaboración
Es muy probable que tengas que trabajar con otras personas, como otros desarrolladores, clientes, jefes, colaboradores de open source… Incluso si eres un trabajador independiente o autónomo, tendrás que colaborar con otros. Aprender a trabajar bien con otras personas y sus diferentes personalidades es fundamental.
Es muy importante saber que una persona no puede hacer todo, o al menos hacer todo bien. Diferentes personas tienen diferentes habilidades, puntos de vista y experiencias de vida que son más útiles en combinación que de forma aislada.
Pide ayuda a otras personas. No es necesario ser un experto en todo y otras personas pueden ser más expertos que tú en diferentes cosas. Confía en los demás. Si estás atascado en algo, asegúrate de pedir ayuda para que no te bloquees por mucho tiempo.
cuando alguien te pida ayuda, ayúdale. Puedes aprender mucho explicando bien las cosas y podrás reforzar tus conocimientos sobre el tema.
Comunicación
Cuando se trabaja con otras personas, ya sean compañeros de trabajo, clientes, personas que utilizan sus productos, gerentes o subordinados, una buena comunicación es crucial. Desarrollas información honesta sobre cómo van las cosas, cuál es la situación actual de los proyectos, y recibe sus opiniones con honestidad y con amabilidad. La gente será menos receptiva a la retroalimentación si eres grosero o no constructivo. Si eres deshonesto o endulzas la verdad, entonces puede que no veas un cambio positivo en los demás. Definitivamente hay una fina línea aquí.
Paciencia
La primera persona con la que necesitas tener paciencia cuando estás programando es contigo mismo. La programación es difícil y a veces tendrá errores o problemas difíciles de superar. Si siempre fuese fácil, entonces no te estarías desafiando a ti mismo y no estarías creciendo como programador.
Ten paciencia con otras personas. La gente no es perfecta. Cometer errores y fallar pueden ser algunas de las experiencias más importantes en el proceso de aprendizaje, así que fomenta un ambiente donde sea seguro tomar riesgos y crecer. Entiende que las cosas diferentes encajan más fácilmente para personas diferentes.
Humildad
Puedes aprender mucho de otros programadores. Una persona no puede saber todo en el mundo de la programación. Sé receptivo a la crítica constructiva y evita estar a la defensiva. Puedes mejorar tu código y a ti mismo a partir de la retroalimentación. No siempre tienes razón y debes ser receptivo a las ideas de los demás.
Confianza
Por otro lado, también hay que tener confianza. Creer en ti mismo y tener confianza en tus habilidades es realmente importante.
En programación, ¿ qué es una estructura de control?
En programación, las estructuras de control permiten modificar el flujo de ejecución de las instrucciones de un programa.
Con las estructuras de control se puede:
De acuerdo con una condición, ejecutar un grupo u otro de sentencias (If-Then-Else)
De acuerdo con el valor de una variable, ejecutar un grupo u otro de sentencias (Select-Case)
Ejecutar un grupo de sentencias mientras se cumpla una condición (Do-While)
Ejecutar un grupo de sentencias hasta que se cumpla una condición (Do-Until)
Ejecutar un grupo de sentencias un número determinado de veces (For-Next)
Todos los lenguajes de programación modernos tienen estructuras de control similares. Básicamente lo que varía entre las estructuras de control de los diferentes lenguajes es su sintaxis; cada lenguaje tiene una sintaxis propia para expresar la estructura.
¿Cuántas estructuras de control existen en la programación?
El término "estructuras de control" viene del campo de la ciencia computacional. Cuando se presentan implementaciones de Java para las estructuras de control, nos referimos a ellas con la terminología de la Especificación del lenguaje Java, que se refiera a ella como instrucciones modernas.
Ejecución secuencial
Por lo general, las instrucciones se ejecutan una después de la otra, en el orden en que están escritas, es decir, en secuencia. Este proceso se conoce como ejecución secuencial.
Transferencia de control
En Java, como en otros lenguajes de programación por excelencia como C y C++, el programador puede especificar que la siguiente instrucciones a ejecutarse tal vez no sea la siguiente en secuencia. Esto se conoce como transferencia de control. Hay que tener en cuenta que la instrucción goto es una palabra reservada pero no se utiliza ni se recomienda. Un programa bien estructurado no necesita esta instrucción.
De selección
Las estructuras de control de selección ejecutan un bloque de instrucciones u otro, o saltan a un subprograma o subrutina según se cumpla o no una condición.
Estructura de control Editar
Las estructuras de control, denominadas también sentencias de control, permiten tomar decisiones y realizar un proceso repetidas veces. Se trata de estructuras muy importantes, ya que son las encargadas de controlar el flujo de un programa, según los requerimientos del mismo. canal o proceso que se puede actualizar
Selección if simple Se trata de una estructura de control que permite redirigir un curso de acción según la evaluación de una condición simple, sea falsa o verdadera.
Si la condición es verdadera, se ejecuta el bloque de sentencias 1; de lo contrario, se ejecuta el bloque de sentencias 2.
IF (Condición) THEN
(Bloque de sentencias 1)
ELSE
(Bloque de sentencias 2)
END IF
Se pueden plantear múltiples condiciones simultáneamente: si se cumple la (Condición 1) se ejecuta (Bloque de sentencias 1). En caso contrario se comprueba la (Condición 2); si es cierta se ejecuta (Bloque de sentencias 2), y así sucesivamente hasta n condiciones. Si ninguna de ellas es cumple se ejecuta (Bloque de sentencias else).
IF (Condición 1) THEN
(Bloque de sentencias 1)
ELSEIF (Condición 2) THEN
(Bloque de sentencias 2)
.....
ELSEIF (Condición n) THEN
(Bloque de sentencias n)
ELSE
(Bloque de sentencias else)
END IF
Select-Case Editar
Artículo principal: Sentencia Select-Case
Esta sentencia permite ejecutar una de entre varias acciones en función del valor de una expresión. Es una alternativa a if then else cuando se compara la misma expresión con diferentes valores.
Se evalúa la expresión, dando como resultado un número.
Luego, se recorren los "Case" dentro de la estructura buscando que el número coincida con uno de los valores.
Es necesario que coincidan todos sus valores.
Cuando se encuentra la primera coincidencia, se ejecuta el bloque de sentencias correspondiente y se sale de la estructura Select-Case.
Si no se encuentra ninguna coincidencia con ningún valor, se ejecuta el bloque de sentencias de la sección "Case Else".
Select (Expresión)
Case Valor1
(Bloque de sentencias 1)
Case Valor2
(Bloque de sentencias 2)
Case Valor n
(Bloque de sentencias n)
Case Else
(Bloque de sentencias "Else")
End Select
Estructuras de control iterativas Editar
Las estructuras de control iterativas o de repetición, inician o repiten un bloque de instrucciones si se cumple una condición o mientras se cumple una condición.
Do-While Editar
Artículo principal: Bucle do
Mientras la condición sea verdadera, se ejecutarán las sentencias del bloque.
Do While (Condición)
(Bloque de sentencias)
Loop
que también puede expresarse:
While (Condición)
(Bloque de sentencias)
wend
Do se Editar
El término "estructuras de control" viene del campo de la ciencia computacional. Cuando se presentan implementaciones de Java para las estructuras de control, nos referimos a ellas con la terminología de la Especificación del lenguaje Java, que se refiera a ella como instrucciones modernas.
Ejecución secuencial
Por lo general, las instrucciones se ejecutan una después de la otra, en el orden en que están escritas, es decir, en secuencia. Este proceso se conoce como ejecución secuencial.
Transferencia de control
En Java, como en otros lenguajes de programación por excelencia como C y C++, el programador puede especificar que la siguiente instrucciones a ejecutarse tal vez no sea la siguiente en secuencia. Esto se conoce como transferencia de control. Hay que tener en cuenta que la instrucción goto es una palabra reservada pero no se utiliza ni se recomienda. Un programa bien estructurado no necesita esta instrucción.
De selección
Las estructuras de control de selección ejecutan un bloque de instrucciones u otro, o saltan a un subprograma o subrutina según se cumpla o no una condición.
Estructura de control Editar
Las estructuras de control, denominadas también sentencias de control, permiten tomar decisiones y realizar un proceso repetidas veces. Se trata de estructuras muy importantes, ya que son las encargadas de controlar el flujo de un programa, según los requerimientos del mismo. canal o proceso que se puede actualizar
Selección if simple Se trata de una estructura de control que permite redirigir un curso de acción según la evaluación de una condición simple, sea falsa o verdadera.
Si la condición es verdadera, se ejecuta el bloque de sentencias 1; de lo contrario, se ejecuta el bloque de sentencias 2.
IF (Condición) THEN
(Bloque de sentencias 1)
ELSE
(Bloque de sentencias 2)
END IF
Se pueden plantear múltiples condiciones simultáneamente: si se cumple la (Condición 1) se ejecuta (Bloque de sentencias 1). En caso contrario se comprueba la (Condición 2); si es cierta se ejecuta (Bloque de sentencias 2), y así sucesivamente hasta n condiciones. Si ninguna de ellas es cumple se ejecuta (Bloque de sentencias else).
IF (Condición 1) THEN
(Bloque de sentencias 1)
ELSEIF (Condición 2) THEN
(Bloque de sentencias 2)
.....
ELSEIF (Condición n) THEN
(Bloque de sentencias n)
ELSE
(Bloque de sentencias else)
END IF
Select-Case Editar
Artículo principal: Sentencia Select-Case
Esta sentencia permite ejecutar una de entre varias acciones en función del valor de una expresión. Es una alternativa a if then else cuando se compara la misma expresión con diferentes valores.
Se evalúa la expresión, dando como resultado un número.
Luego, se recorren los "Case" dentro de la estructura buscando que el número coincida con uno de los valores.
Es necesario que coincidan todos sus valores.
Cuando se encuentra la primera coincidencia, se ejecuta el bloque de sentencias correspondiente y se sale de la estructura Select-Case.
Si no se encuentra ninguna coincidencia con ningún valor, se ejecuta el bloque de sentencias de la sección "Case Else".
Select (Expresión)
Case Valor1
(Bloque de sentencias 1)
Case Valor2
(Bloque de sentencias 2)
Case Valor n
(Bloque de sentencias n)
Case Else
(Bloque de sentencias "Else")
End Select
Estructuras de control iterativas Editar
Las estructuras de control iterativas o de repetición, inician o repiten un bloque de instrucciones si se cumple una condición o mientras se cumple una condición.
Do-While Editar
Artículo principal: Bucle do
Mientras la condición sea verdadera, se ejecutarán las sentencias del bloque.
Do While (Condición)
(Bloque de sentencias)
Loop
que también puede expresarse:
While (Condición)
(Bloque de sentencias)
wend
Do se Editar
REFERENCIAS:
http://www.olimpiadadeinformatica.org.mx/OMI/OMI/Material/Bibliografia.aspx