Codigo:
<script type="text/javascript"
src="http://inacho07.googlepages.com/snow.js"> </script>
y con eso es mas que suficiente para ver como caen copos de nieve en nuestro blog para estas epocas navidenias
Bueno ya que andamos de promocion pues si aun cuentas con el XP en tu maquina pero tmb te gustan las funciones del Vista, como la barra lateral en la cual puedes instalar lo que se denomina Gadgets, hay una manera muy sencilla y el cual solo requerias instalar 3 programas, si ya se que hay otras opciones como la de google o la de yahoo, pero este no es un clonico o algo que simule la barra tipo Vista, sino que es en si la barra de Vista acoplada para el XP.
Lo interesante es que se pueden descargar mas gadgets de la pagina oficial de Windows
Cuando trabajas con gente, de este gremio en concreto (aunque es aplicable a muchos otros), te das cuenta que hay gente de todo tipo: altos, bajos, guapos, simpáticos, frios, amables, meticulosos, solitarios... Pero cuando agrupamos aún mas a la gente (en mi opinión), tenemos a dos grandes grupos...
Grupo de los "busca vidas": Es gente autodidacta, que les gusta investigar y a la vez que programan tienen preparado el google, el msdn, codeproject, codeplex... y cuando les surge una duda, consulta, investiga, busca una segunda opción, por lo general, comprueba que el método que acaba de escribir es optimo o incluso antes de escribir una funcionalidad, se da unas vueltas por la red buscando lo que tiene que hacer, (no vaya a ser que ya esté hecho), repasan y comentan el código a la vez que piensan en la siguiente tarea. Interpretan la labor de programar como un "arte", en el que cada trozo de código adquiere una parte de ellos, lo ven como una forma mas de expresión, justificando las decisiones que toman, aportando comentarios en el código (aquí he utilizado una función recursiva por que mejora el rendimiento, bal bla bla). Que, a veces, cuando llegan a casa siguen pensando en la resolución del problema, que no solo se limitan a programar, a cumplir, sino que buscan la manera de mejorar, de innovar, pero lo mas importante de todo esto, es que este tipo de programador, aporta un valor añadido fundamental en los desarrollos, la calidad.
Grupo de los "Esqueeee": Les suele caracterizar la parsimonia y la apatía, generalmente son gente desmotivada, que no les gusta demasiado su trabajo y carecen de vocación. Cuando se encuentran un problema, que no está en su guión de trabajo habitual, les identifica la frase: "Es que eso no se puede hacer" o "Es que no sé como hacerlo (pero tampoco me he molestado en buscar como)". Solamente ven líneas de código, no piensan, solo programan, están convencidos de que solo hay una manera de hacer las cosas, la mas rápida. Es gente que les tienen que dar apoyo constante al desarrollo y no mejoran su actitud con la experiencia adquirida. Generalmente es necesario explicarles el problema, orientarles y guiarles hasta la solución. Ven su trabajo como una cadena de producción, en la cual, únicamente, tienen que cumplir sus 8 horas diarias y esperar el ingreso a final de mes, sin preocuparse demasiado de la calidad del desarrollo, solo lo justo, solo cumplir "Yo hago lo que me mandan...". No dan valor añadido al desarrollo, solo programan, mecanizan instrucciones, líneas de código, limitándose al requisito 36 del documento de requisitos, ¡sin mas! y ¿para que van a hacer mas? Les van a pagar lo mismo.
Una vez definidos, a mi modo de ver, estos grupos, quiero aclarar y puntualizar que esto no es siempre así, que las cosas no son o blancas o negras, que cada persona tiene características y cualidades diferentes a otras, que cada uno somos de nuestro padre y nuestra madre y que hay muchas factores que nos caracterizan, por no hablar de los estados de ánimo, que es al final, lo que define las acciones de las personas. No quiero que nadie me ubique de racista, machista o generalista por hacer 2 grandes agrupaciones, es solo una opinión, un pensamiento, una idea que seguro... si pensáis un poco, vais a identificar dentro de estos grupos al 80% de la gente con la que trabajáis.
¡Bien! Una vez dicho esto tenemos que hacer examen de conciencia, ver donde estamos, hacia donde vamos y hacia donde queremos ir, es necesario preguntarnos que, si ahora mismo nuestros ideales, son los mismos que en nuestro primer día de trabajo... y si cuando empezamos en este mundo, nos identificábamos con un grupo, no nos estaremos desviando hacia otro (el lado oscuro de la fuerza ;) ), o incluso, si tenemos compañeros de trabajo que han cambiado de grupo ¿cual es el motivo? ¿El síndrome del funcionario?
Y para terminar... recomendar este artículo a todo oveja descarriada, que no piense que el desarrollo es un arte... ¡que corra hacia la luz!
¡¡¡Vamos a cambiar el mundo!!!
Publicado el viernes, 22 de agosto de 2008 22:52 por Miguel Sierra
WTF es el AeroShake, bueno esta madre en pocas palabras es que si tenemos varias ventanas abiertas en nuestro escritorio y para minimizar todas de un trancazo dejando solo activa la que nos interesa solo es cuestion de agarrar la barra de titulo y hacerle su respectivo shake para que las demas se minimicen a excepcion de esta, la acabo de instalar en la compu y esta interesante el efecto y le veo utilidad hasta eso.
Esta novedad es algo de lo que se deja venir con el Windows 7, haber si les late, y como una imagen vale mas que mil palabras les dejo el siguiente videito
La siguiente lista contiene los tipos (primitivos):
Tipo en C# | Tipo de .NET Framework | CLS-Compliant | Descripción | Valor por defecto |
---|---|---|---|---|
object | System.Object | Si | Tipo base para todos los otros tipos | N/A |
bool | System.Boolean | Si | 1 bit; representa true (verdadero) o false (falso) | false |
Enteros | ||||
byte | System.Byte | Si | 8 bit; entero sin signo | 0 |
sbyte | System.SByte | No | 8 bit; entero con signo | 0 |
short | System.Int16 | Si | 16 bit; entero con signo | 0 |
ushort | System.UInt16 | No | 16 bit; entero sin signo | 0 |
int | System.Int32 | Si | 32 bit; entero con signo | 0 |
uint | System.UInt32 | No | 32 bit; entero sin signo | 0 |
long | System.Int64 | Si | 64 bit; entero con signo | 0L |
ulong | System.UInt64 | No | 64 bit; entero sin signo | 0 |
Decimales | ||||
float | System.Single | Si | 32 bit; IEEE valor decimal | 0.0F |
double | System.Double | Si | 64 bit; IEEE valor decimal | 0.0D |
decimal | System.Decimal | Si | 128 bit valor decimal (1 bit signo; 96 bit valor; 8 bit exponente; 23 bit sin uso) | 0.0M |
Caracteres | ||||
char | System.Char | Si | 16 bit Caracter Unicode | \0 |
string | System.String | Si | Matriz de caracteres | N/A* |
null
. Es una nueva característica en C# 2.0. Es una instancia de la estructura System.Nullable
. Sólo pueden ser usados con los tipos por valor, ya que los tipos por referencia soportan el valor nulo. La razón para usar Tipos anulables es para superar el problema de no estar apto para determnar fácilmente si un tipo por valor está vacío o indefinido. Diferente que a los tipos por referencia (que se les puede asignar el valor null
) null
no es asignable a tipos por valor primitivos.
NOTA: Los tipos bool
anulables, en una sentencia if
, while
, for
, o alguna otra sentencia lógica o de iteraciones, será equivalente null
a false
; no lanzará un error.
Por ejemplo, el siguiente código puede causar un error en tiempo de compilación:
int varA = null;
// Error: no se puede convertir en nulo
// 'int' porque es un tipo por valor que no es anulable
Usar Tipos anulables como una solución consistente para determinar si un tipo por valor está vacío o indefinido.
Se pueden declarar Tipos anulables de las siguientes dos formas:
System.Nullablevariable; // 1era manera
T? variableName; // 2nda manera
Donde T es el tipo del Tipo anulable. T puede ser cualquier tipo por valor incluyendo struct
; pero, este no puede ser un tipo por referencia. Por ejemplo:
int? i = 10;
double? d1 = 3.14;
bool? bandera = null;
char? letra = 'a';
int?[] arr = new int?[10];
Miembors fundamentales:
Propiedades | |
---|---|
HasValue | Pública de sólo lectura. El tipo es bool . True si la variable no contiene un valor nulo. |
Value | Pública de sólo lectura. El tipo es el tipo indicado. Si HasValue es true , entonces Value contiene un valor significante. Si HasValue es false , accediendo a Value lanzará una InvalidOperationException . |
Métodos | |
GetValueOrDefault | Devuelve el valor del objeto o el valor predeterminado (en el caso de que el valor sea null ) del objeto o del especificado en el parámetro opcional T. |
Para probar los tipos anulables:
int? x = 10;
if (x.HasValue)
{ System.Console.WriteLine (x.Value); }
else
{ System.Console.WriteLine ("Indefinido"); }
// -o-
if (x != null)
{ System.Console.WriteLine (x.Value); }
else
{ System.Console.WriteLine ("Indefinido"); }
int? NumeroN = null;
int Numero = NumeroN.GetValueOrDefault(); // El valor predeterminado es 0
NumeroN = 146;
Numero = NumeroN.GetValueOrDefault(); // El valor es 146
La necesidad de este planteo sirve para interactuar con bases de datos SQL, las cuales sus celdas pueden contener también un valor null
.
Si querés especificar tu propio valor predeterminado, puedes usar el operador ??. El operador ?? devolverá el valor de la declaración de la izquierda si este no es nulo y si lo es devolverá el valor dado del lado derecho del ??.
int? NumeroN = null;
int Numero = NumeroN ?? -1; // Numero es -1
NumeroN = 146;
Numero = NumeroN ?? -1; // Numero es 146
Otra posibilidad para obtener el valor es usar la propiedad Value
. Esta propiedad lanzará una excepción System.InvalidOperationException
si el valor es null
. Para evitar esta excepción, puedes, también, usar la propiedad HasValue
que devuelve un valor bool
para comprobar si el valor es nulo o no. Si el valor de retorno de HasValue
es false
, entonces el valor de la variable es null
.
A la hora de realizar cualquier tipo de conexión en una aplicación de .Net, tendríamos que evaluar nuestro provider, si no usamos ninguno de estos dos motores de base de datos, teníamos que ver si el fabricante, o algún tercero ofrecen un provider para el mismo. Como última elección, pero realmente es la última que se debería tomar, un proveedor de OLEB y ODBC.
Algo a considerar, si trabajos con SQL Server 6.5 o inferior, debemos usar OLEDB, ya que SqlClient no le brinda acceso a esas versiones.
Quería expresar aquí algunas reflexiones sobre las tecnologías, su evolución y el estrés que a mi modo de ver causa en muchas ocasiones.
Hay muchas empresas tecnológicas grandes que me sorprenden por sus capacidades de crear y plasmar ideas de cara al resto del mercado informático y tecnológico.
Sin embargo, de todas ellas la que más me alucina es Microsoft. Mucha gente estará en contra de Microsoft por las razones que sean, y cada uno pensará lo que quiera de esta empresa, pero creo que es innegable el aceptar que es una empresa que no para de innovar (I+D) y de crear y crear y crear.
Sin embargo, no es menos cierto a mi modo de ver, que en el caso de Microsoft tanto avance y tanta creación genera de fondo un estrés continuado que a algunos les podría incluso ocasionar un estrés postraumático.
Ahora que asoma en el horizonte Microsoft Visual Studio 2008, Microsoft .NET Framework 3.5 y unas cuantas novedades más que están a punto de llegar, cuando me ha tocado dar un curso de .NET me encuentro siempre con la misma expresión... "¿de qué nos va a servir aprender .NET Framework 2.0 (por ejemplo) si la próxima versión está a punto de salir al mercado?". "¿Para qué aprendemos esto si quedará obsoleto en seguida?".
Aún hoy existen muchas empresas y personas que siguen estancadas en el desarrollo de aplicaciones anteriores a la tecnología .NET, quizás porque usan otra tecnología de desarrollo diferente, porque no tienen la necesidad de cambiar, porque no conocen las ventajas que le ofrece .NET u otra tecnología actual, o porque simplemente no sabe desarrollar en .NET.
Sobre las empresas o personas que no tienen la necesidad de cambiar, poco que decir. Muchas de las que he visto utilizan Microsoft Visual Basic 6.0 y lo que han hecho hasta ahora resuelve sus necesidades. Ante este panorama, siempre digo lo mismo... "¿para qué cambiar algo que no necesita ser cambiado y que funciona perfectamente?". Un cambio queda justificado siempre que la inversión del mismo se vaya a rentabilizar. En caso contrario, hacerlo por moda o porque me mola más es a mi modo de ver y con perdón, una tontería.
Ante el último grupo de empresas o personas, las que no saben desarrollar con .NET pero que sí están llamadas a dar ese salto, es también frustante saber que Microsoft .NET Framework ha evolucionado en demasía en los últimos años. Microsoft .NET Framework 1.0, Microsoft .NET Framework 1.1, Microsoft .NET Framework 2.0, Microsoft .NET Framework 3.0, Microsoft .NET Framework 3.5,... de hecho muchas personas se frustan de sólo pensar (o creer) que cuando conozcan una versión de Microsoft .NET Framework, habrá otra a punto de aparecer que sustituirá a la anterior (ojo con la palabra sustituirá porque muchos sabemos que no es cierta).
Por eso, muchos desconocen que la evolución de .NET Framework no es una evolución típica de nueva versión suprimiendo lo existente y sacando algo completamente nuevo que sustituya lo anterior. Siempre puede haber ajustes menores que implican la restitución de aspectos de un Framework por otro, pero la evolución de una versión de Microsoft .NET Framework a otra lleva siempre añadidos, casi nunca restitución o suprimir cosas. Es decir, aunque aprendamos Microsoft .NET Framework 2.0 y aparezca otra versión posterior, el concepto y los conocimientos nos seguirán sirviendo al 100%. Lo único que habrá que hacer es aprender lo nuevo, lo añadido a un nuevo Framework.
De todos los modos, el avance tecnológico en .NET Framework es continuado y muchas personas se agotan aunque vengan de una versión inmediatamente anterior.
Que duda cabe que a los que nos apasiona las tecnologías nos encanta reciclarnos y aprender de forma continuada. Nunca estaremos aburridos y siempre habrá algo nuevo que aprender, es un reto y motiva, somos así, un poco masocas, un poco bichos raros, pero es lo que hay. Sin embargo, no es menos cierto que aún siendo así, a veces uno piensa... "basta ya, necesito oxigenarse y descansar".
Ante tanta evolución, uno termina estresándose en algún momento. Necesita tomarse 15 días ó 1 mes sabático y tomar aire. El estrés que genera tanta evolución tan continuada y el no parar de aprender, investigar, probar, etc, hace que uno necesite hacer un break en algún momento.
El aprendizaje es por su parte un proceso cíclico, se repite una y otra vez, pero muchas empresas ven en este proceso un problema añadido. Reciclarse tiene un coste y no asumen que los costes se realicen en fases tan cortas de tiempo, ya que eso implica que apenas puedan amortizar las inversiones realizadas. De esta manera, hay empresas que ahora mismo están empezando a adentrarse en nuevas tecnologías como Microsoft .NET Framework y otras que esperan a que aparezca la última versión queriendo estar a la última.
Las empresas que empiezan a entrar en el mundo de una nueva tecnología como Microsoft .NET Framework, ven inicialmente la inversión justificada, pero al ver que salen nuevas versiones de un producto, ven siempre que esas inversiones son innecesarias porque no estarán casi nunca a la última. La línea que divide aquí el haber hecho bien con el paso tomado y el sentirse timado (por decirlo de alguna forma aunque suene un poco dura) es muy estrecha. Y en este caso también, aparece el estrés.
A mi modo de ver, la evolución de Microsoft .NET Framework es muy agresiva y muy rápida. He discutido esto cien millones de veces, en cien millones de foros dintintos, incluso con gente de Microsoft Corp. (Redmond). Prácticamente salimos a una nueva versión cada año o cada año y medio, y aunque siempre es cuestión de añadidos nuevos al Framework anterior, no es menos cierto creo yo, que lejos de hacer una carrera continua, hacemos carrera continua y pequeños y rápidos sprints, y esos pequeños y rápidos sprints llegan a veces a agotar aunque solo sea mentalmente.
La vida informática es divertidísima, la tecnológica es fantástica, me apasiona, los retos me motivan, las ganas por aprender calman mis ansias de conocimiento, pero a veces me estresa. No es el caso actualmente pero a veces reconozco que una paradita viene de perlas. Cada uno busca sus truquitos (consolas, salidas al campo, hacer deporte, ir al cine,...).
¿Tienen en cuenta estos factores las empresas informáticas actuales y sus departamentos de RRHH?, ¿debemos actuar como robots y ser inertes a estos posibles agotamientos mentales?, ¿soy un bicho raro y el único que se estresa a veces por tanto avance tecnológico?.
Sea como sea, el caso es que cuando he tenido la oportunidad de hablar con algún cliente de temas parecidos, la mayoría termina sacando a la luz que a veces tanto avance le agobia y pasa de invertir en tecnología porque siempre está cambiando. Lo cierto es que la tecnología cambia porque la tecnología está hecha para satisfacer fundamentalmente las necesidades de las personas, y las necesidades suelen cambiar a medida que el ser humano avanza en el progreso, en el día a día.
Publicado el domingo, 09 de diciembre de 2007 10:55 por Jorge SerranoInstalación de Windows Vista
Aparece el aviso legal de Windows Vista, lo leemos y si deseamos aceptamos las condiciones.
Debemos seleccionar el modo de instalación. Al ser una instalación nueva, seleccionamos la opción Custom
Cuando termina la instalación de los ficheros se reinicia la instalación.
Cuando empieza el reinicio de Windows Vista aparece el mensaje diciendo que Windows Vista se está preparando ya que es la primera vez que se inicia.
Debemos asignar un nombre al pc (podemos dejar el que deja Windows Vista por defecto)
Windows Vista permite utilizar la protección que incorpora por defecto, utilizando las recomendaciones que ofrece.
Ya hemos instalado Windows Vista con éxito
Cuando iniciamos por primera vez, Windows Vista necesita un buen rato para preparar la configuración para el usuario creado, necesita crear todo el perfil y todo su escritorio, así que mientras lo hace nos muestra la siguiente pantalla:
Ya se ha creado el perfil del usuario y ya por fin, nos encontramos con este escritorio:
Ahora solamente nos resta configurarlo a nuestro gusto e instalar el software que necesitemos.
El Control de Cuentas de Usuario es un sistema de control sobre los derechos de los usuarios. Funciona según el principio de limitación de derechos:
Entre las acciones que no entran en la lista de derechos del “Usuario Estándar”, se encuentran la instalación de programas y controladores (drivers), la creación de ficheros en los directorios del sistema operativo, la modificación de la configuración del sistema, etc.
El problema de esto es que cualquier cambio que vallamos a hacer en el sistema que influya en todos los usuarios nos pedirá una confirmación y esto puede resultar algo molesto, gracias a dios se puede desactivar. Para desactivarlo vamos al panel de control y hacemos clic en Cuentas de Usuario y Protección Infantil, Cuentas de Usuario y luego Activar o Desactivar el Control de Cuentas de Usuario. Solo debemos desmarcar la casilla de verificación (el visto) y aceptar, nos pedirá que reiniciemos, y el centro de Seguridad nos avisara de lo que hemos hecho.
Este sistema no es una gran innovación en seguridad puesto que la mayoría de las veces el usuario pulsara continuar a ciegas. Aunque aporta cierta seguridad adicional y evita que usuarios y algunos virus modifiquen opciones del sistema sin el previo aviso y posterior confirmación del usuario.
Por eso no se recomienda la desactivación de este servicio si no tenemos cierta experiencia en informática. Ante la duda déjalo como esta y intenta no darle siempre a si sin más.
Si eres usuario frecuente de programas de mensajería instantánea como Messenger, te habrás dado cuenta que existe un virus que manda automáticamente a todos nuestros contactos enlaces o archivos con virus.
MSNCleaner es un programa totalmente gratuito que analiza nuestro ordenador en busca de todo tipo de malware que se propaga a través de MSN Messenger y Windows Live Messenger, entre otros.
El uso es muy sencillo, no requiere instalación. Se encuentra en español y corre bajo Windows 2000, Windows XP y Windows Vista.
Descargar: MSNCleaner 1.6.3
WOW quiere decir Windows On Windows
Dentro de las tecnologías WOW se pueden mencionar algunas:
NET Framework 3.5: Es un marco de trabajo que Microsoft desarrolla para hacer más productivo el ambiente de desarrollo de software en donde ofrece habilidades para aplicación en diferentes arquitecturas , se compone de un entorno de ejecución (CLR), una biblioteca de Clases Base (BCL) como por ejemplo, Windows Presentation Foundation, Communications y Workflow, Datos, XML y LINQ,ASP.NET.
XNA Game Studio 2.0: Es una plataforma de desarrollo para Windows y XBOX 360 destinada a desarrolladores aficionados a los videojuegos, el cual permite crear, desarrollar y combinar productos para poder tener un excelente videojuego, esta versión ya trabaja con Windows Vista, y su característica primordial es el soporte de multijugador, y se integra a Visual Studio 2005.
LINQ: Es un Lenguaje Integrado de Consultas (Language Integrated Query) que se incluye en el nuevo Visual Studio 2008, donde permite reducir la complejidad de acceso a la información, en donde el enfoque general es facilitar las consultas a fuentes de información y no solo a los datos relacionales o XML, si no a consultas orientadas a objetos, este lenguaje trabaja bajo operadores de consultas, expresiones lambda, entre otros.
Silverlight: Es la plataforma de desarrollo web de la siguiente generación de aplicación ricas para crear y mejorar las experiencias de usuario, esta tecnología permite un modelo de programación flexible que soporta AJAX, VB, C#, Phyton, Ruby e integra aplicaciones Web existentes como PHP, ASP.NET, además de incorporar multimedia, video, animaciones, interactividad e interfaces de usuario sensacionales. Une a programadores y diseñadores con un lenguaje de etiquetas para aplicaciones llamado XAML, con los productos de Microsoft Expression y Visual Studio 2008.
Microsoft AJAX: Se compone de un grupo de tecnologías ya existentes como JavaScript, DOM, XML, entre otros, en donde Microsoft lo implementa llamándolo ASP.NET AJAX, mediante una serie de controles los cuales van a permitir tener una experiencia de usuario en web interactiva, y sin recargas de páginas completas como existía anteriormente, además de poder combinar un manejador de scripts y controles extender llamados AJAX ControlToolkit.
Microsoft Robotics: Una tecnología que sin duda tiene un futuro por delante, ya que permite programar y controlar una gran variedad de dispositivos robóticos de gran cobertura a nivel mundial, mediante un ambiente visual llamado Visual Programming Language, y poder desarrollar sus propios servicios para diferentes operaciones en Visual Studio.
Gadgets: Son mini aplicaciones desarrolladas bajo la plataforma de Windows Vista, que implementan diferentes operaciones desde un reproductor multimedia, reloj, tiempo hasta poder interactuar con un dispositivo móvil, se caracterizan por estar situados en la sidebar de la PC.
Microsoft Expression: Un conjunto de herramientas para diseño, web, y programación, que permiten la integración con Visual Studio y crear aplicaciones de gran calidad de presentación para los usuarios finales, Microsoft Expression se compone de Expression Design, Expression Media, Expression Encoder, Expression Blend y Expression Web.
Microsoft Popfly: Es diversión, una fácil manera de construir y compartir Gadgets, Mashups, y páginas web, una serie de herramientas visuales online en donde puede hostear, compartir, calificar e incluso mejorar aplicaciones ya existentes por usuarios de Popfly.
ASP NET 3.5: Una nueva extensión para Visual Studio 2008, que permite tener nuestros controles para Silverlight, manejo de datos con LINQ, integración con AJAX, etc.
Visual Studio 2008: El nuevo entorno de desarrollo que brinda Microsoft para creación de aplicaciones con un excelente performance, arquitectura, y funcionalidad. Sus características es tener la posibilidad de escoger entre múltiples versiones del framework, debugging, integración con varias tecnologías, desarrollo de dispositivos móviles, y más.
Windows Presentation Foundation: Nueva generación de presentación para Windows, en donde se incluye el lenguaje XAML para la interacción entre diseño y programación, además de poder manejar objetos en 3D, animaciones, multimedia con los lenguajes de programación de .NET, como lo es VB,C# entre otros.
Windows Communication Foundation: Clases que permiten una unificación de tecnologías que hacen posible el manejo de servicios bajo diferentes protocolos, teniendo la gran ventaja de manejar interfaces, Uri, NetRemoting, etc.
Windows CardSpace: Tecnología que permite manejar cuentas de correos, contraseñas, usuarios mediante una tarjeta o identidad única, el cual va a reducir que tenga que estar recordando todos sus usernames y passwords en cientos de páginas web, tan solo con hacer un login escogiendo la tarjeta desde la PC.
Windows Workflow: Una manera de programación mediante flujos de trabajo, el cual cuenta con un diseñador visual mediante diagramas de flujo que permite la creación de aplicaciones realmente funcionales.
Idiomas: | Español. |
Productos: | .NET,Visual Studio Team System. |
Audiencia(s): | Developer. |
Duración: | 120 Minutos |
Fecha de Inicio: | martes, 06 de mayo de 2008 19:30 Madrid, París |
Los métodos son "acciones" que realizan nuestras clases, los métodos pueden recibir parámetros. De los cuales cuando se declaran los métodos pueden regresar o no un valor.
Declaramos un método en la clase, este lo posicionamos debajo de la ultima propiedad declarada
public
string Manejado(int recorrido)
{
string Resultado;
_Millas += recorrido;
Resultado = "El " + _Modelo + " de la " + _Marca + " lleva recorrido " + _Millas + " Millas";
return Resultado;
}
En el programa princial, podemos observar que al momento de poner el nombre de objeto micarro al poner el punto, podemos observar que ya despliega en el intelisens el metodo Manejado, esto con una figura que parece un borrador color rosa, es asi como diferencian los metodos de las propiedades
Variables de Alcance (Variable Scope)
Las variables de alcance o como son nombradas en Ingles "scope" indican que esas variables solo pueden ser usadas en en contexto o bloque del codigo en donde fueron declaradas o definidas o en cualquier parte de un sub-bloque que han sido definidas en el bloque proncipal.
Ejemplo:
Agregamos un segundo boton a la forma, y se le da doble click para que nos mande a la porcion de codigo del button2 click, si intentamos accear a la variable MiCarro, ni siquiera lograra aparecer en el Intellisenes, como aparece en el button1_Click , intententalo poniendo MiCarro en el button2_Click
Imagen en el button1_Click
Imagen en el button2_Click
Que es lo que sucede???, por que en el button2_Click, no me permite poner MiCarro en dicho evento, bueno esto es por que la variable MiCarro no tiene el Alcance en dicho bloque de codigo, osease que dicha variable solo sirve y solo causa efecto en el button1_Click, pero.. como puedo usar esa misma variable MiCarro en todo mi codigo y no solo exclusivo para dicho evento, es decir, que esa variable me sirva tanto para el evento button1_Click, button2_Click y para cualquier evento que se genere despues.
Bueno esa declaracion de
CCarro MiCarro = new
CCarro();en lugar de ir en button1_Click se declararia donde cierra la ultima llave de public Form1()como muesta la imagen
Ya con esto estas indicando que la instancia MiCarro tiene alcanze a todos lo eventos que pertenezcan a la Form1.
Deja tus dudas y tus comentarios en el C-Box
Gracias
Recordatorio de nuestro taller mensual el dia de manana
El evento se llevara a cabo el dia 4/19/2008 a las 10:30 AM en ITESM Campus Juarez. Edificio CITE 3er Piso. CEC Aula 2.. El tema a tratar sera Mantenimiento a una tabla de SQL con el control de datos WebGrid y sera impartido por Horacio Navarro
El siguiente es un resumen del Evento:
Tema: Mantenimiento a una tabla de SQL con el Control de Datos WebGrid en ASP.NET 2.0, usando ADO.NET y SQL2005.
1.- Repaso de ADO.NET (SQLAdapter y Datasets)
2.- Repaso de SQL (Stored Procedures)
3.- Eventos especiales del WebGrid
4.- Aplicando lo anterior.
Visita nuestro sitio www.comunidadnetjuarez.org Para mas detalles
Muchos usuarios pedían un SP1 (Service Pack 1) para Windows Vista, por suerte llegó para todos los idiomas y colores. Al momento que se descargaba SP1 en español e intentamos instalarlo en Windows Vista en inglés no nos dejará, esta información es para usuarios con varios ordenadores con Windows Vista que sean de diferentes idiomas.
Para no preocuparnos en eso, Microsoft ha sacado cuatro paquetes diferentes muy completos para cada configuración. Por un lado la instalación para Windows Vista 64Bits y la instalación para Windows Vista 32Bits. Por otro lado, un CD en formato ISO con la instalación del SP1 para Windows Vista 32Bits. Y finalmente un DVD en formato ISO que contiene tanto la instalación del SP1 para Windows Vista 64Bits como para el de 32Bits.
Descarga: Instalación para Windows Vista 64Bits
Descarga: Instalación para Windows Vista 32Bits
Descarga: CD Con Instalación para Windows Vista 32Bits
Descarga: DVD Con Instalación para Windows Vista 32/64Bits
Los pasos para crear una clase son los siguientes: primero se crea un proyecto que para este ejemplo se creo por medio de una winform; la cual se le agregara un botón que se llamara button1 enseguida se agrega una clase por medio del menu:
Este también se puede desde el Solution Explorer dándole clik derecho o con la combinación de teclas Shift + Alt + C, una vez creada la clase la guardamos con el nombre CCarro generando el siguiente código.
----------------------------------------------------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace leccion_Clases
{
class
CCarro
{
}
}
----------------------------------------------------------------------------------------------------------------
Una vez que se ha nombrado la clase se prosigue en el main crear la instancia de la clase por la cuales se va accesar a la clase, en el siguiente ejemplo lo hacemos en el evento button1_Click
De la siguiente manera
----------------------------------------------------------------------------------------------------------------
private
void button1_Click(object sender, EventArgs e)
{
CCarro MiCarro = new
CCarro();
}
----------------------------------------------------------------------------------------------------------------
Al momento de genera este codigo se esta creando un objeto de la clase CCarro, el nombre del objeto es MiCarro,el cual contendra todo lo que son propiedades, metodos que se generen CCarro.
PROPIEDADES
Las propiedades son los atributos de nuestra clase, cada instancia de la clase(los objetos)pueden llegar a tener diferentes valores en las propiedades.
En si las porpiedades maneja 2 grandes coneptos muy grandes atributos y propiedades
Los atributos: Son las variables para accesar a las propiedades
Propiedades GET y SET: Son las maneras en que se accesan a modificar o leer los datos
----------------------------------------------------------------------------------------------------------------
class
CCarro
{
//Atributos
private
string _Marca;
private
string _Modelo;
private
int _Millas;
//Propiedades
public
string Marca
{
get { return _Marca; }
set { _Marca = value; }
}
public
string Modelo
{
get { return _Modelo; }
set { _Modelo = value; }
}
public
int Millas
{
get { return _Millas; }
set { _Millas = value; }
}
}
----------------------------------------------------------------------------------------------------------------
Una vez que se han creado los atributos por los cuales se tendrán acceso a las clases, y también las propiedades, a continuación se presentara como es que se desempeñan dentro del evento del botón.
Como una imagen vale mas que mil palabras aquí se puede observar como actua el Intelisens el cual despliega los eventos por default de cualquier clase asi como las propiedades que se han creado en la clase (Marca, Millas, Modelo) estas se pueden identificar por el dibujo que aparece como una mano sosteniendo una ventana, he ahí las propiedades y los métodos son aquellos que se ve como un borrador color rosita. Una vez que se ha visto como despliega las propiedades el objeto que MiCarro, se empiezan a asignar valores.
----------------------------------------------------------------------------------------------------------------
private
void button1_Click(object sender, EventArgs e)
{
CCarro MiCarro = new
CCarro();
MiCarro.Marca = "Nissan";
MiCarro.Modelo = "Tsuru";
MiCarro.Millas = 2000;
}
----------------------------------------------------------------------------------------------------------------
En este punto se ha demostrado como se crea una clase y como se comportan los atributos y las propiedades.
Y para que quede mas claro el ejemplo, crear un punto de interrupción y hacerle un debug.
Si tienes alguna duda en el código presentado deja tu comentario y se contestaran las dudas lo mas pronto posible
Caracteres
Que caracteres se usan en C#
· LETRAS : incluyendo acentuadas, mayúsculas, minúsculas
· DÍGITOS
· CARACTERES UNICODE
· CARACTERES ESPECIALES
· SECUENCIAS DE ESCAPE
TIPOS
· TIPOS ENTEROS: sbyte,short,int,long,byte,ushort,unit,ulong y char
· TIPOS REALES : float,doublé, decimal
· ENUMERADOS: Son tipos definidos por el usuario, para ser uso de este tipo se utiliza la palabra reservada enum
Ejemplo:
LITERALES
Las literales pueden ser enteros, real, booleanos, carácter, cadena de caracteres y valoes null, esto entra en el espacio de nombres del .NET System.String
PALABRAS CLAVES O RESERVADAS
C# cuenta con palabras que son propias del compilador, y como siempre en la escuela nos decían que no podríamos usar como parte de nuestros programa tal es el caso de los if, else, case, class, while, etc. Con C#, podemos usar las palabras reservadas como una variable cualquiera, como logramos esto anteponiendo un @, por ejemplo
DECLARACIÓN DE CONSTANTES O STATICS
Las constantes son declaraciones que nos permiten asignar el valor a una variable para que cuando se ejecute el programa dicha variable conserva el valor inicial, un ejemplo de esto es que si declaramos una variable constante para el PI = 3.1416, cada vez que la usemos no hay necesidad de poner 3.1416, con solo poner PI, el compilador sabes que es el uso de una constante
OPERADORES
Son símbolos que indican como manipular los datos los cuales son los: aritméticos, relacionales, lógicos, unitarios, a nivel bits, de asignación y operadores condicionales.
Los operadores lógicos son los siguientes
&& - AND, la evaluación de este operador siempre va ser true siempre y cuando los dos operadores a evaluar sean verdaderos.
|| - OR, la evaluación de este operador siempre va ser true siempre y cuando los dos operadores a evaluar al menos uno se sean verdadero.
! - NOT, Invierte el valor de los operadores evaluados, si es true se vuelve false y viceversa.
Las operaciones lógicos siempre son de tipo booleanas ture y false
Operadores de Asignación:
++ Incremento
-- Decremento
= Asignación
*= Multiplicación mas asignación
/= División mas asignación
%= modulo mas asignación
+= Suma mas asignación
-= Resta mas asignación
<<= Desplazamiento a la izquierda mas asignación.
>>= Desplazamiento a la derecha mas asignación,l
Los operadores a asignar deben ser del mismo tipo o en su defecto tener que realizar una conversión para que realiza una asignación correcta
PRIORIDAD Y ORDEN DE EVALUACIÓN
El compilador de C# tiene designado cuales signos operadores va tener mas prioridad y como se van a ejecutar si en una expresión se encuentran varios signos, a continuación se describen los signos y su prioridad poniendo primero el que es de mayor a menor.
OPERADORES
1. () []
2. ! ++ --
3. * / %
4. + -
5. < <= > >=
6. &&
7. ||
8. = += /= ….
Todos los operadores son evaluados de izquierda a derecha, espero sus comentarios
Copyright 2009 Aprendiz de Tecnologias. Designed by Padd Solutions | Rezcore | Converted by Blogger Templates