martes, 5 de septiembre de 2017

Programación Básica



Para poder llegar a Programar, primero se debe de estudiar a profundidad los conceptos en los que la programación se basa.
Definiendo como primer punto "La Programación" seria el proceso de diseñar, codificar,depurar, y mantener el código de fuente de programas de una computadora (Vía:Wikipedia). Pero desde mi punto de Vista yo considero a la programación la manera de "interactuar, comunicarse" con el sistema operativo, es decir, poder darle unas ordenes (códigos, algoritmos) al sistema para que este las cumpla.
Para poder llegar a programar se requiere de una serie de conocimientos básicos en diferentes áreas, además del dominio del lenguaje que se debe de utilizar, algoritmos especializados y lógica formal.
 ¿Cuál es el Objetivo principal de Programación?
El objetivo de la programación es la de crear software, que después será ejecutado de manera directa por el hardware de la computadora, o a través de otro programa.
-La programación se guía por una serie de reglas y un conjunto pequeño de órdenes, instrucciones y expresiones que tienden a parecerse a una lengua natural acotada. El lenguaje de programación, son todas aquellas reglas o normas, símbolos y palabras particulares empleadas para la creación de un programa y con él, ofrecerle una solución a un problema determinado.
-El lenguaje de programación es el responsable de que la computadora siga paso a paso las órdenes que el programador ha diseñado en el algoritmo. Con esto se entiende que el lenguaje de programación es una especie de intermediario entre el ordenador y el usuario, para que este último pueda darle respuesta a los problemas mediante la computadora y haciendo uso de palabras (funciones), que le interpretan dicho programa al computador para la realización de ese trabajo.

 Léxico o Lenguaje para Programar:

Para poder llegar a programar se necesita un idioma muy particular que va desde letras a números, los cuales lograrán que el sistema operativo logra entender las órdenes que se le establezcan. Este lenguaje se basa en Códigos o Algoritmos. Ahora bien, dependiendo del lenguaje que se elija, se puede hablar del tipo de programación que se va a realizar. Algunos de ellos son:

♦Programación secuencial: son aquellos programas que se diseñan con directrices que van en secuencia una detrás de la otra. Por ejemplo: Cobol, Basic.

♦Programación estructurada: se considera así, cuando la programación es diseñada por módulos. Cada módulo realiza una tarea en especial, y cuando se requiera de esa tarea, sencillamente se le hace el llamado a ese módulo. Por ejemplo: Turbo Pascal, Ada, Modula.

♦Programación orientada a objetos: son aquellos lenguajes que permiten la implementación de objetos dentro del diseño del mismo y el usuario podrá pegar a cada objeto un código de programa. Algunos de estos son: Java, Xml, entre otros.

♦Programación lógica o de lenguaje natural: son aquellos programas que se diseñan con interfaces, de tal manera que el usuario pueda darle ordenes a la máquina utilizando un lenguaje simple. Por ejemplo: Prolog.

♦Programación de inteligencia artificial: son aquellos programas que más se acercan a la inteligencia humana, ya que tienen la capacidad de desarrollar conocimiento. Este tipo de lenguaje trabaja de una manera muy semejante a la mente humana.

¿Qué es un Algoritmo? 

Un algoritmo es una secuencia no ambigua, finita y ordenada de instrucciones que han de seguirse para resolver un problema. Un programa normalmente implementa (traduce a un lenguaje de programación concreto) uno o más algoritmos. Un algoritmo puede expresarse de distintas maneras: en forma gráfica, como un diagrama de flujo, en forma de código como en pseudocódigo o un lenguaje de programación, en forma explicativa.

Los programas suelen subdividirse en partes menores, llamadas módulos, de modo que la complejidad algorítmica de cada una de las partes sea menor que la del programa completo, lo cual ayuda al desarrollo del programa. Esta es una práctica muy utilizada y se conoce como "refino progresivo".

Según Niklaus Wirth, un programa está formado por los algoritmos y la estructura de datos.

La programación puede seguir muchos enfoques, o paradigmas, es decir, diversas maneras de formular la resolución de un problema dado. Algunos de los principales paradigmas de la programación son:

   •         Programación declarativa
   •         Programación estructurada
   •         Programación modular
   •         Programación orientada a objetos

Ciclo de Vida de un Software 

