Bienvenidos

.

Cuantos Visitantes de Mi Blogguer ?

Inscripcion a Listas

Colibri Resultados de la subscripción

Su solicitud de suscripción se ha recibido y se atenderá pronto. Dependiendo de la configuración de esta lista de distribución, su solicitud de suscripción se tendría que confirmar por usted o aprobar por el moderador de la lista. En caso de que haga falta confirmación, recibirá en breve un mensaje de correo electrónico de confirmación con las instrucciones a seguir. Colibri la administra santiago at unicauca.edu.co Interfaz administrativa de Colibri (requiere autorización) Panorámica de todas las listas de distribución de listas.el-directorio.org version 2.1.9

Petición de suscripción confirmada

Ha confirmado satisfactoriamente la solicitud de suscripción de "mikelogar@gmail.com" a la lista de distribución Colibri. Se le mandarán separadamente un mensaje a su dirección de correo electrónico, junto con su clave y otra información de interés. Se recomienda que guarde ese mensaje como referencia. Ahora puede acceder a la página de entrada de su suscripción. Colibri la administra santiago at unicauca.edu.co Interfaz administrativa de Colibri (requiere autorización) Panorámica de todas las listas de distribución de listas.el-directorio.org version 2.1.9 Listas de distribución de listas.el-directorio.org ¡Bienvenidos! A continuación se muestran todas las listas de distribución públicas de

listas.el-directorio.org

.
Déle con el ratón al nombre de una determinada lista para obtener más información sobre dicha lista, para suscribirse a ella, borrarse, o cambiar las preferencias de su suscripción. Para visitar la página de una lista que no se anuncia, abra una URL parecida a ésta, pero con un "/" seguido por el nombre de la lista. Los administradores de listas pueden visitar la página general de administración de listas para encontrarl la interfaz de gestión de su lista. Si tiene algún problema usando las listas, haga el favor de ponerse en contacto con mailman@listas.el-directorio.org.
Lista Descripción
Colibri Comunidad de Usuarios de Software Libre en Colombia
Flisol Flisol 2007
Freedfd [descripción no disponible]
GLUC Grupo GNU/Linux Universidad del Cauca
Ikaro [descripción no disponible]
Jsl Jornadas de Software Libre Colombia
Prueba [descripción no disponible]
Pycolombia Pythoniando...
Simulacion [descripción no disponible]
Sl-prog Lista sobre el desarrollo de software con herramientas de software libre.
Svnwiki Svnwiki Mailing List
version 2.1.9 http://www.el-directorio.org/ Como unas Páginas Amarillas del software libre en Colombia... ¡Pero mejores! ¡Bienvenidos! El Directorio es una iniciativa para recopilar información relacionada con el software libre y obras abiertas. La premisa es que el conocimiento se modifica cuando se usa, y por lo tanto tu puedes participar de este documento vivo, abierto y colectivo.. Para saber qué está pasando te invitamos a ver los cambios recientes. En este momento existen 3426 páginas (y aumentando). Bienvenido a la lista de distribución

Flisol@listas.el-directorio.org

Para mandar un mensaje a esta lista, envíelo a: flisol@listas.el-directorio.org Puede obtener información general sobre la lista en: http://listas.el-directorio.org/cgi-bin/mailman/listinfo/flisol Si alguna vez desea anular su subscripción o cambiar las opciones de la misma (p.ej.: cambiarse a modo resumido o no, cambiar su clave, etc.), consulte la página de su subscripción en: http://listas.el-directorio.org/cgi-bin/mailman/options/flisol/mikelogar%40gmail.com También puede realizar estos cambios por medio de correo electrónico, enviando un mensaje a: Flisol-request@listas.el-directorio.org http://www.espaciolinux.com/modules.php?name=Your_Account espacio linux

http://barrapunto.com/


Inscripcion como usuario de linux

mikelogar usuario Numero(33193)

Tutorial Java Script - 1

Unav
3D
LECCIÓN 1

INTRODUCCION AL JAVASCRIPT

JavaScript permite crear aplicaciones específicamente orientadas a su funcionamiento en la red Internet. Usando JavaScript, se pueden crear páginas HTML dinámicas que procesen la entrada del usuario y que sean capaces de gestionar datos persistentes usando objetos especiales, archivos y bases de datos relacionales.

Con JavaScript se pueden construir aplicaciones que varían desde la gestín de la informacín corporativa interna y su publicacín en Intranets hasta la gestín masiva de transacciones de comercio electrónico.

Aunque se trata de algo que se sale del alcance de este curso, es importante resenar que JavaScript puede utilizar una tecnología propietaria de Netscape, denominada LiveConnect, con el propósito de que las aplicaciones = JavaScript puedan tener acceso a aplicaciones basadas en objetos distribuidos CORBA = y Java.

En cualquier caso, es importante senalar que, pese a la similitud = de nombres, JavaScript no es Java.

Las aplicaciones cliente y servidor en JavaScript comparten el mismo = n=FAcleo de lenguaje. Este núcleo se corresponde con ECMA-262, el lenguaje de = scripts estándar de la Oficina de Estándares de la Unión Europea, con = algunos anadidos extra. Aunque Javascript de cliente y de servidor comparten el mismo = conjunto base de funciones y características, en algunos casos se utilizan de = distinta forma. Los componentes de JavaScript son los siguientes:

  • Núcleo de JavaScript (Core JavaScript).
  • JavaScript para Cliente.
  • JavaScript para Servidor.

Como se puede apreciar en la figura adjunta, JavaScript para cliente = engloba el núcleo del lenguaje y algunos elementos adicionales como, por = ejemplo, una serie de objetos predefinidos que sólo son relevantes para la = ejecución de JavaScript en el contexto de un cliente Web.

Así mismo, JavaScript para servidor incluye también el núcleo = de lenguaje y los objetos predefinidos y funciones necesarias para el correcto = funcionamiento en el marco de un servidor.

El código JavaScript para cliente se integra directamente en = p=E1ginas HTML y es interpretado en su totalidad por el cliente Web en tiempo de = ejecución.

Puesto que con frecuencia es necesario ofrecer el mayor rendimiento = posible, las aplicaciones JavaScript desarrolladas para servidores se pueden = compilar antes de instalarlas en dichos servidores.

Veamos ahora con detalle cómo funciona JavaScript tanto en el = cliente como en el servidor.

JAVASCRIPT PARA APLICACIONES CLIENTE

