jueves, 16 de marzo de 2017

¿Qué es JDK?

Java Development Kit JDK




Java Development Kit o (JDK), es un software que provee herramientas de desarrollo para la creación de programas en Java. Puede instalarse en una computadora local o en una unidad de red.
En la unidad de red se pueden tener las herramientas distribuidas en varias computadoras y trabajar como una sola aplicación.

En Windows

En los sistemas operativos Microsoft Windows sus variables de entorno son:

  • JAVAPATH: es una ruta completa del directorio donde está instalado JDK.
  • CLASSPATH: son las bibliotecas o clases de usuario.
  • PATH: variable donde se agrega la ubicación de JDK.

Los programas más importantes que se incluyen son:

  • appletviewer.exe: es un visor de applets para generar sus vistas previas, ya que un applet carece de método main y no se puede ejecutar con el programa java.
  • javac.exe: es el compilador de Java.
  • java.exe: es el masterescuela (intérprete) de Java.
  • javadoc.exe: genera la documentación de las clases Java de un programa.

Descargar

Descargar aquí el JDK para 
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Share:

¿Qué es y para que sirve el SDK?

¿Qué es y para que sirve el SDK?


Cuando se comienza a querer programar para Android, regularmente encuentran en el transcurso el termino SDK, pero, ¿qué significa?.
En este post explicaré qué es y para que nos sirve.

SDK son las siglas de Software Development Kit, lo que traduciéndolo a nuestro idioma sería un Kit de Desarrollo de Software. Mediante éste kit podemos desarrollar aplicaciones y ejecutar un emulador de la versión de Android (o de lo que sea). En Android todas las aplicaciones se ejecutan en Java.
Imaginemos que queremos desarrollar alguna aplicación para Android. Para eso necesitaremos instalar el Android SDK. Para Android podemos conseguir el kit de desarrollo desde su web oficial. Una vez lo hayamos descargado simplemente deberemos ejecutar el programa.
Una vez lo hemos descargado e instalado podremos instalar en él distintas versiones de Android para el emulador Realizaremos todos los pasos necesarios para configurarlo, que es algo que me tomaré el tiempo de explicar en otro post con mas calma.
Una vez lo terminemos nuestro equipo estará listo para empezar a trabajar.


SDK y versiones

Cada vez que aparece una nueva versión de Android, Google libera el código fuente y publica el SDK con la nueva versión de Android. Esto sirve para que los desarrolladores puedan adaptar sus aplicaciones a la nueva versión. Cada vez que se libera el código fuente de una nueva versión, el mundo de Android tiene que adaptarse.

Espero que a partir de ahora cuando vean las siglas SDK sepan de a que se refiere y qué implicaciones tenemos.
Share:

miércoles, 15 de marzo de 2017

Principales fabricantes de móviles

Principales fabricantes de móviles



En la actualidad hay gran competencia en cuanto a marcas de móviles, pero hay líderes, aquellas multinacionales que tienen los primeros lugares en cuanto a ventas, son aquellos que vemos a diario en manos de cualquier usuario.
Los hay quienes predominan en la Gama Alta, Gama Media Y Baja, aunque en ocasiones sorprenden con equipos que superan las expectativas o al contrario dejan mucho que desear.
De todas aquellas marcas, en este blog mencionaremos las más populares, vendidas, recomendadas y dominantes en el mercado.

Samsung

.
Multinacional surcoreana líder en ventas desde el año de 2012. La mayoría desus teléfonos celulares inteligentes funcionan con el sistema operativo Android, aunque ha probado Windows Phone 8 en dispositivos como el ATIV S. Introdujo el primer chipset de ocho núcleos (Exynos 5 Octa) como procesador de una versión del Samsung Galaxy S4, su principal dispositivo en el inicio del segundo semestre de 2013.  Su principal línea mas vendida y la cual lo posiciona como un gran líder de móviles, es la la Galaxy, en la que entran regularmente móviles de Gama Media, Media Alta y Alta, para aquellos que exigen sin importar gastos.

