info ITP

info ITP

miércoles, 22 de marzo de 2017

ECLIPSE

Eclipse es una plataforma de software compuesto por un conjunto de herramientas de programación de código abierto multiplataforma para desarrollar lo que el proyecto llama "Aplicaciones de Cliente Enriquecido", opuesto a las aplicaciones "Cliente-liviano" basadas en navegadores. Esta plataforma, típicamente ha sido usada para desarrollar entornos de desarrollo integrados (del inglés IDE), como el IDE de Java llamado Java Development Toolkit (JDT) y el compilador (ECJ) que se entrega como parte de Eclipse (y que son usados también para desarrollar el mismo Eclipse). Sin embargo, también se puede usar para otros tipos de aplicaciones cliente, como BitTorrent o Azureus.

Eclipse es también una comunidad de usuarios, extendiendo constantemente las áreas de aplicación cubiertas. Un ejemplo es el recientemente creado Eclipse Modeling Project, cubriendo casi todas las áreas de Model Driven Engineering.

Eclipse fue desarrollado originalmente por IBM como el sucesor de su familia de herramientas para VisualAge. Eclipse es ahora desarrollado por la Fundación Eclipse, una organización independiente sin ánimo de lucro que fomenta una comunidad de código abierto y un conjunto de productos complementarios, capacidades y servicios.

Eclipse fue liberado originalmente bajo la Common Public License, pero después fue re-licenciado bajo la Eclipse Public License. La Free Software Foundation ha dicho que ambas licencias son licencias de software libre, pero son incompatibles con Licencia pública general de GNU (GNU GPL).


La definición que da el proyecto Eclipse acerca de su software es: "una especie de herramienta universal - un IDE abierto y extensible para todo y nada en particular".
En cuanto a las aplicaciones clientes, Eclipse provee al programador con frameworks muy ricos para el desarrollo de aplicaciones gráficas, definición y manipulación de modelos de software, aplicaciones web, etc. Por ejemplo, GEF (Graphic Editing Framework - Framework para la edición gráfica) es un plugin de Eclipse para el desarrollo de editores visuales que pueden ir desde procesadores de texto wysiwyg hasta editores de diagramas UML, interfaces gráficas para el usuario (GUI), etc. Dado que los editores realizados con GEF "viven" dentro de Eclipse, además de poder ser usados conjuntamente con otros plugins, hacen uso de su interfaz gráfica personalizable y profesional.

El SDK de Eclipse incluye las herramientas de desarrollo de Java, ofreciendo un IDE con un compilador de Java interno y un modelo completo de los archivos fuente de Java. Esto permite técnicas avanzadas de refactorización y análisis de código. Mediante diversos plugins estas herramientas están también disponibles para otros lenguajes como C/C++ (Eclipse CDT) y en la medida de lo posible para lenguajes de script no tipados como PHP o Javascript. El IDE también hace uso de un espacio de trabajo, en este caso un grupo de metadatos en un espacio para archivos planos, permitiendo modificaciones externas a los archivos en tanto

Caracteristicas
Eclipse dispone de un Editor de texto con un analizador sintactico. La compilación es en tiempo real. Tiene pruebas unitarias con JUnit, control de versiones con CVS, integración con Ant, asistentes (wizards) para creación de proyectos, clases, tests, etc., y refactorización.

Asimismo, a través de "plugins" libremente disponibles es posible añadir control de versiones con Subversion.4 e integración con Hibernate.




URL Y URI

URL
Un Localizador Uniforme de Recursos LUR (más conocido por la sigla URL, del inglés Uniform Resource Locator) es un identificador de recursos uniforme (Uniform Resource Identifier, URI) cuyos recursos referidos pueden cambiar, esto es, la dirección puede apuntar a recursos variables en el tiempo. Están formados por una secuencia de caracteres, de acuerdo a un formato modélico y estándar, que designa recursos en una red, como Internet.

Los LUR fueron una innovación en la historia de Internet. Fueron usadas por primera vez por Tim Berners-Lee en 1991, para permitir a los autores de documentos establecer hiperenlaces en la World Wide Web (WWW). Desde 1994, en los estándares de Internet, el concepto de LRU ha sido incorporado dentro del más general de URI, pero el término URL todavía se utiliza ampliamente.

