¿QUÉ ES PROGRAMACIÓN?
La programación es el proceso de
diseñar, codificar, mejorar y mantener el código
fuente de programas
computacionales El código fuente es
escrito en un lenguaje de
programación. El propósito de la programación es crear programas que muestren
un comportamiento deseado. El proceso de escribir código requiere
frecuentemente conocimientos de varias áreas distintas, además del dominio del
lenguaje a utilizar, algoritmos especializados y lógica formal. Programar no
involucra necesariamente otras tareas tales como el análisis y diseño de la
aplicación (pero sí el diseño del código), aunque sí suelen estar fusionadas en
el desarrollo de pequeñas aplicaciones.
¿QUÉ ES LENGUAJE DE PROGRAMACIÓN?
Un lenguaje de
programación es un
lenguaje que puede ser utilizado para controlar el comportamiento de una
máquina, esencialmente una computadora. Consiste en un conjunto de reglas
sintácticas y semánticas que definen su estructura y el significado de sus
elementos, respectivamente. Aunque muchas veces se usa lenguaje de programación
y lenguaje informático como si fuesen sinónimos, no tiene por qué ser así, ya
que los lenguajes informáticos engloban a los lenguajes de programación y a
otros más, como, por ejemplo, el HTML.
Según la forma de ejecución
LENGUAJES
COMPILADOS
Naturalmente, un programa que se escribe en un lenguaje de alto nivel
también tiene que traducirse a un código que pueda utilizar la máquina. Los
programas traductores que pueden realizar esta operación se llaman
compiladores. Éstos, como los programas ensambladores avanzados, pueden generar
muchas líneas de código de máquina por cada proposición del programa fuente. Se
requiere una corrida de compilación antes de procesar los datos de un problema.
Los compiladores son aquellos cuya función es traducir un programa
escrito en un determinado lenguaje a un idioma que la computadora entienda
(lenguaje máquina con código binario).
Al usar un
lenguaje compilado (como lo son los lenguajes del popular Visual Studio de
Microsoft), el programa desarrollado nunca se ejecuta mientras haya errores,
sino hasta que luego de haber compilado el programa, ya no aparecen errores en
el código.
LENGUAJES INTERPRETADOS
Se puede también utilizar una alternativa diferente de los compiladores
para traducir lenguajes de alto nivel. En vez de traducir el programa fuente y
grabar en forma permanente el código objeto que se produce durante la corrida
de compilación para utilizarlo en una corrida de producción futura, el
programador sólo carga el programa fuente en la computadora junto con los datos
que se van a procesar. A continuación, un programa intérprete, almacenado en el
sistema operativo del disco, o incluido de manera permanente dentro de la
máquina, convierte cada proposición del programa fuente en lenguaje de máquina
conforme vaya siendo necesario durante el proceso de los datos. No se graba el
código objeto para utilizarlo posteriormente.
La siguiente vez que se utilice una instrucción, se le debe interpretar
otra vez y traducir a lenguaje máquina. Por ejemplo, durante el procesamiento
repetitivo de los pasos de un ciclo, cada instrucción del ciclo tendrá que
volver a ser interpretado cada vez que se ejecute el ciclo, lo cual hace que el
programa sea más lento en tiempo de ejecución (porque se va revisando el código
en tiempo de ejecución) pero más rápido en tiempo de diseño (porque no se tiene
que estar compilando a cada momento el código completo). El intérprete elimina
la necesidad de realizar una corrida de compilación después de cada
modificación del programa cuando se quiere agregar funciones o corregir
errores; pero es obvio que un programa objeto compilado con antelación deberá
ejecutarse con mucha mayor rapidez que uno que se debe interpretar a cada paso
durante una corrida de producción.
ALGUNOS LENGUAJES DE PROGRAMACIÓN:
·
ActionScrip
·
Ensamblad
|
·
Objective-
|
|
¿PARA QUE PROGRAMAMOS?
Diremos por tanto que programar es definir
instrucciones para ser ejecutadas por un ordenador. El resultado de esta tarea
es un paquete de instrucciones al que llamamos programa. El objetivo de
programar suele ser resolver un problema.
Vayamos por partes. Para definir
instrucciones a un ordenador hemos de utilizar un lenguaje o código específico,
que ha sido prediseñado con el fin de que la interpretación de cada instrucción
sea unívoca. No hay libertad de interpretación o subjetivismo. Si el lenguaje
que utilicemos acepta la sintaxis: Mostrar 3+3, utilizar
Muéstrame 3+3sería
una orden nula o carente de significado para el ordenador, por lo que
probablemente nos invitará a corregirla o simplemente nos dirá "Error".
Los lenguajes de programación, salvando
las distancias, tienen similitudes con las lenguas humanas: evolucionan (p. ej.
aumentan o disminuyen el número de vocablos), se
expanden internacionalmente y triunfan si gran número de personas se decide a
utilizarlos, o caen en desuso y se convierten en lenguas fósiles. Igualmente
pueden ser más o menos fáciles de aprender, más o menos ricos envocablos, y
más o menos fuertes para resistir el embate de las necesidades de los
programadores. Hablaremos de ello en otros artículos.
¿CON CUÁNTOS
LENGUAJES PODEMOS DAR INSTRUCCIONES A UN ORDENADOR?
Pues con muchos, la única salvedad a tener
en cuenta es que no podemos “hablarle” directamente:
necesitaremos un intérprete o programa específico para escribir instrucciones.
Este intérprete suele recibir el mismo nombre que el lenguaje (p. ej. Turbopascal o Visual Basic)
y lo instalamos en nuestro ordenador accediendo a éste desde el sistema
operativo. Muchos programadores disponen de varios lenguajes en sus ordenadores
y los utilizan en función de sus necesidades. Para empezar diremos que uno es
suficiente para una persona que va a iniciarse en programación.
¿PARA QUÉ
SIRVE PROGRAMAR?
La
respuesta es un tanto ambigua, pero es esta: para todo. Atendiendo a que los
ordenadores intervienen en la casi totalidad de las actividades que realiza el
ser humano, y que la programación es lo que hace funcionar a los ordenadores,
he aquí que programar sirve para todo. Quizás aclaremos poco diciendo esto,
pero es difícil hacer una lista de cosas para las que sirve programar, porque
sería infinita. Efectivamente, los ordenadores intervienen ya en todas las
facetas de la vida y actividad humanas, en procesos tan dispares como la
producción industrial, la enseñanza o el control de tráfico.
TIPOS DE PROGRAMACIÓN:
PROGRAMACIÓN ESTRUCTURADA
La programación estructurada
es una forma de escribir programas de ordenador (programación de computadora)
de manera clara. Para ello utiliza únicamente tres estructuras: secuencia,
selección e iteración; siendo innecesario el uso de la instrucción o
instrucciones de transferencia incondicional (GOTO, EXIT FUNCTION, EXIT SUB o
múltiples RETURN).
ESTRUCTURA SECUENCIAL
Una estructura de programa
es secuencial si se ejecutan una tras otra a modo de secuencia, es decir que
una instrucción no se ejecuta hasta que finaliza la anterior.
Ejemplo:
INPUT x
INPUT y
Auxiliar= x
x= y
y= auxiliar
PRINT x
PRINT y
Esta secuencia de instrucciones permuta los valores de x
e y, con ayuda de una variable auxiliar, intermedia.
1º Guardamos una copia del valor de x en auxiliar.
2º Guardamos el valor de y en x, se pierde el valor
anterior de x pero no importa porque tenemos una copia en auxiliar.
3º Guardamos en y el valor de auxiliar, que es el valor
inicial de x. El resultado es el intercambio de los valores de x e y, en tres
operaciones secuenciales.
ESTRUCTURA SELECTIVA O DE SELECCIÓN
La estructura selectiva
permite la realización de una instrucción u otra según un criterio, solo una de
estas instrucciones se ejecutara.
Ejemplo:
IF a > b THEN
PRINT a ; " es mayor que " ; b
ELSE
PRINT a ; " no es mayor que " ; b
END IF
Esta instrucción selectiva
puede presentar dos mensajes, uno a es mayor que b, y el otro a no es mayor que
b, solo uno de ellos será presentado, según el resultado de la comparación de a
y b, si el resultado de a > b es cierto, se presenta el primer mensaje, si
es falso el segundo, las palabras IF, THEN, ELSE, END IF; son propias de la
instrucción (palabra reservadas) que tienen un significado en el lenguaje,
sirven de separadores, y el usuario no debe utilizarlas salvo para este fin.
IF señala el comienzo de la instrucción condicional, y se
espera que después esté la condición de control de la instrucción.
THEN señala el fin de la condición, y después estará la
instrucción a realizar si la condición es cierta.
ELSE separa la instrucción que se ejecutará si la
condición es cierta de la que se ejecutará si es falsa.
END IF indica que la instrucción condicional finaliza y
el programa seguirá su curso.
ESTRUCTURA ITERATIVA
Un bucle iterativo o iteración de una secuencia de
instrucciones, hace que se repitan mientras se cumpla una condición, en un
principio el número de iteraciones no tiene porque estar determinado.
Ejemplo:
a= 0
b= 7
WHILE b > a DO
PRINT a
a=
a + 1
WEND
Esta instrucción tiene tres palabras reservadas WHILE, DO
y WEND.
WHILE: señala el comienzo del bucle y después de esta
palabra se espera la condición de repetición, si la condición es cierta se pasa
al cuerpo del bucle, si no al final de la instrucción mientras.
DO: señala el final de la condición, lo que esté después
será el cuerpo del bucle.
WEND: señala el final del cuerpo del bucle y de la instrucción
WHILE.
El bucle mientras, se repite mientras la condición sea
cierta, esta condición se comprueba al principio por lo que el cuerpo del bucle
puede que no se ejecute nunca, cuando la condición es falsa en un principio, o
que se repita tantas veces como sea necesario, mientras la condición sea
cierta.
En el ejemplo tenemos dos variables a y b que al
iniciarse el bucle tienen los valores a=0 y b=7.
La condición del bucle es b > a.
Cuando a=0 y b=7. la condición es cierta, en el cuerpo
del bucle se escribe el
valor de a en pantalla y se incrementa a en una unidad.
Entonces a=1 y b=7.
Cuando a=6 y b=7. la condición es cierta, se escribe el
valor de a en pantalla y se incrementa en una unidad.
Resultando que a=7 y b=7. Entonces la condición es falsa
y la instrucción WHILE finaliza.
La salida por pantalla de este ejemplo seria 0 1 2 3 4 5
6
LA PROGRAMACION MODULAR
La programación modular es
un paradigma de programación que consiste en dividir un programa en módulos o
subprogramas con el fin de hacerlo más legible y manejable. Se presenta
históricamente como una evolución de la programación estructurada para
solucionar problemas de programación más grandes y complejos de lo que ésta
puede resolver. Al aplicar la programación modular, un problema complejo debe
ser dividido en varios subproblemas más simples, y estos a su vez en otros
subproblemas más simples.
Esto debe hacerse hasta
obtener subproblemas lo suficientemente simples como para poder ser resueltos
fácilmente con algún lenguaje de programación. Ésta técnica se llama
refinamiento sucesivo, divide y vencerás ó análisis descendente (Top-Down).
Un módulo es cada una de las
partes de un programa que resuelve uno de los subproblemas en que se divide el
problema complejo original. Cada uno de estos módulos tiene una tarea bien
definida y algunos necesitan de otros para poder operar.
En caso de que un módulo necesite de otro, puede
comunicarse con éste mediante una interfaz de comunicación que también debe
estar bien definida.
Si bien un módulo puede
entenderse como una parte de un programa en cualquiera de sus formas y variados
contextos, en la práctica es común representarlos con procedimientos y
funciones. Adicionalmente, también
Pueden considerarse módulos las librerías que pueden
incluirse en un programa o, en programación orientada a objetos, la
implementación de un tipo de dato abstracto.
¿QUÉ ES SOFTWARE?
El Software es
algo que notamos poco por que quizás a veces lo pasamos por
desapercibido debido a que parte importante de el
no es visible a nuestros ojos, pero sabias que si no hubiera
existido el software no estuvieras manejando los programas en tu computadora,
ya que el software se ocupa de mandar instrucciones a la computadora ya que
mediante el se ejecuta el sistema operativo del equipo.
El Hardware de la Computadora necesita del software para poder funcionar, si no existiese seria como una
herramienta sin utilidad para ningún fin, es aquí donde el Hardware y el
Software se necesitan para cumplir tareas que el
otro no puede realizar. El Software se
puede dividir hasta en tres tipos principales:
Tipos de software:
·
Software de
sistema: La función del
Software de Sistema es proveer de las instrucciones al sistema operativo
para así el usuario tener un control en la que puede gestionar los
controladores, diagnosticar el hardware, controlar los programas mediante el
uso del sistema operativo.
·
Software
de Programación: Es todo lo
referente hacia lo que maneja el usuario para desarrollar aplicaciones y
programas informáticos mediante lenguajes de programación, puede
incluir desde editores de texto hasta compiladores de documentos.
·
Software
de Aplicación: Son los programas
que contienen varias instrucciones para ayudar a gestionar al usuario para
controlar algo, por citar un ejemplo son softwares
que están construidos a medida y exigencias del usuario.
GRAFICADORES:

Los graficadores son programas informáticos que gracias a dibujos vectoriales o mapa de bits, representación de una imagen por pequeños puntos o píxeles con un color y luminosidad determinada, nos ayudan a crear ilustraciones desde un logotipo o cualquier otra ilustración profesional. Con lo que la función de los graficadores consiste en ayudarnos en el diseño de cualquier ilustración, sea un simple logotipo o una ilustración profesional.
Otra función de los graficadores es como instrumento pedagógico en el aprendizaje de las funciones y en la geometría. Diversos estudios sobre como enseñarles a los alumnos la representación gráfica de funciones, estudios sobre trigonometría aconsejan que se aproveche mucho más si se ayudan de los recursos informáticos, con el empleo de los graficadores.
Uno de los programas graficadores más conocidos es el gnuplot. Es un programa muy versátil que realiza gráficas de funciones y datos. Este programa es compatible con la mayoría de los sistemas operativos. El gnuplot reproduce directamente en la pantalla de la computadora una gran variedad de formatos de imagen. Formatos como PNG, EPS, SVG, JPEG, etc. y se pueden usar interactivamente o por grupos.
La Algoritmica.
La algorítmica consiste en el desarrollo de soluciones computacionales a los diferentes problemas que se plantean en el desarrollo de un programa. Dichas soluciones son independientes del lenguaje de programación utilizado, puesto que son resueltos en un nivel de abstracción mayor. Muchas soluciones algorítmicas se basan en las diferentes estructuras de datos como apoyo fundamental a la hora de resolver problemas. Debido a este motivo, es importante conocer las diferentes estructuras con el objetivo de aplicar la estructura más adecuada al tipo de problema con el cual nos enfrentamos.
¿PARA QUÉ SIRVE UN ALGORITMO?
Sirve para que ya sea que un programador o un grupo de personas sigan un patrón para poder crear un programa o lograr utilizar un programa.
¿QUÉ ES UN ALGORITMO?
Un algoritmo no es más que una serie de pasos lógicos que se deben seguir para solucionar un problema del mundo real. Nótese que diferentes personas pueden dar diferentes soluciones para el mismo problema, por lo cual no podemos decir que exista una sola serie de pasos lógicos para solucionar un problema.
¿PARA QUE SIRVEN LOS ALGORITMOS?:
Los algoritmos tienen muchas aplicaciones, una de las más importantes es en el ámbito de la informática. Cuando usted ejecuta una aplicación (como el web browser que está utilizando para ver esta página), en realidad está desencadenando una serie de pasos lógicos que son leídos e interpretados por el computador. Por lo tanto, se deduce que los algoritmos sirven para programar computadores. Además de esto, los algoritmos nos sirven para modelar procesos o incluso un procedimiento (ya sea de ingeniería, médico, etc.).
¿QUÉ ES UN DIAGRAMA DE FLUJO?
Un diagrama de flujo es una representación gráfica de un proceso. cada paso del proceso es representado por un símbolo diferente que contiene una breve descripción de la etapa de proceso. los símbolos gráficos del flujo del proceso están unidos entre sí con flechas que indican la dirección de flujo del proceso.
el diagrama de flujo ofrece una descripción visual de las actividades implicadas en un proceso mostrando la relación secuencial ente ellas, facilitando la rápida comprensión de cada actividad y su relación con las demás, el flujo de la información y los materiales, las ramas en el proceso, la existencia de bucles repetitivos, el número de pasos del proceso, las operaciones de interdepartamentales… facilita también la selección de indicadores de proceso
BENEFICIOS DEL DIAGRAMA DE FLUJO
· En primer lugar, facilita la obtención de una visión transparente del proceso, mejorando su comprensión. El conjunto de actividades, relaciones e incidencias de un proceso no es fácilmente discernible a priori. La diagramación hace posible aprehender ese conjunto e ir más allá, centrándose en aspectos específicos del mismo, apreciando las interrelaciones que forman parte del proceso así como las que se dan con otros procesos y subprocesos.
· Permiten definir los límites de un proceso. A veces estos límites no son tan evidentes, no estando definidos los distintos proveedores y clientes (internos y externos) involucrados.
· El diagrama de flujo facilita la identificación de los clientes, es más sencillo determinar sus necesidades y ajustar el proceso hacia la satisfacción de sus necesidades y expectativas.
· Estimula el pensamiento analítico en el momento de estudiar un proceso, haciendo más factible generar alternativas útiles.
· Proporciona un método de comunicación más eficaz, al introducir un lenguaje común, si bien es cierto que para ello se hace preciso la capacitación de aquellas personas que entrarán en contacto con la diagramación.
· Un diagrama de flujo ayuda a establecer el valor agregado de cada una de las actividades que componen el proceso.
· Igualmente, constituye una excelente referencia para establecer mecanismos de control y medición de los procesos, así como de los objetivos concretos para las distintas operaciones llevadas a cabo.
· Facilita el estudio y aplicación de acciones que redunden en la mejora de las variables tiempo y costes de actividad e incidir, por consiguiente, en la mejora de la eficacia y la eficiencia.
· Constituyen el punto de comienzo indispensable para acciones de mejora o reingeniería.

