Vous êtes sur la page 1sur 18

Modelos de bases de datos

Un modelo de datos es bsicamente una "descripcin" de algo conocido como


contenedor de datos (algo en donde se guarda la informacin), as como de los
mtodos para almacenar y recuperar informacin de esos contenedores. Los
modelos de datos no son cosas fsicas: son abstracciones que permiten la
implementacin de un sistema eficiente de base de datos; por lo general se
refieren a algoritmos, y conceptos matemticos.
Bases de datos jerrquicas
En este modelo los datos se organizan en una forma similar a un rbol (visto al
revs), en donde un nodo padre de informacin puede tener varios hijos. El nodo
que no tiene padres es llamado raz, y a los nodos que no tienen hijos se los
conoce como hojas. Las bases de datos jerrquicas son especialmente tiles en el
caso de aplicaciones que manejan un gran volumen de informacin y datos muy
compartidos permitiendo crear estructuras estables y de gran rendimiento
En este modelo solo se pueden representar relaciones 1: M, por lo que presenta
varios inconvenientes:
No se admiten relaciones N:M
Un segmento hijo no puede tener ms de un padre.
No se permiten ms de una relacin entre dos segmentos.
Para acceder a cualquier segmento es necesario comenzar por el
segmento raz
El rbol se debe de recorrer en el orden designado.
Base de datos de red
En este modelo las entidades se representan como nodos y sus relaciones son las
lneas que los unen. En esta estructura cualquier componente puede relacionarse
con cualquier otro.
A diferencia del modelo jerrquico, en este modelo, un hijo puede tener varios
padres.
Fue una gran mejora con respecto al modelo jerrquico, ya que ofreca una
solucin eficiente al problema de redundancia de datos; pero, aun as, la dificultad
que significa administrar la informacin en una base de datos de red ha significado
que sea un modelo utilizado en su mayora por programadores ms que por
usuarios finales.
Bases de datos transaccionales
Son bases de datos cuyo nico fin es el envo y recepcin de datos a grandes
velocidades, estas bases son muy poco comunes y estn dirigidas por lo general
al entorno de anlisis de calidad, datos de produccin e industrial, es importante
entender que su fin nico es recolectar y recuperar los datos a la mayor velocidad
posible, por lo tanto la redundancia y duplicacin de informacin no es un
problema como con las dems bases de datos, por lo general para poderlas
aprovechar al mximo permiten algn tipo de conectividad a bases de datos
relacionales.
Un ejemplo habitual de transaccin es el traspaso de una cantidad de dinero entre
cuentas bancarias. Normalmente se realiza mediante dos operaciones distintas,
una en la que se decrementa el saldo de la cuenta origen y otra en la que
incrementamos el saldo de la cuenta destino. Las dos operaciones deben ser
atmicas, es decir, el sistema debe garantizar que, bajo cualquier circunstancia
(incluso una cada del sistema), el resultado final es que, o bien se han realizado
las dos operaciones, o bien no se ha realizado ninguna.
Base de datos relacionales.
ste es el modelo utilizado en la actualidad para modelar problemas reales y
administrar datos dinmicamente.
En este modelo, el lugar y la forma en que se almacenen los datos no tienen
relevancia (a diferencia de otros modelos como el jerrquico y el de red). Esto
tiene la considerable ventaja de que es ms fcil de entender y de utilizar para un
usuario espordico de la base de datos. La informacin puede ser recuperada o
almacenada mediante "consultas" que ofrecen una amplia flexibilidad y poder para
administrar la informacin.
El lenguaje ms habitual para construir las consultas a bases de datos
relacionales es SQL, Structured Query Language o Lenguaje Estructurado de
Consultas, un estndar implementado por los principales motores o sistemas de
gestin de bases de datos relacionales
Bases de datos distribuidas
Son la que almacenan datos que pertenecen lgicamente a un slo sistema, pero
se encuentra fsicamente esparcido en varios sitios de la red. Un sistema de
base de datos distribuidos se compone de un conjunto de sitios, conectados entre
s mediante algn tipo de red de comunicaciones, en el cual:
Cada sitio es un sistema de base de datos en s mismo.
Los sitios trabajan en conjunto si es necesario con el fin de que un usuario
de cualquier sitio pueda obtener acceso a los datos de cualquier punto de la
red tal como si todos los datos estuvieran almacenados en el sitio propio del
usuario.
Bases de datos multidimensionales
Son bases de datos ideadas para desarrollar aplicaciones muy concretas, como
creacin de Cubos OLAP. Bsicamente no se diferencian demasiado de las bases
de datos relacionales (una tabla en una base de datos relacional podra serlo
tambin en una base de datos multidimensional), la diferencia est ms bien a
nivel conceptual; en las bases de datos multidimensionales los campos o atributos
de una tabla pueden ser de dos tipos, o bien representan dimensiones de la tabla,
o bien representan mtricas que se desean estudiar.
Base de datos orientada a objetos
Este modelo, bastante reciente, y propio de los modelos informticos orientados a
objetos, trata de almacenar en la base de datos los objetos completos (estado y
comportamiento). Una base de datos orientada a objetos es una base de datos
que incorpora todos los conceptos importantes del paradigma de objetos:
Encapsulacin - Propiedad que permite ocultar la informacin al resto de los
objetos, impidiendo as accesos incorrectos o conflictos.
Herencia - Propiedad a travs de la cual los objetos heredan
comportamiento dentro de una jerarqua de clases.
Polimorfismo - Propiedad de una operacin mediante la cual puede ser
aplicada a distintos tipos de objetos.
En bases de datos orientadas a objetos, los usuarios pueden definir operaciones
sobre los datos como parte de la definicin de la base de datos. Una operacin
(llamada funcin) se especifica en dos partes. La interfaz (o signatura) de una
operacin incluye el nombre de la operacin y los tipos de datos de sus
argumentos (o parmetros). La implementacin (o mtodo) de la operacin se
especifica separadamente y puede modificarse sin afectar la interfaz. Los
programas de aplicacin de los usuarios pueden operar sobre los datos invocando
a dichas operaciones a travs de sus nombres y argumentos, sea cual sea la
forma en la que se han implementado. Esto podra denominarse independencia
entre programas y operaciones.

