Archive for febrero, 2012

Javascript : Class.js Script para facilitar el uso de Clases en javascript

Si vienes de otros lenguajes mas estándar en el uso de la POO, Javascript puede parecerte un tanto tosco en su manera de interpretarla.

Hemos encontrado un script que pesa menos de un kilobyte (se trata de Class.js) y que te facilitara la vida.

Así quedaría crearíamos una clase con Javascript :

One = {
	
	message:'',
	
	set:function(val){
	
		this.message = val;
	
	},
	
	get:function(){
	
		alert(this.message);
	
	}

};

Así la usaríamos :

var e = new Class(One);
e.set('Hello, World!');
e.get();

Para el tema constructores, si los necesitamos los definiremos como “construct()“, y serán llamados al instanciar la clase. Ese constructor podrá tener argumentos

One = {
	
	message:'',
	
	construct:function(val){
	
		this.set(val);
	
	},
	
	set:function(val){
	
		this.message = val;
	
	},
	
	get:function(){
	
		alert(this.message);
	
	}

};

Y lo usaríamos así :

var e = new Class(One,['Awesome!']);
e.get();

El script nos otorga también la posibilidad de “extender” clases, y lo definiríamos de esta manera :

One = {

	message:'',
	
	set:function(val){
	
		this.message = val;
	
	},
	
	get:function(){
	
		alert(this.message);
	
	}

};

Two = Extend(One,{

	construct:function(val){
	
		this.set(val);
	
	}

});

Y lo utilizaremos así :

var e = new Class(Two,['Quixotic!']);
e.get();

Aunque se nos notifica que no podemos sobrecargar métodos en las clases extendidas.

El script también permite extender instancias de clases, y el uso de plugins…pero para eso ya os dejo investigar un poco.

Os dejo de nuevo la URL que a bote pronto me parece muy interesante : URL Class.js

Share

Vi : Comandos Utiles para usar con el editor

Vi” es un tanto rustico para los profanos, pero tremendamente potente si nos adentramos un poco en sus entrañas…eso si hasta los mas asiduos al mismo recuerdan difícilmente todos sus comandos.

Hemos visto en este link una buena recopilación de comandos que hemos creído útil guardar aquí para uso general.

-"ESC" Abandonar el modo de inclusión de texto para volver al modo de comandos. También se usa para cancelar   comandos. (Usarlo en caso de duda)
-"Cntl+F" Avanzar una pagina hacia adelante
-"Cntl+B" Avanzar una pagina hacia atrás
-"Cntl+L" Refrescar la pantalla
-"G" Cursor al final del fichero
-"1G" Cursor al principio del fichero
-"$" Cursor al final de la linea
-"0" (cero) Cursor al principio de la linea
-"a" Añadir texto a continuacion del cursor [TEXTO]
-"i" Insertar texto en la posicion del cursor [TEXTO]
-"A" Añadir texto al final de la linea [TEXTO]
-"I" Insertar texto al principio de la linea [TEXTO]
-"o" Añadir una linea debajo de la del cursor [TEXTO]
-"O" Añadir una linea encima de la del cursor [TEXTO]
-"u" Deshacer el último cambio realizado
-":red" Rehace los cambios deshechos con ''u'' o '':u''
-"x" Borrar un caracter (y ponerlo automaticamente en el ALMACEN)
-"D" Borrar el resto de la linea (a la derecha del cursor)
-"dw" Borrar una palabra (hasta el primer blanco a la dcha. del cursor)
-"dd" Borrar la linea entera
-"8x" Borrar 8 caracteres
-"2dw" Borrar 2 palabras
-"7dd" Borrar 7 lineas
-"p" Poner el contenido del ALMACEN temporal a continuacion del cursor
-"P" Poner el contenido del ALMACEN temporal antes del cursor 
-"s" Substituir un caracter por texto [TEXTO]
-"15s" Substituir 15 caracteres por texto [TEXTO]
-"r" Substituir un solo caracter por otro nuevo, sin entar en modo de TEXTO
-"R" Sobreescribir [TEXTO]
-"J" Unir la linea del cursor y la siguiente
-"i [ENTER]" Romper una linea en dos
-"." Repetir el último cambio realizado
-"yy" Poner la linea presente en el almacen temporal
-"5yy" Poner cinco lineas en el almacen
-":w" Guardar en el fichero que se esta editando los cambios realizados (Aconsejable ejecuarlo de vez en cuando)
-":w!" Idem, forzandolo si fuese necesario.
-":w" Fichero Guardar en el fichero "Fichero"
-":wq" Guardar y salir de "vi".
-":wq!" Idem, forzandolo si fuese necesario.

