Al navegar por Internet muchas de las veces nos encontramos con sitios muy interesantes que vale la pena volver a visitar, o que los tengamos como referencia para cuando nos surja una duda o simplemente para aprender cosas nuevas. Por esta razón he decidido mostrar los recursos que a lo largo de este tiempo he venido usando.



  • Canales de YouTube
CodigoFacilito: a estas alturas es un canal muy conocido y que desde mi punto de vista es muy bueno, la mayoría de sus cursos son gratuitos y tienen una amplia gama de cursos a escoger.

DesarrolloWeb: es muy bueno, aunque lo que más me gusta son sus cursos tipo charla, tienen infinidad de cursos gratuitos, que en su mayoría son tratados desde lo técnico, teórico a la práctica.

xymind: lo que más me gusta de este canal es que da consejos o tips sobre programación y no solo eso, Jorge Villalobos habla en base a su experiencia.

platzi: es una canal muy conocido, pero en sí lo que más me gusta de dicho canal, son sus charlas en vivo cada jueves, a lo que ellos llaman platzilive, con este canal te enterarás de lo que está pasando en el mundo tecnológico y alguno que otra noticia.

FalconMasters: en el encontrarás temas que tienen que ver con el desarrollo web, es un canal muy bueno, lo que más me gusta es que sus tutoriales terminan aplicando lo aprendido, como por ejemplo creando una página web visual e interactiva (casos prácticos).

DevCode: al igual que el anterior esta enfocado en aplicar lo aprendido, aunque en este canal encontrarás tutoriales o cursos tanto de diseño web como de desarrollo o programación.

clipset: por si quieres estar al tanto o conocer los diferentes dispositivos que se ofertan en el mercado como smartphones, portátiles, cámaras, consolas, etc. Básicamente este canal te muestre unboxing y el análisis de los dispositivos pero desde un punto de vista divertido.


  • Sitios web
GoConqr: te permite crear mapas mentales, test, mapas conceptuales, etc.

Quizlet: la utilizo para crear vocabulario de ingles,e s muy facil de utilizar, además está disponible para android e ios, y algo que me gusta mucho es que la puedes usar sin conexión.

text2MindMap: te permite crear mapas mentales de forma rápida, es muy fácil de usar, además te permite guardar en la nube o descargar en formato pdf o jpg.

apper: para realizar videollamadas, lo que más me gusta es que no necesitar registrarte para hacer una es muy fácil de usar.

  • Páginas web para aprender programación
En este apartado no hay mucho que decir, aunque si destacar que la mayoría de ellas tienen cursos gratuitos de diferentes temas y algunas te dan un certificado digital gratis una vez aprobado el curso.










Sencillamente el mejor lenguaje de programación como tal no existe, y por esa razón que lo he puesto entre comillas, ya que todo depende de: que es lo que quieres hacer, los conocimientos y las habilidades que tengas, las necesidades del cliente, esto último es muy importante, el saber entender muy bien que es lo que quiere el cliente, debido a que muchas de la veces, dotamos al producto de funcionalidades extra (exageraciones) que al cliente no le interesan para nada y lo más importante terminamos entregando aquello que no pidió el cliente, en la siguiente imagen se puede ver claramente:



La verdad es que como desarrolladores o simplemente como amantes de la tecnología que somos, pues no deberíamos casarnos con ningún lenguaje de programación, plataforma específica o determinada tecnología en concreto. Debemos ser de mente abierta y estar dispuestos a aprender cosas nuevas, actualmente la mayoría de los lenguajes de programación son multipropósito y los podemos utilizar para cualquier proyecto, eso sí en determinadas áreas o campos, unos son mejores que otros. Una buena frase dice el pincel no hace al artista, así como el lenguaje de programación no hace al programador, aunque cabe decir que si es verdad que le ayuda a llevar sus habilidades al máximo o simplemente a hacer las cosas más rápido y de mejor forma. A manera de ejemplo y haciendo una analogía, una espada (catana) en manos de un persona común y corriente, pues por más buena que sea la espada no le va sacar mucho provecho, le servirá para cortar más rápido o inclusive puede ser una tragedia en las manos inexpertas, pero que pasa si sucede lo contrario la misma espada en manos de un experto (samurái) pues le va a sacar todo el provecho: hacer cortes más rápido, demostrar sus habilidades con la espada en una batalla, etc. En fin la cuestión es; usa el lenguaje de programación que más te gusta, el que más dominas o sencillamente el que se adapte de mejor forma a tu proyecto y no lo olvides convierte en un experto (samurái del código) ya que las espadas (lenguajes de programación) pues de una u otra forma son muy buenos, todo depende de tus habilidades, conocimientos técnicos, gustos y una vez más de las necesidades del cliente y del proyecto como tal.