Lenguajes de programacin web
Lenguaje Javascript
Este es un lenguaje interpretado, no requiere compilacin. Fue creado por
Brendan Eich en la empresa Netscape Communications. Utilizado principalmente
en pginas web. Es similar a Java, aunque no es un lenguaje orientado a objetos,
el mismo no dispone de herencias. La mayora de los navegadores en sus ltimas
versiones interpretan cdigo Javascript.
El cdigo Javascript puede ser integrado dentro de nuestras pginas web. Para
evitar incompatibilidades el World Wide Web Consortium (W3C) diseo un
estndar denominado DOM (en ingls Document Object Model, en su traduccin
al espaol Modelo de Objetos del Documento).

Ventajas:
Lenguaje de scripting seguro y fiable.
Los script tienen capacidades limitadas, por razones de seguridad.
El cdigo Javascript se ejecuta en el cliente.

Desventajas:
Cdigo visible por cualquier usuario.
El cdigo debe descargarse completamente.
Puede poner en riesgo la seguridad del sitio, con el actual problema llamado XSS
(significa en ingls Cross Site Scripting renombrado a XSS por su similitud con las
hojas de estilo CSS).

Lenguaje PHP
Es un lenguaje de programacin utilizado para la creacin de sitio web. PHP es un
acrnimo recursivo que significa PHP Hypertext Pre-processor, (inicialmente se
llam Personal Home Page). Surgi en 1995, desarrollado por PHP Group.
PHP es un lenguaje de script interpretado en el lado del servidor utilizado para la
generacin de pginas web dinmicas, embebidas en pginas HTML y ejecutadas
en el servidor. PHP no necesita ser compilado para ejecutarse. Para su
funcionamiento necesita tener instalado Apache o IIS con las libreras de PHP. La
mayor parte de su sintaxis ha sido tomada de C, Java y Perl con algunas
caractersticas especficas. Los archivos cuentan con la extensin (php).
Ventajas:
Muy fcil de aprender.
Se caracteriza por ser un lenguaje muy rpido.
Soporta en cierta medida la orientacin a objeto. Clases y herencia.
Es un lenguaje multiplataforma: Linux, Windows, entre otros.
Capacidad de conexin con la mayora de los manejadores de base de datos:
MysSQL, PostgreSQL, Oracle, MS SQL Server, entre otras.
Capacidad de expandir su potencial utilizando mdulos.
Posee documentacin en su pgina oficial la cual incluye descripcin y ejemplos
de cada una de sus funciones.
Es libre, por lo que se presenta como una alternativa de fcil acceso para todos.
Incluye gran cantidad de funciones.
No requiere definicin de tipos de variables ni manejo detallado del bajo nivel.