LG

.
Aquí tenemos otra corporación de Corea del Sur, la cual inició su tránsito en la telefonía celular en 1996. Escaló posiciones cimeras con el modelo LG Optimus G, número uno de nuestro escalafón anual de los mejores smartphones de 2012, con cuyo dispositivo marcó pauta al dotarlo de 2GB de memoria RAM. Ha trabajado en forma mancomunada con Google para fabricar el Nexus 4. Trabaja con sistema operativo Android y ofrece móviles de diferentes gamas.

Sony Mobile

.
Esta empresa japonesa incursionó por primera vez en la telefonía celular fusionada con la sueca Ericsson, la cual vendió el 50% de sus acciones a Sony, el 27 de octubre de 2011. A partir de ahí ha logrado desarrollar algunos de los mejores móviles del mercado, caracterizados por excelentes cámaras fotográficas, rendimiento y durabilidad. Sus Smartphones destacados son los de la línea Xperia. Provee grandes equipos de Gama Alta que no dejan nada que desear en cuanto a cámara. Se podría decir que es su mayor fuerte.

Apple

.
Multinacional estadounidense que después de desarrollar con éxito equipos electrónicos y sus respectivos programas, tomada de la mano de Steve Jobs creó el iPhone, cuyo dispositivo trabaja con la plataforma iOS propio de la empresa. Toda la línea de los iPhones, han sido en su momento la Gama Alta, puesto que son hoy en día un estándar para el diseño de móviles, son diseñados para cualquier usuario, aunque su precio los coloca fuera del alcance de algunos.
Los Smartphones son diseñados con el objetivo de conseguir una sincronización e integración del 100% entre software y hardware. El cual es uno de sus mayores puntos a favor. Aunque el principal en contra es el sistema cerrado bajo el que trabaja.

Nokia

.
Empresa finlandesa que ha hecho historia en el sector de telecomunicaciones, siendo la mayor fabricante y ex líder en ventas. Concretó el primer sistema de telefonía celular móvil (1982) y el primer teléfono transportable (1984). Estableció con otras compañías la plataforma operativa Symbian OS, hasta que logró alianza estratégica con Microsoft (febrero de 2011), para proveer a sus Smartphones del sistema operativo Windows Phone. No tiene una amplia línea de productos (a comparación de la competencia), pero son productos de Gama Media Alta que ofrecen al usuario un sistema operativo completo y en ocasiones que muchos usan (Windows).


Motorola

.
Compañía estadounidense que tiene, entre otros méritos, el de haber desarrollado el primer teléfono celular del mundo: Motorola DynaTAC, con el cual el ingeniero electrónico Martin Copper realizó la primera llamada precisamente con un celular (3 de abril de 1973). En los últimos años han trabajado en mejorar el rendimiento de la batería de sus dispositivos. El 15 de agosto de 2011, Google anunció la compra de Motorola Mobility. Usa el sistema operativo Android, y su línea Moto G de Gama Media y Media Alta, ofrece a los usuarios excelentes equipos con balance entre precio y calidad.

HTC

.
Se trata de una corporación taiwanesa (República de China) con ascendente crecimiento. Comenzó a fabricar teléfonos celulares desde 2006, con sistemas operativos Android y Windows Phone. Con su modelo HTC One presentó nueva tecnología basada en el Ultrapixel para las cámaras fotográficas de sus móviles. Su principal línea de móviles son de Gama Media.

ZTE

.
Compañía de telecomunicaciones con sede en Shenzhen, China, que figura en el cuarto lugar en cuanto a fabricación de teléfonos celulares en el mundo, desde 2010. En el primer trimestre de 2013, ZTE logró vender 7.883.300 unidades, para incremento del 74% comparado con el mismo trimestre de 2012. Esta compañía ha ido creciendo continuamente y promete seguir haciéndolo ya que ofrece equipos de Gama Baja, Media y Media Alta, a precios completamente accesibles.
Su línea Blade ofrece equipos de características de Gama Media Alta, comparando con equipos de Samsung, pero a precio mucho mas accesibles, aunque el uso de procesadores MTK MediaTek da mucho de que hablar.