Así que la pregunta más bien sería ¿Que lenguaje de programación debería elegir? , esto en base a lo antes mencionado.



Las listas de argumentos de longitud variable nos sirve para crear métodos que reciban cualquier número de argumentos. Son también conocidas como “varargs”, cabe decir que java trata a las listas de longitud variable como un arreglo.
Para crear una “varargs” en un método, lo hacemos declarando el tipo de dato y una elipsis (...) , seguido del nombre, con el siguiente ejemplo quedará más claro:



package com.unaprendiz.ejemplos;

public class ArgumentosLongitudVariable 
{
 
 //método con una varargs
 public static int sumatoria( int... numeros)
 {
  
     int total = 0;
  
     //recorrer la varargs
     for( int num : numeros)
       total += num;
  
     return total;
 }
 
 public static void main(String[] args)
 {
     int num1 = 2;
     int num2 = 4;
     int num3 = 6;
     int num4 = 8;
  
     //llamadas a sumatoria con 2, 3 y 4 argumentos
  
     System.out.printf("la sumatoria de num1 y num2 es: %d\n", 
            sumatoria(num1, num2));
  
     System.out.printf("la sumatoria de num1, num2 y num3 es: %d\n",                                      sumatoria(num1, num2, num3));
  
     System.out.printf("la sumatoria de num1, num2, num3 y num4 es: "
                       + "%d\n", sumatoria(num1, num2, num3, num4));

 }
}

La salida del programa es:

Salida del programa


La sobrecarga de métodos es tener un método con el mismo nombre que se repita varias veces, pero con las condiciones de que dicho método tenga diferentes firmas y definiciones. La firma del método es una combinación del nombre del método, número de parámetros, tipos y orden en los parámetros.

Cabe recalcar que, para que java seleccione un método sobrecargado se basa en el número y tipo de argumentos que tiene dicho método y no por su tipo de retorno (que es lo que devuelve).


import java.util.Scanner;

public class SobrecargaMetodos 
{

 public static void main(String[] args)
 {
     int num1, num2, num3;
     int opcion = 0;
  
     Scanner entrada = new Scanner(System.in);
  
     System.out.printf("Ingrese 1: Cálcular el mayor de 2 números\n"
       +"%42s", "2: Cálcular el mayor de 3 números:");
     opcion = entrada.nextInt();
  
     if(opcion == 1) {
        System.out.print("Ingrese número 1: ");
        num1 = entrada.nextInt();
        System.out.print("ingrese número 2: ");
        num2 = entrada.nextInt();
        System.out.println("El mayor es: " + numMayor(num1, num2));
   
     }
     else if(opcion == 2) {
        System.out.print("Ingrese número 1: ");
        num1 = entrada.nextInt();
        System.out.print("ingrese número 2: ");
        num2 = entrada.nextInt();
        System.out.print("ingrese número 3: ");
        num3 = entrada.nextInt();
        System.out.println("El mayor es: " + numMayor(num1, num2, num3));
     }else
        //Si se ingresa un número diferente
        System.out.println("No ha escogido ningúna opción!!!");
   
 }

 /*método sobrecargado*/
 
 public static int numMayor(int num1, int num2)
 {
     int mayor = Math.max(num1, num2);

     return mayor;
 }

 public static int numMayor(int num1, int num2, int num3)
 {
     int mayor = Math.max(num1, (Math.max(num2, num3)));
  
     return mayor;
 }
}

¿Por qué escribir código legible?


La razón por la cual debemos escribir código legible es muy sencilla, es para que otros programadores o desarrolladores nos entiendan, inclusive nosotros mismos después de volver a leer el código que escribimos hace tiempo.