Desventajas:
Se necesita instalar un servidor web.
Todo el trabajo lo realiza el servidor y no delega al cliente. Por tanto puede ser
ms ineficiente a medida que las solicitudes aumenten de nmero.
La legibilidad del cdigo puede verse afectada al mezclar sentencias HTML y
PHP.
La programacin orientada a objetos es an muy deficiente para aplicaciones
grandes.
Dificulta la modularizacin.
Dificulta la organizacin por capas de la aplicacin.

Lenguaje ASP
Es una tecnologa del lado de servidor desarrollada por Microsoft para el
desarrollo de sitio web dinmicos. ASP significa en ingls (Active Server Pages),
fue liberado por Microsoft en 1996. Las pginas web desarrolladas bajo este
lenguaje es necesario tener instalado Internet Information Server (IIS).
ASP no necesita ser compilado para ejecutarse. Existen varios lenguajes que se
pueden utilizar para crear pginas ASP. El ms utilizado es VBScript, nativo de
Microsoft. ASP se puede hacer tambin en Perl and Jscript (no JavaScript). El
cdigo ASP puede ser insertado junto con el cdigo HTML. Los archivos cuentan
con la extensin (asp).

Ventajas:
Usa Visual Basic Script, siendo fcil para los usuarios.
Comunicacin ptima con SQL Server.
Soporta el lenguaje JScript (Javascript de Microsoft).


Desventajas:
Cdigo desorganizado.
Se necesita escribir mucho cdigo para realizar funciones sencillas.
Tecnologa propietaria.
Hospedaje de sitios web costosos.


Lenguaje ASP.NET
Este es un lenguaje comercializado por Microsoft, y usado por programadores
para desarrollar entre otras funciones, sitios web. ASP.NET es el sucesor de la
tecnologa ASP, fue lanzada al mercado mediante una estrategia de mercado
denominada .NET.
El ASP.NET fue desarrollado para resolver las limitantes que brindaba tu
antecesor ASP. Creado para desarrollar web sencillas o grandes aplicaciones.
Para el desarrollo de ASP.NET se puede utilizar C#, VB.NET o J#. Los archivos
cuentan con la extensin (aspx). Para su funcionamiento de las pginas se
necesita tener instalado IIS con el Framework .Net. Microsft Windows 2003 incluye
este framework, solo se necesitar instalarlo en versiones anteriores.

Ventajas:
Completamente orientado a objetos.
Controles de usuario y personalizados.
Divisin entre la capa de aplicacin o diseo y el cdigo.
Facilita el mantenimiento de grandes aplicaciones.
Incremento de velocidad de respuesta del servidor.
Mayor velocidad.
Mayor seguridad.

Desventajas:
Mayor consumo de recursos.

Lenguaje JSP
Es un lenguaje para la creacin de sitios web dinmicos, acrnimo de Java Server
Pages. Est orientado a desarrollar pginas web en Java. JSP es un lenguaje
multiplataforma. Creado para ejecutarse del lado del servidor.
JSP fue desarrollado por Sun Microsystems. Comparte ventajas similares a las de
ASP.NET, desarrollado para la creacin de aplicaciones web potentes. Posee un
motor de pginas basado en los servlets de Java. Para su funcionamiento se
necesita tener instalado un servidor Tomcat.

Ventajas:
Ejecucin rpida del servlets.
Crear pginas del lado del servidor.
Multiplataforma.
Cdigo bien estructurado.
Integridad con los mdulos de Java.
La parte dinmica est escrita en Java.
Permite la utilizacin se servlets.