Los clientes Web que soportan JavaScript, tales como el Netscape Navigator/Communicator (desde la versín 2.0) o el Microsoft Internet = Explorer (desde la versín 3.0) pueden interpretar sentencias JavaScript = colocadas en un documento HTML.

Cuando el cliente Web solicita una página de este tipo, el servidor = envía por la red al cliente el contenido completo del documento, incluyendo todos = los códigos HTML y las sentencias JavaScript que pudieran existir en = éste.

El cliente lee entonces la p=E1gina de forma secuencial desde el = principio hasta el final, representando visualmente los códigos HTML y = ejecutando las sentencias JavaScript conforme avanza el proceso de lectura e = interpretación.

Las sentencias JavaScript colocadas en una p=E1gina Web pueden dar = respuesta a eventos de usuario, tales como la pulsación de un botón del ratón = (clic), la entrada de datos en un formulario y la navegación por una p=E1gina.

Por ejemplo, se puede crear una función JavaScript que permita = verificar que la información introducida por el usuario en un campo de entrada de = datos de un formulario (número de teléfono, código postal, número de tarjeta = de crédito, etc.) tienen el formato correcto.

En este caso, lo importante es que, sin necesidad de realizar ninguna = transmisión de datos por la red, se puede validar dicha información, = mostrando al usuario un cuadro de di=E1logo en caso de que ésta sea incorrecta. =


INTEGRACIÓN DE JAVASCRIPT EN DOCUMENTOS HTML

Se ofrece aquí = un primer ejemplo en el que se ilustra la integración directa de código = JavaScript en un documento HTML:

<HTML>

<HEAD>
<TITLE>Primer ejemplo de JavaScript</TITLE>
</HEAD>

<BODY>
<b>Esto es texto norrnal de un documento HTML</b>
<P>