Aunque nunca fueron mencionadas como tal en ningún estándar, mucha gente cree que las iniciales LRU significan universal -en lugar de 'uniform'- resource locator (localizador universal de recursos). Esta se debe a que en 1990 era así, pero al unirse las normas "Functional Recommendations for Internet Resource Locators" (RFC 1736) y "Functional Requirements for Uniform Resource Names" (RFC 1737) pasó a denominarse "Identificador Uniforme de Recursos" (RFC 2396). Sin embargo, la letra "U" en URL siempre ha significado "uniforme".

El LRU es una cadena de caracteres con la cual se asigna una dirección única a cada uno de los recursos de información disponibles en Internet. Existe un URL único para cada página de cada uno de los documentos de la WWW, para todos los elementos de Gopher y todos los grupos de debate Usenet, y así sucesivamente.

El LRU de un recurso de información es su dirección en Internet, la cual permite que el navegador web la encuentre y la muestre de forma adecuada. Por ello, el URL combina el nombre de la computadora que proporciona la información, el directorio donde se encuentra, el nombre del archivo, y el protocolo a usar para recuperar los datos para que no se pierda alguna información sobre dicho, factor que se emplea para el trabajo.
Se puede entender que una URI = URL + URN.

Formato general

El formato general de un URL es:
esquema://máquina.directorio.archivo

También pueden añadirse otros datos:
esquema://usuario:contraseña@máquina:puerto.directorio.archivo

Por ejemplo: http://www.wikipedia.org/

La especificación detallada se encuentra en la RFC 1738, titulada Uniform Resource Locators.

Esquema URL

Un URL se clasifica por su esquema, que generalmente indica el protocolo de red que se usa para recuperar, a través de la red, la información del recurso identificado. Un URL comienza con el nombre de su esquema, seguido por dos puntos, seguido por una parte específica del esquema.

Algunos ejemplos de esquemas URL:
  • http - recursos Hypertext Transfer Protocol (HTTP).
  • https - HTTP sobre Secure Sockets Layer (SSL).
  • ftp - File Transfer Protocol.
  • mailto - direcciones de correo electrónico (e-mail).
  • ldap - búsquedas Lightweight Directory Access Protocol (LDAP).
  • file - recursos disponibles en el sistema local, o en una red local.
  • news - grupos de noticias Usenet (newsgroup).
  • gopher - el protocolo Gopher (en desuso).
  • telnet - el protocolo Telnet.
  • data - el esquema para insertar pequeños trozos de contenido en los documentos esquema de URI de datos (Data: URL).
Algunos de los esquemas URL, como los populares "mailto", "http", "ftp", y "file", junto a los de sintaxis general URL, se detallaron por primera vez en 1994, en el Request for Comments (RFC 1630), sustituido un año después por los más específicos RFC 1738 y RFC 1808.

Todavía son válidos algunos de los esquemas definidos en el primer RFC, mientras que otros son debatidos o han sido refinados por estándares posteriores. Mientras tanto, la definición de la sintaxis general de los URL se ha escindido en dos líneas separadas de especificación de URI: RFC 2396 (1998) y RFC 2732 (1999), ambos ya obsoletos pero todavía ampliamente referidos en las definiciones de esquemas URL.


URI

Un identificador de recursos uniforme o URI —del inglés uniform resource identifier— es una cadena de caracteres que identifica los recursos de una red de forma unívoca. La diferencia respecto a un localizador de recursos uniforme (URL) es que estos últimos hacen referencia a recursos que, de forma general, pueden variar en el tiempo.

Normalmente estos recursos son accesibles en una red o sistema. Los URI pueden ser localizador de recursos uniforme (URL), uniform resource name (URN), o ambos.