Desventajas:
Complejidad de aprendizaje.

Lenguaje Python
Es un lenguaje de programacin creado en el ao 1990 por Guido van Rossum, es
el sucesor del lenguaje de programacin ABC. Python es comparado
habitualmente con Perl. Los usuarios lo consideran como un lenguaje ms limpio
para programar. Permite la creacin de todo tipo de programas incluyendo los
sitios web.
Su cdigo no necesita ser compilado, por lo que se llama que el cdigo es
interpretado. Es un lenguaje de programacin multiparadigma, lo cual fuerza a que
los programadores adopten por un estilo de programacin particular:
Programacin orientada a objetos.
Programacin estructurada.
Programacin funcional.
Programacin orientada a aspectos.

Ventajas:
Libre y fuente abierta.
Lenguaje de propsito general.
Gran cantidad de funciones y libreras.
Sencillo y rpido de programar.
Multiplataforma.
Licencia de cdigo abierto (Opensource).
Orientado a Objetos.

Desventajas:
Lentitud por ser un lenguaje interpretado.

Lenguaje Ruby
Es un lenguaje interpretado de muy alto nivel y orientado a objetos. Desarrollado
en el 1993 por el programador japons Yukihiro Matz Matsumoto. Su sintaxis
est inspirada en Phyton, Perl. Es distribuido bajo licencia de software libre
(Opensource).
Ruby es un lenguaje dinmico para una programacin orientada a objetos rpida y
sencilla. Para los que deseen iniciarse en este lenguaje pueden encontrar un
tutorial interactivo de ruby. Se encuentra tambin a disposicin de estos usuarios
un sitio con informaciones y cursos en espaol.

Ventajas:
Permite desarrollar soluciones a bajo Costo.
Software libre.
Multiplataforma.

Lenguajes de programacin orientada a objetos

Programacin Orientada a Objetos
La programacin orientada a objetos es una filosofa, un modelo de
programacin, con su teora y su metodologa. Un lenguaje orientado a objetos es
un lenguaje de programacin que permite el diseo de aplicaciones orientadas a
objetos. Lo normal es que toda persona que vaya a desarrollar aplicaciones
orientadas a objetos aprenda primero la filosofa (o adquiera la forma de pensar)
y despus el lenguaje, porque filosofa slo hay una y lenguajes muchos.
La programacin orientada a objetos es otra forma de descomponer problemas.
Este nuevo mtodo de descomposicin es la descomposicin en objetos; vamos a
fijarnos no en lo que hay que hacer en el problema, sino en cul es el escenario
real del mismo, y vamos a intentar simular ese escenario en nuestro programa.
En el caso de los lenguajes orientados a objetos, como es el caso de C++ y Java,
el elemento bsico no es la funcin, sino un ente denominado precisamente
objeto.
Un objeto es la representacin en un programa de un concepto, y contiene toda la
informacin necesaria para abstraerlo: datos que describen sus atributos y
operaciones que pueden realizarse sobre los mismos.

Qu es un objeto?
Un objeto no es ms que un conjunto de variables (o datos) y mtodos (o
funciones) relacionados entre s. Los objetos en programacin se usan para
modelar objetos o entidades del mundo real (el objeto hijo, madre, o farmacutica,
por ejemplo). Un objeto es, por tanto, la representacin en un programa de un
concepto, y contiene toda la informacin necesaria para abstraerlo: datos que
describen sus atributos y operaciones que pueden realizarse sobre los mismos

Qu es un mensaje?
Normalmente un nico objeto por s solo no es muy til. En general, un objeto
aparece como un componente ms de un programa o una aplicacin que contiene
otros muchos objetos. Es precisamente haciendo uso de esta inter accin como
los programadores consiguen una funcionalidad de mayor orden y modelar
comportamientos mucho ms complejos.
Los objetos de un programa interactan y se comunican entre ellos por medio de
mensajes. Cuando un objeto A quiere que otro objeto B ejecute una de sus
funciones miembro (mtodos de B), el objeto A manda un mensaje al objeto B.