Todas
estas razones apuntan hacia el diagrama de flujo como un instrumento primordial
para la correcta gestión de los procesos.
ELABORACIÓN DEL DIAGRAMA DE FLUJO
El diagrama de flujo debe ser realizado por un equipo de trabajo en el que las distintas personas aporten, en conjunto, una perspectiva completa del proceso, por lo que con frecuencia este equipo será multifuncional y multi-jerárquico.
A continuación se presenta un ejemplo de diagrama de flujo de proceso.
La elaboración
de un diagrama de flujo es facilitada por diversas herramientas informáticas.
¿PARA QUE NOS SIRVEN LOS DIAGRAMAS DE FLUJOS?
Los diagramas de flujo son una manera de representar visualmente el flujo de datos a través de sistemas de tratamiento de información. Los diagramas de flujo describen que operaciones y en que secuencia se requieren para solucionar un problema dado.
Un diagrama de flujo u organigrama es una representación diagramática que ilustra la secuencia de las operaciones que se realizarán para conseguir la solución de un problema. Los diagramas de flujo se dibujan generalmente antes de comenzar a programar el código frente a la computadora. Los diagramas de flujo facilitan la comunicación entre los programadores y la gente del negocio. Estos diagramas de flujo desempeñan un papel vital en la programación de un problema y facilitan la comprensión de problemas complicados y sobre todo muy largos. Una vez que se dibuja el diagrama de flujo, llega a ser fácil escribir el programa en cualquier idioma de alto nivel. Vemos a menudo cómo los diagramas de flujo nos dan ventaja al momento de explicar el programa a otros. Por lo tanto, está correcto decir que un diagrama de flujo es una necesidad para la documentación mejor de un programa complejo.
¿QUÉ ES DIAGRAMACIÓN?
La diagramación, también llamada maquetación, es un oficio del Diseño editorial que se encarga de organizar en un espacio, contenidos escritos, visuales y en algunos casos audiovisuales (multimedia) en medios impresos y electrónicos, como libros, diarios y revistas.
Estrictamente, el acto de diagramar tan solo se relaciona con la distribución de los elementos en un espacio determinado de la página, mientras que el Diseño editorial incluye fases más amplias del proceso, desde el proyecto gráfico, hasta los procesos de producción denominados pre-prensa (preparación para impresión), prensa (impresión) y post-prensa (acabados). Sin embargo, usualmente todo el aspecto gráfico de la actividad editorial y periodística se conoce por el término diagramación.
En el caso de un diario, la diagramación sigue los objetivos y líneas gráficas y editoriales de ese impreso. Las principales líneas editoriales para la diagramación de un diario incluyen la jerarquización de los artículos por orden de importancia. Las consideraciones gráficas incluyen legibilidad e incorporación balanceada y no-obstructiva de los anuncios publicitarios.
La edición incorpora principios del Diseño gráfico que, a su vez, es una profesión independiente o presente en licenciaturas relacionadas con el diseño, más allá de ser una disciplina que hace parte del currículo de profesiones como el Periodismo, la Publicidad y algunos cursos de Arquitectura en universidades y facultades. Otros términos que sirven para referirse al proceso de diagramación son: layout, makeup o pasteup.