Blackberry

.
Inicialmente esta empresa canadiense se llamó Research In Motion Limited (RIM), pero ahora su nombre de operaciones es BlackBerry, el cual identifica la línea de teléfonos celulares que fabrica, caracterizados por su teclado físico QWERTY y herramientas de seguridad para la utilización de estos dispositivos para el trabajo. Funcionan con sistema operativo propio BlackBerry OS. Estos móviles conservan gran cuota del mercado en América Latina y Europa.
Cabe mencionar que aunque son de los pocos fabricantes que siguen usando su propio Sistema Operativo y aun asi se mantiene en el mercado. 
Como dato: El ahora expresidente de los Estados Unidos, Barack Obama usaba un BlackBerry Curve durante su mandato.

Share:

martes, 14 de marzo de 2017

Perfiles

PERFILES


Desarrollo de aplicaciones, ¿Hacia dónde se dirigen?

Hoy en día, con la evolución tecnológica a la que estamos expuestos somos más propensos a tener una gran cantidad de “herramientas” que nos dan la posibilidad de orientar nuestras actividades diarias buscando la máxima eficiencia.

En este sentido, la movilidad que nos permiten las plataformas tecnológicas y la conexión en tiempo real nos ofrece muchas más posibilidades de las que estábamos acostumbrados.
La gran explosión que están sufriendo las aplicaciones móviles de un tiempo hasta ahora nos hace suponer que este gran crecimiento, si no va en coherencia con los usos que la gente puede realizar, acabará dando un resultado negativo de todo el trabajo realizado.
La realidad es que nuestros hábitos han cambiado y nosotros con ellos. Lo interesante de este cambio es que nos ayude a desarrollarnos y no a quedarnos estancados.
Estos hechos valen para plantearnos cómo podemos planificar el uso y desarrollo de las apps, ya que los consumidores no dudarán en cambiar o eliminar una app de su terminal ante tanta variedad si no les gusta el servicio o la ayuda prestados.
El crecimiento que está sufriendo el mercado de las apps es espectacular en plataformas como Android, iOS o Windows Phone entre otras.

¿Hacia dónde se dirige el mercado de las aplicaciones móviles?

La evolución que está sufriendo el mercado de las apps no sigue una línea continua, ya que el consumidor ha evolucionado de la misma manera que el mercado. Durante los años 2012 y 2013 el número de descargas de aplicaciones era desmedido. El consumidor quería conocer nuevas aplicaciones y usarlas.

Sin embargo, en este momento el público se muestra menos activo a la hora de realizar este tipo de descargas. El usuario se muestra más perezoso a la hora de interactuar con nuevas aplicaciones debido a razones como la propia mejora de las apps o el precio de algunas de ellas.
También es cierto que en el año 2014 los Smartphone y el mercado de las apps aumentaron en el segmento de edad entre 40 y 65 años, un segmento que en su mayoría no es muy activo a la hora de descargar nuevas aplicaciones para su terminal.
En esta línea parece que tendría más sentido diseñar aplicaciones móviles enfocadas de un modo todo lo particular que se pueda e intentando no moverse en la generalidad, ya que es más difícil mantener la fidelidad con el público y su uso de las apps. Todavía existen diferentes ámbitos de mercado por explorar en donde veremos cómo se desarrollan las futuras aplicaciones.
Existe un gran mercado en desarrollo de las apps, casi se podría decir que hay un app para cada ámbito de nuestras vidas. Muchas marcas están aprovechando este nicho de mercado para crecer. Sin embargo, esta estrategia debe estar bien planteada, ya que el usuario de telefonía móvil es más consciente del poder que tiene en sus manos.