Qu es una clase?
Normalmente en el mundo real existen varios objetos de un mismo tipo, o como
diremos enseguida, de una misma clase. Por ejemplo, mi bicicleta es una de las
muchas bicicletas que existen en el mundo. Usando la terminologa de la
programacin orientada a objetos, diremos que mi bicicleta es una instancia de la
clase de objetos conocida como bicicletas
. Todas las bicicletas tienen algunos estados o atributos (color, marcha actual,
cadencia actual, dos ruedas) y algunos mtodos (cambiar de marcha, frenar) en
comn. Sin embargo, el estado particular de cada bicicleta es independiente del
estado de las dems bicicletas. La particularizacin de estos atributos puede ser
diferente. Es decir, una bicicleta podr ser azul, y otra roja, pero ambas tienen en
comn el hecho de tener una variable color. De este modo podemos definir una
plantilla de variables y mtodos para todas las bicicletas. Las plantillas para crear
objetos son denominadas clases.

Herencia
Una vez que hemos visto el concepto de clase y el de objeto, estamos en
condiciones de introducir otra de las caractersticas bsicas de la programacin
orientada a objetos: el uso de la herencia. El mecanismo de herencia permite
definir nuevas clases partiendo de otras ya existentes. Las clases que derivan de
otras heredan automticamente todo su comportamiento, pero adems pueden
introducir caractersticas particulares propias que las diferencian.

Lenguajes de Programacin Orientados a Objetos
Se le llama as a cualquier lenguaje de programacin que implemente los
conceptos definidos por la programacin orientada a objetos.
Cabe notar que los conceptos definidos en la programacin orientada a objetos no
son una condicin sino que son para definir que un lenguaje es orientado a
objetos. Existen conceptos que pueden estar ausentes en un lenguaje dado y sin
embargo, no invalidar su definicin como lenguaje orientado a objetos.

Caractersticas
Estas son algunas de las caractersticas generales que tienen la gran mayora de
lenguajes orientados a objetos, as mismo no suelen contener todas:
Tipificacin estricta (fuerte). Tipificacin es el proceso de declarar el tipo de
informacin que puede contener una variable. Los errores de programacin
relacionados con el nmero de parmetros, tipos de parmetros e interfaces de
mdulos, se detectan durante las fases de diseo e implementacin, en lugar de
en tiempos de ejecucin.

Encapsulamiento. Es deseable que el lenguaje soporte ocultamiento de la


informacin, mediante partes independientes, para la especificacin y la
implementacin. Esta caracterstica proporciona un diseo dbilmente acoplado
que cumple con rigor el principio bsico de la inferencia de software: acoplamiento
dbil y fuerte cohesin entre los mdulos de un programa.

Compilacin incremental. Caracterstica en el desarrollo de sistemas grandes, en


los que las porciones del sistema se crean e implementan de un modo sistemtico
(poco a poco, etapa a etapa). Esta caracterstica complementa la caracterstica de
tipificacin estricta, que soporta partes independientes de implementacin y
especfica.

Generalidad. Las clases parametrizadas (mediante plantillas -templates- o


unidades genricas) sirven para soportar un alto grado de reusabilidad
(reutilizacin). Estos elementos genricos se disean con parmetros formales,
que se instanciarn con parmetros reales, para crear instancias de mdulos que
se compilan y enlazan, y ejecutan posteriormente.

Paso de mensajes. El lenguaje es conveniente que soporte paso bidimensional de


mensajes entre mdulos, lo que implicar mdulos dbilmente acoplados y
diseos flexibles. Esto significa que se deben poder pasar seales entre mdulos,
sin necesidad de tener que pasar realmente ningn dato.

Polimorfismo. Los lenguajes deben permitir que existan operaciones con igual
nombre, que se utilicen para manejar objetos de tipos diferentes en tiempo de
ejecucin. El polimorfismo se implementa, normalmente, en unin con la herencia.

Excepciones. Se deben poder detectar, informar y manejar condiciones


excepcionales utilizando construcciones del lenguaje. Esta propiedad aadida al
soporte de tolerancia a fallos del software permitir una estrategia de diseo
eficiente.