Al escribir código nos convertimos no solamente en creadores de software también nos convertimos en escritores, ya que en cada línea de código demostramos nuestro estilo narrativo y nuestra prosa como tal. A manera de ejemplo, podemos pedirle a varios desarrolladores que resuelvan un problema o necesidad del mundo real y lo harán en la gran mayoría de forma diferente, esto se debe en gran medida a que el código que escribimos  es un reflejo de nuestros pensamientos y del proceso mental que se lleva a cabo.

Así que necesitamos dar a entender nuestras historias plasmadas en el código de forma clara, concisa y evitando la redundancia.

Consejos para escribir  código legible:

  • Haz que tu código se describa a sí mismo. Si haces eso no será necesario documentar tu código.
  •  Los nombres de las variables deberán ser descriptivos.
  • Sigue las pautas y convenciones de tu lenguaje.
  • Evita las abreviaciones en los nombres de variables, métodos, etc., con el cuento de ahorrar espacio o código.
  • Siempre indenta tu código, esto hará que sea más claro y legible.
  • Haz de cuenta que estás escribiendo para alguien más. Pasamos más tiempo leyendo y entendiendo código que escribiéndolo.
  • No intentes reinventar la rueda. Utiliza la biblioteca de clases o api de los lenguajes de programación.
  • Documenta solo cuando realmente sea necesario. Esto tiene que ver con la primera regla.
  • Utiliza estándares de programación.
  • Sé autocrítico con tu código.

Hay que tener siempre presente que el código legible hace que sea más fácil entenderlo, depurarlo y darle mantenimiento, con lo cual un buen código que sea legible cumple con las buenas prácticas de desarrollo de software.




En primer lugar los atributos son las cualidades o características que posee un objeto y los métodos son las acciones asociadas al objeto, es decir que es lo que puede hacer un objeto en concreto.
Ejemplo:


package com.unaprendiz.ejemplo;

public class Persona
{
    /* Atributos */
    private String nombre;
    private String apellido;
    private int edad;
    private String nacionalidad;
 
    /*Inicializa las variables de instancia */
    public Persona(String nombre, String apellido, int edad, String nacionalidad)
    {
      /*this es una referencia a si mismo
      * Es utilizado para hacer referencia a los atributos 
      * de nuestra clase en este caso la clase Persona
      */
      this.nombre = nombre;
      this.apellido = apellido;
      this.edad = edad;
      this.nacionalidad = nacionalidad;
    }
 
    /*Comportamientos*/
    public void Caminar(int direccion)
    {
       //código
    }
 
    public void Correr(int distancia)
    {
       //código
    }
 
    public void Saltar()
    {
      //código
    }
}


Es importante mencionar que a los atributos también se los conoce como variables de instancia, debido a que están asociadas a un objeto en particular, si instanciamos o creamos varios objetos de nuestra clase persona, cada uno de ellos tendrán asociado una copia de las variables de instancia.
Cuándo ejecutamos un programa Java, es posible pasarle parámetros mediante el comando java seguido del nombre de nuestro programa y una lista de parámetros.

Ejemplo:


1. package argumentos;

2. 

3. public class Saludo {

4. 

5.    public static void main(String[] args) {

6. 

7.       System.out.println("Hola: " + args[0] +" " + args[1]);

8. 

9.    }

10. }



Por convención al arreglo de String en el método principal se le llama args, aunque cabe destacar que se le puede poner cualquier nombre. Para ejecutar el programa lo harámos de la siguiente forma siempre y cuando lo hagamos desde la terminal, primero compilamos con el comando javac y después ejecutamos con el comando java:

java Saludo Maycc Suarez

La salida que muestra el programa es:

Hola: Maycc Suarez

Si utilizamos un ide como eclipse para pasarle parámetros a nuestro programa lo haríamos de la siguiente forma:
  • Hacemos clic en Run: 


  • Luego le damos a Run Configurations.. y escribimos los parámetros que vayamos a utilizar como en la siguiente captura:


  • Finalmente le damos a Run y listo:

Comenta con Facebook

 
© 2012. Design by Main-Blogger - Blogger Template and Blogging Stuff