En este sentido, un buen servicio hacia el usuario final es una atención fundamental, ya que de esa manera se va construyendo una nueva relación que permitirá a la marca y al cliente establecer un canal de comunicación en el que puedan expresar sus necesidades.
Ese servicio que se busca dar es determinante a la hora de que un usuario continúe usando o no la aplicación.
Si una marca quiere realizar acciones de este tipo, siempre debe acudir a una agencia de marketing que planteará este tipo de tácticas dentro de un marco global de comunicación para la marca en donde los esfuerzos que se realicen resulten efectivos.
Share:

Simulador

Simulador



Un simulador es un aparato, por lo general informático, que permite la reproducción de un sistema. Los simuladores reproducen sensaciones y experiencias que en la realidad pueden llegar a suceder en realidad.
Un simulador pretende reproducir tanto las sensaciones físicas (velocidad, aceleración, percepción del entorno) como el comportamiento de los equipos de la máquina que se pretende simular. Para simular las sensaciones físicas se puede recurrir a complejos mecanismos hidráulicos comandados por potentes ordenadores que mediante modelos matemáticos consiguen reproducir sensaciones de velocidad y aceleración. Para reproducir el entorno exterior se emplean proyecciones de bases de datos de terreno. A este entorno se le conoce como "entorno sintético",


Para simular el comportamiento de los equipos de la máquina simulada se puede recurrir varias técnicas. Se puede elaborar un modelo de cada equipo y virtualizarlo por hardware con el equipo real o bien se puede utilizar el mismo software que corre en el equipo real pero haciéndolo correr en un ordenador más convencional (y por lo tanto más barato). A esta última opción se la conoce como "software rehosteado".
Share:

Emuladores

Emuladores



Un emulador es un software que permite ejecutar programas o videojuegos en una plataforma (sea una arquitectura de hardware o un sistema operativo) diferente de aquella para la cual fueron escritos originalmente. A diferencia de un simulador, que solo trata de reproducir el comportamiento del programa, un emulador trata de modelar de forma precisa el dispositivo de manera que este funcione como si estuviese siendo usado en el aparato original.
Un uso popular de los emuladores es el de imitar la experiencia de los videojuegos de máquinas recreativas o videoconsolas en computadoras personales, o el poder ser jugados en otras videoconsolas. La emulación de videojuegos de sistemas antiguos (abandonware) en las modernas computadoras personales y videoconsolas de hoy día resulta generalmente más cómoda y práctico que en los dispositivos originales. Sin embargo, puede ser requerido a los creadores de emuladores una licencia de software para escribir programas originales que dupliquen la funcionabilidad de la ROM y BIOS del hardware original, lo que comúnmente se conoce como high-level emulation o emulación de alto nivel.
Otro uso común es el de emular sistemas operativos obsoletos, o vigentes para otra máquina o dispositivo, para utilizar programas compatibles con estos sistemas operativos.

BlueStacks

BlueStacks es una compañía de tecnología estadounidense que produce BlueStacks App Player y otros productos multiplataforma basado en la nube. BlueStacks App Player está diseñado para permitir que aplicaciones de Android puedan ejecutarse en computadoras de Windows y Macintosh. La compañía fue fundada en 2009 por Rosen Sharma, ex director de tecnología en McAfee y miembro de Cloud.com.
Los inversionistas incluyen Andreessen-Horowitz, Redpoint, Samsung, Intel, Qualcomm, Citrix, Radar Partners, Ignition Partners, AMD y otros. BlueStacks es la octava compañía de Sharma, de los cuales cinco fueron adquiridos por Google, Microsoft, Citrix X 2 y McAfee. BlueStacks salió de la fase beta el 7 de junio de 2014.

Requisitos para BlueStacks App Player 


  • Puede instalar el BlueStacks App Player en la máquina de Windows, siempre y cuando se cumplan los siguientes requisitos:
  • Debe ser un administrador en su PC.
  • El PC debe tener 2 GB de RAM / memoria principal. (Tenga en cuenta que tener 2 GB o más espacio en disco no es un sustituto de la memoria RAM)
  • El PC debe tener 4 GB de espacio disponible en disco para almacenar Android aplicaciones / juegos y sus datos.
  •  Debe tener Dirext X 9.0 o superior instalado en su sistema
  • Los controladores para los controladores de gráficos de su PC deben ser actualizados para la compatibilidad con BlueStacks

