20 de octubre de 2015

¿Qué es el hosting?


que-es-hosting
Hola developer, hoy voy a enseñarte lo qué es hosting, para qué sirve y cómo se utiliza ya que todo desarrollador web debe saber lo qué es  hosting.

Hosting es un servicio de alojamiento web en la nube, es decir que existen empresas que alquilan sus servidores web para que nosotros podamos publicar nuestras aplicaciones en internet.

Para entender bien qué es hosting tienes que saber que para que una aplicación web se pueda visualizar en internet es necesario que este alojada en un servidor web que tenga una IP pública.

También podríamos hacer que nuestro ordenador actuara como servidor web, y haciendo unas pequeñas modificaciones en la red de casa podríamos visualizar nuestra web desde internet, alojandola en nuestro propio PC. 

Esto significara tener que dejar el ordenador encendido 24 horas al día 365 días al año, además si en casa se nos fuera la luz la web quedaría inaccesible, eso sin contar el coste energético que supondrá.

Para solucionar todos estos inconvenientes lo normal es contratar un servicio de alojamiento web a una empresa externa, estas empresas suelen ofrecer disponibilidad del 99.99% esto quiere decir que en todo el año el tiempo máximo posible de que este offline el servidor es de 1 Hora acumulada.

En internet se pueden encontrar incluso servicios de hosting gratuitos, con limitaciones obviamente pero ahora qué estas empezando te sirve. En próximos tutoriales te enseñare a adquirir uno de estos servidores y a configurarlo.

Espero que te haya gustado y ¡Hasta la próxima developer!
Rubén Soler Web Developer

Soy muy autodidacta, además de mis estudios reglados siempre estoy aprendiendo cosas por mí mismo, me encanta lo que hago.

17 de octubre de 2015

Curso de Java 8 T1: Introducción y Hola mundo



curso-de-java.capitulo-1


Hola developer, en honor al 20º Aniversario de Java, que celebramos este año, me gustaría impartir un curso de Java 8. El curso constara de varios capítulos que iré publicando, si quieres aprender este lenguaje de programación puedes seguirlo y estoy seguro de que juntos aprenderemos mucho.

Al final del curso serás capaz de programar esta aplicación:

pizzeria-java-programa

Es una aplicación para gestionar una pizzeria que utilizaremos como ejemplo para el aprendizaje el ejemplo que ves lo he programado yo y puedes echarle un vistazo al código en este repositorio de
Github: https://github.com/RSginer/GestionPizzeria

También puedes descargarlo y probarlo aquí (Mac OS, Windows y Linux): Descargar

  1. 1. Introducción.

Java es un lenguaje de programación orientado a objetos (POO) multiplataforma, es decir que lo mismo sirve para desarrollar aplicaciones de escritorio que aplicaciones web e incluso aplicaciones para dispositivos móviles, esto es así gracias al funcionamiento interno de Java.

Java es un lenguaje de programación semi-interpretado, el código fuente que nosotros escribimos en Java se compila y después lo ejecuta la maquina virtual de java. Para que nos entendamos, digamos que un programa traduce el código que escribimos para que lo entienda el interprete de Java. Esto permite que cualquier dispositivo en el que se pueda instalar el interprete de Java (La maquina virtual de Java) se pueda programar en lenguaje Java.


  1. 2. Instalación de Netbeans IDE y Java JDK 8

Como te he comentado antes, Java es un lenguaje que necesita una maquina virtual para ser interpretado, entonces si queremos comenzar a desarrollar aplicaciones en Java tenemos que contar con dos requisitos:

  • - Un entorno de desarrollo (Netbeans, Eclipse, BlueJ, etc).
  • - La maquina virtual de Java instalada.


En este curso voy a utilizar Netbeans, porque es el que más me gusta pero si tu quieres utilizar otro puedes hacerlo sin problemas aunque para seguir el curso con más fluidez te recomiendo que utilices Netbeans.

Por suerte Oracle nos facilita el trabajo con un instalador que ya trae el entorno de desarrollo Netbeans y el JDK de Java, todo en un ejecutable.

Lo puedes descargar en la siguiente página:

descargar-java-netbeans Clic para Descargar Netbeans + JDK 8

Simplemente aceptas la licencia seleccionas tu sistema operativo, lo descargas e instalas, no creo que tengas mayor problema con esto, aunque si es así siempre puedes dejarme un comentario e intentare ayudarte.



  1. 3. Tu primer programa en Java, "Hola mundo".