<SCRIPT LANGUAGE=3D"JavaScript"> docurnent.write("Texto generado =
desde JavaScript")
</SCRIPT>

<P>
<b>Esto es, de nuevo, HTML</B>

</body>

</HTML>

Como se puede observar, este ejemplo tiene la apariencia de un = documento HTML est=E1ndar. La única novedad viene dada por la presencia del fragmento = correspondiente al código JavaScript:


<SCRIPT LANGUAGE=3D"JavaScript"> document.write('Texto generado =
desde Ja-
vascript")
</SCRIPT>

Para poder ver el resultado de su ejecución, bastar=E1 con cargar = dicho documento con cualquiera de los clientes Web antes mencionados.

La salida, como se aprecia en las figuras adjuntas (para ambos = clientes Web), se compone de tres líneas de texto:


    Esto es texto normal de un documento HTML
    Texto generado desde JavaScript
    Esto es, de nuevo, HTML

En realidad no se trata de un script útil, puesto que todo lo que = ofrece (mostrar una línea de texto) se podría haber hecho en HTML = directamente, y sin duda, con mayor comodidad. Sólo se trata de mostrar el funcionamiento = del código <SCRIPT>.

En efecto, cualquier elemento que quede delimitado por los códigos <SCRIPT> y </SCRIPT> se considera código JavaScript.

En este caso particular, se ha utilizado document.write, una de las = funciones m=E1s importantes de JavaScript, que permite escribir algo en el = documento actual (en este caso, el documento HTML que contiene el ejemplo).

ARCHIVOS DE CÓDIGO JAVASCRIPT

El atributo SRC del código SCRIPT del lenguaje HTML permite = especificar un archivo que contiene el código JavaScript (en lugar de incrustar el = código JavaScript en el documento HTML).

Por ejemplo:


<HEAD>
<SCRIPT SRC=3D"comun.js"> ...
</SCRIPT> </HEAD> <BODY> ...

Este atributo es especialmente útil para compartir funciones entre = numerosos documentos HTML.

Las sentencias JavaScript del interior de un código <SCRIPT = SRC=3D ... > se ignoran a menos que la inclusión cause un error.

Se incluye una sentencia que muestre un mensaje de error en caso de = no poder cargar el archivo de código.

Por ejemplo: <script src=3D"http://www.mienlace.es/funciones/funcion1.js">

Los archivos JavaScript externos solo pueden tener código = JavaScript y ninguna sentencia HTML.

CLIENTES QUE NO SOPORTAN JAVASCRIPT

Estos clientes no admiten la etiqueta HTML <script>. Consideran = la etiqueta SCRIPT y todo su contenido como texto normal, por ello, se hace = preciso ocultar el código a clientes que no lo soporten. Para evitar esto, se = utilizan los comentarios de HTML entre las etiquetas <SCRIPT> y = </SCRIPT>:


       <SCRIPT LANGUAGE=3D"JavaScript">
	      
		</SCRIPT>

Recuerda que <!-- ....--> es la forma de insertar = comentarios en HTML.

Otra forma de conocer si un cliente soporta JavaScript es insertar el = código <NOSCRIPT>...</NOSCRIPT>. De modo que los navegadores que no = soporten JavaScript ejecuten las sentencias HTML alternativas = incluídas dentro de esta etiqueta.

JAVASCRIPT PARA APLICACIONES SERVIDOR

En el servidor, JavaScript también est=E1 integrado en p=E1ginas = HTML. Las sentencias de JS del servidor pueden realizar multitud de tareas:

  • Conectarse a bases de datos relacionales de varios fabricantes.
  • Compartir información entre usuarios de una aplicación.
  • Acceder a los ficheros del servidor.
  • Comunicarse con otras aplicaciones a través de LIVECONNECT y = JAVA.

Las aplicaciones JavaScript del servidor se compilan generando = archivos binarios.

Existen servicios especiales de JavaScript en el servidor:

  • Servicio de Gestión de Sesiones.
  • Servicio de Bases de Datos LiveWire.

JAVASCRIPT Y JAVA

JAVASCRIPT JAVA
Interpretado por el cliente Compilado (bytecodes). Se descarga del servidor y se ejecuta en = el cliente
Orientado a Objetos Basado en Clases
El código se integra e incrusta en documentos HTML Se utilizan APPLETS. Se accede a ellos desde = documentos.
Los tipos de datos de las variables no se declaran Es necesario definir los tipos de datos de las = variables
No se puede escribir automáticamente en el disco duro No puede escribir automáticamente en el disco duro

Tutorial Java Script - 2

JavaScript

3D
LECCION 2

VALORES

JavaScript reconoce los siguientes valores:

  • Valores numéricos.
  • Valores lígicos (true, false)
  • Cadenas de caracteres
  • Valor null
  • Valor no definido (undefined)

Además de estos valores, existen otros elementos propios de = JavaScript como los objetos y las funciones.

JavaScript trata de forma dinámica los datos. Se puede realizar la = siguiente operaciín:

    
	var unValor=3D50
    

Y después asignar a unValor un valor de tipo cadena de caracteres: =

   
    unValor=3D"Ahora está lloviendo"
    

VARIABLES

Las variables pueden comenzar por un carácter o un subrayado bajo = (_).

Cuando a una variable no se le asigna un valor, tiene valor indefinido(undefined). Si se le pone un valor, puede ocurrir que:

  • Si fue declarada sin "var", se produce un error en tiempo de = ejecuciín.
  • Si fue declarada con "var", devuelve el valor NaN(Not a Number). =

Veamos un ejemplo:


     function f1(){
	    return y-2;
	 }

	 f1() // Esta llamada a f1 provoca un error en tiempo de ejecuciín

     function f2(){
	    return var y-2;
     }

	 f2() // devuelve el valor NaN

Podemos utilizar el valor "undefined" para ponerle valor a una = expresiín:

  
     var miVar;

	 if(miVar=3D=3Dundefined){
	    hazunacosa();}
	 else{
	    hazotracosa();}
   
 

El valor "undefined" se comporta como falso cuando se usa como tipo = booleano.

Las variables pueden ser:

  • Globales: Cuando se le asigna un valor fuera de una = funciín. El uso de "var" es opcional.
  • Locales: Se realiza la operaciín de asignaciín dentro = de una funciín. El uso de "var" es obligatorio.

Por último, es bueno saber que se puede acceder a una variable de = un documento HTML de un FRAME desde otro:


    parent.miVar

LITERALES

Un literal es un valor fijo que se especifica en el script.

Existen varios tipo de literales:

  • Arrays
  • Booleanos
  • Coma Flotante
  • Enteros
  • Objetos
  • Cadenas

ARRAYS

Conjunto de 0 o más expresiones encerradas entre corchetes ([]).

Ejemplo:

  
     coches=3D["BMW","Mercedes","Audi","Volvo"]
  
 

Coches es un array de 4 elementos.

Podemos dejar elementos del array vac=EDos:

   
	ciudades=3D["Madrid",,"Valladolid"]
	ciudades=3D[,,"Pamplona"]
	ciudades=3D["Madrid","Pamplona",,]
   

BOOLEANOS

Tiene 2 valores booleanos: true y false.

COMA FLOTANTE

Un literal de coma flotante puede tener las siguientes partes:

  • Un entero decimal
  • Un punto decimal(".")
  • Una parte fraccionaria
  • Un exponente ("e" o "E")

Un literal de coma flotante debe tener al menos un d=EDgito y un = punto decimal o una "e"(o "E").

Ejemplos:

  • 3.1415
  • -6.23E11
  • .2e10
  • 2E-10

ENTEROS

Los literales enteros se pueden expresar como:

  • Decimales: Del 0 al 9.
  • Octales: Comienzan por 0. Del 0 al 7.
  • Hexadecimales: comienzan por "0x" o "0X". Del 0 a 9 y a(o = A) a f(o F).

OBJETOS

Conjunto de cero o más parejas de parejas nombre:valor.

Ejemplo:

  
     aviín=3D{marca:"Boeing",modelo:"747",npasajeros:"450"}
  
 

Para referirnos desde JavaScript a una propiedad del objeto aviín: =

  
     document.write(aviín.modelo)
  
 

CADENAS

Un literal de cadena es una secuencia de caracteres entre los signos = de comillas simples o dobles (" o ').

En un literal de tipo cadena podemos utilizar los métodos del = objeto String.

Existe un conjunto de caracteres,que comienzan por \. Algunos de = ellos son:

.
\b Retroceso
\f Avance de l=EDnea
\n Salto de l=EDnea
\r Return
\t Tabulaciín
\' , \", \\ Los s=EDmbolos ', " y \ respectivamente.

Tutorial Java Script - 3

OBJETOS

Definimos como objeto, una entidad con una serie de propiedades que = definen su estado y unos métodos (funciones) que actúan sobre esas = propiedades.

La forma de acceder a una propiedad de un objeto es la siguiente: =

  
       nombreobjeto.propiedad
  
  

También se puede referir a una propiedad de un objeto por su = =EDndice en la creaciín. Los índices comienzan por 0:

  
        casa[0]=casa.localidad
	casa[1]=casa.superficie
	casa[2]=casa.precio
	

Vamos a crear un objeto con una serie de propiedades. La forma de = crear un objeto es la siguiente:

  1. Crear una funciín constructora
        
    	   function casa(localidad,superficie,precio){
    	          this.localidad=localidad
    		  this.superficie=superficie
                      this.precio=precio
    	   }
    	  
    	 
  2. Instanciar objetos con "new"
    
            casa1=new casa("Pamplona",90,15000000)
    	casa2=new casa("Bilbao",110,23000000)
      
      

Dos observaciones importantes:

  • Gracias a new creamos nuevos objetos con las propiedades de los ya = creados.
  • "this" hace referencia al propio objeto.

A un objeto se le pueden seguir anadiendo propiedades tras ser = definido, aunque es una pr=E1ctica que no se aconseja, pues todos los objetos ya = creados hasta entonces anaden también esa propiedad con valor nulo. Para = ello se utiliza la palabra prototype:

	 
	   casa.prototype.ano=null
           casa.ano="1980"
	 

Otra forma de crear objetos es de forma literal:

  
      =
nombreobjeto={propiedad1:valor;propiedad2:valor;.....propiedadN:valor}
	
	

Finalmente, sílo anadir que una propiedad puede estar formada por = varias subpropiedades de modo que para referenciarlas deberemos seguir una = notaciín similar a la anterior:


  nombreobjeto.nombrepropiedad.nombreSubpropiedad
  
 

Ejemplo:

	
	   =
casa1={localidad:"Pamplona",precio:15000000,superficie:{interior:90,ter=
raza:10}}
	 
	

En este ejemplo,casa1 es un objeto en el que, la propiedad "superficie", est=E1 a su vez formada por dos subpropiedades: = interior y terraza.

Veamos ahora como se crean los métodos.

Un método no es m=E1s que una funciín asociada a un tipo de = objeto:

 
    objeto.nombremétodo=nombrefunciín
 
 

Veamos un ejemplo. Este método sirve para mostrar las propiedades = de un objeto casa:

  
     function VerCasa(){
	    var mostrar="La casa est=E1 en " + this.localidad + ", tiene " + =
this.superficie +" m2 y cuesta " +this.precio +" ptas."

		return(mostrar)
	 }

Si en la funciín constructora de casa anadimos:

  
     this.VerCasa=VerCasa
	

Ya tenemos un método llamado VerCasa que nos permite ver las = propiedades de cualquier objeto de tipo casa.

Una vez creado un objeto, si lo que queremos es eliminarlo, sílo = tenemos que llamar al operador "delete".

  
    delete casa
	

Este operador es interesante, porque, si consigue eliminar el objeto, = devuelve "true" si se le pone valor, por lo que se puede saber cuando un = objeto ha sido borrado satisfactoriamente.

NOTA: Existen objetos, y propiedades de estos, de muy diverso = tipo, predefinidos en JavaScript:

  • Window
    1. Frame
    2. Document
      • Layer
      • Link
      • Image
      • Area
      • Anchor
      • Applet
      • Plugin
      • Form
        1. Textarea
        2. Text
        3. fileUpload
        4. Password
        5. Hidden
        6. Submit
        7. Reset
        8. Radio
        9. Checkbox
        10. button
        11. Select
          • Option
  • Location
  • History
    • Navigator
      1. Plugin
      2. MimeType

    OPERADORES

    Existen varios tipos de operadores en JavaScript:

    1. Asignaciín

      Este tipo de operador se utiliza para asignar valores a las = variables.

          
      	  var resultado=50
      	 
      	 

      Asigna a la variable "resultado" el valor 50.

      Existen abreviaturas de algunas operaciones de asignaciín:

      x + = y x = x + y
      x - = y x = x - y
      x * = y x = x * y
      x % = y x = x % y
      x / = y x = x / y
    2. Comparaciín

      En JavaScript, se pueden comparar variables de distinto tipo, pues = es capaz de forzar conversiones:

      == Devuelve true si son iguales. Fuerza conversiones de = tipo.
      != Devuelve true si son distintos. Fuerza conversiones de = tipo.
      === Devuelve true si son iguales y del mismo tipo.
      !== Devuelve true si son distintos o de distinto tipo.
      > Devuelve true si la variable de la izquierda es mayor que la variable de la derecha
      < Devuelve true si la variable de la derecha es mayor que la = variable de la izquierda
      >= Devuelve true si la variable de la izquierda es mayor o igual = que la variable de la derecha
      <= Devuelve true si la variable de la izquierda es menor o igual = que la variable de la derecha

    3. Aritméticos

      Los operadores aritméticos, a partir de varios operandos, = devuelven un solo valor, resultado de la operaciín realizada con los anteriores = operandos.

      En JavaScript, existe notaciín postfija y prefija, por lo que = variable++ y ++variable son dos formas distintas de incrementar una variable. En = primer lugar, se procesa la variable, y luego se incrementa. Sin embargo, en = el segundo caso, primero se incrementa la variable y despues se = procesa.

      >% Binario. Devuelve el resto de una divisiín.
      ++ Unitario. Incrementa el valor de la variable.
      -- Unitario. Decrementa el valor de una variable.
      - Unitario. Cambia el signo de una = variable.

    4. Lígicos

      Los operadores lígicos devuelven un valor binario.

      && AND
      || OR
      ! NOT

      Es importante saber que si en una evaluaciín ya se conoce el = resultado, no se pone valor a los dem=E1s términos:

      • true || devuelve true.
      • false && devuelve false.

    5. Cadenas

      Con las cadenas de caracteres podemos usar funciones de = concatenaciín o asignaciín. Estos opreadores sirven tanto para literales como para = variables.

           
      	   "Hoy es un d=EDa" + "fr=EDo"
      	   resultado="D=EDa " + tiempo
      	  
      
    6. Condicional

      Este operador realiza las funciones de una sentencia "SI" que = veremos m=E1s tarde. Su formato es el siguiente:

      
         condiciín?acciín1:acciín2
        
       
      • Evalúa condiciín.
      • Si la evaluaciín devuelve true, realiza acciín1.
      • Si la evaluaciín devuelve false, realiza acciín2. =

    SENTENCIAS

    Las sentencias en JavaScript se dividen en varios = tipos:
    1. Condicionales

      Las sentencias condicionales sin "if" y "switch". La sintaxis de = "if" es la siguiente:

       
           if(condiciín){
      	  acciones
      	  }
      	  else{
      	   acciones
      	  }
      	 
      	 

      Ejemplo:

       
           var i=5
      
      	 if(i>5){
      	  document.write("i es mayor que 5")
      	  }
      	  else{
      	   document.write("i es menor o igual que 5")
      	  }
      	 
      	 
      La sentencia "switch" toma una variable, y la evalúa según = unos posibles valores:
      	
      	   switch(variable){
      	     case valor1:
      		    acciones1;
      		    break;
               case valor2:
      		    acciones2;
      		    break;
                  .........
                  .........
      		 case valorN:
                  accionesN;
      			break;
      		default acciones;
              }
      		

      Veamos cada una de las partes:

      • case valor1: En el caso de que la variable tenga el valor = "valor1", realizar=E1 las acciones "acciones1".
      • break: Si no se incluye esta sentencia después de cada = "case", se realizar=EDan todos los cases del "switch" hasta el final. De este = modo, sílo se realizar=E1n las acciones referentes al "case" concreto.
      • Default: Si el valor de la variable no concuerda con = ningún case, se realizar=E1n las acciones de default.

    2. Bucles

      Estas sentencias se caracterizan por que el flujo puede pasar = varias veces por ellas hasta que se cumple una condiciín.

      "for" representa una o varias sentencias que se repiten un número = determinado de veces:

       
         for(inicio;final;incremento){
            acciones
         }
         
        

      "do...while" es un bucle que al menos se recorre una vez, antes de = analizar la condiciín al final.

         
           do(condiciín){
      	   acciones
      	 }while(condiciín)
      
      	 
      	

      "while" es una sentencia de bucle que puede que no se realice = ninguna vez, pues la condiciín se evalúa al principio del bucle.

      	 
      	  while(condiciín){
      	    acciones
      	  }
      	  
      	 

      Con la sentencia "break", se puede salir de una sentencia de bucle = sin limitaciones.

      Con la sentencia "continue", se termina el bucle actual y se = comienza con el siguiente.

    3. Manipulaciín de Objetos

      Existen dos sentencias(for y with) que permiten = acceder a las propiedades de un objeto de forma r=E1pida.

      La sentencia "for" recorre todas y cada una de las propiedades de = un objeto con un =EDndice.

      
         for(variable en objeto){
             acciones
         }
         
        

      "with" establece un objeto por defecto al que aplica un conjunto de = acciones:

        
           with(objeto){
      	   acciones
      	 }
      	 
      	 

    La forma de introducir comentarios en JavaScript es con //, si se = trata de una l=EDnea o con /* ...*/, si queremos tomar un bloque como comentario. =

    FUNCIONES

    Una funciín es un elemento del programa creado con la finalidad de = realizar una determinada acciín. Una funciín puede ser llamada desde otra.

    En JavaScript, las funciones se definen en la cabecera del documento = HTML. Su sintaxis es:

       
         function nombreFunciín([par=E1metros]){
    	    acciones
    	 }
    	 
    	 

    Veamos un ejemplo. El siguiente script es una funciín que toma los = valores de un formulario, y devuelve en un cuadro de texto del mismo el valor de la = primera casilla elevado a la potencia de la segunda:

    
    	  <script>
              function potencia(){
    	        var i=0;
    	        var resul=1;
    	        if(document.c=E1lculo.elevado.value==0)
    	        document.c=E1lculo.resultado.value=resul;
    	           else
    	           {
    	             resul=document.c=E1lculo.base.value;
    	             for(i=1;i<document.c=E1lculo.elevado.value;i++)
    			        resul=resul*document.c=E1lculo.base.value;
    	           }
    	        document.c=E1lculo.resultado.value=resul;
    	     }
                 </script>
    
    

    =A1Las funciones siempre ir=E1n situadas en la cabecera del documento = HTML!

    Se debe recordar címo se accede a los diferentes elementos de un = documento HTML. Primero, document, después, los nombres de los distintos = elementos que existen en ese elemento:

    1. c=E1lculo: Es el valor que se le ha dado al atributo "name" = del formulario.
    2. resultado, base, elevado: Es el valor que se = le ha dado al atributo "name" de una de las cajas de texto del formulario. =

    Veamos la parte HTML de este documento:

    
        <form name="c=E1lculo">
          Número: <input type="text" name="base">
          Potencia: <input type="text" name="elevado">
          Resultado: <input type="text" name="resultado">
          <input type="button" name="poten" Value="Calcular =
    potencia" onClick="potencia()">
        </form>
    
    

    onClick es un evento que ser=E1 estudiado en el siguiente = tema.

    M=E1s adelante se explica címo referenciar a elementos de una = p=E1gina de frames.

    En JavaScript, los par=E1metros de las funciones se pasan por valor, = es decir, si una variable cambia de valor en la funciín, fuera de ella sigue = teniendo el mismo valor que cuando entrí en ella.

    Si una funciín devuelve su resultado con return, la = funciín debe ser asignada o formar parte de una respuesta. En caso contrario, si una = funciín no devuelve un valor con "return", puede ser llamada sin ser asignada.

    Los argumentos de las funciones se gestionan con un array propio de = cada una de ellas. Al array se accede con "nombreFunciín.arguments[i]", donde = "i" es un =EDndice que comienza por 0.

    Para conocer el número de par=E1metros, podemos utilizar: = "arguments.length".

    Existe un conjunto de funciones predefinidas, veamos algunas de = ellas:

    Fecha

    • getDate() - D=EDa del mes
    • getDay() - D=EDa de la semana
    • getMonth() - D=EDa del mes
    • getYear() - Ano (con dos d=EDgitos)
    • getTime() - Milisegundos transcurridos desde 1/1/1970
    • getHours() - Hora entre 0 y 23
    • getMinutes() - Minutos entre 0 y 59
    • getSeconds() - Segundos entre 0 y 59

    Existen las mismas funciones pero con "set" en lugar de "get", de = modo que nos permiten cambiar el valor de esas variables.

    VENTANAS

    Tenemos tres formas de mostrar un mensaje al usuario en una ventana = de aviso:

    • Alert - Muestra el contenido de lo que le pasamos en una = ventana con un botín de aceptar.
      
                 alert("Esto es una prueba")
      
      
    • Confirm - Muestra un mensaje como "alert", pero muestra dos = botones: aceptar y cancelar. Si se evalúa, al pulsar = aceptar devuelve true y con cancelar, false.
    • Prompt - Muestra una ventana donde podemos escribir un = valor, de modo que después pueda ser asignado a una variable.
      
                  prompt("mensaje",valor por defecto)
      
      

    MATEM=C1TICAS

    Se trata de las propiedades de Math:

    • abs() - Valor absoluto
    • max(v1,..,vn) - Valor m=E1ximo
    • min(v1,..,vn) - Valor m=EDnimo
    • round() - Redondear
    • exp() - Exponencial
    • log() - Logaritmo
    • pow(base,exponente) - Potencia
    • sqrt() - Ra=EDz cuadrada
    • sin() - Seno
    • cos() - Coseno
    • tan() - Tangente
    • asin() - Arcoseno
    • acos() - Arcocoseno
    • atan() - Arcotangente

    Tutorial Java Script - 4

    Unav
    Volver a la página del CTI

    GESTIÓN DE EVENTOS

    Evento se considera cualquier acción que el usuario realiza = con el sistema (hacer click, posicionarse con el ratón en un lugar = determinado, enviar un formulario, posicionarse en un cuadro para texto,...).

    Para referirnos a un evento en HTML, el nombre del evento irá = precedido por "on". Por ejemplo, el gestor de eventos de "Click" será "onClick".

    La forma de llamar a un evento es la siguiente. Imaginamos que = tenemos un botón en un formulario, y queremos que al pulsarlo realice una = acción determinada:

    
        <form ....>
    	   <input type="button" onClick="función([parámetros])">
        </form ....>
    
    

    Con esta acción, asociamos al evento click sobre el botón las = acciones que realice la función.

    Veamos los eventos que conoce JavaScript:


    DragDrop Arrastrar un objeto a la ventana del navegador
    Error Se produce un error en la carga de un documento
    Focus El usuario se posiciona en una ventana o cuadro de texto de un formulario
    KeyDown Se pulsa una tecla
    KeyPress Se pulsa o libera una tecla
    KeyUp Se libera una tecla
    Load Se carga un documento en el navegador
    MouseDown Se pulsa un botón del ratón
    MouseMove Se mueve el cursor
    MouseOver El puntero del ratón se posiciona sobre un enlace
    MouseOut El puntero del ratón sale de un enlace o imagen mapa
    MouseUp Se libera un botón del ratón
    Move Se mueve la ventana. Esta acción también la puede realizar = el script
    Reset Se pulsa sobre el botón reset del formulario
    Resize Las dimensiones de la ventana cambian
    Select Se selecciona una de las opciones de un cuadro combo del formulario
    Submit Se pulsa el botón submit del formulario
    UnLoad El usuario sale de la página

    Recuerde que para llamar a los eventos, se debe anteponer "on" al = nombre del evento.

    Veamos un ejemplo del evento Click:

    
       <script>
         function contar(objetoSelect){
            var seleccionadas=0
    	    for (var i=0;i < objetoSelect.options.length;i++){
    	       if (objetoSelect.options[i].selected)
    		       seleccionadas++;
    	    }
    	    return seleccionadas;
         }
       </script>
    
    
    

    El resto de código HTML es el siguiente:

    
    <BODY BGCOLOR="#FFFFFF">
    
    <form name="formulario">
     <p><b>Selecione los temas que son de su interés
     y pulse después el botón </b>
     <br><select name="temas" m=FAltiple>
       <option selected>Informática
       <option>Naturaleza
       <option>M=FAsica
       <option>Deportes
       <option>Economía
       <option>Coleccionismo
      </select>
      <p>
      <input type="button" value="=BFCuántos hay selecionados?"
      onclick="alert('N=FAmero de opciones selecionadas: ' + =
    contar(document.formulario.temas))">
      </form>
    
    

    Vamos a estudiar este ejemplo con detenimiento:

    1. Este formulario cuenta el n=FAmero de opciones de un cuadro combo. =
    2. Hemos definido un formulario llamado formulario que posee = un cuadro combo (llamado temas) y un botón.
    3. Si nos fijamos en el botón, veremos que con el evento Click = llama a la función definida previamente contar.
    4. Esta función toma como parámetro el cuadro combo (document.formulario.temas) y lo procesa, devolviendo un valor = con return

    Obsérvese también que el resultado no se escribe en un cuadro de = texto, sino que usamos alert para mostrar un mensaje en otro cuadro, que = concatena un literal y el resultado de la función contar.

    CAPTURA

    JavaScript permite definir eventos y asignarlos a objetos por encima = de los elementos donde nacen dichos eventos.

    Para definir estos eventos, los objetos window, = document y layer utilizan los siguientes métodos:

    1. captureEvents: Captura eventos del tipo que se especifique. =
    2. releaseEvents: Ignora la captura del tipo especificado.
    3. routeEvent:: Envía el evento capturado a un objeto. =

    Ahora vamos a ver la secuencia de captura, definición y = activación de un gestor de eventos:

    1. Debemos especificar el tipo de eventos que queremos capturar: =
      
           window.captureEvent(Event.CLICK [| Event.* | Event.*])
      
      

      De este modo, todos los eventos de tipo CLICK que se produzcan = serán capturados. Nótese que se pueden especificar varios eventos, siempre = separados por | que significa OR.

    2. Tras capturar dicho(s) evento(s), deberemos especificar una = función que realice las acciones asociadas a dicho evento:
      
         function evento_nombre([parámetros]){
              acciones
      	return true o false
      
      

      La función devolverá true cuando la acción sea posible = y false en caso contrario.

    3. Ya tenemos el evento capturado y la función asociada, sólo = queda asignar al evento la función especificada:
      
         window.onClick=evento_nombre;
      
      

    Tutorial Java Script - 5

    Volver a la p=E1gina del CTI

    COOKIES

    Una COOKIE es un pequeño elemento de información que se almacena = en el cliente como parte del archivo cookies.txt.

    Una cookie puede estar gestionada de tres formas:

    1. Con un CGI, programa residente en la parte servidora.
    2. Desde JavaScript, con document.cookie
    3. Con un objeto del servidor llamado client, para labores de mantenimiento.

    La forma de acceder a una cookie es con la propiedad cookie de = document, de modo que devuelve una cadena que contiene todas las cookies existentes = en nuestro sistema.

    La forma m=E1s sencilla de enviar una cookie con JavaScript es usando = la instrucción:

    
        document.cookie='cookie'
    
    

    FUNCIONES

    Para acceder a una cookie en concreto, podemos utilizar las = siguientes funciones.

    Esta función devuelve una cadena con el valor de la cookie o null = si no la encuentra:

    
        function getCookie(name){
            var cname=name + "=";
            var dc=document.cookie;
            if(dc.length>0{
    	          begin=dc.indexOf(cname);
                      if(begin!=-1){
    		    begin+=cname.length;
    	            end=dc.indexOf(";",begin);
                        if(end==-1)
    			     end=dc.length;
    		    return(dc.substring(bgin,end));
                      }
            }
         }
    
    

    Para configurar una cookie podemos utilizar la siguiente función: =

    
       function setCookie(name,values,expires,path,domain,secure){
           document.cookie=name+ "=" +escape(value) +
    	   ((expires==null)?"":";expires="+expires.toGMTString())
    	   +((path==null)?"":";path=" + path)
    	   +((domain==null)?"":";domain="+domain)
    	   +((secure==null)?"":";secure");
       }
    
    

    Para borrar una cookie usaremos una función como la siguiente: =

    
        function delCookie(name,path,domain){
    	   if(getCookie(name)){
    	      document.cookie=name+"="
    		  +((path==null)?"":";path="+path)
    		  +((domain==null)?"":";domain="+domain)+";
    		  expires=Thu,01-Jan-70 00:00:01 GMT";
    	   }
    	}
    
    

    LIMITACIONES

    Las cookies tienen unas limitaciones:

    • M=E1ximo de 300 cookies en el archivo cookies.txt. Si se excede = ese límite, se eliminan las menos recientes.
    • M=E1ximo de 4 Kb por cookie. Si se excede el límite, se trunca = la cookie dejando intacto el nombre, siempre que =E9ste no exceda los 4Kb.
    • 20 cookies por servidor o dominio. Si se excede ese límite, se = eliminan las menos recientes.

    Apuntes sobre Eclipse

    Estás en: Cristalab > Trucos > Cómo ejecutar Flex Builder en Linux Cómo ejecutar Flex Builder en Linux
    Como siempre Cristalab está al pie del cañón ofrenciéndoles lo último de lo último. Esta vez hablamos de Cómo Ejecutar Flex Builder en Linux. Aunque hay una guía y parte de soporte en la web de Wine (programa que te permite correr aplicaciones nativas de Windows en Linux), a mí no me funcionó, además sabiendo como se las gasta Eclipse en general y FlexBuilder en particular, en cuanto a consumo de RAM se refiere, prefiero correr Eclipse de forma nativa en Linux.

    Pues un blogger chino (que me corrija si no es chino, pero desconozco por completo las lenguas orientales) ha sacado un parche para Flex Builder, más bien a modificado los archivos. Así que empecemos :
    ¿Qué necesito?
    - Eclipse http://www.eclipse.org/
    - Los archivos del chino (a partir de ahora "parche")
    - Free Flex SDK (también nos sirve una instalación de Flex Builder en Windows/Mac)
    - charts.swc (es un archivo de Flex Builder, ya veremos por qué)
    - Tu distribución favorita de Linux (en mi caso Ubuntu 7.04)
    - Poca o ninguna moral (completamente necesario)

    Notas preliminares
    Usar un programa en un SO para el que no fue diseñado posiblemente incumpla el contrato/licencia de usuario.
    Modificar un programa o los archivos de un programa puede incumplir esa licencia. Usar en este caso "el parche" es posiblemente ilegal, y puede acarrear diferentes problemas según el país donde residas.
    Personalmente no he leído la licencia de uso de FlexBuilder. Si piensas que estás haciendo algo ilegal NO CONTINUES e infórmate primero.
    Pasos a Seguir
    1.- En primer lugar, instala Eclipse. Personalmente prefiero la versión comprimida de la web antes que la de los repositorios de la distribución, así sé dónde lo instalo y qué permisos le doy a cada cosa.
    2.- Descárgate el parche y descomprímelo en alguna carpeta, verás que hay 3 carpetas. Copia el contenido de esas carpetas a las correspondientes en tu instalación de eclipse.
    3.- Descárgate el Free Flex SDK o copia desde una instalación de Windows los archivos del SDK, por eso mejor descargarse la versión gratuita, es que son varias carpetas y archivos y puedes equivocarte en algo.
    4.- Abre y modifica el archivo eclipse/configuration/com.adobe.flexbuilder/felxbuilder2.xml , en particular la línea sdkpath con la ruta a donde está tu Free Flex SDK o los archivos que copiaste de Windows (mejor usen el maldito Free Flex SDK).
    Código :
    /ruta/hacia/Free/FLEX/SDK/
    4B.- Si usaste el Free Flex SDK busca en tu instalación de Windows (a que alguien te lo pase) el archivo charts.swc, cópialo en "/ruta/hacia/Free/FLEX/SDK/frameworks/libs" de forma que quede Código :

    /ruta/hacia/Free/FLEX/SDK/frameworks/libs/charts.swc
    5.- Ve a la carpeta /ruta/hacia/Free/FLEX/SDK/bin y elimina el archivo mxmlc.exe (compilador de windows, también puedes ponerle otro nombre como mxmlc.exe_backup). Cambia de nombre al archivo mxmlc (compilador Unix) por mxmlc.exe Este paso es porque los archivos están diseñados para trabajar en windows por lo que buscará el ejecutable "mxmlc.exe". En Linux, un archivo depende de su contenido y no de su extensión, por tanto cambiando mxmlc por mxmlc.exe no hacemos nada al archivo, sólo darle a Flex el archivo que buscaba.
    6.- Finalmente abrir Eclipse y elegir la Perspectiva de Flex Builder, usar el modo de prueba o ingresar el número de serie.

    NOTAS FINALES ( LEER )
    - NO funciona el modo de diseño (no se quejen, el resto de funcionalidades sí funcionan)
    - Funciona la compilación, completar código (code hints), el manager de proyectos, proyectos con Flex Data Services/Weborb, ... en general todo menos la vista de diseño.
    - No nos engañemos, es dificil hacer el diseño a través de código, hay "alternativas" como dejarle al diseñador que lo haga, usar vmware o algunas aplicaciones que recién salen como "flexible".
    - El archivo charts.swc es el encargado de mostrarnos los componentes en la vista de diseño, al no tener el archivo (en el Free SDK, como no hay vista de diseño no es necesario) Eclipse da un error de que no lo encuentra, por no tener ese error siempre presente copiamos el archivo y todos felices.
    - Al compilar dará un error de que no se encontró o la versión no coincide con una librería (NPSWF32.dll) copiando la que viene con FlexBuilder/Flash Player 9 no surgió ningún efecto, aún así, aceptando sin más podremos compilar sin problemas y ejecutar nuestra aplicación en el navegador.
    Articulo tomado de cristalab.com

    JBoss Ubuntu

    JBoss - Guía Ubuntu

    De Guía Ubuntu

    JBoss Es un servidor de aplicaciones Open Source bastante popular en el mundo empresarial. Tiene una calidad y rendimientos realmente buenos. Valiéndose de la flexibilidad de Eclipse, han creado una versión específica para desarrollar con JBoss llamada JBoss Eclipse IDE. Como siempre es tan sencilla de instalar como todas.

    Tabla de contenidos

    Instalación

    El paquete con el servidor de aplicaciones lo podemos bajar de JBoss Application Server Downloads y es necesario tener instalado Java para que funcione. Crearemos el fichero /etc/init.d/jboss:

    $ sudo nano /etc/init.d/jboss
    

    Con este contenido:

    #! /bin/sh
    #  /etc/init.d/jboss: =
    Start and stop JBoss AS
    ECHO=/bin/echo
    TEST=/usr/bin/test
    JBOSS_START_SCRIPT=/usr/local/jboss-4.0.3SP1/bin/run.sh
    JBOSS_STOP_SCRIPT=/usr/local/jboss-4.0.3SP1/bin/shutdown.sh
     
    $TEST -x $JBOSS_START_SCRIPT || exit 0
    $TEST -x $JBOSS_STOP_SCRIPT || exit 0
     
    start() {
          $ECHO -n "Starting JBoss"
          su - jboss -c "$JBOSS_START_SCRIPT =
    > /dev/null 2> /dev/null &"
          $ECHO "."
    }
     
    stop() {
          $ECHO -n "Stopping JBoss"
          su - jboss -c "$JBOSS_STOP_SCRIPT =
    -S > /dev/null &"
          $ECHO "."
    }
     
    case "$1" in
          start)
                start
                ;;
          stop)
                stop
                ;;
          restart)
                stop
                sleep 30
                start
                ;;
          *)
                $ECHO "Usage: jboss {start|stop|restart}"
                exit 1
    esac
     
    exit 0

    Y lo hacemos ejecutable:

    $ sudo chmod 755 jboss
    

    Utilizaremos este script para levantar y tirar el servidor. Puedes ver en un momento dado si está ejecuándose.

    Ahora nos resta actualizar los run levels

    $ update-rc.d jboss defaults
    Adding system startup for /etc/init.d/jboss ...
       /etc/rc0.d/K20jboss -> ../init.d/jboss
       /etc/rc1.d/K20jboss -> ../init.d/jboss
       /etc/rc6.d/K20jboss -> ../init.d/jboss
       /etc/rc2.d/S20jboss -> ../init.d/jboss
       /etc/rc3.d/S20jboss -> ../init.d/jboss
       /etc/rc4.d/S20jboss -> ../init.d/jboss
       /etc/rc5.d/S20jboss -> ../init.d/jboss
    

    Integración con Apache

    Se puede dar el caso en el que usemos JBoss y Apache en una misma máquina. JBoss usa por defecto el puerto 8080 y Apache el estándar web 80. Podemos hacer que determinadas páginas las sirva JBoss a través de Apache con lo que estarán accesibles a través del puerto 80. También es =C3=BAtil por el tema de las estadísticas: hay muchas aplicaciones que generan estadísticas a partir de los logs de Apache. Y bueno, Apache tiene miles de opciones de configuración que nos resolverán cualquier situación en la que nos veamos envueltos.

    La pieza que une JBoss con Apache es un módulo llamado mod_jk. Se encuentra en el paquete libapache2-mod-jk2, si estamos usando Apache 2 o en el paquete libapache-mod-jk si usamos Apache 1.3.

    Creamos el fichero /etc/apache2/workers2.properties donde irá la configuración del módulo:

    #
    # This is the minimal JK2 connector configuration file.
    #
    
    [logger]
    level=ERROR
    
    [channel.socket:localhost:8009]
    info=Ajp13 forwarding over socket
    tomcatId=localhost:8009
    
    # myWebApp
    [uri:/myWebApp]
    [uri:/myWebApp/*]
    

    Luego editas el fichero /etc/apache2/mods-available/jk2.conf y descomentas la última línea para que quede así:

    # To enable mod_jk2, customize workers2.properties* from
    # /usr/share/doc/libapache2-mod-jk2/examples and copy it to
    # /etc/apache2/workers2.properties. Then uncomment the following line:
    JkSet config.file /etc/apache2/workers2.properties
    

    Una vez hechas estas modificaciones hay que decirle a Apache que actualice la configuración:

    $ sudo /etc/init.d/apache2 reload
    

    Ver también

    Enlaces externos

    sábado, 10 de febrero de 2007

    Jose Miguel Lozano Garcia

    1, Fases del desarrollo de base de datos
    El diseño de la base de datos contempla las siguientes fases:


    Diseño Conceptual
    Diseño lógico
    Diseño Físico
    2. Actividades y finalidad en el modelamiento conceptual de datos, diseño de bases de datos, construcción de bases de datos


    Diseño Conceptual
    Parte de los requerimientos y su resultado es el esquema conceptual de la base de datos. Un esquema conceptual es una descripción de alto nivel de la estructura de la base de datos, independiente del software de manejador de bases de datos que se llegue a utilizar.
    Los diagramas de datos más ampliamente usados para del diseño conceptual de base de datos son los diagramas entidad-relación (ER), UML (Unified Modeling Language) o OMT (object modeling tecniques) (RIGAUX; SCHOLL y VOISARD, 2002)


    Diagrama Entidad-Relación (E-R)
    El diagrama entidad-relación se basa en "una percepción del mundo real que consiste en una colección de objetos básicos llamados entidades y relaciones entre estos objetos"
    El diagrama entidad-relación es el modelo más ampliamente usado para el diseño conceptual de bases de datos y fue introducido por Peter Chen en 1976.


    Elementos Básicos
    Los elementos básicos son entidades, interrelaciones y atributos.


    Entidades. Las entidades se definen como:
    "Una entidad es un objeto que se distingue de otros objetos por medio de un conjunto específico de atributos"


    Las entidades representan clases de objetos de la realidad. PERSONA, MUNICIPIO, PAÍS. Las entidades se representan gráficamente por rectángulos


    Relaciones. Es una asociación entre varias entidades. (Korth, 1995). Se representan por rombos


    Atributos. Representan las propiedades básicas de las entidades. Se representan por elipses.(Batini, Ceri y Navathe, 1994).
    El Diagrama E-R, muestra además propiedades de opcionalidad y cardinalidad.
    Opcionalidad u obligatoriedad. Una entidad puede tener o no relaciones de pertenencia u ocurrencia con relación a otra entidad.
    Cardinalidad. Indica el grado de relación de entre las entidades, que puede ser: Uno a Uno, Uno a muchos, o muchos a muchos.


    Diseño Lógico
    Parte del esquema conceptual y da como resultado un esquema lógico. Un esquema lógico es una descripción de la estructura de una base de datos que puede procesar el software de SGBD.


    Diseño Físico
    Parte del esquema lógico y da como resultado un esquema físico. Un esquema físico es una descripción de la implantación de la base de datos en la memoria secundaria; describe las estructuras de almacenamiento y los métodos usados para tener un acceso efectivo a los datos, por lo anterior el esquema físico se adapta al SGBD específico


    4 Que es una entidad:
    "Una entidad es un objeto que se distingue de otros objetos por medio de un conjunto específico de atributos"
    Las entidades representan clases de objetos de la realidad. PERSONA, MUNICIPIO, PAÍS. Las entidades se representan gráficamente por rectángulos


    5 Que es una Relación. Es una asociación entre varias entidades. Se representan por rombos
    Relación Uno a uno, Uno a muchos y muchos a uno.


    6. Que es Atributos. Representan las propiedades básicas de las entidades. Se representan por elipses.


    El Diagrama E-R, muestra además propiedades de opcionalidad y cardinalidad.
    Opcionalidad u obligatoriedad. Una entidad puede tener o no relaciones de pertenencia u ocurrencia con relación a otra entidad.


    8. Que es un UID. El parámetro UID indica el login para acceder al servidor SQL Server. Este ejemplo utiliza el login sa, sin embargo, es conveniente utilizar otro login, por cuestiones de seguridad.

    1 comentario:

    Jorge Eduardo Mariño Indaburu dijo...

    Muy bien Jose Miguel, excelente manejo de su blog..fuerte motivación con el nieto heredero, lo felicito. Recuerde mantener actualizado el blog con el desarrollo de talleres y guias.

    Jorge E.

    Mensaje

    Deje aca su comentario