Descargar: http://www.bluestacks.com/es/index.html


Andy OS

Una nueva alternativa hace aparición bajo el nombre Andy OS, haciendo referencia al famoso robot verde. Andy se diferencia del resto porque trata de ofrecer al usuario una experiencia Android completa directamente desde el PC, no sólo corriendo sus aplicaciones, sino mostrando toda la interfaz del sistema de Google directamente en Windows y Mac a modo de emulador.
Andy OS es un emulador para Android, que ofrece características como soporte para pantallas táctiles. Necesita virtualbox para funcionar, aunque si no lo tienes en tu ordenador la instalación de Andy OS lo descargará automáticamente.
Su proceso de instalación consume bastante tiempo y, como ya comentamos antes en el caso de las máquinas virtuales, puede consumir bastantes recursos una vez esté funcionando. Lo mejor de todo es que Andy está bastante bien actualizado con respecto a otros emuladores, ya que actualmente ejecuta Android 4.4 kitkat. Otra característica interesante de Andy es que permite usar tu teléfono como control remoto.
Andy soporta Google Play, por lo que es posible descargar todas tus aplicaciones favoritas de Android en el ordenador, incluso las de comunicación como WhatsApp, Snapchat o Viber. Dispone de sincronización de aplicaciones entre el PC y los dispositivos móviles, pudiendo escoger qué Apps queremos que se mantengan sincronizadas y así tener los mismos contenidos en ambas partes.
En su web podéis ver más detalles sobre Andy OS, uno de sus creadores ha comentado en Reddit que todavía está en fase prematura y que incluso están preparando una App de Andy para Android, que permitirá tener los controles del PC y ver la pantalla de Windows en el smartphone. Andy OS es gratuito y compatible con Windows 7/8 y Mac OS X.

Descargar: http://www.andyroid.net/


Genymotion

Es la mejor apuesta para aquellos que buscan una experiencia Android completa. Sin embargo, necesita que te registres en su página web oficial y que actives tu cuenta verificando tu dirección de correo. Al igual que sucede con Andy OS, Genymotion también usa virtualbox.
La característica única de Genymotion es que te permite elegir de entre un buen número de dispositivos Android, ya sean smartphones o tablets, y después usa virtualbox para emular el dispositivo. Es más rápido que Bluestacks, pero algunas funciones sólo están disponibles en su versión de pago.
El emulador incluido en el Android SDK tiene un funcionamiento increíble y se puede probar sin mayores requerimientos de software y hardware (aunque es bueno contar con un equipo de al menos recursos medios), pero hay una aplicación llamada Genymotion que con ayuda de la nube, aumenta increíblemente la facilidad y velocidad con la que se crean dispositivos virtuales y se prueban las diferentes aplicaciones. Funciona en Windows, Mac y Linux, y tiene una completa versión gratuita para gozar de sus decenas de características al instante.

Características

  • ·         Está disponible en inglés y francés.
  • ·         Cuenta con instaladores para múltiples sistemas operativos.
  • ·         Las dependencias de VirtualBox en Windows se pueden instalar con un clic.
  • ·         Viene con un plugin para Eclipse y Android Studio para realizar las diferentes pruebas en conjunto con tales editores de código.
  • ·         El móvil virtualizado cuenta con sensores para la cámara, el WiFi y el GPS. Son los mismos del PC.
  • ·         Cuenta con modo de pantalla completa y la opción de poner el móvil en modo horizontal.
  • ·         La carga de la batería se puede determinar para realizar pruebas específicas.
  • ·         Se puede conectar un dispositivo touch (otro móvil, p.e.) para testear el touch de las aplicaciones.
  • ·         No cuenta con las Google Apps por cuestiones legales, pero se pueden instalar desde otras fuentes.
  • ·         Tiene una magnífica función para arrastrar y soltar, desde el equipo y hasta el móvil virtualizado, cualquier fichero multimedia (irá inmediatamente a la carpeta de Descargas del móvil) o aplicaciones en formato APK.
  • ·         Dispone de aceleración de hardware OpenGL para mejores resultados con el 3D.
  • ·         Usa la arquitectura x86 para la virtualización.
  • ·         Permite instalar ROMs diferentes a la de oficial, por ejemplo, Cyanogenmod.
  • ·         En sus versiones de pago permite realizar screencasts y dar zoom para escalar los pixeles del móvil a los del PC.
  • ·         Los dispositivos creados se pueden configurar desde el panel de VirtualBox.



