Introducción a la programación Parte 1

  • Autor Autor ghostvj
  • Fecha de inicio Fecha de inicio
ghostvj

ghostvj

Curioso
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Buenas, como mi primer post he tomado la iniciativa de compartir algo de mis primeros conceptos de programación para aquellos que se quieran aventurar en el mundo de la programación, y siendo en lo posible no técnico(eso seria mas adelante). Sin embargo hay algunos conceptos de informática básica que no voy a desarrollar, y espero que se entiendan.
Lo voy a realizar en varias partes y después de esto probablemente continué con alguno de los lenguajes que ya conozco. Espero que les sirva y sea de su agrado.

¿Qué es la programar?
Para resumir programar es mandar u ordenar en este caso a un computador a realizar tareas.

¿Cómo se programa?
Básicamente es como escribir un texto instructivo, es decir como una receta o un manual de instrucciones.

Entonces ¿Cuál es el problema?
El problema reside en como se deben escribir esas instrucciones, debido a que el ordenador no posee la capacidad de comunicarse como estamos acostumbrados. Si bien hoy en día existen las IA(Inteligencia Artificial, Learning Machine), hay que recordar que eso fue hecho por otros humanos, no es mágico. Antes de empezar a saber como se escriben esas instrucciones hay un par de cosas que se deben entender y aprender:

La Computadora u Ordenador.
Una computadora es una maquina que es capas de almacenar información y procesarla en forma de cálculos, con toma de decisiones a una velocidad increíblemente rápida y fuera de lo común para la mente humana. Ademas agregamos la capacidad de uso como medio de comunicación tecnológico entre seres humanos.

Instrucción a un ordenador.
Una costumbre que tenemos a la hora de instruir, es tomar los procesos como parte de un todo; lo cual se debe evitar. Alguna vez, les ha pasado que han querido hacer algo como hacer un huevo hervido, han puesto el agua en la olla, encendido la cocina, luego por ultimo buscan el huevo y se encuentran con que no hay; eso es tomar procesos como parte de un todo, creer que poseen todos los materiales, elementos para hacerlo y no es así. En la programación eso sería un error. La computadora no sabe, puede almacenar información pero no sabe por si misma que hacer con ella, si no se le instruye. Así que no existe lo obvio, para la computadora. Algo de aclarar también es que el o los instructivos a la computadora se conocen como algoritmos.


Algoritmos: lo primero que hay que hacer cuando se da un problema que se puede resolver con un sistema informático, es efectuar un análisis del mismo y determinar los pasos a seguir para obtener un resultado correcto. En este proceso se define los datos necesarios, se determina elalgoritmo que hay que realizar con ellos para tener los resultados deseados.Un algoritmo es un conjunto limitado de reglas que permiten realizar mecánicamente un procesodeterminado. Por ejemplo; el proceso de efectuar una división por parte de un escolar se basa en eldesarrollo de un algoritmo que aprendió en su momento, de esta forma va realizando las operaciones elementales hasta llegar al resultado.La acción de emplear máquinas para resolver un proceso en forma más rápida y viable, se denomina mecanizar y uno de los primeros trabajos al estudiar un problema es ver si tal proceso esmecanizable, posteriormente se analiza si es justificable económicamente esta mecanización.La ventaja de la mecanización viene dada; principalmente, por la rápidez y exactitud de laoperación realizada por los ordenadores que operan mil o millones de operaciones por segundo yque la impresión puede llegar a ser miles de caracteres por segundo.


¿Y cómo me entiende entonces la computadora?
Ahí es donde entra los lenguajes de programación, existen los lenguajes de bajo nivel y los de alto nivel. Los de bajo nivel son aquellos lenguajes que se acercan más a un lenguaje maquina(se trata directamente con el Hardware), como binario o hexadecimal, en cambio los de alto nivel son los que se acerca más a un lenguaje humano. Si bien dentro de los lenguajes de alto nivel tenemos al lenguaje estructurado, el orientado a objetos entre otros. Voy a centrarme primero en lo estructurado.

¿Entonces que es el lenguaje estructurado?
El lenguaje estructurado, es en mi conocimiento la columna principal de la programación en alto nivel. Este este como otros lenguajes se escribe de forma algorítmica, pero no se preocupen, no es nada de otro mundo. Para introducirnos en el lenguaje estructurado, vamos a aprender 3(tres) formas bases de instrucción:
Directa: son órdenes o instrucciones que son ejecutadas por la computadora sin condición.
Repetitiva o bucle: son circuitos cerrados en cuál se repiten operaciones mientras se cumpla la condición.
Selectiva: puede realizar distintos tipos de operaciones dependiendo sí o sí la condición se cumple.
Como leerán hay lago distintivo y que resalta, la palabra "condición". Estos es poner circunstancias que deben ocurrir. Para entender un poco mejor las instrucciones vamos a un ejemplo en la vida real, en este caso queremos trasladar unas piedras de un lugar a otro:

Orden directa: sería llevar las piedras de un lugar al otro.
Aquí plantamos algo simple y sencillo, pero que pasa si se terminan las piedras, por esa razón vamos a ocupar una order repetitiva.

Orden repetitiva: sería Mientras estén las piedras en este lugar, llevamos las piedras al otro.
Notaran que aquí se ha agregado una condición, que dice Mientras, luego agregamos la orden directa después de la coma, es decir que en cuanto se termine las piedras a llevar, terminamos nuestra tarea de llevar las piedras. Y solo llevamos de a una piedra o podemos llevar más de una, es decir supongo que queremos hacer el trabajo lo más eficiente posible. Para ello vamos a ocupar la orden selectiva.

Orden selectiva: Sí podemos cargar más de una piedra por viaje entonces juntamos otra piedra, si no solo llevamos una.
En este caso nos centramos en hecho de cuantas piedras podemos cargar, y la instrucción tiene un "Sí" luego tiene un "entonces" y por ultimo un "si no". Auqnue el "si no" podemos omitirlo, ya que la condición dice "Sí podemos cargar más de una piedra" donde esta sería la condición y también contiene una orden directa, que sería cargar otra piedra.

Espero que sé entiendan los ejemplo anteriores. Ahora vamos a unirlos para poder llevar a cabo la tarea de manera más eficiente, esto sería:
Mientras estén las piedras en este lugar.
Cargamos una piedra.
Sí podemos cargar más de una piedra.
Juntamos otra piedra.
Sí no, solo juntamos una piedra.
Llevamos la piedra a otro lugar.
Terminamos si no hay más piedras en este lugar.


Bien, terminamos nuestro primer instructivo u algoritmo.

Piensa ¿Le falta algo?¿ Lo harías de otra manera? ¿Cómo lo aplicarías con otro ejemplo? ¿Que tareas cotidianas piensas que puedes escribir en un algoritmo con estás instrucciones básicas?

Nota: La programación se ha considerado uno de los trabajos más atípicos, dado que hay muchas formas de hacerlo.

Y... por ahora eso fue todo.. espero que les guste y les sirva de algo. Si tengo su aprovación continuare con la segunda parte. Muchas gracias.🙂
 
Atrás
Arriba