NOTA: Cada vez que se borra texto, el texto borrado pasa a un ALMACEN temporal, de donde elimina lo que estuviese almacenado previamente. - :q Salir de "vi", si no se han realizado cambios desde   la última vez que se han salvado.

-":q!" Salir de "vi" en todo caso. No se guardan aquellos   cambios que no se hayan salvado.
-":set" nu Visualizar los numeros de las lineas
-":set" nonu Ocultar los numeros de las lineas
-"+" Ir a la linea siguiente - Ir a la linea anterior
-":+8" Ir a la linea que esta 8 puestos más abajo
-":-9" Ir a la linea que esta 9 puestos más arriba
-":6" Ir a la linea numero 6
-"ma" Marcar la linea del cursor con la etiqueta 'a'.   (Sólo puede usarse una letra)
-"'a" Ir a la linea marcada con 'a".
-":$" Ir a la última linea del fichero, "$".
-":P,U d" Borrar las lineas entre P y U, ambas incluidas.   P y U son identificadores de lineas, es decir,   numeros de lineas o etiquetas. Ejemplos:   :6,'a d borrar las lineas entre la "6" y la 'a'   :'a,'b d borrar las lineas entre la 'a' y la "b"   :'a,$ d borrar las lineas desde 'a' hasta el final
-":P,U w" Fichero Escribir en el fichero "Fichero" las lineas   comprendidas entre P y U, ambas incluidas
-":r" Fichero Leer el contenido del fichero "Fichero" y ponerlo a   continuacion de la linea del cursor.
-"/texto/" Buscar, hacia adelante, la aparicion de "texto".
-"?texto?" Buscarlo hacia atras.
-"n" Continuar la busqueda en la direccion elegida.
-"N" Continuar la busqueda en la direccion opuesta.   /i.ad/ busca iXad, donde X es cualquier caracter   /i...ad/ busca iXXad, donde XX son dos   caracteres cualesquiera
-":P,U s/texto viejo/texto nuevo/" Substituir texto desde las lineas P a U; solo la   primera vez que aparezca en cada linea. Ejemplos:   :1,$ s/hola/adios/ substituir el primer "hola" de   cada linea del fichero por 'adios'
-":P,U s/texto viejo/texto nuevo/g" Substituir texto desde las lineas P a U;   todas las veces que aparezca.   :'a,$ s/hola/adios/g substituir todos los "hola" por   'adios' desde la linea marcada 'a' hasta el final
-":set ic" Ignorar mayusculas/minusculas en busquedas y substituciones
-":set noic" No ignorarlas
-":set ai" Auto-margen: cada nueva linea aparece con el mismo margen que la linea anterior. (Util cuando se escriben ficheros FORTRAN)
-":set noai" No auto-margen.
-"abb ABREV texto" Definicion de una abreviatura (ABREV en este caso)   para "texto"
-">>" Desplaza una linea hacia la derecha
-"5>>" Desplaza 5 lineas hacia la derecha
-"<<" Desplaza una linea hacia la izquierda
-"5<<" 5 lineas hacia la izquierda
Share

Lua : Hola Mundo!

Lua, un lenguaje interesante desde el punto de vista Gamer…

#!/usr/bin/lua
print ("Hola Mundo")
Share

Objective-C : Hola Mundo!

De momento nos olvidamos de clases (hablaremos de ello mas adelante).

Os dejo el codigo del archivo hola.m :

#import <stdio.h>

int main( int argc, const char *argv[] ) {
    printf( "hello world\n" );
    return 0;
}
Share

Visual Basic.NET : Hola Mundo!

Un clásico moderno… ;)

Module Module1

Sub Main()

Console.WriteLine("Hola mundo!")

End Sub

End Module
Share

C# : Hola Mundo!

Otra navaja multiusos C# pronunciado por los ingleses como “C Sharp” :

 using System;
 
 class MainClass
 {
     public static void Main()
     {
         System.Console.WriteLine("¡Hola, mundo!");
     }
 }
Share

C++ : Hola mundo!

Este lenguaje es una navaja suiza, y si ademas te interesa el mundo de desarollo en plataforma Mac, te otorgara una buena base :

#include <iostream>
using namespace std;

int main()
{
  cout << "¡Hola, mundo!" << endl;
  return 0;
}
Share

Bash : Hola mundo!

Aqui dejamos este Hola mundo que puede interesar a algún aprendiz de Sysadmin rezagado…:P

 #!/bin/bash
 echo "Hola mundo"
Share

Ruby : Hola Mundo!

Uno de los lenguajes de moda :

print "Hola Mundo"

Aunque tambien sirve :

puts "Hola mundo"
Share

Python : Hola Mundo!

Este lenguaje permite una infinidad de posibilidades en múltiples ámbitos…pero por algo hay que empezar :

print "Hola mundo";
Share