Cómo instalar Genymotion y usarlo

Lo primero que hará falta será crear una cuenta en Genymotion.com y luego elegir uno de sus tres planes: Gratuito, Indie (€ 99 por año) o Business (€ 299 por año). Enseguida aparecerán los enlaces de descarga de su aplicación para Windows, Mac y Linux. Como se trata de una máquina virtual la que manejará la herramienta, requerirá de la ayuda de VirtualBox así que deberás descargarlo e instalarlo previamente (en el asistente de instalación para Windows, se puede instalar automáticamente junto a Genymotion). Luego de instalada, se requerirá el usuario y contraseña conseguidos previamente en el registro en Genymotion para acceder a las opciones disponibles según el plan elegido.
Lo siguiente será empezar a crear los dispositivos virtuales a emular, hay una veintena disponible entre las que se incluyen equipos genéricos con pantallas de hasta 10 pulgadas además de los móviles populares y sus respectivas versiones de Android (desde el 2.3.7 del Xperia S hasta el 4.4.2 del Moto X). Después de elegir el preferido, darle un nombre y su revisar sus detalladas características (tamaño, uso de memoria RAM, espacio de almacenamiento, etc.), basta con dar clic en Next para que se inicie la descarga de sus archivos de instalación.
Cuando es completada, el nuevo dispositivo aparecerá en una lista desde la que se podrá lanzar con apenas un doble clic.

Pag. Oficial: https://www.genymotion.com

Share:

Java

Java


Java es un lenguaje de programación de propósito general, concurrente, orientado a objetos que fue diseñado específicamente para tener tan pocas dependencias de implementación como fuera posible. Su intención es permitir que los desarrolladores de aplicaciones escriban el programa una vez y lo ejecuten en cualquier dispositivo (conocido en inglés como WORA, o "write once, run anywhere"), lo que quiere decir que el código que es ejecutado en una plataforma no tiene que ser recompilado para correr en otra. Java es, a partir de 2012, uno de los lenguajes de programación más populares en uso, particularmente para aplicaciones de cliente-servidor de web, con unos 10 millones de usuarios reportados.

Historia

El lenguaje de programación Java fue originalmente desarrollado por James Gosling de Sun Microsystems (la cual fue adquirida por la compañía Oracle) y publicado en 1995 como un componente fundamental de la plataforma Java de Sun Microsystems. Su sintaxis deriva en gran medida de C y C++, pero tiene menos utilidades de bajo nivel que cualquiera de ellos. Las aplicaciones de Java son generalmente compiladas a bytecode (clase Java) que puede ejecutarse en cualquier máquina virtual Java (JVM) sin importar la arquitectura de la computadora subyacente.
La compañía Sun desarrolló la implementación de referencia original para los compiladores de Java, máquinas virtuales, y librerías de clases en 1991 y las publicó por primera vez en 1995. A partir de mayo de 2007, en cumplimiento con las especificaciones del Proceso de la Comunidad Java, Sun volvió a licenciar la mayoría de sus tecnologías de Java bajo la Licencia Pública General de GNU. Otros también han desarrollado implementaciones alternas a estas tecnologías de Sun, tales como el Compilador de Java de GNU y el GNU Classpath.



Orientado a objetos