Bien, ya tienes todo lo que necesitas para poder desarrollar aplicaciones en Java 8.

Ahora vamos a crear nuestro primer programa, es un programa muy sencillo para comenzar. 

Abre Netbeans y ves a "File / New Proyect"  y selecciona Java Aplication.



nuevo-proyecto-netbeans
En la imagen se muestra que tipo de proyecto seleccionar
En la siguiente ventana solamente tienes que escribir el nombre que quieras para tu proyecto donde dice "Proyect name"  y clic en "Finish".  El siguiente código es nuestro programa que explico después.



Para ejecutarlo haz clic en el simbolo "Play de color verde". o haz clic derecho y "Run file".



Como puedes ver dentro de "public static void main {}"  es donde hemos metido nuestro código, esto es porque de momento solo vamos a utilizar la clase main para aprender pero más adelante veremos como crear nuestras propias clases para después utilizarlas, "main" es la clase por defecto que ejecuta java al correr un programa.

No te preocupes si no entiendes mucho algo, el objetivo de este capitulo es que te vayan sonando las cosas y tengas el ordenador listo para empezar a aprender

System.out.println("Hello world"); Este metodo saca por pantalla lo que le pongamos de argumento (Lo que hay entre paréntesis).

Ahora ya tienes tu entorno de desarrollo preparado y todo listo para desarrollar aplicaciones en Java 8, en el próximo capitulo veremos variables, algunos métodos y otro ejercicio práctico.

Si quieres ser el primero en enterarte puedes seguirme por redes sociales o suscríbete al newsletter y te notificare cuando este listo.

Espero que te haya gustado y ¡Hasta la próxima developer!

Ya está disponible el siguiente capitulo:

Rubén Soler Web Developer

Soy muy autodidacta, además de mis estudios reglados siempre estoy aprendiendo cosas por mí mismo, me encanta lo que hago.

13 de octubre de 2015

TOP 5 Sistemas Gestores de Bases de Datos


top-5-sgbd
Imagen extraída de Pixabay
Hola developer, hoy voy hablarte sobre los SGBD más utilizados hoy en día, con la web 3.0 se esta imponiendo el modelo NoSQL pero aun así vamos a ver que las Bases de Datos que siguen el modelo relacional y objeto-relacional todavía predominan en la web.

1. Oracle Data Base.


Es un sistema gestor de bases de datos Objeto-Relacional, desarrollado por la empresa Oracle Corporation.
Tiene varias versiones en función de la complejidad del uso que se le vaya a dar:
  • Enterprise Edition (EE).
  • Standard Edition (SE).
  • Standard Edition One (SE1).
  • Express Edition (XE).
  • Personal Edition (PE).
  • Lite Edition (LE).

La fecha de lanzamiento inicial fue en 1977, su licencia es software propietario, utiliza el lenguaje SQL y puede trabajar con PL/SQL.

Puede trabajar en Linux, Windows y Mac OSX.

2. MySQL


Este SGBD se posiciona en el número 2 de la lista y es  a diferencia de Oracle Data Base, software libre.

Es relacional pero esta no está orientada a objetos, se lanzó su primera versión en el año 1980 y en sus inicios fue creada por IBM quien libero el código y posteriormente hace unos  años la compro Oracle Corporation.

 Normalmente va de la mano de PhpMyAdmin que es su motor gráfico más utilizado.

Puede trabajar en Windows, Linux y Mac OSX.

3. Microsoft SQL Server.


El siguiente de la lista es Microsoft SQL Server, obviamente está desarrollado por la empresa Microsoft. Inc. El lenguaje que utiliza es TSQL que es una variante del lenguaje SQL, este únicamente está disponible para SO Windows (“como ya es habitual en Microsoft su software es para ellos”).

Al igual que pasaba con Oracle DB este también está disponible en varias versiones en función de la utilidad a cada cual más completo y lógicamente más caro:

  • Enterprise.
  • Developer.
  • Standard.
  • Express.
  • SQL Azure.

4. MongoDB.


En la cuarta posición se encuentra MongoDB la más peculiar de las hasta ahora nombradas, ya que esta es un tipo de base de datos NoSQL y basada en documentos, es software libre, lo mantiene la comunidad de desarrolladores voluntariamente.

Nació en el año 2007 por la empresa 10gen, pero no fue hasta el 2011 que fue lanzada la versión para producción

