ndice
pg.
Caratula -----------------------------
Introduccin -----------------------
Software de desarrollo ---------
4-9
Conclusiones ----------------------
Bibliografa -------------------------
10
CARATULA
Computacin aplicada a la ingeniera
Profesora: Sandivar Rosas, Juana
Apellidos y nombres: Navarro Meza, Jeanpeare
Tema: Software de desarrollo
Seccin: 1
Ao: 2016
Introduccin
Se conoce como software al equipo lgico o soporte lgico de un sistema
informtico, que comprende el conjunto de los componentes lgicos necesarios
que hacen posible la realizacin de tareas especficas, en contraposicin a los
componentes fsicos que son llamados hardware.
Podemos clasificarlo de la siguiente manera:
Software de base: Su objetivo es desvincular adecuadamente al usuario y al
programador de los detalles del sistema informtico en particular que se use,
aislndolo especialmente del procesamiento referido a las caractersticas
internas de: memoria, discos, puertos y dispositivos de comunicaciones,
impresoras, pantallas, teclados, etc. El software de base le procura al usuario y
programador adecuadas interfaces de alto nivel; controladores, herramientas y
utilidades de apoyo que permiten el mantenimiento del sistema global.
Software de desarrollo: es el conjunto de herramientas que permiten al
programador desarrollar programas informticos, usando diferentes alternativas
y lenguajes de programacin, de una manera prctica.
Software de aplicacin y de productividad: Es aquel que permite a los usuarios
llevar a cabo una o varias tareas especficas, en cualquier campo de actividad
susceptible de ser automatizado o asistido, con especial nfasis en los
negocios.
En el presente trabajo destacaremos el software de desarrollo as como sus
diferentes lenguajes de programacin (alto y bajo nivel).
Software de desarrollo
Tambin conocido como software de programacin, el software de desarrollo es
el conjunto de herramientas que permiten al programador desarrollar
programas informticos, usando diferentes alternativas y lenguajes de
programacin, de una manera prctica.
Un lenguaje de programacin es un lenguaje formal diseado para realizar
procesos que pueden ser llevados a cabo por maquinas como las
computadoras.
Pueden usarse para crear programas que controlen el comportamiento fsico y
lgico de una mquina, para expresar algoritmos con precisin, o como modo
de comunicacin humana.
Est formado por un conjunto de smbolos, reglas sintcticas y semnticas que
definen su estructura, el significado de sus elementos y expresiones. Al
proceso por el cual se escribe, se prueba, se depura, se compila (de ser
necesario) y se mantiene el cdigo fuente de un programa informtico se le
llama programacin.
El lenguaje de programacin se clasifica en dos grandes tipos:
-
Lenguaje de programacin de alto nivel
Lenguaje de programacin de bajo nivel
Lenguaje de programacin de alto nivel
Se refiere al nivel ms alto de abstraccin de lenguaje de mquina. En lugar de
tratar con registros, direcciones de memoria y las pilas de llamadas, lenguajes
de alto nivel se refieren a las variables, matrices, objetos, aritmtica compleja o
expresiones booleanas, subrutinas y funciones, bucles, hilos, cierres y otros
conceptos de informtica abstracta, con un enfoque en la facilidad de uso sobre
la eficiencia ptima del programa.
Ventajas
Genera un cdigo ms sencillo y comprensible.
Escribir un cdigo vlido para diversas mquinas o sistemas operativos.
Permite utilizar paradigmas de programacin.
Permite crear programas complejos en relativamente menos lneas de
cdigo.
Inconvenientes
Reduccin de velocidad al ceder el trabajo de bajo nivel a la mquina.
4
Algunos requieren que la mquina cliente posea una determinada
plataforma.
Principales lenguajes de alto nivel
VB.NET
Ada
ALGOL
BASIC
C Sharp
FORTRAN
Java
Lisp
Modula-2
Pascal
Pauscal en espaol
Perl
PHP
PL/1
PL/SQL
Python
Ruby
MATLAB
Lenguaje de programacin FORTRAN
Es un lenguaje de programacin de alto nivel de propsito general,
procedimental e imperativo, que est especialmente adaptado al clculo
numrico y a la computacin cientfica. Desarrollado originalmente por IBM
704, y usado para aplicaciones cientficas y de ingeniera, el FORTRAN vino a
dominar esta rea de la programacin desde el principio y ha estado en uso
continuo por ms de medio siglo en reas de computo intensivo tales como la
prediccin numrica del tiempo, anlisis de elementos finitos dinmica de
fluidos computacional (CFD), fsica computacional y qumica computacional. Es
uno de los lenguajes ms populares en el rea de la computacin de alto
rendimiento y es el lenguaje usado para programas que evalan el desempeo
(benchmark) y el ranking de los supercomputadores ms rpidos del mundo.
El lenguaje fue diseado teniendo en cuenta que los programas serian escritos
en tarjetas perforadas de 80 columnas. As por ejemplo, las lneas deban ser
numeradas y la nica alteracin posible en el orden de ejecucin era producida
con la instruccin goto. Estas caractersticas han evolucionado de versin en
versin. Las actuales contienen subprogramas, recursin y una variada gama
de estructuras de control.
A continuacin se muestra el cdigo fuente en lenguaje Fortran de un programa
que permite realizar un ajuste o regresin lineal de una serie de datos:
REGRESION LINEAL.FORTRANS
APLICACION
DIMENSION TIEMPO(1000),PROD(1000)
OPEN(1,FILE='HISTORIA.txt')
I=0
10
READ(1,*,END=80)T,P
I=I+1
TIEMPO(I)=T
PROD(I)=P
GO TO 10
80
NDATOS=I
CALL AJULIN(TIEMPO,PROD,NDATOS,A,B)
WRITE(*,90)A,B
90
FORMAT('LA ECUACION ES:Y=',F10.2,'+',F10.2,'X')
20
FORMAT(20F10.0)
END
SUBROUTINE AJULIN(X,Y,N,A,B)
DIMENSION X(1),Y(1)
SUMX=0.
SUMY=0.
SUMX2=0.
SUMY2=0
SUMXY=0
DO 20 I=1,N
SUMX=SUMX+X(I)
SUMY=SUMY+Y(I)
SUMX2=SUMX2+(X(I)*X(I))
SUMY2=SUMY2+Y(I)**2
SUMXY=SUMXY+(X(I)*Y(I))
20
CONTINUE
PROD=SUMX*SUMY
B=(SUMXY-PROD/N)/(SUMX2-SUMX**2/N)
A=(SUMY/N-B*SUMX/N)
RETURN
END
Bsicamente, en el programa se lee desde un archivo ASCII cierta cantidad de
pares ordenados, se convoca a una rutina que calcula la recta de ajuste
correspondiente, usando el mtodo de mnimos cuadrados, para luego retornar
aportando los coeficientes o parmetros de la recta en cuestin.
Lenguaje de programacin MATLAB
Es una herramienta de software matemtico que ofrece un entorno de
desarrollo integrado (IDE) con un lenguaje de programacin propio (lenguaje
M). Est disponible para las plataformas Unix, Windows, Mac OS
X y GNU/Linux .
Es un software muy usado en universidades y centros de investigacin y
desarrollo. En los ltimos aos ha aumentado el nmero de prestaciones, como
la de programar directamente procesadores digitales de seal o crear
cdigo VHDL.
Las aplicaciones de MATLAB se desarrollan en un lenguaje de programacin
propio. Este lenguaje es interpretado, y puede ejecutarse tanto en el entorno
interactivo, como a travs de un archivo de script (archivos *.m). Este lenguaje
permite operaciones de vectores y matrices, funciones, clculo lambda,
y programacin orientada a objetos. MATLAB provee funciones para visualizar
datos en 2D y 3D.
Limitaciones y alternativas
Durante mucho tiempo hubo crticas porque MATLAB es un producto
propietario de The Mathworks, y los usuarios estn sujetos y bloqueados al
vendedor. Recientemente se ha proporcionado una herramienta adicional
llamada MATLAB Builder bajo la seccin de herramientas "Application
Deployment" para utilizar funciones MATLAB como archivos de biblioteca que
pueden ser usados con ambientes de construccin de aplicacin .NET o Java.
Pero la desventaja es que el computador donde la aplicacin tiene que ser
utilizada necesita MCR (MATLAB Component Runtime) para que los archivos
MATLAB funcionen correctamente. MCR se puede distribuir libremente con los
archivos de biblioteca generados por el compilador MATLAB.
Interfaz con otros lenguajes de programacin
MATLAB puede llamar funciones y subrutinas escritas en C o Fortran. Se crea
una funcin envoltorio que permite que sean pasados y devueltos tipos de
datos de MATLAB. Los archivos objeto dinmicamente cargables creados
compilando esas funciones se denominan "MEX-files", aunque la extensin de
nombre de archivo depende del sistema operativo y del procesador.
function [fa,dfa]=funcion_y_derivada(x)
fa=0;
n=1;
h=1;
dfa=0;
while (n <= (10*(x-(1/2))^2) + 10)
fa=fa+(((-x^2)^n)/factorial(2*n));
h=h/2;
dfa=dfa+(((((-(x+h)^2)^n)/factorial(2*n))-(((x^2)^n)/factorial(2*n)))/h);
n=n+1;
end
function v=aproxima_derivada2(funci,a)
syms x;
i=1;
h=1;
v(i)=(subs(funci,a+h)+subs(funci,a-h)-(2*subs(funci,a)))/(h^2);
error=1;
while(error>1e-10)
h=h/2;
i=i+1;
v(i)=(subs(funci,a+h)+subs(funci,a-h)-(2*subs(funci,a)))/(h^2);
error= abs(v(i)-v(i-1));
end
Lenguaje de programacin de bajo nivel
Un lenguaje de programacin de caractersticas bajo nivel es aquel en el que
sus instrucciones ejercen un control directo sobre el hardware y estn
condicionados por la estructura fsica de las computadoras que lo soportan. El
uso de la palabra bajo en su denominacin no implica que el lenguaje sea
menos potente que un lenguaje de alto nivel, sino que se refiere a la
reducida abstraccin entre el lenguaje y el hardware. Por ejemplo, se utiliza
este tipo de lenguajes para programar tareas crticas de los sistemas
operativos, de aplicaciones en tiempo real o controladores de dispositivos.
Dicho lenguaje es muy simple o nada complicado, pero estructurar programas
a ese nivel es muy difcil. Dado que este lenguaje viene dado por las
especificaciones tcnicas del hardware, no permite una abstraccin fuera de lo
estipulado para el microprocesador de un ordenador. Consecuentemente, es
fcilmente trasladado a lenguaje de mquina.
Conclusiones
En conclusin el software de desarrollo se define bsicamente como el
lenguaje de programacin que sirve para confeccionar programas.
Dependiendo del tipo de trabajo que se quiera realizar este se divide en dos
tipos: el lenguaje de programacin de alto y bajo nivel; el de alto nivel tiene un
enfoque en la facilidad de uso sobre la eficiencia ptima del programa, algunos
de los ms importantes lenguajes son el FORTRAN y MATLAB que son muy
usados ya que solo se necesita saber las instrucciones del lenguaje, en cambio
para el lenguaje de bajo nivel se usan los circuitos internos. El lenguaje de bajo
nivel es lo que mejor entiende el microprocesador, algunos conocidos son el
BASIC y el PASCAL. Los lenguajes de programacin son necesarios para la
comunicacin con el microprocesador el cual busca instrucciones en la
memoria y despus las ejecuta.
Bibliografa
http://tiposdelenguajesdeprogramacion.blogspot.pe/p/tipo
s-de-lenguajes-de-bajo-nivel.html
http://avecomputointe.blogspot.pe/2012/04/que-es-unlenguaje-de-programacion-un.html
http://iimyo.forja.rediris.es/tutorial/intro.html
10
http://www.ecured.cu/Fortran
http://www.lenguajes-de-programacion.com/lenguajes-deprogramacion.shtml
11