La primera característica, orientado a objetos (“OO”), se refiere a un método de programación y al diseño del lenguaje. Aunque hay muchas interpretaciones para OO, una primera idea es diseñar el software de forma que los distintos tipos de datos que usen estén unidos a sus operaciones. Así, los datos y el código (funciones o métodos) se combinan en entidades llamadas objetos. Un objeto puede verse como un paquete que contiene el “comportamiento” (el código) y el “estado” (datos). El principio es separar aquello que cambia de las cosas que permanecen inalterables. Frecuentemente, cambiar una estructura de datos implica un cambio en el código que opera sobre los mismos, o viceversa. Esta separación en objetos coherentes e independientes ofrece una base más estable para el diseño de un sistema software. El objetivo es hacer que grandes proyectos sean fáciles de gestionar y manejar, mejorando como consecuencia su calidad y reduciendo el número de proyectos fallidos.

El recolector de basura

En Java el problema fugas de memoria se evita en gran medida gracias a la recolección de basura (o automatic garbage collector). El programador determina cuándo se crean los objetos y el entorno en tiempo de ejecución de Java (Java runtime) es el responsable de gestionar el ciclo de vida de los objetos. El programa, u otros objetos pueden tener localizado un objeto mediante una referencia a éste. Cuando no quedan referencias a un objeto, el recolector de basura de Java borra el objeto, liberando así la memoria que ocupaba previniendo posibles fugas (ejemplo: un objeto creado y únicamente usado dentro de un método sólo tiene entidad dentro de éste; al salir del método el objeto es eliminado). Aun así, es posible que se produzcan fugas de memoria si el código almacena referencias a objetos que ya no son necesarios—es decir, pueden aún ocurrir, pero en un nivel conceptual superior. En definitiva, el recolector de basura de Java permite una fácil creación y eliminación de objetos y mayor seguridad.

El lenguaje

En un sentido estricto, Java no es un lenguaje absolutamente orientado a objetos, a diferencia de, por ejemplo, Ruby o Smalltalk. Por motivos de eficiencia, Java ha relajado en cierta medida el paradigma de orientación a objetos, y así por ejemplo, no todos los valores son objetos.
El código Java puede ser a veces redundante en comparación con otros lenguajes. Esto es en parte debido a las frecuentes declaraciones de tipos y conversiones de tipo manual (casting). También se debe a que no se dispone de operadores sobrecargados, y a una sintaxis relativamente simple. Sin embargo, J2SE 5.0 introduce elementos para tratar de reducir la redundancia, como una nueva construcción para los bucles ‘’’foreach’’’.
A diferencia de C++, Java no dispone de operadores de sobrecarga definidos por el usuario. Los diseñadores de Java tomaron esta decisión puesto que consideraban que, bajo ciertas circunstancias, esta característica podía complicar la lectura y mantenimiento de los programas.

SDK

Un kit de desarrollo de software o SDK (siglas en inglés de software development kit) es generalmente un conjunto de herramientas de desarrollo de software que le permite al programador o desarrollador de software crear aplicaciones para un sistema concreto, por ejemplo ciertos paquetes de software, frameworks, plataformas de hardware, computadoras, videoconsolas, sistemas operativos, etcétera.
Es algo tan sencillo como una interfaz de programación de aplicaciones o API (del inglés application programing interface) creada para permitir el uso de cierto lenguaje de programación, o puede, también, incluir hardware sofisticado para comunicarse con un determinado sistema embebido. Las herramientas de desarrollo de software más comunes incluyen soporte para la detección de errores de programación como un entorno de desarrollo integrado o IDE (del inglés Integrated Development Environment) y otras utilidades. Los SDK frecuentemente también incluyen códigos de ejemplo y notas técnicas de soporte u otra documentación de soporte para ayudar a clarificar ciertos puntos del material de referencia primario.

JRE