El término ciclo de vida de un software describe el desarrollo de software, desde la fase inicial hasta la fase final, incluyendo su estado funcional. El propósito es definir las distintas fases intermedias que se requieren para validar el desarrollo de la aplicación, es decir, para garantizar que el software cumpla los requisitos para la aplicación y verificación de los procedimientos de desarrollo: se asegura que los métodos utilizados son apropiados. Estos métodos se originan en el hecho de que es muy costoso rectificar los errores que se detectan tarde dentro de la fase de implementación (programación propiamente dicha), o peor aun, durante la fase funcional. El modelo de ciclo de vida permite que los errores se detecten lo antes posible y por lo tanto, permite a los desarrolladores concentrarse en la calidad del software, en los plazos de implementación y en los costos asociados. El ciclo de vida básico de un software consta de, al menos, los siguientes procedimientos:


◘        Definición de objetivos: definir el resultado del proyecto y su papel en la estrategia global.
◘        Análisis de los requisitos y su viabilidad: recopilar, examinar y formular los requisitos del cliente y examinar cualquier restricción que se pueda aplicar.
◘         Diseño general: requisitos generales de la arquitectura de la aplicación.
◘         Diseño en detalle: definición precisa de cada subconjunto de la aplicación.
◘         Programación (programación e implementación): es la implementación en un lenguaje de programación para crear las funciones definidas durante la etapa de diseño.
◘         Prueba de unidad: prueba individual de cada subconjunto de la aplicación para garantizar que se implementaron de acuerdo con las especificaciones.
◘         Integración: para garantizar que los diferentes módulos y subprogramas se integren con la aplicación. Este es el propósito de la prueba de integración que debe estar cuidadosamente documentada.
◘         Prueba beta (o validación), para garantizar que el software cumple con las especificaciones originales.
◘         Documentación: se documenta con toda la información necesaria, sea funcional final para los usuarios del software (manual del usuario), y de desarrollo para futuras adaptaciones, ampliaciones y correcciones.
◘         Mantenimiento: para todos los procedimientos correctivos (mantenimiento correctivo) y las actualizaciones secundarias del software (mantenimiento continuo).

 Programación e Ingeniería del Software

Existe una tendencia a identificar el proceso de creación de un programa informático con la programación, que es cierta cuando se trata de programas pequeños para uso personal, y que dista de la realidad cuando se trata de grandes proyectos.
El proceso de creación de software, desde el punto de vista de la ingeniería, incluye mínimamente los siguientes pasos:
1.   Reconocer la necesidad de un programa para solucionar un problema o identificar la posibilidad de automatización de una tarea.
2.   Recoger los requisitos del programa. Debe quedar claro qué es lo que debe hacer el programa y para qué se necesita.
3.   Realizar el análisis de los requisitos del programa. Debe quedar claro qué tareas debe realizar el programa. Las pruebas que comprueben la validez del programa se pueden especificar en esta fase.
4.   Diseñar la arquitectura del programa. Se debe descomponer el programa en partes de complejidad abordable.
5.   Implementar el programa. Consiste en realizar un diseño detallado, especificando completamente todo el funcionamiento del programa, tras lo cual la codificación (programación propiamente dicha) debería resultar inmediata.
6.   Probar el programa. Comprobar que pasan pruebas que se han definido en el análisis de requisitos.
7.   Implantar (instalar) el programa. Consiste en poner el programa en funcionamiento junto con los componentes que pueda necesitar (bases de datos, redes de comunicaciones, etc.).
La ingeniería del software se centra en los pasos de planificación y diseño del programa, mientras que antiguamente (programación artesanal) la realización de un programa consistía casi únicamente en escribir el código, bajo solo el conocimiento de los requisitos y con una modesta fase de análisis y diseño.

Quiero empezar a Programar... ¿Cómo puedo empezar?

Programar es fácil, todo se basa en la forma correcta de aprender y utilizar el lenguaje de tu preferencia. Para mí, para empezar a programar no se debe aprender primeramente un "idioma" porque "no puedo saber un idioma sin antes aprender a hablar", es decir, la falla de muchos profesores es que al principio quieren enseñar a los alumnos un lenguaje como base para "empezar a programar" pero eso no está bien, para empezar a programar primero se debe saber los conceptos básicos, cómo funciona, qué es lo que sucede, y todo esto para que luego con el lenguaje aprendido posteriormente lo puedas relacionar y llevar a cabo de una manera más fácil.

 ¿Programa que puedo utilizar?


El JAVASCRIPT se puede utilizar como un primer lenguaje ya que no es necesario instalarse y se puede utilizar directamente de tu ordenador.  Aquí

El Raptor envés es la herramienta principal con la cuál puedes empezar a aprender, estimular, desarrollar las actividades de programador y a utilizar los "diagramas de Flujo". Aquí







No hay comentarios:

Publicar un comentario