5. PostgreSQL.


En el número 5 de la lista esta PostgreSQL que es un SGBD Objeto-Relacional y también Software libre no tiene propietario como tal sino que es desarrollada y mantenida por una comunidad de desarrolladores llamada PGDG.

 Tiene lenguaje propio PL/PgSQL muy similar al PL/SQL de Oracle.

La primera versión fue lanzada en el 1988.

Recuerda que estos datos están en continuo movimiento ya que dependen del momento unos SGBD pueden subir en la lista y otros pueden bajar, pero si quieres estar siempre informado casi a tiempo real de este TOP puedes consultar esta web : http://db-engines.com/en/ranking 

Es bueno que te vayan sonando porque próximamente publicare entradas sobre ellos y los iremos trabajando.

Espero que te haya gustado y ¡Hasta la próxima developer!
Rubén Soler Web Developer

Soy muy autodidacta, además de mis estudios reglados siempre estoy aprendiendo cosas por mí mismo, me encanta lo que hago.

12 de octubre de 2015

Introducción a XML ¿Qué es? y ¿Cómo utilizar XML?


aprender-xml
Imagen extraída de Wikipedia

Hola developer, hoy voy a  hablarte sobre XML, veremos que tipo de lenguaje es, para qué se utiliza , un poco sobre la historia de XML y el por qué he comenzado mi primera entrada como tal hablando de el.

Bien, comencemos, lo primero que tienes que saber es que XML es un lenguaje de marcas orientado al desarrollo de aplicaciones pero de una manera muy especial, y esa manera tan especial es por que la sintaxis utilizada para crear documentos XML la marca el propio desarrollador, es decir tu mismo puedes decir que etiquetas utilizar, que atributos, etc.

No te preocupes demasiado si no entiendes muy bien esto último continua leyendo el post y lo entenderás, más adelante lo explico.

Este lenguaje surge del estándar SGML, este es un estándar para la creación de lenguajes de marcas, además de XML también por ejemplo HTML proviene de SGML al igual que muchos  otros lenguajes.  La diferencia entre un estándar y una recomendación.

Para entender esto primero tienes que saber que existe una organización llamada W3C que es la encargada de organizar todos los lenguajes y protocolos que se utilizan en la web y crear estándares y recomendaciones para que así todos los navegadores intenten interpretar estos de la forma más similar posible.

Dentro de esta organización se generan estándares y recomendaciones.

 Los estándares quiere decir que ese lenguaje esta absolutamente sujeto a las normas que exige la W3C si un desarrollador no cumple las normas se habla de que es un documento mal formado, y por lo tanto no es valido.

Mientras que las recomendaciones no requieren de ningún tipo de validación por parte de la W3C únicamente recomienda seguir una serie de pautas pero no es obligatorio. Por supuesto es muy recomendable seguir a ser posible a raja-tabla las recomendaciones de la W3C ya que todos los navegadores se basan en esta para interpretar nuestro código.

Supongo que ahora entenderás el porque he elegido este lenguaje para hacer mi primer post, es necesario que sepas estos conceptos y conozcas la existencia de la W3C si quieres aprender a desarrollar aplicaciones web.

Muy bien ahora que ya sabes un poco de que va el tema vamos a realizar un ejercicio práctico, ya que pienso que es la mejor forma de que lo entiendas.

Para el ejercicio puedes utilizar EditiX Free que es un editor especializado para crear documentos XML y que nos facilita el trabajo ya que tiene un validador basado en el estándar de la W3C para comprobar si nos hemos equivocado. lo puedes descargar desde aquí gratuitamente:


- Ejercicio practico 1
Vamos a realizar un documento XML en el que se represente un listado de vehículos.



Como puedes ver en el documento en XML exsisten elementos, que son las etiquetas (<etiqueta></etiqueta>) y atributos, que añaden información a las etiquetas(<etiqueta atributo="valor"></etiqueta>), a su vez unas etiquetas están dentro de otras, esta forma de organización se denomina arborescente porque forman arboles de datos.

Más adelante veremos que con Xparser podemos extraer información de documentos XML para utilizarla en nuestras aplicaciones.

Espero que te haya gustado y ¡Hasta la próxima developer!
Rubén Soler Web Developer

Soy muy autodidacta, además de mis estudios reglados siempre estoy aprendiendo cosas por mí mismo, me encanta lo que hago.