Concurrencia. Es conveniente que el lenguaje soporte la creacin de procesos


paralelos independientes del sistema operativo. Esta propiedad simplificar la
transportabilidad de un sistema de tiempo real de una plataforma a otra.

Persistencia. Los objetos deben poder ser persistentes; es decir, los objetos han
de poder permanecer despus de la ejecucin del programa.

Datos compartidos. Los mdulos se deben poder comunicar mediante memoria


compartida, adems del paso de mensajes

Distintos Lenguajes de POO

Simula (1967) es aceptado como el primer lenguaje que posee las caractersticas
principales de un lenguaje orientado a objetos. Fue creado para hacer programas
de simulacin, en donde los "objetos" son la representacin de la informacin ms
importante. Smalltalk (1972 a 1980) es posiblemente el ejemplo cannico, y con el
que gran parte de la teora de la programacin orientada a objetos se ha
desarrollado.
Entre los lenguajes orientados a objetos se destacan los siguientes:

ABAP
ABL Lenguaje de programacin de OpenEdge de Progress Software
ActionScript
ActionScript 3
Ada
C++
C#
Clarion
Clipper (lenguaje de programacin) (Versin 5.x con librera de objetos Class(y))
D
Object Pascal (Delphi)
Gambas
Harbour
Eiffel
Java
JavaScript (la herencia se realiza por medio de la programacin basada en
prototipos)
Lexico (en castellano)
Objective-C
Ocaml
Oz
R
Perl (soporta herencia mltiple. La resolucin se realiza en preorden, pero
puede modificarse al algoritmo linearization C3 por medio del mdulo Class::C3 en
CPAN)
PHP (a partir de su versin 5)
PowerBuilder
Python
Ruby
Smalltalk (Proyecto investigativo. Influenci a Java.)
Magik (SmallWorld)
Vala
VB.NET
Visual FoxPro (en su versin 6)
Visual Basic 6.0
Visual Objects
XBase++
Lenguaje DRP
Lenguaje de programacin Scala (lenguaje usado por Twitter)

Muchos de estos lenguajes de programacin no son puramente orientados a
objetos, sino que son hbridos que combinan la POO con otros paradigmas.
Al igual que C++ otros lenguajes, como OOCOBOL, OOLISP, OOPROLOG y
Object REXX, han sido creados aadiendo extensiones orientadas a objetos a un
lenguaje de programacin clsico.




















Lenguajes de programacin estructurada


Programacin estructurada

Se basa en una metodologa de desarrollo de programas llamada refinamiento
sucesivo.

Se plantea una operacin como un todo y se divide en segmentos ms sencillos o
de menor complejidad.

Una vez terminado todos los segmentos del programa, se procede a unificar las
aplicaciones realizadas por el equipo de programadores. Si se ha utilizado
adecuadamente la programacin estructurada, esta integracin debe ser sencilla y
no presentar problemas al integrar la misma, y de presentar algn problema, ser
rpidamente detectable para su correccin.

Ventajas

Los programas son ms fciles de entender, pueden ser ledos de forma
secuencial.
La estructura de los programas es clara, puesto que las instrucciones estn ms
ligadas o relacionadas entre s.
Reduccin del esfuerzo en las pruebas y depuracin. El seguimiento de los fallos o
errores del programa ("debugging") se facilita debido a su estructura ms sencilla
y comprensible, por lo que los errores se pueden detectar y corregir ms
fcilmente.
Reduccin de los costos de mantenimiento (Anlogamente a la depuracin,
durante la fase de mantenimiento, modificar o extender los programas resulta ms
fcil.)
Es posible hacer la programacin estructurada en cualquier lenguaje de
programacin



Programacin estructurada de bajo nivel

En un bajo nivel, los programas estructurados con frecuencia estn compuestos
de simples estructuras de flujo de programa jerrquicas. Estas son secuencia,
seleccin y repeticin.

Lenguajes de programacin Mvil

Programacin para dispositivos mviles:

Visual Basic
Lenguaje que est orientado a aquellas personas que empezamos en el mundo de
la programacin de una manera ms grfica y no tan abstracta. No es el mismo
lenguaje de Microsoft, pero su sintaxis es la misma, lo cual tiene sus mismas
ventajas como algunos de sus inconvenientes.
Se pueden crear:
-Aplicaciones web que se ejecutan en un servidor web y se representan en
diferentes formatos en varios tipos de dispositivos mviles equipados con
explorador.
-Aplicaciones de cliente enriquecidas basadas en Windows CE que se ejecutan en
el propio dispositivo. Esto ltimo es lo que solemos entender por aplicacin para
dispositivos inteligentes.
Al programar para dispositivos inteligentes, se usa el mismo entorno de Visual
Studio que al programar para aplicaciones de escritorio pero, al dirigirnos a
dispositivos, se manifiestan algunas diferencias. Por ejemplo: -Se necesitan
herramientas adicionales para establecer conexin con un dispositivo remoto y
realizar depuraciones en el mismo.

Ventajas:
Se necesitan herramientas adicionales para establecer conexin con un
dispositivo remoto y realizar depuraciones en el mismo.

Desventajas:
La capacidad grfica y la falta de alternativas al Visual Studio y el consiguiente
desembolso econmico necesario para adquirir una licencia.

C# y .NET
Es un lenguaje de programacin orientado a objetos desarrollado y estandarizado
po Microsoft como parte de su plataforma .NET, que despus fue aprobado como
un estndar por la ECMA (ECMA-334) e ISO(ISO/IEC 23270). C# es uno de los
lenguajes de programacin diseados para la infraestructura de lenguaje comn.
Su sintaxis bsica deriva de C/C++ y utiliza el modelo de objetos de la plataforma
.NET, similar al de Java, aunque incluye mejoras derivadas de otros lenguajes.
Aunque C# forma parte de la plataforma .NET, sta es una API, mientras que C#
es un lenguaje de programacin independiente diseado para generar programas
sobre dicha plataforma.

Ventaja:
Les aporta a los desarrolladores de .NET sobre otras plataformas, es la poder
utilizar esta tecnologa sin necesidad de aprender a utilizar un nuevo IDE ya que
sta se integra con Microsoft Visual Studio 2010 pudiendo utilizar ste como
marco de trabajo.

Desventaja:
Apk (Android application package) resultante tener tamao excesivo si tenemos
pensado publicar la aplicacin en el Android Market y sta ha de ser descargada
mediante redes mviles.

JAVA
Java es una tecnologa que se usa para el desarrollo de aplicaciones que
convierten a la Web en un elemento ms interesante y til. Java no es lo mismo
que javascript, que se trata de una tecnologa sencilla que se usa para crear
pginas web y solamente se ejecuta en el explorador.
Java le permite jugar, cargar fotografas, chatear en lnea, realizar visitas virtuales
y utilizar servicios como, por ejemplo, cursos en lnea, servicios bancarios en lnea
y mapas interactivos. Si no dispone de Java, muchas aplicaciones y sitios web no
funcionarn.

Ventajas:

* Es muy flexible: Java es un lenguaje especialmente preparado para la
reutilizacin del cdigo; permite a sus usuarios tomar un programa que
hayan desarrollado tiempo atrs y actualizarlo con mucha facilidad, sea que
necesiten agregar funciones o adaptarlo a un nuevo entorno.
* Funciona en cualquier plataforma: a diferencia de los programas que requieren
de versiones especficas para cada sistema operativo (tales como Windows o
Mac), las aplicaciones desarrolladas en Java funcionan en cualquier entorno, dado
que no es el sistema quien las ejecuta, sino la mquina virtual (conocida
como Java Virtual Machine o JVM).
* Su uso no acarrea inversiones econmicas: programar en Java es
absolutamente gratis; no es necesario adquirir ninguna licencia, sino simplemente
descargar el kit de desarrollo (Java Development Kit o JDK) y dar riendas sueltas
a la imaginacin.

OBJEVTIVE C
Es un lenguaje de programacin orientado a objetos creado como un
superconjunto de C para que implementase un modelo de objetos parecido al
de Smalltalk

Desventajas: Se necesita el uso de licencia para poder desarrollar en esta
plataforma.

Vous aimerez peut-être aussi