El JRE (Java Runtime Environment, o Entorno en Tiempo de Ejecución de Java) es el software necesario para ejecutar cualquier aplicación desarrollada para la plataforma Java. El usuario final usa el JRE como parte de paquetes software o plugins (o conectores) en un navegador Web. Sun ofrece también el SDK de Java 2, o JDK (Java Development Kit) en cuyo seno reside el JRE, e incluye herramientas como el compilador de Java, Javadoc para generar documentación o el depurador. Puede también obtenerse como un paquete independiente, y puede considerarse como el entorno necesario para ejecutar una aplicación Java, mientras que un desarrollador debe además contar con otras facilidades que ofrece el JDK.

JAVA EE

Java Platform, Enterprise Edition o Java EE (anteriormente conocido como Java 2 Platform, Enterprise Edition o J2EE hasta la versión 1.4; traducido informalmente como Java Empresarial), es una plataforma de programación—parte de la Plataforma Java—para desarrollar y ejecutar software de aplicaciones en el lenguaje de programación Java. Permite utilizar arquitecturas de N capas distribuidas y se apoya ampliamente en componentes de software modulares ejecutándose sobre un servidor de aplicaciones. La plataforma Java EE está definida por una especificación. Similar a otras especificaciones del Java Community Process, Java EE es también considerada informalmente como un estándar debido a que los proveedores deben cumplir ciertos requisitos de conformidad para declarar que sus productos son conformes a Java EE; estandarizado por The Java Community Process / JCP.
Java EE tiene varias especificaciones de API, tales como JDBC, RMI, e-mail, JMS, Servicios Web, XML, etc y define cómo coordinarlos. Java EE también configura algunas especificaciones únicas para Java EE para componentes. Estas incluyen Enterprise JavaBeans, servlets, portlets (siguiendo la especificación de Portlets Java), JavaServer Pages y varias tecnologías de servicios web. Ello permite al desarrollador crear una Aplicación de Empresa portable entre plataformas y escalable, a la vez que integrable con tecnologías anteriores. Otros beneficios añadidos son, por ejemplo, que el servidor de aplicaciones puede manejar transacciones, la seguridad, escalabilidad, concurrencia y gestión de los componentes desplegados, significando que los desarrolladores pueden concentrarse más en la lógica de negocio de los componentes en lugar de en tareas de mantenimiento de bajo nivel.

JAVA ME

La plataforma Java Micro Edition (Java ME), o anteriormente Java 2 Micro Edition (J2ME), es una especificación de un subconjunto de la plataforma Java orientada a proveer una colección certificada de APIs de desarrollo de software para dispositivos con recursos restringidos. Está orientado a productos de consumo como PDAs, teléfonos móviles o electrodomésticos.
Java ME fue una buena opción para crear juegos en teléfonos móviles debido a que se puede emular en un PC durante la fase de desarrollo y luego subirlos fácilmente al teléfono. Al utilizar tecnologías Java el desarrollo de aplicaciones o videojuegos con estas APIs resulta bastante económico de portar a otros dispositivos. Sin embargo, pocos dispositivos actualmente utilizan la tecnología por la que poco a poco ésta se ha ido al olvido.
Java ME fue desarrollado mediante el Java Community Process bajo la especificación JSR 68. La evolución de la plataforma ha propiciado el abandono de las Java Specification Request (peticiones de especificación para Java) en favor de JSRs separadas para las distintas versiones de Java ME.

JAVA SE

Java Platform, Standard Edition o Java SE (conocido anteriormente hasta la versión 5.0 como Plataforma Java 2, Standard Edition o J2SE), es una colección de APIs del lenguaje de programación Java útiles para muchos programas de la Plataforma Java. La Plataforma Java 2, Enterprise Edition incluye todas las clases en el Java SE, además de algunas de las cuales son útiles para programas que se ejecutan en servidores sobre workstations.
Comenzando con la versión J2SE 1.4 (Merlin), la plataforma Java SE ha sido desarrollada bajo la supervisión del Java Community Process. JSR 59 la especificación para J2SE 1.4 y JSR 176 especificó J2SE 5.0 (Tiger). En 2006, Java SE 6 (Mustang) está siendo desarrollada bajo el JSR 270.
Share:

Archivo del Blog