Un URI consta de las siguientes partes:
Esquema: nombre que se refiere a una especificación para asignar los identificadores, e.g. urn:, tag:, cid:. En algunos casos también identifica el protocolo de acceso al recurso, por ejemplo http:, mailto:, ftp:, etc.
Autoridad: elemento jerárquico que identifica la autoridad de nombres (por ejemplo //www.example.com).
Ruta: Información usualmente organizada en forma jerárquica, que identifica al recurso en el ámbito del esquema URI y la autoridad de nombres (e.g. /domains/example).
Consulta: Información con estructura no jerárquica (usualmente pares "clave=valor") que identifica al recurso en el ámbito del esquema URI y la autoridad de nombres. El comienzo de este componente se indica mediante el carácter '?'.
Fragmento: Permite identificar una parte del recurso principal, o vista de una representación del mismo. El comienzo de este componente se indica mediante el carácter '#'.

Aunque se acostumbra llamar URL a todas las direcciones web, URI es un identificador más completo y por eso es recomendado su uso en lugar de la expresión URL.

Un URI se diferencia de un URL en que permite incluir en la dirección una subdirección, determinada por el “fragmento”.









APLICACIONES NATIVAS

Las aplicaciones móviles nativas son las que se desarrollan específicamente para cada sistema operativo, iOS, Android o Windows Phone, adaptando a cada uno el lenguaje con el que se desarrolla: lenguaje Objective-C para iOS, Java para Android, y .Net para Windows Phone.

Es decir, hay que realizar el desarrollo de aplicaciones móviles para cada plataforma. 

Este tipo de aplicaciones se adapta al 100% con las funcionalidades y características del dispositivo obteniendo así una mejor experiencia de uso. Sin embargo, el desarrollo de una aplicación nativo comporta un mayor coste, puesto que si se desea realizar una aplicación multiplataforma se ha de realizar una nueva versión para cada sistema operativo, multiplicando así los costes de desarrollo. 

Algunos ejemplos de aplicación nativa, serían Whatsapp o Facebook. 

Entre las ventajas de este tipo de aplicaciones destacan que aprovechan las funcionalidades del dispositivo y que pueden funcionar sin conexión a Internet.

Además, están presentes en Apple Store y en Google Play, por lo que, hablando en términos de marketing, ganan en visibilidad.

Sin embargo, el desarrollo y las actualizaciones de estas aplicaciones son costosos.

Un ejemplo de app nativa es Whatsapp.

OPEN HANDSET ALLIANCE

La Open Handset Alliance (OHA) es una alianza comercial de 84 compañías que se dedica a desarrollar estándares abiertos para dispositivos móviles. Algunos de sus miembros son Google, HTC, Dell, Intel, Motorola, Qualcomm, Texas Instruments, Samsung, LG, T-Mobile, Nvidia y Wind River Systems.

La OHA se fundó el 5 de noviembre de 2007, liderada por Google con otros 34 miembros entre los que se incluían fabricantes de dispositivos móviles, desarrolladores de aplicaciones, algunos operadores de comunicaciones y fabricantes de chips.

Productos
Al mismo tiempo que se anunciaba la formación de la Open Handset Alliance el 5 de noviembre de 2007, la OHA presentó Android, una plataforma de código libre para teléfonos móviles basada en el núcleo operativo Linux. Una beta del SDK fue lanzada para desarrolladores el 12 de noviembre de 2007. Basado en una licencia de código libre, compite contra otras plataformas móviles propietarias de Apple, Microsoft, Nokia, Palm, BlackBerry (compañía) y Bada.

El primer teléfono comercialmente disponible con Android fue el T-Mobile G1 (también conocido como HTC Dream). Fue aprobado por la FCC el 18 de agosto de 2008, y salió a la venta el 22 de octubre

WEBKIT

WebKit es una plataforma para aplicaciones que funciona como base para el navegador web Safari, Opera, hasta que cambio a Blink, Epiphany, Maxthon, Midori, QupZilla entre otros. Está basado originalmente en el motor de renderizado KHTML del navegador web del proyecto KDE, Konqueror. WebKit logra 100/100 en la prueba Acid3 desde el 26 de marzo de 2008. Desde junio de 2005 es software libre bajo las licencias GNU GPL, GNU LGPL y BSD.

La API de WebKit está desarrollada en Objective-C y posibilita interactuar con un servidor web para recuperar y renderizar páginas web, descargar archivos, y administrar plugins.
Webkit incluye dos frameworks de más bajo nivel: WebCore, un analizador sintáctico y motor de renderizado de HTML basado en KHTML, y JavaScriptCore, un intérprete de JavaScript basado en KJS.
Con los lanzamientos pre-alfa se está incluyendo un depurador de Javascript llamado Drosera.

Historia
El código que se convertiría en WebKit se inició en 1998 como parte de un proyecto KDE de renderizado HTML denominado KHTML y del motor JavaScript de KDE (KJS). El nombre del proyecto y 'WebKit' fueron creados en 2002, cuando Apple Inc. creó un «fork» (bifurcación) de KHTML y KJS. Los desarrolladores de Apple explicaron en un correo electrónico a los desarrolladores de KDE que estos motores permiten un desarrollo más fácil que otras tecnologías por el hecho de ser pequeños (menos de 140.000 líneas de código), diseñados limpiamente y compatibles con las normas. KHTML y KJS fueron portados a Mac OS X con la ayuda de una biblioteca adaptada y renombrada como WebCore y JavaScriptCore. JavaScriptCore se anunció en un correo electrónico a una lista de correo de KDE en junio de 2002, junto con la primera versión de los cambios de Apple.

WebCore fue anunciado en la Macworld Expo en enero de 2003 por el CEO de Apple Steve Jobs con el lanzamiento del navegador web Safari. JavaScriptCore se incluyó por primera vez con el Mac OS X v10.2 como un framework privado, que Apple utilizaba en su aplicación Sherlock, mientras que WebCore debutó con la primera beta de Safari. Mac OS X v10.3 fue el primer lanzamiento de un sistema operativo de Apple que instalaba el paquete WebKit, a pesar de que ya se había compilado como una versión menor del OsX 10,2.

¿QUÉ ES UNA ACTIVITY?

El término Activity (actividad) es de los primeros que debemos entender a la perfección en Android, ya que es de lo más básico y se usa muchísimo en las aplicaciones.
Podemos decir que todas las pantallas de una aplicación son una “activity”. Más adelante vamos a ver que existen algunas variaciones, pero por ahora digamos que todas lo son. Es decir, que si una aplicación tiene cinco pantallas, tiene 5 “Actividades” o activities.

Las activities están conformadas por dos partes: la parte lógica y la parte gráfica.
La parte lógica es una archivo .java que es la clase que se crea para poder manipular, interactuar y colocar el código de esa actividad.
La parte gráfica es un XML que tiene todos los elementos que estamos viendo de una pantalla declarados con etiquetas parecidas a las del HTML, es decir, que el diseño de una aplicación en Android se hace similar a una página web; XML es un primo de HTML.

Resumiendo, una actividad está conformada por la parte lógica (un archivo Java) y la parte gráfica (un archivo XML).
Adentrando más en el tema, ya sabemos que tenemos un archivo .java, esto quiere decir que tenemos una clase principal, al ser una actividad extiende de la clase Activity (por eso el nombre) que nos proporciona Android para crear actividades con sus métodos asignados.

martes, 21 de marzo de 2017

PRACTICAS: EJEMPLOS SENCILLOS EN JAVA

EJEMPLO  1: HOLA MUNDO 

1.- Para realizarlo debemos de abrir el bloc de notas y en el escribir  el siguiente código:

2.- En el disco local C, Creamos una carpeta en este caso le pondre programasTec, donde se guardarán todos los ejemplos que se vayan realizando.


3.- Debemos tomar en cuenta el nombre de la clase con la que se creo, y guardar con ese mismop nombre . En este caso sería Holamundo.java, una vez guaradado, para probar que funciona abrimos cmd o simbolo de sistema, caemos en raíz y nos dirigimos a nuestra carpeta programasTec qué es donde guardamos el archivo y escribimos lo siguiente:
cd..
cd/
cd/programasTec
javac Holamundo.java
java Holamundo



EJEMPLO  3:  HIMNO NACIONAL

public class himno
                {
                public static void main(String[] args)
                {
                System.out.println("\t\t\tCoro\n\n"+
                "\tmexicanos, al grito de guerra\n"+
                "\tel acero aprestad y el bridón,\n"+
                "\ty retiemble en sus centros la tierra.\n"+
                "\tal sonoro rugir del cañón.\n\n");

                System.out.println("\t\t\tI\n"+
                "\tciña ¡oh patria! tus sienes de oliva\n"+
                "\tde la paz el arcángel divino,\n"+
                "\tque en el cielo tu eterno destino\n"+
                "\tpor el dedo de dios se escribió.\n"+
                "\tMás si osare un extraño enemigo\n"+
                "\tprofanar con su planta tu suelo,\n"+
                "\tpiensa ¡oh patria querida! que el cielo\n"+
                "\tun soldado en cada hijo te dio.;\n\n");

                System.out.println("\t\t\tII\n\n"+
                "\t¡guerra, guerra sin tregua al que intente\n"+
                "\tde la patria manchar los blasones!\n"+
                "\t¡guerra, guerra! los patrios pendones\n"+
                "\ten las olas de sangre empapad.\n"+
                "\t¡guerra, guerra! en el monte, en el valle\n"+
                "\tlos cañones horrísonos truenen,\n"+
                "\ty los ecos sonoros resuenen\n"+
                "\tcon las voces de ¡unión! ¡libertad!\n");
               

                }
}

Guardar como himno.java en la carpeta programasTec, y luego abrir el cmd y caer a raiz como antes