<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8298967677235020644</id><updated>2026-06-24T22:05:23.650-04:00</updated><category term="c#"/><category term="postgresql"/><category term="symfony2"/><category term="ubuntu MATE"/><category term="web services"/><category term="windows 10"/><category term=".net"/><category term="GIT"/><category term="GitHub"/><category term="Interoperabilidad"/><category term="Net3.5"/><category term="RDP"/><category term="REST"/><category term="bolivia"/><category term="conexion bd"/><category term="developer"/><category term="doctrine"/><category term="driver"/><category term="entel"/><category term="entity"/><category term="error"/><category term="escritorio remoto"/><category term="framework"/><category term="interoperabilidad java .net"/><category term="java"/><category term="mapeo"/><category term="pdo_pgsql"/><category term="php"/><category term="prefijos de celular"/><category term="proteccion datos personales"/><category term="remotear"/><category term="seguridad"/><category term="servicios"/><category term="servidor Git"/><category term="tigo"/><category term="ubuntu"/><category term="viva"/><category term="vs code"/><category term="vscode"/><title type='text'>Christian Vega</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>30</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-1802328822795910454</id><published>2025-10-26T16:45:00.000-04:00</published><updated>2025-10-26T17:40:15.148-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="bolivia"/><category scheme="http://www.blogger.com/atom/ns#" term="proteccion datos personales"/><category scheme="http://www.blogger.com/atom/ns#" term="seguridad"/><title type='text'>Guía Práctica: Protege tus Datos en el Mundo Digital</title><content type='html'>Cada día compartimos información personal en internet: compramos en línea,
usamos redes sociales, realizamos transferencias bancarias y guardamos datos en
aplicaciones. Pero, ¿realmente sabemos qué estamos compartiendo y con quién?
Esta guía te ayudará a navegar el mundo digital de forma segura y consciente.&amp;nbsp;&lt;div&gt;&lt;br /&gt;&lt;div&gt;📱
Redes sociales&lt;/div&gt;&lt;div&gt;&lt;b&gt;Configura tu privacidad correctamente&lt;/b&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;Revisa regularmente la configuración de privacidad de tus redes sociales
(Facebook, Instagram, TikTok, WhatsApp)&amp;nbsp;&lt;/div&gt;&lt;div&gt;Decide quién puede ver tus
publicaciones: ¿público, amigos o solo tú?&amp;nbsp;&lt;/div&gt;&lt;div&gt;Desactiva la geolocalización
automática en tus fotos y publicaciones&amp;nbsp;&lt;/div&gt;&lt;div&gt;Piensa antes de publicar&amp;nbsp;&lt;/div&gt;&lt;div&gt;Evita compartir
información sensible como tu dirección exacta, número de cédula de identidad,
datos bancarios o boletos de avión, vouchers o entradas de
conciertos/cine/teatro.&amp;nbsp;&lt;/div&gt;&lt;div&gt;Las fotos de tus hijos requieren especial cuidado: no
reveles nombres completos, ubicaciones de escuelas o rutinas diarias Recuerda:
lo que publicas hoy puede permanecer en internet para siempre&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Administra tus conexiones&lt;/b&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;Acepta solicitudes de amistad solo de personas que realmente conoces Revisa
periódicamente tu lista de seguidores y elimina perfiles sospechosos&amp;nbsp;&lt;/div&gt;&lt;div&gt;Ten cuidado
con los juegos y cuestionarios que piden acceso a tu perfil o solicitan
información adicional puedes verificar sitios antes de acceder en
https://www.virustotal.com/ para ver la reputación del mismo o si es un sitio
malicioso.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;⚠️ Consecuencias de Compartir Excesivamente&amp;nbsp;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Robo de identidad:
Delincuentes pueden usar tu información para suplantar tu identidad&amp;nbsp;&lt;/div&gt;&lt;div&gt;Fraudes
financieros: Datos personales pueden ser utilizados para solicitar créditos a tu
nombre&amp;nbsp;&lt;/div&gt;&lt;div&gt;Acoso y extorsión: Información privada compartida puede ser usada en tu
contra&amp;nbsp;&lt;/div&gt;&lt;div&gt;Pérdida de oportunidades: Empleadores y instituciones educativas revisan
perfiles en redes sociales&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;https://www.facebook.com/privacy/policy/?locale=es_LA&amp;nbsp; https://www.youtube.com/intl/es_us/howyoutubeworks/our-commitments/protecting-user-data/&amp;nbsp; https://www.tiktok.com/legal/page/eea/privacy-policy/es 🛒 Compras en Línea y
Marketplaces&amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Verifica antes de comprar&lt;/b&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;Compra solo en sitios web seguros (busca el candado 🔒 y &quot;https&quot; en la URL)&amp;nbsp;&lt;/div&gt;&lt;div&gt;Investiga la reputación del vendedor en marketplaces como Mercado Libre,
Facebook Marketplace o páginas de comercio local, valida que la cuenta que lo
publica tiene tiempo, varios contactos, es activo en su feed, tiene varias fotos
reales, interactúa de ida y vuelta con al menos más de 5 contactos.&amp;nbsp;&lt;/div&gt;&lt;div&gt;Lee las
políticas de privacidad y términos de uso antes de crear una cuenta&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Protege tu información de pago&lt;/b&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;Nunca compartas fotos de tu tarjeta de crédito o débito por WhatsApp o redes
sociales&amp;nbsp;&lt;/div&gt;&lt;div&gt;Usa métodos de pago seguros con protección al comprador Activa
notificaciones de transacciones en tu banco para detectar movimientos
sospechosos&amp;nbsp;&lt;/div&gt;&lt;div&gt;Considera usar tarjetas virtuales o prepagadas para compras en línea&amp;nbsp;&lt;/div&gt;&lt;div&gt;Ten tu tarjeta deshabilitada y solo habilítala cuando requieras hacer una compra
es engorroso pero ayuda a que no te debiten sin estar enterado ya que el proceso
de devolución/cancelación suele ser tedioso.&amp;nbsp;&lt;/div&gt;&lt;div&gt;Minimiza la información compartida, proporciona solo los datos estrictamente necesarios para la compra&amp;nbsp;&lt;/div&gt;&lt;div&gt;Usa
direcciones de entrega alternativas cuando sea posible (oficina, punto de recojo
o directamente oficina de correos)&amp;nbsp;&lt;/div&gt;&lt;div&gt;No aceptes solicitudes de amistad de
vendedores que quieren acceder a tu perfil completo o te piden información
adicional que no es necesaria como fotocopia de cedula de identidad.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;⚠️
Consecuencias de no proteger tus datos de compra&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Clonación de tarjetas : Tus
datos bancarios pueden ser copiados y usados en compras fraudulentas&amp;nbsp;&lt;/div&gt;&lt;div&gt;Estafas y
productos falsos: Vendedores no verificados pueden tomar tu dinero sin entregar
productos, varios vendedores suelen pedir pago por adelantado del 50% y luego
desaparecer&amp;nbsp;&lt;/div&gt;&lt;div&gt;Spam y phishing: tu correo y teléfono pueden ser vendidos a empresas
que envían publicidad no deseada o intentan estafarte&amp;nbsp;&lt;/div&gt;&lt;div&gt;Pérdidas económicas:
Transacciones no protegidas pueden dejarte sin dinero y sin producto&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;💰
Billeteras Digitales, Criptomonedas y Transferencias&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Seguridad en billeteras digitales&lt;/b&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;Activa la autenticación de dos factores (2FA) en todas tus aplicaciones
financieras&amp;nbsp;&lt;/div&gt;&lt;div&gt;Nunca compartas tus códigos PIN, contraseñas o códigos de
verificación con nadie&amp;nbsp;&lt;/div&gt;&lt;div&gt;Usa contraseñas únicas y complejas para cada aplicación
(combina letras, números y símbolos)&amp;nbsp;&lt;/div&gt;&lt;div&gt;Mantén actualizada la aplicación de tu
billetera digital Criptomonedas y Bitcoin con precaución&amp;nbsp;&lt;/div&gt;&lt;div&gt;Guarda tus claves
privadas en lugares seguros y nunca las compartas&amp;nbsp;&lt;/div&gt;&lt;div&gt;Usa billeteras de
criptomonedas reconocidas, con buena reputación y que ya tengan mas de un año en
el mercado&amp;nbsp;&lt;/div&gt;&lt;div&gt;Desconfía de &quot;oportunidades de inversión&quot; que prometen ganancias
rápidas o extraordinarias&amp;nbsp;&lt;/div&gt;&lt;div&gt;Verifica dos o tres veces las direcciones de billetera
antes de enviar fondos (las transacciones son irreversibles)&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Tus derechos: conocerlos es protegerte&amp;nbsp;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Como usuario digital, tienes derechos sobre tus datos
personales, puedes solicitar a cualquier empresa que te
informe qué datos tuyos poseen&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Facebook En el móvil: Toca el Menú (icono de tres
líneas horizontales) y ve a Configuración y privacidad &amp;gt; Configuración &amp;gt; Centro
de cuentas. En la web: Haz clic en tu foto de perfil, luego en Configuración y
privacidad &amp;gt; Configuración. Accede a tus datos: Una vez en el Centro de cuentas,
ve a Tu información y permisos &amp;gt; Exportar tu información.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;X (antes Twitter) En
la web: Haz clic en Más en el menú lateral y ve a Configuración y privacidad.
Accede a tus datos: Selecciona Tu cuenta &amp;gt; Descargar un archivo de tus datos&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;TikTok En el móvil: Ve a tu perfil y toca el icono del Menú (tres líneas
horizontales) en la esquina superior derecha. Accede a tus datos: Selecciona
Ajustes y privacidad &amp;gt; Cuenta &amp;gt; Descargar tus datos.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Derecho de rectificación:
Si tus datos son incorrectos, puedes pedir que los corrijan o puedes hacerlo tu
mismo si la plataforma te permite&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Derecho de cancelación: Puedes solicitar que
eliminen tus datos cuando ya no sean necesarios, en las redes sociales
básicamente seria dar de baja la cuenta definitivamente.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Derecho de oposición:
Puedes negarte a que usen tus datos para publicidad o marketing.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Meta (Facebook e
Instagram) Dentro del Centro de cuentas, ve a
Tu información y permisos y busca la sección que habla sobre el uso de la
información para modelos y funciones de IA generativa. Completa el formulario:
Haz clic en Derecho a oponerte o Gestión de preferencias de datos y llena el
formulario con tu información y los motivos de tu oposición. Meta te enviará un
correo de confirmación una vez que acepte tu solicitud. Ajusta tus preferencias
de anuncios: Para controlar los anuncios personalizados de forma más directa, ve
a Centro de cuentas &amp;gt; Preferencias de anuncios. Aquí puedes elegir si deseas
recibir anuncios personalizados o menos personalizados, basados en tu actividad
con los socios publicitarios.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;X (anteriormente Twitter) Ve a la configuración:
Entra en tu perfil y haz clic en Más &amp;gt; Configuración y privacidad. Accede a la
privacidad y seguridad: Selecciona Privacidad y seguridad y luego Anuncios
personalizados. Desactiva los anuncios personalizados: Desmarca la casilla que
indica &quot;Anuncios personalizados&quot;.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;TikTok Entra a la configuración: Ve a tu
perfil y pulsa el icono de las tres líneas horizontales en la esquina superior
derecha. Gestiona la privacidad: Selecciona Ajustes y privacidad &amp;gt; Anuncios.
Desactiva la personalización: Deshabilita la opción de &quot;Anuncios personalizados&quot;
o &quot;Anuncios basados en la actividad&quot; para reducir la relevancia de la publicidad
que te aparece.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Recuerda: La Privacidad es Responsabilidad Compartida&lt;/b&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;La protección de tus datos personales no es solo responsabilidad de las empresas
o del gobierno, sino también tuya.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Cada decisión que tomas en línea tiene
consecuencias: desde qué publicas en redes sociales hasta cómo realizas tus
transacciones digitales.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;INDES-BID (2025). ¿Cómo ha evolucionado la protección
de datos personales?. Disponible en:
https://view.genially.com/68a9a407aa57a0f3d378a7a1&lt;/div&gt;&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;Si quieres también formarte&amp;nbsp; y aprender más, inscríbete en:
https://cursos.iadb.org/es/temas/desarrollo-instituciones/proteccion-datos-personales-bolivia
(válido hasta el 18 de diciembre del 2025)&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/1802328822795910454/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2025/10/guia-practica-protege-tus-datos-en-el.html#comment-form' title='6 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/1802328822795910454'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/1802328822795910454'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2025/10/guia-practica-protege-tus-datos-en-el.html' title='Guía Práctica: Protege tus Datos en el Mundo Digital'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>6</thr:total><georss:featurename>Bolivia</georss:featurename><georss:point>-16.290154 -63.588652999999987</georss:point><georss:box>-37.54653235540929 -98.744903 4.9662243554092882 -28.432402999999987</georss:box></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-4256671913386059795</id><published>2023-06-18T19:09:00.006-04:00</published><updated>2023-06-18T19:15:33.854-04:00</updated><title type='text'>Radio chris</title><content type='html'>radio
&lt;iframe src=&quot;https://chrisvega.radio12345.com/&quot; frameborder=&quot;0&quot; style=&quot;overflow: hidden; height: 100%;width: 100%; position: absolute;&quot;&gt;&lt;/iframe&gt;

</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/4256671913386059795/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2023/06/radio-chris.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/4256671913386059795'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/4256671913386059795'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2023/06/radio-chris.html' title='Radio chris'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-9117746042361820130</id><published>2017-03-22T19:21:00.000-04:00</published><updated>2017-08-16T09:52:24.735-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="RDP"/><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu MATE"/><category scheme="http://www.blogger.com/atom/ns#" term="vs code"/><category scheme="http://www.blogger.com/atom/ns#" term="vscode"/><title type='text'>Ejecutar VSCode en ubuntu MATE via RDP desde windows</title><content type='html'>Dentro de ubuntu MATE:&lt;br /&gt;
Paso 1: descargar el paquete de visual studio code .tar.gz&lt;br /&gt;
Paso 2: descomprimir&lt;br /&gt;
Paso 3: ejecutar en consola el comando:&lt;br /&gt;
&lt;span style=&quot;background-color: white;&quot;&gt;# s&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #24292e; font-family: , &amp;quot;blinkmacsystemfont&amp;quot; , &amp;quot;segoe ui&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif , &amp;quot;apple color emoji&amp;quot; , &amp;quot;segoe ui emoji&amp;quot; , &amp;quot;segoe ui symbol&amp;quot;; font-size: 14px;&quot;&gt;udo sed -i &#39;s/BIG-REQUESTS/_IG-REQUESTS/&#39; /usr/lib/x86_64-linux-gnu/libxcb.so.1&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; color: #24292e; font-family: , &amp;quot;blinkmacsystemfont&amp;quot; , &amp;quot;segoe ui&amp;quot; , &amp;quot;helvetica&amp;quot; , &amp;quot;arial&amp;quot; , sans-serif , &amp;quot;apple color emoji&amp;quot; , &amp;quot;segoe ui emoji&amp;quot; , &amp;quot;segoe ui symbol&amp;quot;; font-size: 14px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
Paso 4: ejecutar en consola el comando, dentro de la carpeta donde se descomprimio vs code:&lt;br /&gt;
# ./code&lt;br /&gt;
.</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/9117746042361820130/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2017/03/ejecutar-vscode-en-ubuntu-mate-via-rdp.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/9117746042361820130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/9117746042361820130'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2017/03/ejecutar-vscode-en-ubuntu-mate-via-rdp.html' title='Ejecutar VSCode en ubuntu MATE via RDP desde windows'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-2325513115433045526</id><published>2017-03-22T18:54:00.000-04:00</published><updated>2017-03-22T18:54:42.498-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="escritorio remoto"/><category scheme="http://www.blogger.com/atom/ns#" term="remotear"/><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu MATE"/><category scheme="http://www.blogger.com/atom/ns#" term="windows 10"/><title type='text'>Escritorio remoto en ubuntu MATE</title><content type='html'>Paso 1: Se debe instalar en ubuntu MATE:&lt;br /&gt;
&lt;span style=&quot;background-color: #f0f0f0; color: #333333; font-family: Consolas, Menlo, Monaco, &amp;quot;Lucida Console&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace; font-size: 14px;&quot;&gt;sudo apt-get install xrdp&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #f0f0f0; color: #333333; font-family: Consolas, Menlo, Monaco, &amp;quot;Lucida Console&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace; font-size: 14px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
Paso 2:&amp;nbsp;&lt;span style=&quot;background-color: #f0f0f0; color: #333333; font-family: Consolas, Menlo, Monaco, &amp;quot;Lucida Console&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace; font-size: 14px;&quot;&gt;Luego acceder desde windows como si de un cliente windows se tratara, desde windows ingresar:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #f0f0f0; color: #333333; font-family: Consolas, Menlo, Monaco, &amp;quot;Lucida Console&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace; font-size: 14px;&quot;&gt;&amp;nbsp;&quot;mstsc.exe&quot;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #f0f0f0; color: #333333; font-family: Consolas, Menlo, Monaco, &amp;quot;Lucida Console&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace; font-size: 14px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
Paso 3:&amp;nbsp;&lt;span style=&quot;background-color: #f0f0f0; color: #333333; font-family: Consolas, Menlo, Monaco, &amp;quot;Lucida Console&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace; font-size: 14px;&quot;&gt;Colocar la direccion ip&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #f0f0f0; color: #333333; font-family: Consolas, Menlo, Monaco, &amp;quot;Lucida Console&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace; font-size: 14px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
Paso 4:&lt;br /&gt;
&lt;span style=&quot;background-color: #f0f0f0; color: #333333; font-family: Consolas, Menlo, Monaco, &amp;quot;Lucida Console&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace; font-size: 14px;&quot;&gt;Ingresar usuario y contraseña&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #f0f0f0; color: #333333; font-family: Consolas, Menlo, Monaco, &amp;quot;Lucida Console&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace; font-size: 14px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;background-color: #f0f0f0; color: #333333; font-family: Consolas, Menlo, Monaco, &amp;quot;Lucida Console&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Bitstream Vera Sans Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, monospace; font-size: 14px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/2325513115433045526/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2017/03/escritorio-remoto-en-ubuntu-mate.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/2325513115433045526'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/2325513115433045526'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2017/03/escritorio-remoto-en-ubuntu-mate.html' title='Escritorio remoto en ubuntu MATE'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-1502459574306983811</id><published>2017-03-07T16:22:00.001-04:00</published><updated>2017-03-07T16:22:29.164-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="framework"/><category scheme="http://www.blogger.com/atom/ns#" term="Net3.5"/><category scheme="http://www.blogger.com/atom/ns#" term="windows 10"/><title type='text'>Instalar .Net Framework 3.5 en Windows 10</title><content type='html'>&lt;div&gt;
&lt;span style=&quot;background-color: white; color: #333333; font-family: &amp;quot;Segoe UI&amp;quot;, Arial, sans-serif; font-size: 15px;&quot;&gt;En el cmd ingresar:&lt;/span&gt;&lt;/div&gt;
&lt;span style=&quot;background-color: white; color: #333333; font-family: &amp;quot;Segoe UI&amp;quot;, Arial, sans-serif; font-size: 15px;&quot;&gt;DISM /Online /Enable-Feature /FeatureName:NetFx3 /All /LimitAccess /Source:d:\sources\sxs&lt;/span&gt;&lt;div&gt;
&lt;span style=&quot;color: #333333; font-family: Segoe UI, Arial, sans-serif;&quot;&gt;&lt;span style=&quot;font-size: 15px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;color: #333333; font-family: Segoe UI, Arial, sans-serif;&quot;&gt;&lt;span style=&quot;font-size: 15px;&quot;&gt;cuando d: es el volumen del disco de instalación&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/1502459574306983811/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2017/03/instalar-net-framework-35-en-windows-10.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/1502459574306983811'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/1502459574306983811'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2017/03/instalar-net-framework-35-en-windows-10.html' title='Instalar .Net Framework 3.5 en Windows 10'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-8443993186340915097</id><published>2016-09-05T18:48:00.000-04:00</published><updated>2016-09-05T18:48:02.459-04:00</updated><title type='text'>Musgo pared</title><content type='html'>Graffiti natural&lt;br /&gt;
&lt;br /&gt;
3 tazas de musgo (lavado, libre de partículas del suelo)&lt;br /&gt;
2 tazas de suero de leche o 2 tazas de yoghurt (debe ser yoghurt natural)&lt;br /&gt;
2 tazas de agua o cerveza&lt;br /&gt;
Media cucharadita de azúcar&lt;br /&gt;
jarabe de maíz (opcional)&lt;br /&gt;
una licuadora (que es probable que no quieras utilizar para otra cosa)&lt;br /&gt;
&lt;br /&gt;
Procedimiento:&lt;br /&gt;
batir todo y pintar una pared porosa con la soluci´no, poco &amp;nbsp;a poco ira creciendo y formandose musgo.&lt;br /&gt;
&lt;br /&gt;
fuente:&lt;br /&gt;
http://www.aldeaviral.com/el-hizo-el-proyecto-mas-genial-y-posiblemente-ilegal-que-he-visto-el-resultado-es-lo-mejor/</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/8443993186340915097/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2016/09/musgo-pared.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/8443993186340915097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/8443993186340915097'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2016/09/musgo-pared.html' title='Musgo pared'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-5311464018400445555</id><published>2016-03-29T15:50:00.001-04:00</published><updated>2016-03-29T15:50:27.659-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term=".net"/><category scheme="http://www.blogger.com/atom/ns#" term="c#"/><category scheme="http://www.blogger.com/atom/ns#" term="Interoperabilidad"/><category scheme="http://www.blogger.com/atom/ns#" term="interoperabilidad java .net"/><category scheme="http://www.blogger.com/atom/ns#" term="java"/><category scheme="http://www.blogger.com/atom/ns#" term="web services"/><title type='text'>INTEROPERABILIDAD JAVA .NET</title><content type='html'>&lt;br /&gt;
&lt;h1 class=&quot;title&quot; style=&quot;font-family: &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 2.769em; font-stretch: normal; font-weight: normal; line-height: 1.167; margin-top: 0px;&quot;&gt;
Interoperabilidad entre .Net y J2EE&lt;/h1&gt;
&lt;div id=&quot;mainSection&quot; style=&quot;clear: both; font-family: &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17.55px;&quot;&gt;
&lt;div id=&quot;mainBody&quot;&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;span style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 1em; line-height: 16.9px;&quot;&gt;Contenido&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EJAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EJAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Introducción&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EIAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EIAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;La Necesidad es del Negocio&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EHAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EHAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;¿Cómo lograrlo?&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EGAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EGAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Mecanismos Orientados a Servicios&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EFAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EFAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;CORBA y Remoting, la Misión&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EEAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EEAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Construyendo Puentes&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EDAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EDAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Máxima Velocidad&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#ECAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#ECAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Conversión de Plataforma y Cross-Compiling&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EBAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EBAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Conclusión: Abriendo la Caja de Pandora&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EAAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#EAAA&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Enlaces&lt;/a&gt;&lt;/div&gt;
&lt;h3 id=&quot;EJAA&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 1.231em; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 5px;&quot;&gt;
Introducción&lt;/h3&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Más allá de nuestras preferencias personales todos sabemos que existen hoy dos plataformas dominantes para el desarrollo de software:&amp;nbsp;&lt;strong&gt;.Net&lt;/strong&gt;&amp;nbsp;y&amp;nbsp;&lt;strong&gt;J2EE&lt;/strong&gt;. La tendencia aparente, y mi sensación personal, es que ninguna de ellas se impondrá de forma absoluta sino que, de alguna u otra manera, se repartirán el mercado. En la mayoría de los casos veremos cómo se establecen entornos mixtos donde ambas tecnologías trabajarán en conjunto.&lt;/div&gt;
&lt;div&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#mainSection&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
&lt;h3 id=&quot;EIAA&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 1.231em; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 5px;&quot;&gt;
La Necesidad es del Negocio&lt;/h3&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Más allá de lo estrictamente técnico, existen variadas razones que provocan la existencia de ambientes heterogéneos en las empresas. Casi una mezcla de circo y museo, se conjuga lo último y lo antiguo con distintos sistemas operativos, bases de datos y plataformas de aplicaciones.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Es que al entrar en juego factores tan diversos tales como los cambios de estrategia desde la alta dirección, la selección de nuevos proveedores de software, el&amp;nbsp;&lt;strong&gt;outsourcing&lt;/strong&gt;&amp;nbsp;del desarrollo, los recortes presupuestarios, las fusiones entre empresas, crisis y otras cuestiones político/económicas, hacen que inevitablemente las medianas y grandes empresas tengan “un poco de cada cosa”.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Veamos algunos escenarios posibles que pueden hacer necesaria la integración entre aplicaciones J2EE y .Net:&lt;/div&gt;
&lt;ul&gt;
&lt;li style=&quot;list-style-image: none;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Surge un proyecto nuevo basado en .Net que tiene que reutilizar un set de librerías Java cuya migración es inviable, ya sea por su complejidad, por la inexistencia de documentación o bien porque se dispone únicamente de binarios desarrollados por terceros (que no participan del proyecto, claro).&lt;/div&gt;
&lt;/li&gt;
&lt;li style=&quot;list-style-image: none;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
El mecanismo estándar definido por las políticas internas de la empresa para comunicarse con otros sistemas propietarios,&amp;nbsp;&lt;strong&gt;SAP&lt;/strong&gt;,&amp;nbsp;&lt;strong&gt;AS400&lt;/strong&gt;&amp;nbsp;o el&lt;strong&gt;Datawarehouse&lt;/strong&gt;&amp;nbsp;está implementado únicamente en una sola de las dos plataformas.&lt;/div&gt;
&lt;/li&gt;
&lt;li style=&quot;list-style-image: none;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
El directorio de una empresa toma una decisión estratégica que dicta la migración de todos los sistemas a una plataforma única. La casa matriz decide que a partir de ahora “todas las aplicaciones serán construidas en la plataforma X”.&lt;/div&gt;
&lt;/li&gt;
&lt;li style=&quot;list-style-image: none;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Se decide instalar una misma aplicación para todas las empresas de un mismo grupo y surgen casos donde la plataforma dominante es distinta a la prevista. Se prueban prototipos que una vez aprobados tienen que pasar a producción interactuando con plataformas distintas a la original. Dado que .Net y J2EE tienen fortalezas y debilidades que se complementan, se decide que una solución mixta podría hacer valer las fortalezas de cada una.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Encontraremos que casi la totalidad de las soluciones que existen apuntan a resolver el problema haciendo que la lógica desarrollada en Java/J2EE sea accedida desde C#/.Net y, en muy pocos casos, en sentido contrario. Esto tiene que ver con el hecho de que Java, y en particular J2EE, dominan fuertemente el ambiente corporativo donde se establecieron bastante antes del surgimiento de Microsoft .Net.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Tengamos en cuenta que la publicación del modelo J2EE impactó fuertemente en este sector al establecer una infraestructura basada en estándares abiertos para aplicaciones distribuidas incluyendo transacciones, seguridad, componentes server-side, acceso a datos, persistencia, clustering y balanceo de carga. El&amp;nbsp;&lt;strong&gt;bonus&lt;/strong&gt;&amp;nbsp;adicional del modelo tiene que ver con asegurarse la independencia de un proveedor específico ya que teóricamente un desarrollo particular puede instalarse en cualquier plataforma que respete el estándar (esta “compatibilidad asegurada” se vio afectada negativamente cuando los proveedores empezaron a incorporar mejoras adicionales cubriendo las falencias del estándar). En este sentido, a pesar de que .Net es una excelente opción para el desarrollo de software, como participante tardío de esta carrera todavía tiene camino por recorrer para consolidarse.&lt;/div&gt;
&lt;div&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#mainSection&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
&lt;h3 id=&quot;EHAA&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 1.231em; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 5px;&quot;&gt;
¿Cómo lograrlo?&lt;/h3&gt;
&lt;div id=&quot;figura01back&quot; style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
La aproximación más sencilla que podemos implementar es una base de datos de uso compartido, donde a través de&amp;nbsp;&lt;strong&gt;JDBC&lt;/strong&gt;&amp;nbsp;y&amp;nbsp;&lt;strong&gt;ADO .Net&lt;/strong&gt;&amp;nbsp;nuestras aplicaciones J2EE y .Net, respectivamente, puedan acceder para escribir y leer información. Esta opción tiene mucho sentido si consideramos componentes que en ambos casos se encuentren en la capa de negocios. Para hacer interoperar componentes que se encuentren en diferentes capas, el mecanismo a emplear dependerá del punto de interconexión que estemos considerando (Ver&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#figura01&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Figura 1&lt;/a&gt;).&lt;/div&gt;
&lt;div id=&quot;figura01&quot; style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;img alt=&quot;Bb972252.art247-img01-570x256(es-es,MSDN.10).gif&quot; id=&quot;art247-img01-570x256&quot; src=&quot;https://msdn.microsoft.com/dynimg/IC27436.gif&quot; style=&quot;border: 0px; max-width: 100%;&quot; title=&quot;Bb972252.art247-img01-570x256(es-es,MSDN.10).gif&quot; xmlns=&quot;&quot; /&gt;&lt;br /&gt;&lt;strong&gt;Figura 1:&lt;/strong&gt;&amp;nbsp;Puntos de interconexión para aplicaciones multi-capa.&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Si el punto de interconexión se extiende a través de Internet o una intranet, la alternativa natural es la utilización de&amp;nbsp;&lt;strong&gt;Web Services&lt;/strong&gt;. Tenemos herramientas para generarlos y consumirlos en ambas plataformas y cuentan con la ventaja de ser estándares abiertos que nos permitirán conservar la compatibilidad con futuras aplicaciones. Estaremos limitados, eso sí, por la velocidad del enlace y el costo de emplear XML para transmitir los mensajes.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Si no disponemos de un enlace permanente o el que tenemos es poco confiable, tendremos que considerar servicios de mensajería asíncrona que usualmente emplearemos para la interacción entre las capas de negocios y de datos. Lo que se hace es implementar colas de mensajes en cada una de las plataformas e interconectarlas a través de un&amp;nbsp;&lt;strong&gt;bridge&lt;/strong&gt;&amp;nbsp;(cada aplicación produce y consume mensajes a través de la API habitual). Por otra parte, si podemos sacrificar el soporte de transacciones y&amp;nbsp;&lt;strong&gt;callbacks&lt;/strong&gt;, es posible generar un&amp;nbsp;&lt;strong&gt;wrapper&lt;/strong&gt;&amp;nbsp;que permita el acceso a través de un Web Service.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Cuando lo que estamos buscando es acceder a nivel de clases y métodos, tendremos que optar por un&amp;nbsp;&lt;strong&gt;runtime bridge&lt;/strong&gt;. Estos componentes se agregan en cada plataforma para administrar la interacción y comunicación entre objetos de diferente origen.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Si nos animamos a una solución de más bajo nivel podemos llegar a eliminar el&amp;nbsp;&lt;strong&gt;overhead&lt;/strong&gt;&amp;nbsp;de la comunicación remota aprovechando los métodos de interacción con código nativo que tiene cada plataforma.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Por último, si estamos encarando una migración masiva a gran escala, lo que seguramente resulte más conveniente sea emplear herramientas de conversión de plataforma, las cuales se hacen cargo del mapeo de tipos y de proporcionar las APIs correspondientes.&lt;/div&gt;
&lt;div&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#mainSection&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
&lt;h3 id=&quot;EGAA&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 1.231em; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 5px;&quot;&gt;
Mecanismos Orientados a Servicios&lt;/h3&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
¿Qué es lo primero que nos viene a la mente cuando nos hablan de integración de aplicaciones? Algo que la maquinaria publicitaria viene machacando desde hace algunos años: ¡Los Web Services, por supuesto! Tenemos la ventaja de que se trata de un mecanismo estándar y que existen en ambas plataformas (aunque lo de “estándar” es algo bastante relativo pues todavía falta un poco para que los proveedores se pongan de acuerdo al respecto).&lt;/div&gt;
&lt;div id=&quot;figura02back&quot; style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Repasemos brevemente el funcionamiento de un Web Service como mecanismo de integración en la&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#figura02&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Figura 2&lt;/a&gt;, que se muestra a continuación:&lt;/div&gt;
&lt;div id=&quot;figura02&quot; style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;img alt=&quot;Bb972252.art247-img02-570x284(es-es,MSDN.10).gif&quot; id=&quot;art247-img02-570x284&quot; src=&quot;https://msdn.microsoft.com/dynimg/IC73550.gif&quot; style=&quot;border: 0px; max-width: 100%;&quot; title=&quot;Bb972252.art247-img02-570x284(es-es,MSDN.10).gif&quot; xmlns=&quot;&quot; /&gt;&lt;br /&gt;&lt;strong&gt;Figura 2:&lt;/strong&gt;&amp;nbsp;Web Services.&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
La aplicación Java, que en este caso expone su funcionalidad a través de un Web Service, registra su descripción (1) a través de un archivo WDSL (&lt;strong&gt;Web Server Description Language&lt;/strong&gt;) en un servidor UDDI (&lt;strong&gt;Universal Description&lt;/strong&gt;&amp;nbsp;&lt;strong&gt;,&lt;/strong&gt;&amp;nbsp;&lt;strong&gt;Discovery and Intregration&lt;/strong&gt;), que funciona como un DNS para los servicios. La aplicación cliente (en este caso implementada en .Net) consulta (2) al servidor UDDI para poder generar un requerimiento con el formato adecuado. El requerimiento se envía (3) usando el protocolo&amp;nbsp;&lt;strong&gt;SOAP&lt;/strong&gt;&amp;nbsp;(que encapsula la información con&amp;nbsp;&lt;strong&gt;XML&lt;/strong&gt;) sobre&amp;nbsp;&lt;strong&gt;HTTP&lt;/strong&gt;. El servicio recibe el requerimiento (4), lo procesa (5) y devuelve la respuesta (6) nuevamente utilizando SOAP. La aplicación cliente abre el “sobre” SOAP y interpreta el XML obteniendo la información (7) que necesitaba.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Los Web Services son útiles a la hora de integrar componentes a gran escala, dispersos geográficamente, y en donde se realizan unas pocas conexiones por unidad de tiempo. En otros casos, debido a sus limitaciones, pueden llegar a resultar poco recomendables. El overhead que introduce la serialización/deserialización de SOAP (XML) hace que tengamos que pagar un alto costo en la comunicación y en la conversión.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Tampoco será posible utilizarlos cuando necesitemos soporte nativo de transacciones, hacer callbacks, pasar objetos por referencia o estemos pensando en utilizar de forma extensiva la funcionalidad de una API (sería realmente poco práctico o más bien imposible tener que publicar cada uno de sus métodos). Si nuestra situación se identifica con esto último, sigamos avanzando para descubrir otras soluciones que nos permitan operar a nivel de clase.&lt;/div&gt;
&lt;div&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#mainSection&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
&lt;h3 id=&quot;EFAA&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 1.231em; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 5px;&quot;&gt;
CORBA y Remoting, la Misión&lt;/h3&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Si provienes del mundo Java, seguramente has escuchado acerca de CORBA (&lt;strong&gt;Common Object Request Broker Architecture&lt;/strong&gt;), quizás no tanto si provienes de .Net. Dentro de este estándar para la comunicación de componentes distribuidos se emplea el protocolo IIOP (&lt;strong&gt;Internet Inter-ORB Protocol&lt;/strong&gt;) para comunicar ciertas entidades definidas como ORB (&lt;strong&gt;Object Request Broker&lt;/strong&gt;). Este estándar lleva bastante tiempo en el mercado y podríamos decir que tiene una difusión algo limitada debido a su alta complejidad (este punto genera ásperas discusiones entre sus defensores y detractores en los foros sobre aplicaciones distribuidas).&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Dado que en Java se incluye una implementación parcial de CORBA con RMI/IIOP, varias soluciones de interoperabilidad aprovechan la flexibilidad de&lt;strong&gt;Remoting&lt;/strong&gt;&amp;nbsp;para armar&amp;nbsp;&lt;strong&gt;channels&lt;/strong&gt;&amp;nbsp;y&amp;nbsp;&lt;strong&gt;formatters&lt;/strong&gt;&amp;nbsp;específicos que den soporte al protocolo IIOP y a la conversión de tipos entre .NET e IDL (el lenguaje para definir interfases en CORBA). Esta sería la solución ideal para equipos de desarrollo que tengan experiencia usando CORBA entre aplicaciones Java o bien quieran establecer comunicación con otros ORB tales como&amp;nbsp;&lt;strong&gt;mainframes&lt;/strong&gt;&amp;nbsp;o aplicaciones&amp;nbsp;&lt;strong&gt;legacy&lt;/strong&gt;.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Para empezar a jugar tenemos algunas soluciones&amp;nbsp;&lt;strong&gt;freeware&lt;/strong&gt;&amp;nbsp;como&amp;nbsp;&lt;strong&gt;Remoting .CORBA&lt;/strong&gt;&amp;nbsp;o&amp;nbsp;&lt;strong&gt;IIOP .Net&lt;/strong&gt;, que son muy interesantes. La última parece un poco más práctica porque incluye un generador para crear el archivo IDL, pero es todo cuestión de gustos.&lt;/div&gt;
&lt;div id=&quot;figura03back&quot; style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Cualquiera sea el caso, es inevitable adquirir algo de experiencia en la plataforma destino ya que tendremos que meter bastante mano en las clases. La integración necesitará de un poco de&amp;nbsp;&lt;strong&gt;refactoring&lt;/strong&gt;&amp;nbsp;tanto en la aplicación cliente como en la aplicación servidor. Podemos pensar en todo caso en soluciones comerciales. La apuesta es reducir el tiempo de desarrollo automatizando este proceso y ocultando la complejidad de la integración al programador. Por ejemplo,&amp;nbsp;&lt;strong&gt;Janeva&lt;/strong&gt;&amp;nbsp;(un producto de Borland) se integra en el Visual Studio .Net. Cuando incluimos dentro de nuestro proyecto una referencia a un objeto Java remoto genera un&amp;nbsp;&lt;strong&gt;proxy&lt;/strong&gt;&amp;nbsp;al cual podemos acceder en forma directa a través de Remoting, desentendiéndonos del mapeo entre tipos .Net e IDL en que se hace forma automática. (Ver&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#figura03&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Figura 3&lt;/a&gt;):&lt;/div&gt;
&lt;div id=&quot;figura03&quot; style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;img alt=&quot;Bb972252.art247-img03-570x233(es-es,MSDN.10).gif&quot; id=&quot;art247-img03-570x233&quot; src=&quot;https://msdn.microsoft.com/dynimg/IC125551.gif&quot; style=&quot;border: 0px; max-width: 100%;&quot; title=&quot;Bb972252.art247-img03-570x233(es-es,MSDN.10).gif&quot; xmlns=&quot;&quot; /&gt;&lt;br /&gt;&lt;strong&gt;Figura 3:&lt;/strong&gt;&amp;nbsp;Acceso por CORBA con IIOP .Net y Janeva.&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Al compilar el proyecto, se agrega al&amp;nbsp;&lt;strong&gt;assembly&lt;/strong&gt;&amp;nbsp;un&amp;nbsp;&lt;strong&gt;runtime&lt;/strong&gt;&amp;nbsp;que se hace cargo de la comunicación entre IIOP y Remoting, manteniendo actualizados los proxies para que “espejen” el comportamiento del objeto destino y su estado.&lt;/div&gt;
&lt;div&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#mainSection&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
&lt;h3 id=&quot;EEAA&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 1.231em; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 5px;&quot;&gt;
Construyendo Puentes&lt;/h3&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Si jamás utilizamos CORBA, IDL nos suena a&amp;nbsp;&lt;em&gt;aprender chino&lt;/em&gt;; si la cuestión de los ORB nos resulta algo confusa, tenemos otras opciones que utilizan el camino inverso: en lugar de implementar un protocolo Java-compatible, trasladan Remoting a Java. Los productos más representativos son:&amp;nbsp;&lt;strong&gt;Ja.Net&lt;/strong&gt;&amp;nbsp;de Intrinsync y&amp;nbsp;&lt;strong&gt;JNBridgePro&lt;/strong&gt;&amp;nbsp;de JNBridge. Para hacer el “&lt;strong&gt;bridging&lt;/strong&gt;” instalan un runtime de cada lado el cual se encarga de:&lt;/div&gt;
&lt;ul&gt;
&lt;li style=&quot;list-style-image: none;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Establecer la comunicación entre las plataformas usando Remoting, principalmente con TCP y serialización binaria, aunque HTTP/SOAP también esté soportado.&lt;/div&gt;
&lt;/li&gt;
&lt;li style=&quot;list-style-image: none;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Crear un proxy C# para cada clase Java que se quiere acceder.&lt;/div&gt;
&lt;/li&gt;
&lt;li style=&quot;list-style-image: none;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Crear un proxy Java para cada clase .Net que se quiere acceder.&lt;/div&gt;
&lt;/li&gt;
&lt;li style=&quot;list-style-image: none;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
El mapeo de clases y tipos y la conversión de los valores de retorno en cada caso.&lt;/div&gt;
&lt;/li&gt;
&lt;li style=&quot;list-style-image: none;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
La invocación de métodos en objetos .Net desde Java.&lt;/div&gt;
&lt;/li&gt;
&lt;li style=&quot;list-style-image: none;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
La invocación de métodos en objetos Java desde .Net.&lt;/div&gt;
&lt;/li&gt;
&lt;li style=&quot;list-style-image: none;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Propagar excepciones entre Java y .Net, y viceversa.&lt;/div&gt;
&lt;/li&gt;
&lt;li style=&quot;list-style-image: none;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Brindar soporte de callbacks.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div id=&quot;figura04back&quot; style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Tal como aparece en el esquema de funcionamiento que se muestra en la&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#figura04&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Figura 4&lt;/a&gt;, soportado por ambas herramientas:&lt;/div&gt;
&lt;div id=&quot;figura04&quot; style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;img alt=&quot;Bb972252.art247-img04-570x193(es-es,MSDN.10).gif&quot; id=&quot;art247-img04-570x193&quot; src=&quot;https://msdn.microsoft.com/dynimg/IC82194.gif&quot; style=&quot;border: 0px; max-width: 100%;&quot; title=&quot;Bb972252.art247-img04-570x193(es-es,MSDN.10).gif&quot; xmlns=&quot;&quot; /&gt;&lt;br /&gt;&lt;strong&gt;Figura 4:&lt;/strong&gt;&amp;nbsp;Esquema de un runtime bridge&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#mainSection&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
&lt;h3 id=&quot;EDAA&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 1.231em; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 5px;&quot;&gt;
Máxima Velocidad&lt;/h3&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Las alternativas que hemos visto hasta ahora comparten la restricción de tener que publicar obligatoriamente una referencia remota para hacer que el objeto esté disponible en la otra plataforma. Esto necesita de una infraestructura de soporte para la comunicación, control y conversión de tipos.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
En la búsqueda de una mayor performance podemos avanzar un paso más y operar directamente a bajo nivel para resolver este problema aprovechando los mecanismos para acceder a código nativo (binario propio del sistema) que proporcionan tanto Java como .Net.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;strong&gt;JuggerNet&lt;/strong&gt;&amp;nbsp;es un producto que aprovecha esta vuelta de tuerca brindando herramientas para facilitar el proceso. Para usarlo, lo primero que tenemos que hacer es seleccionar las clases Java y generar (cuando no) los correspondientes proxies en .Net, para luego poder programar directamente contra estas clases sin inconvenientes o servicios adicionales. Las clases proxy tienen que comportarse y tener el mismo estado que sus homólogas Java. Para conseguirlo, el runtime C# de JuggerNET emplea JNI (&lt;strong&gt;Java Native Interfase&lt;/strong&gt;) para instanciar una JVM (&lt;strong&gt;Java Virtual Machine&lt;/strong&gt;) donde se crean los objetos de las clases Java que queremos acceder y manipular. Ahora, como JNI es una API en C no es posible usarla directamente desde C#, sino es a través de una DLL que se accede con Pinvoke (&lt;strong&gt;Platform Invocation Services&lt;/strong&gt;), el mecanismo que .Net ofrece para acceder a código nativo escrito como funciones sueltas no orientadas a objetos tales como las DLLs de la API Win32.&lt;/div&gt;
&lt;div id=&quot;figura05back&quot; style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Veamos cómo es la secuencia de funcionamiento. El runtime en C# que instala JuggerNet recibe los requerimientos que nuestro código le hace a las clases proxy que se generaron en el primer paso y se los reenvía a la DLL en C que se comunica a través de JNI con la máquina virtual Java que hemos creado para ejecutar los métodos correspondientes o bien leer el estado de algún objeto en particular (Ver&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#figura05&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Figura 5&lt;/a&gt;):&lt;/div&gt;
&lt;div id=&quot;figura05&quot; style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;img alt=&quot;Bb972252.art247-img05-570x252(es-es,MSDN.10).gif&quot; id=&quot;art247-img05-570x252&quot; src=&quot;https://msdn.microsoft.com/dynimg/IC110779.gif&quot; style=&quot;border: 0px; max-width: 100%;&quot; title=&quot;Bb972252.art247-img05-570x252(es-es,MSDN.10).gif&quot; xmlns=&quot;&quot; /&gt;&lt;br /&gt;&lt;strong&gt;Figura 5:&lt;/strong&gt;&amp;nbsp;Interconexión C#/pInvoke/JNI/JVM.&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
El runtime se hace cargo además de la parte más compleja del asunto, la que tiene que ver con el mapeo de tipos, la propagación de excepciones y los callbacks. El siguiente fragmento de código genera una caja de dialogo Java hecha con Swing para ingresar información en una aplicación .Net:&lt;/div&gt;
&lt;pre&gt;Using System;
Using Java;
&amp;nbsp;
Clase Ejemplo 
{
public static void Main()
{
string color = JoptionPane.showInputDialog (&quot;Cual es tu color preferido?&quot;);
Console.WriteLine(&quot;Elegiste: &quot; + color.ToLower());
}
}&lt;/pre&gt;
&lt;br /&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Como vemos, la integración a nivel código es la más transparente de todas pero exige un nivel de conocimiento mucho más profundo.&lt;/div&gt;
&lt;div&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#mainSection&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
&lt;h3 id=&quot;ECAA&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 1.231em; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 5px;&quot;&gt;
Conversión de Plataforma y Cross-Compiling&lt;/h3&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Finalmente, para el escenario de migración a plataforma única hablaremos del enfoque más drástico de todos, que consiste en realizar una conversión total de nuestras aplicaciones. Nos llevaría muchísimo tiempo, demasiado, revisar y convertir todo nuestro código fuente en forma manual. Peor aún resulta la búsqueda de equivalencias entre tipos y servicios que nos brinda cada una de las APIs de las plataformas.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Conozcamos entonces cómo trabajan dos soluciones comerciales que se hacen cargo de esta tarea:&amp;nbsp;&lt;strong&gt;iNET&lt;/strong&gt;&amp;nbsp;de Stryon y&amp;nbsp;&lt;strong&gt;Visual MainWin&lt;/strong&gt;&amp;nbsp;de MainSoft.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Ambos productos se integran en Visual Studio haciendo que podamos usar referencias a clases Java, librerías de J2SE o a componentes tales como EJBs. Cuando compilamos, se generan&amp;nbsp;&lt;strong&gt;assemblies&lt;/strong&gt;&amp;nbsp;&quot;tradicionales&quot; en MSIL (el &quot;&lt;strong&gt;assembler&lt;/strong&gt;&quot; de .NET).&lt;/div&gt;
&lt;div id=&quot;figura06back&quot; style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
A partir del MSIL, MainWin produce el&amp;nbsp;&lt;strong&gt;bytecode&lt;/strong&gt;&amp;nbsp;Java (archivos .class) directamente; en cambio, iNET genera primero el código fuente (archivos .java) y luego lo compila. El objetivo en ambos casos es el mismo: componer algo que pueda correr en una máquina virtual Java (Ver&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#figura06&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Figura 6&lt;/a&gt;):&lt;/div&gt;
&lt;div id=&quot;figura06&quot; style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;img alt=&quot;Bb972252.art247-img06-570x493(es-es,MSDN.10).gif&quot; id=&quot;art247-img06-570x493&quot; src=&quot;https://msdn.microsoft.com/dynimg/IC26464.gif&quot; style=&quot;border: 0px; max-width: 100%;&quot; title=&quot;Bb972252.art247-img06-570x493(es-es,MSDN.10).gif&quot; xmlns=&quot;&quot; /&gt;&lt;br /&gt;&lt;strong&gt;Figura 6:&lt;/strong&gt;&amp;nbsp;Conversión de Plataforma / APIs.&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
En la conversión, estas herramientas aplican un conjunto de reglas para mapear llamadas a API, primitivas y tipos a sus equivalentes en Java. Para aquellas cosas que no tienen un equivalente, se genera código que lo resuelve aprovechando el&amp;nbsp;&lt;strong&gt;runtime&lt;/strong&gt;&amp;nbsp;propietario que es necesario instalar en el server J2EE.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Este runtime además contiene la versión Java de distintas API del .Net Framework, tales como ASP .Net, ADO .Net, WinForms, Remoting, y otras. Cuando finaliza la conversión, se empaqueta la aplicación en un JAR, WAR o en un EAR para su&amp;nbsp;&lt;strong&gt;deployment&lt;/strong&gt;&amp;nbsp;en el server J2EE.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Como todo el código se termina ejecutando en la plataforma Java, si la implementación de las API es eficiente, no notaremos diferencia alguna en su funcionamiento respecto de otras aplicaciones que tengamos corriendo.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Sin embargo, el framework .Net es grande, tiene miles de clases y resulta muy complejo (¡Pregunta a los muchachos del proyecto MONO si no lo crees así!). A menos que tengamos totalmente controlado el código que generemos, es muy probable que algunas funciones que usemos no estén totalmente soportadas. El desarrollo en Java por su parte, pierde en portabilidad ya que depende del runtime que contiene la implementación de las API de .Net.&lt;/div&gt;
&lt;div&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#mainSection&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
&lt;h3 id=&quot;EBAA&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 1.231em; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 5px;&quot;&gt;
Conclusión: Abriendo la Caja de Pandora&lt;/h3&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
La integración de aplicaciones sigue siendo una tarea artesanal; no existe nada que pueda reemplazar la experiencia real programando en cada una de las plataformas. Mi consejo es que llegado el caso, lo más conveniente es en primer lugar evaluar detalladamente la necesidad, luego identificar un par de estrategias factibles y testear cómo se comportan en una prueba de concepto. La aplicación de prueba de concepto debe incluir código que atraviese todas las capas que la conforman (lo que comúnmente se conoce como&amp;nbsp;&lt;strong&gt;slice&lt;/strong&gt;) y debe ser testeada con un volumen de carga acorde a su destino real.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Si no es hoy, será mañana, pero seguramente pronto vas a tener la oportunidad de cruzar la frontera que separa ambos mundos, ¡Buena suerte, pionero!&lt;/div&gt;
&lt;div&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-es/library/bb972252.aspx#mainSection&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
&lt;h3 id=&quot;EAAA&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 1.231em; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 5px;&quot;&gt;
Enlaces&lt;/h3&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;strong&gt;Remoting&lt;/strong&gt;&lt;br /&gt;JNBridge Pro,&amp;nbsp;&lt;a href=&quot;http://www.jnbridge.com/jnbpropg.htm&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;www.jnbridge.com/jnbpropg.htm&lt;/a&gt;&lt;br /&gt;Ja.NET,&amp;nbsp;&lt;a href=&quot;http://ja.net.intrinsyc.com/&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;http://ja.net.intrinsyc.com/&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;strong&gt;Remoting y IIOP&lt;/strong&gt;&lt;br /&gt;Janeva,&amp;nbsp;&lt;a href=&quot;http://www.borland.com/janeva/&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;www.borland.com/janeva/&lt;/a&gt;&lt;br /&gt;Remoting .CORBA,&amp;nbsp;&lt;a href=&quot;http://remoting-corba.sourceforge.net/&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;remoting-corba.sourceforge.net/&lt;/a&gt;IIOP .NET,&amp;nbsp;&lt;a href=&quot;http://iiop-net.sourceforge.net/&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;iiop-net.sourceforge.net/&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;strong&gt;Conversión de Plataforma&lt;/strong&gt;&lt;br /&gt;MainWin,&amp;nbsp;&lt;a href=&quot;http://www.mainsoft.com/&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;www.mainsoft.com/&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;strong&gt;Conversión Directa por JNI&lt;/strong&gt;&lt;br /&gt;JuggerNET,&amp;nbsp;&lt;a href=&quot;http://www.codemesh.com/&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;www.codemesh.com/&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;strong&gt;Interop con .COM&lt;/strong&gt;&lt;br /&gt;J-Integra Pure Java Runtime,&amp;nbsp;&lt;a href=&quot;http://j-integra.intrinsyc.com/&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;j-integra.intrinsyc.com/&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
Fuente&lt;br /&gt;
https://msdn.microsoft.com/es-es/library/bb972252.aspx&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/5311464018400445555/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2016/03/interoperabilidad-java-net.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/5311464018400445555'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/5311464018400445555'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2016/03/interoperabilidad-java-net.html' title='INTEROPERABILIDAD JAVA .NET'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-4255429036535655262</id><published>2016-02-26T17:34:00.003-04:00</published><updated>2016-02-26T17:34:57.211-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="c#"/><category scheme="http://www.blogger.com/atom/ns#" term="developer"/><category scheme="http://www.blogger.com/atom/ns#" term="entity"/><category scheme="http://www.blogger.com/atom/ns#" term="error"/><category scheme="http://www.blogger.com/atom/ns#" term="mapeo"/><title type='text'>Error Entity developer</title><content type='html'>Cuando quise remapear mi base de datos me encontré con este error&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiyTwhpTIAIsuESm4czsjou6UHYdMAC21UMwmv6Qfc0DToRF7y3UYV7z1zcZR_H_5XeFlggO6TSPHrhwh4Lk_vQPzaQGH_tVVFrm4x5FT8TFm3mO09KldYmy3nbanh6pCPJR7AF9g_gAdpV/s1600/error.png&quot; imageanchor=&quot;1&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;208&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiyTwhpTIAIsuESm4czsjou6UHYdMAC21UMwmv6Qfc0DToRF7y3UYV7z1zcZR_H_5XeFlggO6TSPHrhwh4Lk_vQPzaQGH_tVVFrm4x5FT8TFm3mO09KldYmy3nbanh6pCPJR7AF9g_gAdpV/s400/error.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
La solución es sustituir dichas fuentes, con otras de otra computadora. Las fuentes se sustituyen ingresando a Panel de control/apariencia y presentación/Fuentes&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-ffILQPRg-W2fu_lQQS54RNW44omcRsdyxfKxE0XWE1kYL0F6YjtN_wo0Vawx2PMTssbkYKLJ195-7VdkkpFMraAhV-EpJ1bsMoyP94_4UoX4bLJhwmW82LhrnCvklw1ALO3MoDGW94WD/s1600/panel.jpg&quot; imageanchor=&quot;1&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;280&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-ffILQPRg-W2fu_lQQS54RNW44omcRsdyxfKxE0XWE1kYL0F6YjtN_wo0Vawx2PMTssbkYKLJ195-7VdkkpFMraAhV-EpJ1bsMoyP94_4UoX4bLJhwmW82LhrnCvklw1ALO3MoDGW94WD/s400/panel.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sustituir ambas fuentes:&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhisBWSSJZ27BJBH_YJYRcdltuNK6PAww_BI5n1fbvQzJNMacYT17XN2U7TL12IiVmSuhCyzcw_ww5TWN7l9MN5ipFW7PGgitZSljnkULP6ArHW7RTfV1dfPrWf-LJ97lvRjHjYU9T2H0Ym/s1600/sustituir.jpg&quot; imageanchor=&quot;1&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;212&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhisBWSSJZ27BJBH_YJYRcdltuNK6PAww_BI5n1fbvQzJNMacYT17XN2U7TL12IiVmSuhCyzcw_ww5TWN7l9MN5ipFW7PGgitZSljnkULP6ArHW7RTfV1dfPrWf-LJ97lvRjHjYU9T2H0Ym/s400/sustituir.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Reiniciar Visual studio y ya se encontrara solucionado el error y se podrá remapear con normalidad&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj45-7qR9kghWFND6uiArvPLKJ_FC3zpABRJAcS3E28QGI-0DdqSGdyDEeINm3AgoE6fGtuVazNe_qSWBH7yUmUc3ANA9mZ2VBjXpmH_fyKdwbt9RkaqMmomb2byzrSBeoz2Pg8NqbVYMTa/s1600/developer.jpg&quot; imageanchor=&quot;1&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;212&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj45-7qR9kghWFND6uiArvPLKJ_FC3zpABRJAcS3E28QGI-0DdqSGdyDEeINm3AgoE6fGtuVazNe_qSWBH7yUmUc3ANA9mZ2VBjXpmH_fyKdwbt9RkaqMmomb2byzrSBeoz2Pg8NqbVYMTa/s400/developer.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/4255429036535655262/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2016/02/error-entity-developer.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/4255429036535655262'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/4255429036535655262'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2016/02/error-entity-developer.html' title='Error Entity developer'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiyTwhpTIAIsuESm4czsjou6UHYdMAC21UMwmv6Qfc0DToRF7y3UYV7z1zcZR_H_5XeFlggO6TSPHrhwh4Lk_vQPzaQGH_tVVFrm4x5FT8TFm3mO09KldYmy3nbanh6pCPJR7AF9g_gAdpV/s72-c/error.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-3870604054159935599</id><published>2016-02-18T16:27:00.000-04:00</published><updated>2016-02-18T16:27:09.192-04:00</updated><title type='text'>Compatibilidad y consideraciones C#-Java </title><content type='html'>&lt;h1 class=&quot;title&quot; style=&quot;font-family: &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 2.769em; font-stretch: normal; font-weight: normal; line-height: 1.167; margin-top: 0px;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; font-size: 13px; line-height: 18px;&quot;&gt;En este tema se describen algunas de las similitudes y diferencias principales en cómo se representan y asignan los datos, y se recolectan los elementos no utilizados en Java y en C#.&lt;/span&gt;&lt;/h1&gt;
&lt;div id=&quot;mainSection&quot; style=&quot;clear: both; font-family: &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17.55px;&quot;&gt;
&lt;div id=&quot;mainBody&quot;&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Tipos de datos compuestos&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div active&quot; id=&quot;Anchor_0&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: visible; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/ms228360(v=vs.90).aspx#Anchor_0&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle0&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
El concepto de clase como tipo de datos compuesto de campos, métodos y eventos es similar en Java y C#. (La herencia de clases se describe independientemente en el tema titulado&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/ms228387(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Herencia y clases derivadas (C# y Java)&lt;/a&gt;.) C# introduce el concepto de estructura como tipo de datos compuesto asignado por pila que no admite la herencia. En la mayoría de los otros aspectos, las estructuras son muy similares a las clases. Las estructuras proporcionan una manera ligera de agrupar campos y métodos relacionados para el uso en los bucles de pequeñas dimensiones y otros escenarios donde el rendimiento es crucial.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
C# permite crear un método de destructor al que se llama antes de que se destruyan las instancias de una clase. En Java, se puede utilizar un método&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;finalize&lt;/span&gt;&amp;nbsp;para contener código que limpia los recursos antes de que se recolecten los elementos no utilizados del objeto. En C#, el que realiza esta función es el destructor de clase. El destructor se parece a un constructor sin los argumentos y con un carácter de tilde delante (~).&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Tipos de datos integrados&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_1&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/ms228360(v=vs.90).aspx#Anchor_1&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle1&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
C# proporciona todos los tipos de datos que están disponibles en Java y agrega compatibilidad para los números sin signo y un nuevo tipo de punto flotante de 128 bits de alta precisión.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Para cada tipo de datos primitivo en Java, la biblioteca de clases principal proporciona una clase contenedora, que lo representa como un objeto de Java. Por ejemplo, la clase&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.int32(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Int32&lt;/a&gt;&amp;nbsp;contiene el tipo de datos&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;int&lt;/span&gt;&amp;nbsp;y la clase&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.double(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Double&lt;/a&gt;&amp;nbsp;contiene el tipo de datos&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/678hzkk9(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;double&lt;/a&gt;.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Por otro lado, todos los tipos de datos primitivos en C# son objetos en el espacio de nombres&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;System&lt;/a&gt;. Para cada tipo de datos, se proporciona un nombre corto o alias. Por ejemplo,&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;int&lt;/span&gt;&amp;nbsp;es el nombre corto correspondiente a&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;System.Int32&lt;/span&gt;&amp;nbsp;y&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;double&lt;/span&gt;&amp;nbsp;es la forma abreviada de&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;System.Double&lt;/span&gt;.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
En la tabla siguiente se proporciona la lista de tipos de datos de C# y sus alias. Como puede ver, los primeros ocho de estos tipos corresponden a los tipos primitivos disponibles en Java. Sin embargo, tenga en cuenta que el tipo&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;boolean&lt;/span&gt;&amp;nbsp;de Java se denomina&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;bool&lt;/span&gt;en C#.&lt;/div&gt;
&lt;div class=&quot;caption&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;tableSection&quot;&gt;
&lt;div class=&quot;contentTableWrapper&quot; style=&quot;overflow-x: auto;&quot;&gt;
&lt;table responsive=&quot;true&quot; style=&quot;border-collapse: collapse; border: 1px solid rgb(187, 187, 187); margin-bottom: 20px; margin-top: 20px; word-break: break-word;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;th style=&quot;background-color: #ededed; border: 1px solid rgb(187, 187, 187); color: #636363; padding: 10px 8px;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 0px;&quot;&gt;
Nombre corto&lt;/div&gt;
&lt;/th&gt;&lt;th style=&quot;background-color: #ededed; border: 1px solid rgb(187, 187, 187); color: #636363; padding: 10px 8px;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 0px;&quot;&gt;
Clase .NET&lt;/div&gt;
&lt;/th&gt;&lt;th style=&quot;background-color: #ededed; border: 1px solid rgb(187, 187, 187); color: #636363; padding: 10px 8px;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 0px;&quot;&gt;
Tipo&lt;/div&gt;
&lt;/th&gt;&lt;th style=&quot;background-color: #ededed; border: 1px solid rgb(187, 187, 187); color: #636363; padding: 10px 8px;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 0px;&quot;&gt;
Ancho&lt;/div&gt;
&lt;/th&gt;&lt;th style=&quot;background-color: #ededed; border: 1px solid rgb(187, 187, 187); color: #636363; padding: 10px 8px;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 0px;&quot;&gt;
Intervalo (bits)&lt;/div&gt;
&lt;/th&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Nombre corto&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;byte&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Clase .NET&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.byte(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Byte&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Entero sin signo&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Ancho&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
8&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Intervalo (bits)&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
0 a 255&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Nombre corto&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;sbyte&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Clase .NET&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.sbyte(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;SByte&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Entero con signo&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Ancho&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
8&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Intervalo (bits)&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
-128 a 127&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Nombre corto&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;int&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Clase .NET&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.int32(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Int32&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Entero con signo&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Ancho&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
32&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Intervalo (bits)&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
-2.147.483.648 a 2.147.483.647&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Nombre corto&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;uint&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Clase .NET&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.uint32(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;UInt32&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Entero sin signo&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Ancho&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
32&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Intervalo (bits)&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
0 a 4294967295&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Nombre corto&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;short&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Clase .NET&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.int16(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Int16&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Entero con signo&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Ancho&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
16&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Intervalo (bits)&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
-32.768 a 32.767&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Nombre corto&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;ushort&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Clase .NET&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.uint16(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;UInt16&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Entero sin signo&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Ancho&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
16&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Intervalo (bits)&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
0 a 65535&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Nombre corto&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;long&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Clase .NET&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.int64(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Int64&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Entero con signo&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Ancho&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
64&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Intervalo (bits)&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
-922337203685477508 a 922337203685477507&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Nombre corto&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;ulong&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Clase .NET&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.uint64(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;UInt64&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Entero sin signo&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Ancho&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
64&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Intervalo (bits)&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
0 a 18446744073709551615&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Nombre corto&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;float&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Clase .NET&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.single(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Single&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Tipo de punto flotante de precisión simple&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Ancho&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
32&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Intervalo (bits)&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
-3,402823e38 a 3,402823e38&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Nombre corto&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;double&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Clase .NET&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.double(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Double&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Tipo de punto flotante de precisión doble&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Ancho&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
64&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Intervalo (bits)&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
-1,79769313486232e308 a 1,79769313486232e308&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Nombre corto&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;char&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Clase .NET&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.char(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Char&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Un carácter Unicode&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Ancho&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
16&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Intervalo (bits)&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Símbolos Unicode utilizados en el texto&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Nombre corto&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;bool&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Clase .NET&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.boolean(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Boolean&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Tipo Boolean lógico&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Ancho&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
8&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Intervalo (bits)&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
True o false&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Nombre corto&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;object&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Clase .NET&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.object(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Object&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Tipo base de todos los otros tipos&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Ancho&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Intervalo (bits)&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Nombre corto&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;string&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Clase .NET&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.string(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;String&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Una secuencia de caracteres&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Ancho&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Intervalo (bits)&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Nombre corto&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;decimal&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Clase .NET&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.decimal(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Decimal&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Tipo preciso fraccionario o integral, que puede representar números decimales con 29 dígitos significativos&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Ancho&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
128&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Intervalo (bits)&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
±1.0&amp;nbsp;×&amp;nbsp;10e−28 a ±7.9&amp;nbsp;×&amp;nbsp;10e28&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Dado que C# representa todos los tipos de datos primitivos como objetos, es posible llamar a un método de objeto de un tipo de datos primitivo. Por ejemplo:&lt;/div&gt;
&lt;div id=&quot;snippetGroup&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-1&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_6c473c84-efa9-4c19-b677-570fdaef787f&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;static&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; Main()
{
    &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; i = 10;
    &lt;span style=&quot;color: blue;&quot;&gt;object&lt;/span&gt; o = i;
    System.Console.WriteLine(o.ToString());
}    


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Esto se logra con la ayuda de las conversiones automáticas boxing y unboxing. Para obtener más información, vea&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/yz2be5wk(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Conversión boxing y unboxing (Guía de programación de C#)&lt;/a&gt;.&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Constantes&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_2&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/ms228360(v=vs.90).aspx#Anchor_2&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle2&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Java y C# proporcionan la capacidad para declarar una variable cuyo valor se especifica en tiempo de compilación y no se puede cambiar en tiempo de ejecución. Java utiliza el modificador de campo&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;final&lt;/span&gt;&amp;nbsp;para declarar este tipo de variable, mientras que C# utiliza la palabra clave&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/e6w8fe1b(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;const&lt;/a&gt;. Además de&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;const&lt;/span&gt;, C# proporciona la palabra clave&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/acdd6hb7(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;readonly&lt;/a&gt;&amp;nbsp;para declarar variables a las que se puede asignar un valor una vez en tiempo de ejecución, ya sea en la instrucción de declaración o en otra parte del constructor. Después de la inicialización, el valor de una variable&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;readonly&lt;/span&gt;&amp;nbsp;no puede cambiar. Un escenario en el que las variables&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;readonly&lt;/span&gt;&amp;nbsp;son útiles es cuando los módulos que se han compilado independientemente tienen que compartir datos como un número de versión. Si el módulo A se actualiza y se vuelve a compilar con un nuevo número de versión, el módulo B se puede inicializar con ese nuevo valor constante sin tener que volver a compilarlo.&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Enumeraciones&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_3&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/ms228360(v=vs.90).aspx#Anchor_3&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle3&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Las enumeraciones se utilizan para agrupar constantes con nombres en forma similar a la forma en que se utilizan en C y C++; no están disponibles en Java. En el ejemplo siguiente se define una enumeración&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Color&lt;/span&gt;&amp;nbsp;sencilla.&lt;/div&gt;
&lt;div id=&quot;snippetGroup1&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-2&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_8b3bf854-2325-40aa-9813-90ef3eff1046&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;enum&lt;/span&gt; Color
{
    Green,   &lt;span style=&quot;color: green;&quot;&gt;//defaults to 0&lt;/span&gt;
    Orange,  &lt;span style=&quot;color: green;&quot;&gt;//defaults to 1&lt;/span&gt;
    Red,     &lt;span style=&quot;color: green;&quot;&gt;//defaults to 2&lt;/span&gt;
    Blue     &lt;span style=&quot;color: green;&quot;&gt;//defaults to 3&lt;/span&gt;
}  


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
También se pueden asignar valores integrales a las enumeraciones, tal como se muestra en la siguiente declaración de enumeración:&lt;/div&gt;
&lt;div id=&quot;snippetGroup2&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-3&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_9d4c8dff-8f82-4631-ba87-934a5c813db7&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;enum&lt;/span&gt; Color2
{
    Green = 10,
    Orange = 20,
    Red = 30,
    Blue = 40
}


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
En el siguiente ejemplo de código se llama al método&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.enum.getnames(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;GetNames&lt;/a&gt;&amp;nbsp;del tipo&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.enum(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Enum&lt;/a&gt;&amp;nbsp;para mostrar las constantes disponibles para una enumeración. Luego, asigna un valor a una enumeración y muestra el valor.&lt;/div&gt;
&lt;div id=&quot;snippetGroup3&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-4&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_314b5793-8746-4b35-b9a3-3c6762663329&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;class&lt;/span&gt; TestEnums
{
    &lt;span style=&quot;color: blue;&quot;&gt;static&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; Main()
    {
        System.Console.WriteLine(&lt;span style=&quot;color: #a31515;&quot;&gt;&quot;Possible color choices: &quot;&lt;/span&gt;);

        &lt;span style=&quot;color: green;&quot;&gt;//Enum.GetNames returns a string array of named constants for the enum.&lt;/span&gt;
        &lt;span style=&quot;color: blue;&quot;&gt;foreach&lt;/span&gt;(&lt;span style=&quot;color: blue;&quot;&gt;string&lt;/span&gt; s &lt;span style=&quot;color: blue;&quot;&gt;in&lt;/span&gt; System.Enum.GetNames(&lt;span style=&quot;color: blue;&quot;&gt;typeof&lt;/span&gt;(Color)))
        {
            System.Console.WriteLine(s);
        }

        Color favorite = Color.Blue;

        System.Console.WriteLine(&lt;span style=&quot;color: #a31515;&quot;&gt;&quot;Favorite Color is {0}&quot;&lt;/span&gt;, favorite);
        System.Console.WriteLine(&lt;span style=&quot;color: #a31515;&quot;&gt;&quot;Favorite Color value is {0}&quot;&lt;/span&gt;, (&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt;) favorite);
    }
}


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Resultado&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_4&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/ms228360(v=vs.90).aspx#Anchor_4&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle4&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Possible color choices:&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Green&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Orange&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Red&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Blue&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Favorite Color is Blue&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Favorite Color value is 3&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Cadenas&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_5&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/ms228360(v=vs.90).aspx#Anchor_5&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle5&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Los tipos de cadena en Java y C# denotan un comportamiento similar con leves diferencias. Ambos tipos de cadena son inmutables, lo que significa que los valores de las cadenas no se pueden cambiar una vez que se han creado las cadenas. En ambos casos, los métodos que parecen modificar el contenido real de una cadena crean en realidad una nueva cadena que se devolverá como resultado, dejando la cadena original sin cambios. El proceso de comparación de los valores de cadena es diferente en C# y Java. Para comparar los valores de cadena en Java, los desarrolladores deben llamar al método&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;equals&lt;/span&gt;&amp;nbsp;de un tipo string, mientras que el operador&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;==&lt;/span&gt;&amp;nbsp;compara los tipos de referencia de forma predeterminada. En C#, los desarrolladores pueden utilizar los operadores&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;==&lt;/span&gt;&amp;nbsp;o&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;!=&lt;/span&gt;&amp;nbsp;para comparar directamente valores de cadena. Aunque una cadena es un tipo de referencia en C#, los operadores&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;==&lt;/span&gt;&amp;nbsp;y&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;!=&lt;/span&gt;&amp;nbsp;compararán, en forma predeterminada, los valores de las cadenas en lugar de las referencias.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Como en Java, los desarrolladores de C# no deben usar el tipo string para concatenar cadenas con el fin de evitar la sobrecarga de crear nuevas clases de cadenas cada vez que se concatene la cadena. En su lugar, los desarrolladores pueden utilizar la clase&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.text.stringbuilder(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;StringBuilder&lt;/a&gt;, que es funcionalmente equivalente a la clase&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;StringBuffer&lt;/span&gt;&amp;nbsp;de Java.&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Literales de cadena&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_6&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/ms228360(v=vs.90).aspx#Anchor_6&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle6&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
C# proporciona la posibilidad de evitar el uso de secuencias de escape como &quot;\t&quot; para la ficha o &quot;\&quot; para los caracteres de barra diagonal inversa dentro de las constantes de cadena. Para ello, simplemente declare la cadena textual mediante el símbolo @ para preceder la asignación del valor de cadena. Los siguientes ejemplos muestran cómo utilizar los caracteres de escape y cómo asignar literales de cadena:&lt;/div&gt;
&lt;div id=&quot;snippetGroup4&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-5&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_528ac79c-1161-491f-9ca5-c174642c4152&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;static&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; Main()
{
    &lt;span style=&quot;color: green;&quot;&gt;//Using escaped characters:&lt;/span&gt;
    &lt;span style=&quot;color: blue;&quot;&gt;string&lt;/span&gt; path1 = &lt;span style=&quot;color: #a31515;&quot;&gt;&quot;\\\\FileShare\\Directory\\file.txt&quot;&lt;/span&gt;;
    System.Console.WriteLine(path1);

    &lt;span style=&quot;color: green;&quot;&gt;//Using String Literals:&lt;/span&gt;
    &lt;span style=&quot;color: blue;&quot;&gt;string&lt;/span&gt; path2 = &lt;span style=&quot;color: #a31515;&quot;&gt;@&quot;\\FileShare\Directory\file.txt&quot;&lt;/span&gt;;
    System.Console.WriteLine(path2);
}


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Conversión y conversión de tipos&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_7&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/ms228360(v=vs.90).aspx#Anchor_7&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle7&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Java y C# siguen reglas similares para la conversión automática y la conversión de tipos de datos.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Al igual que Java, C# admite conversiones de tipo implícitas y explícitas. En el caso de conversiones de ampliación, las conversiones son implícitas. Por ejemplo, la siguiente conversión de&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;int&lt;/span&gt;&amp;nbsp;a&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;long&lt;/span&gt;&amp;nbsp;es implícita, como en Java:&lt;/div&gt;
&lt;div id=&quot;snippetGroup5&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-6&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_e5b4bfe8-6644-48f8-a6ac-2f157a53a0e0&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; int1 = 5;
&lt;span style=&quot;color: blue;&quot;&gt;long&lt;/span&gt; long1 = int1;  &lt;span style=&quot;color: green;&quot;&gt;//implicit conversion&lt;/span&gt;


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
La siguiente es una lista de conversiones implícitas entre los tipos de datos de .NET Framework:&lt;/div&gt;
&lt;div class=&quot;caption&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;tableSection&quot;&gt;
&lt;div class=&quot;contentTableWrapper&quot; style=&quot;overflow-x: auto;&quot;&gt;
&lt;table responsive=&quot;true&quot; style=&quot;border-collapse: collapse; border: 1px solid rgb(187, 187, 187); margin-bottom: 20px; margin-top: 20px; word-break: break-word;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;th style=&quot;background-color: #ededed; border: 1px solid rgb(187, 187, 187); color: #636363; padding: 10px 8px;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 0px;&quot;&gt;
Tipo de origen&lt;/div&gt;
&lt;/th&gt;&lt;th style=&quot;background-color: #ededed; border: 1px solid rgb(187, 187, 187); color: #636363; padding: 10px 8px;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 0px;&quot;&gt;
Tipo de destino&lt;/div&gt;
&lt;/th&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Byte&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
short, ushort, int, uint, long, ulong, float, double o decimal&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Sbyte&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
short, int, long, float, double o decimal&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Int&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
long, float, double o decimal&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Uint&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
long, ulong, float, double o decimal&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Short&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
int, long, float, double o decimal&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Ushort&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
int, uint, long, ulong, float, double o decimal&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Long&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
float, double o decimal&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Ulong&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
float, double o decimal&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Float&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
double&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Char&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
ushort, int, uint, long, ulong, float, double o decimal&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Puede convertir el tipo de expresiones que desee convertir explícitamente usando la misma sintaxis que en Java:&lt;/div&gt;
&lt;div id=&quot;snippetGroup6&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-7&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_6d13677e-7e68-4535-8e96-e90ab8f314ef&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;long&lt;/span&gt; long2 = 5483;
&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; int2 = (&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt;)long2;  &lt;span style=&quot;color: green;&quot;&gt;//explicit conversion&lt;/span&gt;


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
La tabla siguiente muestra las conversiones explícitas.&lt;/div&gt;
&lt;div class=&quot;caption&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;tableSection&quot;&gt;
&lt;div class=&quot;contentTableWrapper&quot; style=&quot;overflow-x: auto;&quot;&gt;
&lt;table responsive=&quot;true&quot; style=&quot;border-collapse: collapse; border: 1px solid rgb(187, 187, 187); margin-bottom: 20px; margin-top: 20px; word-break: break-word;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;th style=&quot;background-color: #ededed; border: 1px solid rgb(187, 187, 187); color: #636363; padding: 10px 8px;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 0px;&quot;&gt;
Tipo de origen&lt;/div&gt;
&lt;/th&gt;&lt;th style=&quot;background-color: #ededed; border: 1px solid rgb(187, 187, 187); color: #636363; padding: 10px 8px;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 0px;&quot;&gt;
Tipo de destino&lt;/div&gt;
&lt;/th&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Byte&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
sbyte o char&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Sbyte&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
byte, ushort, uint, ulong o char&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Int&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
sbyte, byte, short, ushort, uint, ulong o char&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Uint&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
sbyte, byte, short, ushort, int o char&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Short&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
sbyte, byte, ushort, uint, ulong o char&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Ushort&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
sbyte, byte, short o char&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Long&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
sbyte, byte, short, ushort, int, uint, ulong o char&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Ulong&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
sbyte, byte, short, ushort, int, uint, ulong o char&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Float&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
sbyte, byte, short, ushort, int, uint, long, ulong, char o decimal&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Double&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
sbyte, byte, short, ushort, int, uint, long, ulong, char o decimal&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Char&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
sbyte, byte o short&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td data-th=&quot;Tipo de origen&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
Decimal&lt;/div&gt;
&lt;/td&gt;&lt;td data-th=&quot;Tipo de destino&quot; style=&quot;border: 1px solid rgb(187, 187, 187); color: #2a2a2a; min-width: 80px; padding: 10px 8px; vertical-align: top;&quot;&gt;&lt;div style=&quot;line-height: 18px; padding-bottom: 0px;&quot;&gt;
sbyte, byte, short, ushort, int, uint, long, ulong, char, float o double&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Tipos de referencia y valor&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_8&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/ms228360(v=vs.90).aspx#Anchor_8&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle8&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
C# admite dos tipos de variables:&lt;/div&gt;
&lt;ul&gt;
&lt;li style=&quot;list-style-image: none;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Tipos de valor&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Estos son los tipos de datos primitivos integrados, como char, int y float, así como también los tipos definidos por el usuario declarados con la estructura.&lt;/div&gt;
&lt;/li&gt;
&lt;li style=&quot;list-style-image: none;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Tipos de referencia&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Clases y otros tipos de datos complejos que se construyen a partir de los tipos primitivos. Las variables de estos tipos no contienen una instancia del tipo, sino sólo una referencia a una instancia.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Si se crean dos variables del tipo de valor, i y j, como se muestra a continuación, i y j son completamente independientes entre sí:&lt;/div&gt;
&lt;div id=&quot;snippetGroup7&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-8&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_3f774f69-152c-4e20-923c-36ec9549d8bb&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; i = 10;
&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; j = 20;


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Tienen ubicaciones de memoria independiente:&lt;/div&gt;
&lt;span class=&quot;media&quot;&gt;&lt;img alt=&quot;Direcciones de memoria separadas por tipos de valor&quot; id=&quot;CSharpForJava&quot; src=&quot;https://i-msdn.sec.s-msft.com/dynimg/IC50403.gif&quot; style=&quot;border: 0px; max-width: 100%;&quot; title=&quot;Direcciones de memoria separadas por tipos de valor&quot; xmlns=&quot;&quot; /&gt;&lt;/span&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Si cambia el valor de una de estas variables, la otra no se verá afectada de forma natural. Por ejemplo, si tiene una expresión como la siguiente, aún no existe ninguna conexión entre las variables:&lt;/div&gt;
&lt;div id=&quot;snippetGroup8&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-9&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_429ee88c-e6f4-4019-b5d4-0c71bd2f0211&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; k = i;


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Es decir, si cambia el valor de i, k permanecerá con el valor que tenía i en el momento de la asignación.&lt;/div&gt;
&lt;div id=&quot;snippetGroup9&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-10&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_73c35ad7-125d-44f5-8818-804439f89ccd&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;i = 30;

System.Console.WriteLine(i.ToString());  &lt;span style=&quot;color: green;&quot;&gt;// 30&lt;/span&gt;
System.Console.WriteLine(k.ToString());  &lt;span style=&quot;color: green;&quot;&gt;// 10&lt;/span&gt;


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Sin embargo, los tipos de referencia actúan de forma diferente. Por ejemplo, podría declarar dos variables de la siguiente forma:&lt;/div&gt;
&lt;div id=&quot;snippetGroup10&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-11&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_ea0258df-9280-4260-a2ad-01edbcb42cec&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;Employee ee1 = &lt;span style=&quot;color: blue;&quot;&gt;new&lt;/span&gt; Employee();
Employee ee2 = ee1;


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Ahora, puesto que las clases son tipos de referencia de C#,&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;ee1&lt;/span&gt;&amp;nbsp;se conoce como referencia a&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Employee&lt;/span&gt;. La primera de las dos líneas anteriores crea una instancia de&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Employee&lt;/span&gt;&amp;nbsp;en memoria y define&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;ee1&lt;/span&gt;&amp;nbsp;para que haga referencia a ella. Así, cuando se establece&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;ee2&lt;/span&gt;&amp;nbsp;para que sea igual a&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;ee1&lt;/span&gt;, el primero contiene un duplicado de la referencia a la clase de la memoria. Si ahora cambia las propiedades de&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;ee2&lt;/span&gt;, las propiedades de&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;ee1&lt;/span&gt;&amp;nbsp;reflejan estos cambios, ya que ambas apuntan al mismo objeto de la memoria, tal como aparece a continuación:&lt;/div&gt;
&lt;span class=&quot;media&quot;&gt;&lt;img alt=&quot;Ubicaciones de memoria para tipos de referencia&quot; id=&quot;CSharpForJava2&quot; src=&quot;https://i-msdn.sec.s-msft.com/dynimg/IC150289.gif&quot; style=&quot;border: 0px; max-width: 100%;&quot; title=&quot;Ubicaciones de memoria para tipos de referencia&quot; xmlns=&quot;&quot; /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Conversiones boxing y unboxing&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_9&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/ms228360(v=vs.90).aspx#Anchor_9&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle9&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
El proceso de convertir el tipo de un valor en el tipo de una referencia se denomina conversión boxing. El proceso inverso, convertir el tipo de una referencia en el tipo de un valor, se denomina conversión unboxing. Esto queda reflejado en el ejemplo de código siguiente:&lt;/div&gt;
&lt;div id=&quot;snippetGroup11&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-12&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_44b2b382-8c53-4539-9ee0-9908d3cc5baa&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; i = 123;      &lt;span style=&quot;color: green;&quot;&gt;// a value type&lt;/span&gt;
&lt;span style=&quot;color: blue;&quot;&gt;object&lt;/span&gt; o = i;     &lt;span style=&quot;color: green;&quot;&gt;// boxing&lt;/span&gt;
&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; j = (&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt;)o;  &lt;span style=&quot;color: green;&quot;&gt;// unboxing&lt;/span&gt;


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Java requiere que esas conversiones se realicen manualmente. Los tipos de datos primitivos se pueden convertir en objetos de clases contenedoras construyendo esos objetos o aplicando la conversión boxing. De igual manera, los valores de los tipos de datos primitivos se pueden extraer de los objetos de las clases contenedoras llamando a un método adecuado de estos objetos, o realizar una conversión unboxing. Para obtener más información acerca de las conversiones boxing y unboxing, vea&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/yz2be5wk(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Conversión boxing y unboxing (Guía de programación de C#)&lt;/a&gt;.&lt;/div&gt;
&lt;h1 class=&quot;title&quot; style=&quot;font-size: 2.769em; font-stretch: normal; font-weight: normal; line-height: 1.167; margin-top: 0px;&quot;&gt;
Conversión boxing y unboxing (Guía de programación de C#)&lt;/h1&gt;
&lt;div style=&quot;clear: both; line-height: 17.55px;&quot;&gt;
&lt;/div&gt;
&lt;div id=&quot;mainSection&quot; style=&quot;clear: both; line-height: 17.55px;&quot;&gt;
&lt;div id=&quot;mainBody&quot;&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
La conversión boxing es el proceso de convertir&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/s1ax56ch(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Tipos de valores (Referencia de C#)&lt;/a&gt;&amp;nbsp;en el tipo&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;object&lt;/span&gt;&amp;nbsp;o en cualquier tipo de interfaz implementado por este tipo de valor. Cuando CLR aplica la conversión boxing a un tipo de valor, ajusta el valor dentro de un elemento System.Object y lo almacena en el montón administrado. La conversión unboxing extrae el tipo de valor del objeto. En el ejemplo siguiente, se aplica la&amp;nbsp;&lt;span class=&quot;parameter&quot; style=&quot;font-style: italic;&quot;&gt;conversión boxing&lt;/span&gt;&amp;nbsp;a la variable de tipo entero&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;i&lt;/span&gt;&amp;nbsp;y esta se asigna al objeto&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;o&lt;/span&gt;.&lt;/div&gt;
&lt;div class=&quot;introduction&quot;&gt;
&lt;div id=&quot;snippetGroup&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-1&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_e4264ec2-3545-4329-85d2-19e37cc8dcf4&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; i = 123;
&lt;span style=&quot;color: blue;&quot;&gt;object&lt;/span&gt; o = (&lt;span style=&quot;color: blue;&quot;&gt;object&lt;/span&gt;)i;  &lt;span style=&quot;color: green;&quot;&gt;// boxing&lt;/span&gt;


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
A continuación, se puede aplicar la conversión unboxing al objeto&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;o&amp;nbsp;&lt;/span&gt;y asignarlo a la variable de entero&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;i&lt;/span&gt;:&lt;/div&gt;
&lt;div id=&quot;snippetGroup1&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-2&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_4f304e24-ba42-4e78-9b0b-5b3a4ee8d4bc&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;o = 123;
i = (&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt;)o;  &lt;span style=&quot;color: green;&quot;&gt;// unboxing&lt;/span&gt;


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Rendimiento&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_0&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/yz2be5wk(v=vs.90).aspx#Anchor_0&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle0&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Con relación a las asignaciones simples, las conversiones boxing y unboxing son procesos que consumen muchos recursos. Cuando se aplica la conversión boxing a un tipo de valor, se debe asignar y construir un objeto completamente nuevo. En menor grado, la conversión de tipos requerida para aplicar la conversión unboxing también es costosa. Para obtener más información, vea&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/ms173196(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Rendimiento (Guía de programación de C#)&lt;/a&gt;.&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Boxing&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_1&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/yz2be5wk(v=vs.90).aspx#Anchor_1&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle1&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
La conversión boxing se utiliza para almacenar tipos de valor en el montón de recolección de elementos no utilizados. Boxing es una conversión implícita de&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/s1ax56ch(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;Tipos de valores (Referencia de C#)&lt;/a&gt;&amp;nbsp;al tipo&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;object&lt;/span&gt;&amp;nbsp;o a cualquier tipo de interfaz implementado por este tipo de valor. Al aplicar la conversión boxing a un tipo de valor se asigna una instancia de objeto en el montón y copia el valor en el nuevo objeto.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Considere la siguiente declaración de una variable de tipo de valor:&lt;/div&gt;
&lt;div id=&quot;snippetGroup2&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-3&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_fa2b2354-203e-4a3a-a0a8-84a8ca8feadb&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; i = 123;


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
La siguiente instrucción aplica implícitamente la operación de boxing sobre la variable&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;i&lt;/span&gt;:&lt;/div&gt;
&lt;div id=&quot;snippetGroup3&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-4&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_0004194b-d4eb-4cf0-8a69-f6c3d2192e58&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;object&lt;/span&gt; o = i;  &lt;span style=&quot;color: green;&quot;&gt;// Implicit boxing&lt;/span&gt;


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
El resultado de esta instrucción es crear una referencia de objeto&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;o&lt;/span&gt;&amp;nbsp;en la pila que hace referencia a un valor del tipo&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;int&lt;/span&gt;&amp;nbsp;en el montón. Este valor es una copia del valor del tipo de valor asignado a la variable&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;i&lt;/span&gt;. La diferencia entre las dos variables,&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;i&lt;/span&gt;&amp;nbsp;y&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;o&lt;/span&gt;, se muestra en la siguiente ilustración.&lt;/div&gt;
&lt;span class=&quot;media&quot;&gt;&lt;span class=&quot;caption&quot;&gt;Conversión Boxing&lt;/span&gt;&lt;br /&gt;&lt;img alt=&quot;Gráfico BoxingConversion&quot; id=&quot;vcBoxingConversion&quot; src=&quot;https://i-msdn.sec.s-msft.com/dynimg/IC97798.gif&quot; style=&quot;border: 0px; max-width: 100%;&quot; title=&quot;Gráfico BoxingConversion&quot; xmlns=&quot;&quot; /&gt;&lt;/span&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
También es posible realizar la conversión boxing de manera explícita, tal como se muestra en el ejemplo siguiente, pero ésta nunca es necesaria:&lt;/div&gt;
&lt;div id=&quot;snippetGroup4&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-5&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_af7a1970-e396-49d8-aae0-5b51ae1f8695&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; i = 123;
&lt;span style=&quot;color: blue;&quot;&gt;object&lt;/span&gt; o = (&lt;span style=&quot;color: blue;&quot;&gt;object&lt;/span&gt;)i;  &lt;span style=&quot;color: green;&quot;&gt;// explicit boxing&lt;/span&gt;


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Descripción&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_2&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/yz2be5wk(v=vs.90).aspx#Anchor_2&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle2&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Este ejemplo convierte una variable de entero&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;i&lt;/span&gt;&amp;nbsp;en un objeto&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;o&lt;/span&gt;&amp;nbsp;mediante la conversión boxing. A continuación, el valor almacenado en la variable&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;i&lt;/span&gt;se cambia de&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;123&lt;/span&gt;&amp;nbsp;a&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;456&lt;/span&gt;. El ejemplo muestra que el tipo de valor original y el objeto empaquetado usan ubicaciones de memoria independientes y, por consiguiente, pueden almacenar valores diferentes.&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Ejemplo&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_3&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/yz2be5wk(v=vs.90).aspx#Anchor_3&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;exampleToggle&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div id=&quot;snippetGroup5&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-6&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_9c90a92b-3b51-454a-abbe-38916b9f9870&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;class&lt;/span&gt; TestBoxing
{
    &lt;span style=&quot;color: blue;&quot;&gt;static&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; Main()
    {
        &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; i = 123;
        &lt;span style=&quot;color: blue;&quot;&gt;object&lt;/span&gt; o = i;  &lt;span style=&quot;color: green;&quot;&gt;// Implicit boxing&lt;/span&gt;

        i = 456;  &lt;span style=&quot;color: green;&quot;&gt;// Change the contents of i&lt;/span&gt;

        System.Console.WriteLine(&lt;span style=&quot;color: #a31515;&quot;&gt;&quot;The value-type value = {0}&quot;&lt;/span&gt;, i);
        System.Console.WriteLine(&lt;span style=&quot;color: #a31515;&quot;&gt;&quot;The object-type value = {0}&quot;&lt;/span&gt;, o);
    }
}
&lt;span style=&quot;color: green;&quot;&gt;/* Output:
    The value-type value = 456
    The object-type value = 123
*/&lt;/span&gt;


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
El ejemplo siguiente muestra un caso de conversión unboxing no válida y la excepción&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;InvalidCastException&lt;/span&gt;resultante. Si se utiliza&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;try&lt;/span&gt;&amp;nbsp;y&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;catch&lt;/span&gt;, se muestra un mensaje de error cuando se produce el error.&lt;/div&gt;
&lt;div id=&quot;snippetGroup6&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-7&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_7a9769b1-d527-4e03-9521-d1a65508095c&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;class&lt;/span&gt; TestUnboxing
{
    &lt;span style=&quot;color: blue;&quot;&gt;static&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; Main()
    {
        &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; i = 123;
        &lt;span style=&quot;color: blue;&quot;&gt;object&lt;/span&gt; o = i;  &lt;span style=&quot;color: green;&quot;&gt;// implicit boxing&lt;/span&gt;

        &lt;span style=&quot;color: blue;&quot;&gt;try&lt;/span&gt;
        {
            &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; j = (&lt;span style=&quot;color: blue;&quot;&gt;short&lt;/span&gt;)o;  &lt;span style=&quot;color: green;&quot;&gt;// attempt to unbox&lt;/span&gt;

            System.Console.WriteLine(&lt;span style=&quot;color: #a31515;&quot;&gt;&quot;Unboxing OK.&quot;&lt;/span&gt;);
        }
        &lt;span style=&quot;color: blue;&quot;&gt;catch&lt;/span&gt; (System.InvalidCastException e)
        {
            System.Console.WriteLine(&lt;span style=&quot;color: #a31515;&quot;&gt;&quot;{0} Error: Incorrect unboxing.&quot;&lt;/span&gt;, e.Message);
        }
    }
}


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Este programa produce el siguiente resultado:&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Specified cast is not valid. Error: Incorrect unboxing.&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Si cambia la instrucción:&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-8&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_8e9b0e17-0988-46a2-9853-a3b760ec69ee&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;int j = (short) o;
&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
a:&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-9&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_6a52a4d2-265d-477e-8703-e6bc3bcd9f10&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;int j = (int) o;
&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
la conversión se realizará y se obtendrá el resultado:&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Unboxing OK.&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Unboxing&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_4&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/yz2be5wk(v=vs.90).aspx#Anchor_4&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle3&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Unboxing es una conversión explícita del tipo&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;object&lt;/span&gt;&amp;nbsp;a un&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/s1ax56ch(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;tipo de valor&lt;/a&gt;&amp;nbsp;o de un tipo de interfaz a un tipo de valor que implementa la interfaz. Una operación de unboxing consiste en:&lt;/div&gt;
&lt;ul&gt;
&lt;li style=&quot;list-style-image: none;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Comprobar la instancia de objeto para asegurar que se trata de un valor de conversión boxing del tipo de valor dado.&lt;/div&gt;
&lt;/li&gt;
&lt;li style=&quot;list-style-image: none;&quot;&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Copiar el valor de la instancia en la variable de tipo de valor.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Las siguientes instrucciones muestran las operaciones de boxing y unboxing:&lt;/div&gt;
&lt;div id=&quot;snippetGroup7&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-10&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_efc4cf7a-bc37-460a-8bc3-c6ae2eb299a4&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; i = 123;      &lt;span style=&quot;color: green;&quot;&gt;// a value type&lt;/span&gt;
&lt;span style=&quot;color: blue;&quot;&gt;object&lt;/span&gt; o = i;     &lt;span style=&quot;color: green;&quot;&gt;// boxing&lt;/span&gt;
&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; j = (&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt;)o;  &lt;span style=&quot;color: green;&quot;&gt;// unboxing&lt;/span&gt;


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
En la ilustración siguiente se muestra el resultado de las instrucciones anteriores.&lt;/div&gt;
&lt;span class=&quot;media&quot;&gt;&lt;span class=&quot;caption&quot;&gt;Conversión Unboxing&lt;/span&gt;&lt;br /&gt;&lt;img alt=&quot;Gráfico de conversión UnBoxing&quot; id=&quot;vcUnBoxingConversion&quot; src=&quot;https://i-msdn.sec.s-msft.com/dynimg/IC135292.gif&quot; style=&quot;border: 0px; max-width: 100%;&quot; title=&quot;Gráfico de conversión UnBoxing&quot; xmlns=&quot;&quot; /&gt;&lt;/span&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Para que la conversión Unboxing de tipos de valores sea correcta en tiempo de ejecución, el elemento al que se aplica debe ser una referencia a un objeto creado previamente mediante la conversión Boxing de una instancia de dicho tipo de valor. Si se intenta aplicar la conversión unboxing a&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;null&lt;/span&gt;&amp;nbsp;o una referencia a un tipo de valor incompatible, se producirá una excepción&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/system.invalidcastexception(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;InvalidCastException&lt;/a&gt;.&lt;/div&gt;
&lt;h1 class=&quot;title&quot; style=&quot;font-size: 2.769em; font-stretch: normal; font-weight: normal; line-height: 1.167; margin-top: 0px;&quot;&gt;
Herencia y clases derivadas (C# y Java)&lt;/h1&gt;
&lt;div class=&quot;lw_vs&quot; style=&quot;line-height: 17.55px; margin-bottom: 35px; margin-top: -8px; padding-bottom: 2px; position: relative;&quot;&gt;
&lt;span style=&quot;color: #2a2a2a; line-height: 18px;&quot;&gt;La funcionalidad de una clase existente se puede extender al crear una nueva clase que se deriva de ella. La clase derivada hereda las propiedades de la clase base y es posible agregar o reemplazar métodos y propiedades según sea necesario.&lt;/span&gt;&lt;/div&gt;
&lt;div id=&quot;mainSection&quot; style=&quot;clear: both; line-height: 17.55px;&quot;&gt;
&lt;div id=&quot;mainBody&quot;&gt;
&lt;div class=&quot;introduction&quot;&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
En C#, el operador&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;:&lt;/span&gt;, que equivale a&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;extends&lt;/span&gt;&amp;nbsp;e&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;implements&lt;/span&gt;&amp;nbsp;en Java, define la herencia e implementación de interfaces. La clase base siempre debe estar en el extremo izquierdo en la declaración de clase.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Como Java, C# no admite herencia múltiple, lo que significa que las clases no pueden heredar más de una clase. Sin embargo, se pueden utilizar interfaces para ese propósito, de la misma manera que en Java.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
El código siguiente define una clase denominada&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;CoOrds&lt;/span&gt;&amp;nbsp;con dos variables miembro privadas&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;x&lt;/span&gt;&amp;nbsp;e&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;y&lt;/span&gt;&amp;nbsp;que representan la posición del punto. Se tiene acceso a estas variables mediante propiedades denominadas&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;X&lt;/span&gt;&amp;nbsp;e&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Y&lt;/span&gt;, respectivamente:&lt;/div&gt;
&lt;div id=&quot;snippetGroup&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-1&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_26f571ed-39ee-4711-9c57-e8a67f762cb0&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;class&lt;/span&gt; CoOrds
{
    &lt;span style=&quot;color: blue;&quot;&gt;private&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; x, y;

    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; CoOrds()  &lt;span style=&quot;color: green;&quot;&gt;// constructor&lt;/span&gt;
    {
        x = 0;
        y = 0;
    }

    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; X
    {
        &lt;span style=&quot;color: blue;&quot;&gt;get&lt;/span&gt; { &lt;span style=&quot;color: blue;&quot;&gt;return&lt;/span&gt; x; }
        &lt;span style=&quot;color: blue;&quot;&gt;set&lt;/span&gt; { x = value; }
    }

    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; Y
    {
        &lt;span style=&quot;color: blue;&quot;&gt;get&lt;/span&gt; { &lt;span style=&quot;color: blue;&quot;&gt;return&lt;/span&gt; y; }
        &lt;span style=&quot;color: blue;&quot;&gt;set&lt;/span&gt; { y = value; }
    }
}


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Una nueva clase, denominada&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;ColorCoOrds&lt;/span&gt;, se deriva de la clase&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;CoOrds&lt;/span&gt;&amp;nbsp;del siguiente modo:&lt;/div&gt;
&lt;div id=&quot;snippetGroup1&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-2&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_b8d1e290-d17c-4630-b9c0-4f1cdfaf31a6&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;class&lt;/span&gt; ColorCoOrds : CoOrds


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Luego,&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;ColorCoOrds&lt;/span&gt;&amp;nbsp;hereda todos los campos y métodos de la clase base, a la cual se pueden agregar nuevos campos y métodos para proporcionar características adicionales en la clase derivada, según sea necesario. En este ejemplo, se agrega un miembro privado y descriptores de acceso para agregar color a la clase:&lt;/div&gt;
&lt;div id=&quot;snippetGroup2&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-3&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_4d2eabab-6536-4e7e-bd79-3aa53a1d335b&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;class&lt;/span&gt; ColorCoOrds : CoOrds
{
    &lt;span style=&quot;color: blue;&quot;&gt;private&lt;/span&gt; System.Drawing.Color screenColor;


    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; ColorCoOrds()  &lt;span style=&quot;color: green;&quot;&gt;// constructor&lt;/span&gt;
    {
        screenColor = System.Drawing.Color.Red;
    }

    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; System.Drawing.Color ScreenColor
    {
        &lt;span style=&quot;color: blue;&quot;&gt;get&lt;/span&gt; { &lt;span style=&quot;color: blue;&quot;&gt;return&lt;/span&gt; screenColor; }
        &lt;span style=&quot;color: blue;&quot;&gt;set&lt;/span&gt; { screenColor = value; }
    }
}


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
El constructor de la clase derivada llama implícitamente al constructor de la clase base o la superclase, en terminología de Java. En caso de herencia, se llama a todos los constructores de clase base antes que a los constructores de la clase derivada en el orden en que las clases aparecen en la jerarquía de clases.&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Convertir un tipo a una clase base&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div active&quot; id=&quot;Anchor_0&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: visible; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/ms228387(v=vs.90).aspx#Anchor_0&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle0&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Como en Java, no se puede utilizar una referencia a una clase base para tener acceso a los miembros y métodos de una clase derivada, aunque la referencia de la clase base pueda contener una referencia válida a un objeto del tipo derivado.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Implícitamente, se puede hacer referencia a una clase derivada con una referencia al tipo derivado:&lt;/div&gt;
&lt;div id=&quot;snippetGroup3&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-4&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_b4e425b3-c174-4a63-9b0a-d1942cae9bc9&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;ColorCoOrds color1 = &lt;span style=&quot;color: blue;&quot;&gt;new&lt;/span&gt; ColorCoOrds();
CoOrds coords1 = color1;


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
En este código, la referencia de clase base,&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;coords1&lt;/span&gt;, contiene una copia de la referencia&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;color1&lt;/span&gt;.&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;La palabra clave base&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_1&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/ms228387(v=vs.90).aspx#Anchor_1&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle1&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Se puede tener acceso a los miembros de clase base en una subclase incluso cuando los miembros de base se reemplazan en la superclase utilizando la palabra clave&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/hfw7t1ce(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;base&lt;/a&gt;. Por ejemplo, puede crear una clase derivada que contenga un método con la misma firma que la clase base. Si se precede ese método con la palabra clave&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/435f1dw2(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;new&lt;/a&gt;, se indica que se trata de un método totalmente nuevo que pertenece a la clase derivada. También se podría proporcionar un método para tener acceso al método original de la clase base con la palabra clave base.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Por ejemplo, supongamos que la clase base&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;CoOrds&lt;/span&gt;&amp;nbsp;tuviera un método denominado&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Invert()&lt;/span&gt;&amp;nbsp;que intercambia las coordenadas&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;x&lt;/span&gt;&amp;nbsp;e&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;y&lt;/span&gt;. Se podría proporcionar un sustituto para este método en la clase derivada&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;ColorCoOrds&lt;/span&gt;&amp;nbsp;con un código como éste:&lt;/div&gt;
&lt;div id=&quot;snippetGroup4&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-5&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_4935b083-2374-43e8-9968-fa6654594a29&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;new&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; Invert()
{
    &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; temp = X;
    X = Y;
    Y = temp;
    screenColor = System.Drawing.Color.Gray;
}


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Como se puede observar, este método intercambia&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;x&lt;/span&gt;&amp;nbsp;e&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;y&lt;/span&gt;, luego establece el color del punto en gris. Se podría proporcionar acceso a la implementación base para este método creando otro método en&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;ColorCoOrds&lt;/span&gt;, como el de este ejemplo:&lt;/div&gt;
&lt;div id=&quot;snippetGroup5&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-6&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_45ac14b8-208d-4592-ba9e-0744c4aad59a&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; BaseInvert()
{
    &lt;span style=&quot;color: blue;&quot;&gt;base&lt;/span&gt;.Invert();
}


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
A continuación, se invoca el método base en un objeto&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;ColorCoOrds&lt;/span&gt;&amp;nbsp;mediante una llamada al método&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;BaseInvert()&lt;/span&gt;.&lt;/div&gt;
&lt;div id=&quot;snippetGroup6&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-7&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_aa3e1123-0396-4e3b-93d5-a603a41f473c&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;ColorCoOrds color1 = &lt;span style=&quot;color: blue;&quot;&gt;new&lt;/span&gt; ColorCoOrds();
color1.BaseInvert();


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Recuerde que se obtendría el mismo efecto si se asignara una referencia de la clase base a una instancia de&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;ColorCoOrds&lt;/span&gt;&amp;nbsp;y, a continuación, se tuviera acceso a sus métodos:&lt;/div&gt;
&lt;div id=&quot;snippetGroup7&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-8&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_10311796-fbb1-4b42-8c29-e4d79302005e&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;CoOrds coords1 = color1;
coords1.Invert();


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Seleccionar los constructores&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_2&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/ms228387(v=vs.90).aspx#Anchor_2&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle2&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Los objetos de clase base siempre se construyen antes que cualquier clase derivada. De esta forma, el constructor de la clase base se ejecuta antes que el constructor de la clase derivada. Si la clase base tiene más de un constructor, la clase derivada puede decidir a qué constructor se va a llamar. Por ejemplo, podría modificar la clase&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;CoOrds&lt;/span&gt;&amp;nbsp;para agregar un segundo constructor, del siguiente modo:&lt;/div&gt;
&lt;div id=&quot;snippetGroup8&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-9&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_c8e61ec7-e5bb-4c16-a477-b4085e697fd4&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;class&lt;/span&gt; CoOrds
{
    &lt;span style=&quot;color: blue;&quot;&gt;private&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; x, y;

    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; CoOrds()
    {
        x = 0;
        y = 0;
    }

    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; CoOrds(&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; x, &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; y)
    {
        &lt;span style=&quot;color: blue;&quot;&gt;this&lt;/span&gt;.x = x;
        &lt;span style=&quot;color: blue;&quot;&gt;this&lt;/span&gt;.y = y;
    }
}


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Luego, podría cambiar la clase&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;ColorCoOrds&lt;/span&gt;&amp;nbsp;para utilizar uno de los constructores disponibles mediante la palabra clave base:&lt;/div&gt;
&lt;div id=&quot;snippetGroup9&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-10&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_0c9421fd-327c-414a-9f7d-c4ed8503bf82&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;class&lt;/span&gt; ColorCoOrds : CoOrds
{
    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; System.Drawing.Color color;

    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; ColorCoOrds() : &lt;span style=&quot;color: blue;&quot;&gt;base&lt;/span&gt; ()
    {
        color = System.Drawing.Color.Red;
    }

    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; ColorCoOrds(&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; x, &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; y) : &lt;span style=&quot;color: blue;&quot;&gt;base&lt;/span&gt; (x, y)
    {
        color = System.Drawing.Color.Red;
    }
}


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
En Java, esta funcionalidad se implementa con la palabra clave&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;super&lt;/span&gt;.&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Reemplazar el método&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_3&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/ms228387(v=vs.90).aspx#Anchor_3&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle3&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Una clase derivada puede reemplazar el método de una clase base si se proporciona una nueva implementación del método declarado. Una diferencia importante entre Java y C# es que, de forma predeterminada, los métodos de Java se marcan como virtuales, mientras que en C# los métodos se deben marcar explícitamente como virtuales con el modificador&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/9fkccyh4(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;virtual&lt;/a&gt;. Los descriptores de acceso de propiedades, así como los métodos, se pueden reemplazar de manera muy similar.&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Métodos virtuales&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_4&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/ms228387(v=vs.90).aspx#Anchor_4&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle4&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Un método que será reemplazado en una clase derivada se declara con el modificador&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;virtual&lt;/span&gt;. En una clase derivada, el método reemplazado se declara con el modificador&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/ebca9ah3(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;override&lt;/a&gt;.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
El modificador&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;override&lt;/span&gt;&amp;nbsp;denota un método o propiedad de una clase derivada que reemplaza un método o propiedad con el mismo nombre y firma en la clase base. El método base, que será reemplazado, se debe declarar como&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;virtual&lt;/span&gt;,&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/sf985hc5(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;abstract&lt;/a&gt;&amp;nbsp;u&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;override&lt;/span&gt;: no es posible reemplazar un método no virtual o estático de esta forma. El método o la propiedad reemplazados y aquellos que se reemplazan deben tener los mismos modificadores de nivel de acceso.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
El ejemplo siguiente muestra un método virtual denominado&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;StepUp&lt;/span&gt;&amp;nbsp;que es reemplazado en una clase derivada con el modificador que lo reemplaza:&lt;/div&gt;
&lt;div id=&quot;snippetGroup10&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-11&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_da2299ea-0011-4135-a4c7-a799c96d2127&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;class&lt;/span&gt; CountClass 
{
    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; count; 

    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; CountClass(&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; startValue)  &lt;span style=&quot;color: green;&quot;&gt;// constructor&lt;/span&gt;
    {
        count = startValue;
    }

    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;virtual&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; StepUp()
    {
        &lt;span style=&quot;color: blue;&quot;&gt;return&lt;/span&gt; ++count;
    }
}

&lt;span style=&quot;color: blue;&quot;&gt;class&lt;/span&gt; Count100Class : CountClass 
{
    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; Count100Class(&lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; x) : &lt;span style=&quot;color: blue;&quot;&gt;base&lt;/span&gt;(x)  &lt;span style=&quot;color: green;&quot;&gt;// constructor &lt;/span&gt;
    {
    }

    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;override&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; StepUp()
    {
        &lt;span style=&quot;color: blue;&quot;&gt;return&lt;/span&gt; ((&lt;span style=&quot;color: blue;&quot;&gt;base&lt;/span&gt;.count) + 100);
    }
}

&lt;span style=&quot;color: blue;&quot;&gt;class&lt;/span&gt; TestCounters
{
    &lt;span style=&quot;color: blue;&quot;&gt;static&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; Main()
    {
        CountClass counter1 = &lt;span style=&quot;color: blue;&quot;&gt;new&lt;/span&gt; CountClass(1);
        CountClass counter100 = &lt;span style=&quot;color: blue;&quot;&gt;new&lt;/span&gt; Count100Class(1);

        System.Console.WriteLine(&lt;span style=&quot;color: #a31515;&quot;&gt;&quot;Count in base class = {0}&quot;&lt;/span&gt;, counter1.StepUp());
        System.Console.WriteLine(&lt;span style=&quot;color: #a31515;&quot;&gt;&quot;Count in derived class = {0}&quot;&lt;/span&gt;, counter100.StepUp());
    } 
}


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Cuando se ejecuta este código, se observa que el constructor de la clase derivada utiliza el cuerpo del método proporcionado en la clase base, lo que permite inicializar el recuento de miembros sin duplicar el código. Éste es el resultado:&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Count in base class = 2&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Count in derived class = 101&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Clases abstractas&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_5&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/ms228387(v=vs.90).aspx#Anchor_5&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle5&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Una clase abstracta declara uno o más métodos o propiedades como abstractos. La clase que declara dichos métodos no les proporciona una implementación, aunque una clase abstracta también puede contener métodos no abstractos, es decir, métodos para los que se ha proporcionado una implementación. No se puede crear directamente una instancia de una clase abstracta; sólo se puede crear una instancia de una clase derivada. Estas clases derivadas deben proporcionar implementaciones para todos los métodos y propiedades abstractos, mediante la palabra clave&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;override&lt;/span&gt;, a menos que el miembro derivado se declare abstracto.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
El ejemplo siguiente declara una clase abstracta&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Employee&lt;/span&gt;. También se crea una clase derivada denominada&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Manager&lt;/span&gt;, que proporciona una implementación del método abstracto&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Show()&lt;/span&gt;&amp;nbsp;definido en la clase&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Employee&lt;/span&gt;:&lt;/div&gt;
&lt;div id=&quot;snippetGroup11&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-12&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_1e628517-a16e-4875-a0a7-0c0b0aa8d956&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;abstract&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;class&lt;/span&gt; Employee 
{ 
    &lt;span style=&quot;color: blue;&quot;&gt;protected&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;string&lt;/span&gt; name;

    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; Employee(&lt;span style=&quot;color: blue;&quot;&gt;string&lt;/span&gt; name)  &lt;span style=&quot;color: green;&quot;&gt;// constructor&lt;/span&gt;
    { 
        &lt;span style=&quot;color: blue;&quot;&gt;this&lt;/span&gt;.name = name;
    }

    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;abstract&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; Show();  &lt;span style=&quot;color: green;&quot;&gt;// abstract show method&lt;/span&gt;
}

&lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;class&lt;/span&gt; Manager: Employee
{ 
    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; Manager(&lt;span style=&quot;color: blue;&quot;&gt;string&lt;/span&gt; name) : &lt;span style=&quot;color: blue;&quot;&gt;base&lt;/span&gt;(name) {}  &lt;span style=&quot;color: green;&quot;&gt;// constructor&lt;/span&gt;

    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;override&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; Show()  &lt;span style=&quot;color: green;&quot;&gt;//override the abstract show method&lt;/span&gt;
    {
        System.Console.WriteLine(&lt;span style=&quot;color: #a31515;&quot;&gt;&quot;Name : &quot;&lt;/span&gt; + name);
    }
}

&lt;span style=&quot;color: blue;&quot;&gt;class&lt;/span&gt; TestEmployeeAndManager
{ 
    &lt;span style=&quot;color: blue;&quot;&gt;static&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; Main()
    { 
        &lt;span style=&quot;color: green;&quot;&gt;// Create an instance of Manager and assign it to a Manager reference:&lt;/span&gt;
        Manager m1 = &lt;span style=&quot;color: blue;&quot;&gt;new&lt;/span&gt; Manager(&lt;span style=&quot;color: #a31515;&quot;&gt;&quot;H. Ackerman&quot;&lt;/span&gt;);
        m1.Show();

        &lt;span style=&quot;color: green;&quot;&gt;// Create an instance of Manager and assign it to an Employee reference:&lt;/span&gt;
        Employee ee1 = &lt;span style=&quot;color: blue;&quot;&gt;new&lt;/span&gt; Manager(&lt;span style=&quot;color: #a31515;&quot;&gt;&quot;M. Knott&quot;&lt;/span&gt;);
        ee1.Show();  &lt;span style=&quot;color: green;&quot;&gt;//call the show method of the Manager class&lt;/span&gt;
    } 
}


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Este código invoca la implementación del método&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Show()&lt;/span&gt;&amp;nbsp;proporcionado por la clase&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Manager&lt;/span&gt;&amp;nbsp;e imprime el nombre del empleado en pantalla. Éste es el resultado:&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Name : H. Ackerman&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;Name : M. Knott&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h2 class=&quot;LW_CollapsibleArea_TitleDiv&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_TitleAhref&quot; href=&quot;https://www.blogger.com/null&quot; role=&quot;button&quot; style=&quot;cursor: text; outline: none;&quot; title=&quot;&quot;&gt;&lt;span class=&quot;LW_CollapsibleArea_Title&quot; style=&quot;display: inline-block; font-size: 1.769em;&quot;&gt;Interfaces&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;LW_CollapsibleArea_Anchor_Div&quot; id=&quot;Anchor_6&quot; style=&quot;float: right; height: 20px; padding-top: 7px; visibility: hidden; width: 20px;&quot;&gt;
&lt;a class=&quot;LW_CollapsibleArea_Anchor_Img&quot; href=&quot;https://msdn.microsoft.com/es-bo/library/ms228387(v=vs.90).aspx#Anchor_6&quot; style=&quot;background-attachment: scroll; background-clip: initial; background-image: url(&amp;quot;/Areas/Epx/Content/Images/ImageSprite.png?v=635897121359035821&amp;quot;); background-origin: initial; background-position: -502px -3px; background-repeat: no-repeat; background-size: initial; color: black; display: inline-block; height: 20px; overflow: hidden; text-decoration: none; width: 20px;&quot; title=&quot;Hacer clic con el botón derecho para copiar y compartir el vínculo de esta sección&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;LW_CollapsibleArea_HrDiv&quot; style=&quot;padding-top: 0px;&quot;&gt;
&lt;/div&gt;
&lt;/h2&gt;
&lt;div class=&quot;sectionblock&quot; style=&quot;padding-bottom: 20px; padding-left: 15px;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; id=&quot;sectionToggle6&quot; style=&quot;color: #0072c6;&quot;&gt;&lt;/a&gt;&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Una interfaz es un tipo de clase esqueleto que contiene firmas de método pero no incluye ninguna implementación de método. De esta manera, las interfaces son como clases abstractas que contienen sólo métodos abstractos. Las interfaces de C# son muy similares a las de Java y funcionan de manera muy similar.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Todos los miembros de una interfaz son públicos por definición y una interfaz no puede contener constantes, campos (miembros de datos privados), constructores, destructores ni ningún tipo de miembro estático. El compilador generará un error si se especifica un modificador para los miembros de una interfaz.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Las clases se pueden derivar de una interfaz para implementar esa interfaz. Estas clases derivadas deben proporcionar implementaciones para todos los métodos de la interfaz, a menos que la clase derivada se declare abstracta.&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Una interfaz se declara de forma idéntica en Java. En una definición de interfaz, una propiedad indica sólo su tipo y si es de sólo lectura, sólo escritura o de lectura y escritura únicamente por medio de las palabras clave&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/ms228503(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;get&lt;/a&gt;&amp;nbsp;y&amp;nbsp;&lt;a href=&quot;https://msdn.microsoft.com/es-bo/library/ms228368(v=vs.90).aspx&quot; style=&quot;color: #00709f; text-decoration: none;&quot;&gt;set&lt;/a&gt;. La interfaz siguiente declara una propiedad de sólo lectura:&lt;/div&gt;
&lt;div id=&quot;snippetGroup12&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-13&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_a419a67a-87ab-45fc-8818-57169b94afcb&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;interface&lt;/span&gt; ICDPlayer
{ 
    &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; Play();  &lt;span style=&quot;color: green;&quot;&gt;// method signature&lt;/span&gt;
    &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; Stop();  &lt;span style=&quot;color: green;&quot;&gt;// method signature&lt;/span&gt;

    &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; FastForward(&lt;span style=&quot;color: blue;&quot;&gt;float&lt;/span&gt; numberOfSeconds);

    &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; CurrentTrack  &lt;span style=&quot;color: green;&quot;&gt;// read-only property&lt;/span&gt;
    {
        &lt;span style=&quot;color: blue;&quot;&gt;get&lt;/span&gt;;
    } 
}


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Una clase se puede heredar de esta interfaz utilizando dos puntos, en lugar de la palabra clave&amp;nbsp;&lt;span class=&quot;input&quot; style=&quot;font-weight: 700;&quot;&gt;implements&lt;/span&gt;&amp;nbsp;de Java. La clase que se implementa debe proporcionar definiciones para todos los métodos y cualquier descriptor de acceso de la propiedad necesario, del siguiente modo:&lt;/div&gt;
&lt;div id=&quot;snippetGroup13&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-14&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_8fc90e13-63fb-455b-a36a-08aa99b10556&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;class&lt;/span&gt; CDPlayer : ICDPlayer
{
    &lt;span style=&quot;color: blue;&quot;&gt;private&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; currentTrack = 0;

    &lt;span style=&quot;color: green;&quot;&gt;// implement methods defined in the interface&lt;/span&gt;
    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; Play()
    {
        &lt;span style=&quot;color: green;&quot;&gt;// code to start CD...&lt;/span&gt;
    }

    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;void&lt;/span&gt; Stop()
    {
        &lt;span style=&quot;color: green;&quot;&gt;// code to stop CD...&lt;/span&gt;
    }

    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; FastForward(&lt;span style=&quot;color: blue;&quot;&gt;float&lt;/span&gt; numberOfSeconds)
    {
        &lt;span style=&quot;color: green;&quot;&gt;// code to fast forward CD using numberOfSeconds...&lt;/span&gt;

        &lt;span style=&quot;color: blue;&quot;&gt;return&lt;/span&gt; 0;  &lt;span style=&quot;color: green;&quot;&gt;//return success code&lt;/span&gt;
    }

    &lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;int&lt;/span&gt; CurrentTrack  &lt;span style=&quot;color: green;&quot;&gt;// read-only property&lt;/span&gt;
    { 
        &lt;span style=&quot;color: blue;&quot;&gt;get&lt;/span&gt; 
        { 
            &lt;span style=&quot;color: blue;&quot;&gt;return&lt;/span&gt; currentTrack; 
        } 
    }

    &lt;span style=&quot;color: green;&quot;&gt;// Add additional methods if required...&lt;/span&gt;
}


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h3 class=&quot;subHeading&quot; style=&quot;font-family: &#39;Segoe UI Semibold&#39;, &#39;Segoe UI&#39;, &#39;Lucida Grande&#39;, Verdana, Arial, Helvetica, sans-serif; font-size: 1.231em; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 5px;&quot;&gt;
Implementar múltiples interfaces&lt;/h3&gt;
&lt;div class=&quot;subsection&quot;&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Una clase puede implementar múltiples interfaces mediante la sintaxis siguiente:&lt;/div&gt;
&lt;div id=&quot;snippetGroup14&quot;&gt;
&lt;div class=&quot;codeSnippetContainer&quot; id=&quot;code-snippet-15&quot; style=&quot;clear: both; min-width: 0px;&quot; xmlns=&quot;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabs&quot; style=&quot;height: 23px; position: relative; vertical-align: middle; z-index: 1;&quot;&gt;
&lt;div class=&quot;codeSnippetContainerTabSingle&quot; dir=&quot;ltr&quot; style=&quot;background-color: white; border-color: rgb(147, 147, 147) rgb(147, 147, 147) rgb(255, 255, 255); border-style: solid; border-top-left-radius: 4px; border-top-right-radius: 4px; border-width: 1px; color: #707070; float: left; height: 23px; line-height: 17px; position: relative; vertical-align: baseline; width: auto;&quot;&gt;
&lt;a href=&quot;https://www.blogger.com/null&quot; style=&quot;color: black; display: inline-block; font-weight: bold; padding: 0px 8px; position: relative; top: 2px;&quot;&gt;C#&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCodeContainer&quot; style=&quot;border: 1px solid rgb(147, 147, 147); clear: both; margin-bottom: 12px; position: relative; top: -1px;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBar&quot; style=&quot;height: auto; width: auto;&quot;&gt;
&lt;div class=&quot;codeSnippetToolBarText&quot; style=&quot;background-color: white; float: right; height: 0px; padding-left: 0px; padding-right: 0px; position: relative; top: -8px; vertical-align: top; width: auto;&quot;&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;codeSnippetContainerCode&quot; dir=&quot;ltr&quot; id=&quot;CodeSnippetContainerCode_43ddcc0c-5c22-4171-b051-ff564d40f125&quot; style=&quot;margin: 0px; padding: 10px 21px; width: auto;&quot;&gt;
&lt;div style=&quot;margin: 0px; padding: 0px;&quot;&gt;
&lt;pre style=&quot;font-family: Consolas, Courier, monospace !important; overflow: auto; padding: 5px; word-wrap: normal;&quot;&gt;&lt;span style=&quot;color: blue;&quot;&gt;public&lt;/span&gt; &lt;span style=&quot;color: blue;&quot;&gt;class&lt;/span&gt; CDAndDVDComboPlayer : ICDPlayer, IDVDPlayer


&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;color: #2a2a2a; line-height: 18px; padding-bottom: 15px;&quot;&gt;
Si una clase implementa más de una interfaz donde hay ambigüedad en los nombres de los miembros, se resuelve utilizando el calificador completo del nombre de la propiedad o método. Es decir, la clase derivada puede resolver el conflicto si se utiliza el nombre completo del método para indicar a qué interfaz pertenece, como en&amp;nbsp;&lt;span class=&quot;code&quot; style=&quot;color: darkgreen; font-family: Consolas, Courier, monospace;&quot;&gt;ICDPlayer.Play()&lt;/span&gt;.&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
Fuente:&lt;br /&gt;https://msdn.microsoft.com/es-bo/library/ms228360(v=vs.90).aspx&lt;br /&gt;
https://msdn.microsoft.com/es-bo/library/yz2be5wk(v=vs.90).aspx&lt;br /&gt;
https://msdn.microsoft.com/es-bo/library/ms228387(v=vs.90).aspx&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/3870604054159935599/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2016/02/compatibilidad-y-consideraciones-c-java.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/3870604054159935599'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/3870604054159935599'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2016/02/compatibilidad-y-consideraciones-c-java.html' title='Compatibilidad y consideraciones C#-Java '/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-2080282384424955712</id><published>2016-02-16T16:45:00.001-04:00</published><updated>2016-02-16T16:52:15.081-04:00</updated><title type='text'>Convierte tus imagenes y texto en ascii </title><content type='html'>Picascii es una herramienta online que te permite convertir cualquier imagen en una pequeña obra maestra del arte ASCII, ese en el que una imagen es recreada usando únicamente texto para crear un efecto que no siempre será acertado aunque si curioso.&lt;br /&gt;
En el caso concreto de Picascii puedes elegir el tamaño de los caracteres -influye directamente en el tamaño de la imagen generada, si quieres que se conserven los colores de la imagen original y el origen de esta -un enlace web o un archivo de tu equipo, siempre con un tamaño no mayor a 1MB. Con estos parámetros definidos, lo único que tienes que hacer es pulsar el botón ‘Generate’ (generar) y esperar un poco.&lt;br /&gt;
Cuando termine el proceso de conversión, el resultado es tu pieza de arte ASCII mostrada en la parte superior de la página y un enlace para ver el código HTML o el texto con el que conseguir ese resultado. En el caso del código HTML se verán recreados los colores de la imagen original siempre que así lo hayas seleccionado.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJCPmYOpiKKiC7dUO15lZvcKh541wgUUGLB4TBvFIZLT_6z_CVqRK4GEqI05tS7szgbdphZS5xVZhM3N_g8tYscL5Dz71V5Mqwi-GaCA-yNpcWDjUhPj6pcNdUTJGXpCDs0usLpQ51hDu8/s1600/onvierte+en+acci.jpg&quot; imageanchor=&quot;1&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;298&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJCPmYOpiKKiC7dUO15lZvcKh541wgUUGLB4TBvFIZLT_6z_CVqRK4GEqI05tS7szgbdphZS5xVZhM3N_g8tYscL5Dz71V5Mqwi-GaCA-yNpcWDjUhPj6pcNdUTJGXpCDs0usLpQ51hDu8/s400/onvierte+en+acci.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Fuente:&lt;br /&gt;
http://picascii.com/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interesante sitio para la generación de ASCII ART. Ojo: solo texto&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicK1kIM1scmyA1RNJkHfb-Re2Vr7WsBKNR9PhUEcMRtndBl8hvWdNRQhr7Fp4ic1GNUx9wf4jRXD0qWHZKbqLZXHrDZVswwQ7K0IUPMyKsimC3BVTDPk5oYR5sduLBKzgMfVYeAx6dcCl3/s1600/chris+vega.jpg&quot; imageanchor=&quot;1&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;151&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicK1kIM1scmyA1RNJkHfb-Re2Vr7WsBKNR9PhUEcMRtndBl8hvWdNRQhr7Fp4ic1GNUx9wf4jRXD0qWHZKbqLZXHrDZVswwQ7K0IUPMyKsimC3BVTDPk5oYR5sduLBKzgMfVYeAx6dcCl3/s320/chris+vega.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Fuente:&lt;br /&gt;
&lt;br /&gt;
http://patorjk.com/software/taag/#p=testall&amp;amp;f=Big%20Money-ne&amp;amp;t=Christian%20Marbel%20Vega%20Mamani&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/2080282384424955712/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2016/02/convierte-tus-imagenes-en-ascii.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/2080282384424955712'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/2080282384424955712'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2016/02/convierte-tus-imagenes-en-ascii.html' title='Convierte tus imagenes y texto en ascii '/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJCPmYOpiKKiC7dUO15lZvcKh541wgUUGLB4TBvFIZLT_6z_CVqRK4GEqI05tS7szgbdphZS5xVZhM3N_g8tYscL5Dz71V5Mqwi-GaCA-yNpcWDjUhPj6pcNdUTJGXpCDs0usLpQ51hDu8/s72-c/onvierte+en+acci.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-176407850497106239</id><published>2016-02-16T15:08:00.002-04:00</published><updated>2016-02-16T15:09:29.972-04:00</updated><title type='text'>Mockaroo, generador de datos realista</title><content type='html'>&lt;div style=&quot;background-color: white; color: #404040; font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 19px;&quot;&gt;
Si estás probando una aplicación lo normal es que quieras probarla usando las condiciones más realistas posibles, y usando los datos más reales que puedas. En una aplicación que ya está en producción son los propios usuarios los que llenan la base de datos de información, pero mientras estás desarrollando no tienes nada de esto, y debes inventarte los datos tú mismo. Si introduces esos datos a mano, uno por uno, no vas a ir muy lejos.&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #404040; font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 19px;&quot;&gt;
Si los generas de manera aleatoria es fácil para campos numéricos, pero muy complicado para otro tipo de datos, como nombres, direcciones o incluso tarjetas de crédito. Además a veces es importante generar los datos de manera realista, y no solo &quot;que funcionen&quot;. Por ejemplo, para hacer una demo a clientes o crear documentación.&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #404040; font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 19px;&quot;&gt;
Existen muchas aplicaciones on-line para generar información aleatoria, pero pocas tan completas como esta que acabamos de descubrir hace poco:&amp;nbsp;&lt;a href=&quot;http://stats2.mailcast.es/C/L/?V02_186745_MjY5NDIyNjkg&quot; style=&quot;color: #1155cc;&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;Mockaroo&lt;/strong&gt;&lt;/a&gt;.&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #404040; font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 19px; text-align: center;&quot;&gt;
&lt;img alt=&quot;Mockaroo&quot; class=&quot;CToWUd a6T&quot; height=&quot;422&quot; src=&quot;https://blogger.googleusercontent.com/img/proxy/AVvXsEiIhErlU5TZItxVRu0lARbSH0Idqf_ayB-Glzq-9S95hBGN0aJK1PRcz0leVvotYm9T-dgQeX6toz5COQU2F46yBcqur3RtiIvmqPC4amASD66hXAccGVB8bq3bRwYBliM6Q4M4n9kDnNdrdU-pUnb5yIV3XNC18LEZbJzPSXEBDB60sIlVcQ=s0-d-e1-ft&quot; style=&quot;cursor: pointer; margin: 0px; min-height: 422px; outline: 0px; width: 650px;&quot; tabindex=&quot;0&quot; width=&quot;650&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #404040; font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 19px;&quot;&gt;
La verdad es que la cantidad de opciones que ofrece es impresionante y podemos crear todo tipo de datos, incluso con reglas propias.&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #404040; font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 19px;&quot;&gt;
El proceso es sencillo ya que solo tenemos que ir añadiendo nombres de campos y escoger su tipo. Por defecto nos ofrece 93 tipos de dato diferentes que van desde nombre y apellidos (pudiendo escoger estilo, género, etc...) hasta ISBNs, ubicaciones geográficas o datos encriptados simulados.&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #404040; font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 19px;&quot;&gt;
Además es posible hacer que los datos sigan una distribución Normal o de Poisson, secuencias, que cumplan una expresión regular o incluso que fuercen cadenas complicadas con caracteres extraños y cosas así. Si no nos sirve ninguno de los campos por defecto tenemos la posibilidad de crear fórmulas propias para generarlos, teniendo en cuenta otros campos, condicionales, etc... Es altamente flexible.&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #404040; font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 19px;&quot;&gt;
Los datos generados se exportan a CSV, JSON, Excel o incluso directamente a sentencias de inserción SQL estándar.&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #404040; font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 19px;&quot;&gt;
La herramienta es gratuita para generar datos de 1.000 en 1.000. Si queremos generar más datos de golpe y más rápido hay una opción de pago que, por 50 dólares al año, nos permite generar 100.000 registros de golpe 8 veces más rápido que la velocidad normal.&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #404040; font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 19px;&quot;&gt;
Es una herramienta muy a tener en cuenta.&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #404040; font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 19px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #404040; font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 19px;&quot;&gt;
fuentes:&lt;br /&gt;
&lt;span style=&quot;color: black; font-family: &#39;Times New Roman&#39;; font-size: small; line-height: normal;&quot;&gt;http://stats2.mailcast.es/client/previewissue.asp?IssueId=31114&lt;/span&gt;&lt;br /&gt;
https://www.mockaroo.com/&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/176407850497106239/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2016/02/mockaroo-generador-de-datos-realista.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/176407850497106239'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/176407850497106239'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2016/02/mockaroo-generador-de-datos-realista.html' title='Mockaroo, generador de datos realista'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/proxy/AVvXsEiIhErlU5TZItxVRu0lARbSH0Idqf_ayB-Glzq-9S95hBGN0aJK1PRcz0leVvotYm9T-dgQeX6toz5COQU2F46yBcqur3RtiIvmqPC4amASD66hXAccGVB8bq3bRwYBliM6Q4M4n9kDnNdrdU-pUnb5yIV3XNC18LEZbJzPSXEBDB60sIlVcQ=s72-c-d-e1-ft" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-5900979811316541322</id><published>2016-02-16T12:31:00.001-04:00</published><updated>2016-02-16T12:31:21.397-04:00</updated><title type='text'>5 cuestiones sobre seguridad que siempre deberías tener en cuenta</title><content type='html'>&lt;div style=&quot;background-color: white; color: #404040; font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 1.4em;&quot;&gt;
Cada vez dependemos más del software. Está en todas partes, y no solo dentro de nuestras pantallas. Algunos&amp;nbsp;&lt;strong&gt;fallos&lt;/strong&gt;&amp;nbsp;pueden ser catastróficos, y especialmente todos&amp;nbsp;&lt;strong&gt;los que tienen que ver con la seguridad&lt;/strong&gt;&amp;nbsp;y la privacidad, que van siempre muy relacionadas. A pesar de ello sigue siendo muy frecuente que&amp;nbsp;&lt;strong&gt;los programadores no tengan la seguridad presente&lt;/strong&gt;&amp;nbsp;todo el tiempo mientras desarrollan.&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #404040; font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 1.4em;&quot;&gt;
En ocasiones la actitud de los programadores hacia la seguridad es que ésta es cosas de la gente de sistemas, con sus cortafuegos,&amp;nbsp;&lt;a href=&quot;https://en.wikipedia.org/wiki/Intrusion_detection_system&quot; style=&quot;color: rgb(46, 136, 199) !important;&quot;&gt;IDS&lt;/a&gt;&amp;nbsp;y demás medidas de control. Sin embargo&amp;nbsp;&lt;strong&gt;la mayor parte de las vulnerabilidades de seguridad tienen que ver con el código&lt;/strong&gt;&amp;nbsp;y cómo está escrito. Es indispensable hacerse a la idea de que la seguridad debe tenerse en cuenta en todas las fases de desarrollo de un proyecto de software, y no ser un pensamiento posterior, cuando ya lo principal está desarrollado.&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #404040; font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 1.4em;&quot;&gt;
Por eso hemos recopilado&amp;nbsp;&lt;strong&gt;los 5 principales consejos sobre seguridad que deberías tener en mente siempre mientras programas&lt;/strong&gt;, y que te ayudarán a conseguir sistemas más confiables y seguros:&lt;/div&gt;
&lt;ol style=&quot;background-color: white; color: #404040; font-family: Arial, Helvetica, sans-serif; font-size: 15px; line-height: 19px;&quot;&gt;
&lt;li&gt;&lt;strong&gt;Jamás te fíes de ningún dato&lt;/strong&gt;. Este parece obvio, pero luego no siempre se tiene en cuenta. Cualquier dato que llegue a tu código desde un sistema del que tú no tienes control debe ser considerado sospechoso por defecto. No llega con validar en el lado cliente los datos que introducen los usuarios, siempre debe validarse en el servidor también. Si recibes una cadena de texto ten en cuenta todas las posibilidades, incluyendo símbolos &quot;raros&quot;, la longitud máxima que esperas (no se vaya a producir un&amp;nbsp;&lt;a href=&quot;https://en.wikipedia.org/wiki/Buffer_overflow&quot; style=&quot;color: rgb(46, 136, 199) !important;&quot;&gt;desbordamiento&lt;/a&gt;),&amp;nbsp; que estén intentando colarla a la base de datos para&amp;nbsp;&lt;a href=&quot;https://en.wikipedia.org/wiki/SQL_injection&quot; style=&quot;color: rgb(46, 136, 199) !important;&quot;&gt;inyectar instrucciones SQL&lt;/a&gt;. Verifica todos los datos siempre. Punto. Es un fastidio pero es la regla número 1 de cualquier sistema seguro.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Almacena exclusivamente lo que necesites&lt;/strong&gt;. Ni un byte más de lo necesario. Cuando almacenas información que no necesitas estás ampliando la superficie de ataque posible. No solo nos referimos a almacenar esos datos en una base de datos o en un almacenamiento permanente (que también), sino incluso en memoria. Por ejemplo, un caso muy habitual es almacenar las contraseñas de los usuarios en claro en la base de datos. Esto aparte de ser un agujero de seguridad clarísimo es ilegal (al menos en Europa debido a las leyes de protección de datos). Almacena solamente un resumen digital de las claves y que ni siquiera vosotros conozcáis esas claves ni podáis recuperarlas.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;No reinventes la rueda&lt;/strong&gt;. Y lo anterior nos lleva a otro fallo muy común que es de &quot;No inventado aquí&quot;. Hay programadores (y empresas) a los que no les gusta que haya código ajeno en sus desarrollos, y al final acaban por hacer por su cuenta cosas que están solucionadas hace tiempo. Aparte de ser un error empresarial es un error importante cuando se trata de&amp;nbsp;esquemas que tienen que ver con la seguridad. La encriptación, los resúmenes digitales, etc... están basados en matemáticas complejas, se producen avances constantemente... y tenemos la suerte de vivir en la era del Open Source, así que -especialmente en seguridad- haz uso de alguna de las maravillosas bibliotecas existentes y probadas. Incluso aunque&amp;nbsp;&lt;a href=&quot;http://www.campusmvp.es/recursos/post/Heartbleed-el-fallo-de-seguridad-en-Internet-mas-grave-en-mucho-tiempo.aspx&quot; style=&quot;color: rgb(46, 136, 199) !important;&quot;&gt;se descubra algún fallo&lt;/a&gt;&amp;nbsp;en algún momento van a funcionar mejor que cualquiera que puedas hacer tú.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Limita los privilegios&lt;/strong&gt;: lo más fácil, por ejemplo,&amp;nbsp;es crear un usuario con acceso como administrador a la base de datos y utilizarlo desde nuestro código. Así nos evitamos errores por falta de permisos o el tener que hacer un ajuste fino tabla por tabla, campo por campo, para fijar los privilegios exactos que ese usuario necesita. El problema es que cuando se produce un problema de seguridad, nuestra aplicación actúa de intermediaria entre el atacante y la base de datos, dejándole las puertas abiertas de par en par. Grave error. Pues lo mismo en cualquier otro ámbito de la aplicación: hay que dar a cada usuario o proceso los privilegios exactos que necesite, y ni uno más. Es más trabajoso pero hará tus aplicaciones mucho más seguras.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;La seguridad es una carretera de dos sentidos&lt;/strong&gt;. Esto es algo que se piensa mucho menos todavía que lo anterior. Cuando un usuario &quot;normal&quot; se conecta a nuestra aplicación de banca, por&amp;nbsp;poner un caso extremo, no solo debemos asegurarnos de que es quien dice ser, sino que es igualmente importante que esa persona tenga claro que nosotros somos quiénes decimos ser. Un certificado digital asegura eso, pero la mayor parte de los usuarios no se fijan en estas cosas y si un malhechor los lleva a un sitio que suplanta el nuestro y que no usa SSL, el 90% jamás se percatarán. Algunas empresas lo que hacen es permitir a los usuarios la personalización de sus accesos, de modo que una vez que están dentro del sistema se les muestra junto a la aplicación&amp;nbsp;una foto o una frase que ellos mismos han elegido. Un sitio de&amp;nbsp;&lt;em&gt;phishing&lt;/em&gt;&amp;nbsp;no puede tener esa información por lo que si no aparece enseguida se dan cuenta de que no están en donde debieran. Este tipo de cuestiones es importante tenerlas en cuenta también al desarrollar.&lt;/li&gt;
&lt;/ol&gt;
fuente:&lt;br /&gt;http://stats2.mailcast.es/client/previewissue.asp?IssueId=31114</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/5900979811316541322/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2016/02/5-cuestiones-sobre-seguridad-que.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/5900979811316541322'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/5900979811316541322'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2016/02/5-cuestiones-sobre-seguridad-que.html' title='5 cuestiones sobre seguridad que siempre deberías tener en cuenta'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-9194550314076178285</id><published>2015-08-18T12:21:00.001-04:00</published><updated>2015-08-18T12:22:30.063-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="php"/><category scheme="http://www.blogger.com/atom/ns#" term="REST"/><category scheme="http://www.blogger.com/atom/ns#" term="servicios"/><category scheme="http://www.blogger.com/atom/ns#" term="symfony2"/><category scheme="http://www.blogger.com/atom/ns#" term="web services"/><title type='text'>Symfony REST Edition</title><content type='html'>&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
Probando servicios
REST con symfony&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
descargar el paquete&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
&lt;a href=&quot;https://github.com/gimler/symfony-rest-edition&quot;&gt;https://github.com/gimler/symfony-rest-edition&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
descomprimirlo en la
ruta de nuestro apache para la publiacion web&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
/var/www/html&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
Se denominara a la
carpeta descomprimida “rest”&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
/var/www/html/rest&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
Se procede a
descargar los vendors necesarios con la instrucción:&lt;/div&gt;
&lt;pre class=&quot;western&quot;&gt;&lt;span style=&quot;border: none; display: inline-block; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-variant: normal;&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;span style=&quot;font-family: Consolas, Liberation Mono, Menlo, Courier, monospace;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;letter-spacing: normal;&quot;&gt;&lt;span style=&quot;font-style: normal;&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;&lt;span style=&quot;background: transparent;&quot;&gt;&lt;code class=&quot;western&quot;&gt;php composer.phar install&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
Se verifica la
funcionalidad del paquete y si las dependencias fueron resueltas con
la instrucción:&lt;/div&gt;
&lt;pre class=&quot;western&quot;&gt;&lt;span style=&quot;border: none; display: inline-block; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-variant: normal;&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;span style=&quot;font-family: Consolas, Liberation Mono, Menlo, Courier, monospace;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;letter-spacing: normal;&quot;&gt;&lt;span style=&quot;font-style: normal;&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;&lt;span style=&quot;background: transparent;&quot;&gt;&lt;code class=&quot;western&quot;&gt;php app/check.php&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
Tras validar eso en
mi caso tenia una observacion en el php ini por no tener configurado
el time zone, por tanto en caso de tener el mismo error ingresar al
archivo y modificar el timezone como sigue(en mi caso Bolivia):&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
time.zone=
“America/Caracas”&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
para dicha
configuración pueden guiarse en:&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
&lt;a href=&quot;http://php.net/manual/pt_BR/timezones.php&quot;&gt;http://php.net/manual/pt_BR/timezones.php&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
una vez verificado
que todo las validaiones resultaron satisfatorias del diagnostico &lt;span style=&quot;border: none; display: inline-block; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-variant: normal;&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;span style=&quot;font-family: Consolas, Liberation Mono, Menlo, Courier, monospace;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;letter-spacing: normal;&quot;&gt;&lt;span style=&quot;font-style: normal;&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;&lt;span style=&quot;background: transparent;&quot;&gt;&lt;code class=&quot;western&quot;&gt;php
app/check.php&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
&lt;span style=&quot;border: none; display: inline-block; padding: 0cm;&quot;&gt;&lt;span style=&quot;font-variant: normal;&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;span style=&quot;font-family: Consolas, Liberation Mono, Menlo, Courier, monospace;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;letter-spacing: normal;&quot;&gt;&lt;span style=&quot;font-style: normal;&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;&lt;span style=&quot;background: transparent;&quot;&gt;&lt;code class=&quot;western&quot;&gt;Se
procede a probar la aplicación ingresando en el siguiente URL:&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
&lt;span style=&quot;border: none; display: inline-block; padding: 0cm;&quot;&gt;&lt;a href=&quot;http://localhost/rest/web/config.php&quot;&gt;&lt;span style=&quot;font-variant: normal;&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;span style=&quot;font-family: Consolas, Liberation Mono, Menlo, Courier, monospace;&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;letter-spacing: normal;&quot;&gt;&lt;span style=&quot;font-style: normal;&quot;&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;&lt;span style=&quot;background: transparent;&quot;&gt;&lt;code class=&quot;western&quot;&gt;http://localhost/rest/web/config.php&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;line-height: 100%; margin-bottom: 0cm;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/9194550314076178285/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2015/08/symfony-rest-edition.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/9194550314076178285'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/9194550314076178285'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2015/08/symfony-rest-edition.html' title='Symfony REST Edition'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-3097181767474125770</id><published>2015-08-12T18:10:00.001-04:00</published><updated>2015-08-12T18:10:59.006-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="doctrine"/><category scheme="http://www.blogger.com/atom/ns#" term="driver"/><category scheme="http://www.blogger.com/atom/ns#" term="pdo_pgsql"/><category scheme="http://www.blogger.com/atom/ns#" term="postgresql"/><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu"/><title type='text'>Error 500 driver could not be found </title><content type='html'>El error &amp;nbsp;se produjo mientras desarrollaba con php 5.6,postgresql version 9.4 y doctrine2&lt;br /&gt;
la solucion es basicamente instalar el controlador con la siguiente instrucción:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;lang-sql prettyprint prettyprinted&quot; style=&quot;background-color: #eeeeee; border: 0px; color: #393318; font-family: Consolas, Menlo, Monaco, &#39;Lucida Console&#39;, &#39;Liberation Mono&#39;, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Courier New&#39;, monospace, sans-serif; font-size: 13px; margin-bottom: 1em; max-height: 600px; overflow: auto; padding: 5px; width: auto; word-wrap: normal;&quot;&gt;&lt;code style=&quot;border: 0px; font-family: Consolas, Menlo, Monaco, &#39;Lucida Console&#39;, &#39;Liberation Mono&#39;, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Courier New&#39;, monospace, sans-serif; margin: 0px; padding: 0px; white-space: inherit;&quot;&gt;&lt;span class=&quot;pln&quot; style=&quot;border: 0px; color: black; margin: 0px; padding: 0px;&quot;&gt;pt-get install php5-pgsql&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;lang-sql prettyprint prettyprinted&quot; style=&quot;background-color: #eeeeee; border: 0px; color: #393318; font-family: Consolas, Menlo, Monaco, &#39;Lucida Console&#39;, &#39;Liberation Mono&#39;, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Courier New&#39;, monospace, sans-serif; font-size: 13px; margin-bottom: 1em; max-height: 600px; overflow: auto; padding: 5px; width: auto; word-wrap: normal;&quot;&gt;&lt;code style=&quot;border: 0px; font-family: Consolas, Menlo, Monaco, &#39;Lucida Console&#39;, &#39;Liberation Mono&#39;, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Courier New&#39;, monospace, sans-serif; margin: 0px; padding: 0px; white-space: inherit;&quot;&gt;&lt;span class=&quot;pln&quot; style=&quot;border: 0px; color: black; margin: 0px; padding: 0px;&quot;&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;lang-sql prettyprint prettyprinted&quot; style=&quot;background-color: #eeeeee; border: 0px; color: #393318; font-family: Consolas, Menlo, Monaco, &#39;Lucida Console&#39;, &#39;Liberation Mono&#39;, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Courier New&#39;, monospace, sans-serif; font-size: 13px; margin-bottom: 1em; max-height: 600px; overflow: auto; padding: 5px; width: auto; word-wrap: normal;&quot;&gt;&lt;code style=&quot;border: 0px; font-family: Consolas, Menlo, Monaco, &#39;Lucida Console&#39;, &#39;Liberation Mono&#39;, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Courier New&#39;, monospace, sans-serif; margin: 0px; padding: 0px; white-space: inherit;&quot;&gt;&lt;span class=&quot;pln&quot; style=&quot;border: 0px; color: black; margin: 0px; padding: 0px;&quot;&gt;Saludos&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;lang-sql prettyprint prettyprinted&quot; style=&quot;background-color: #eeeeee; border: 0px; color: #393318; font-family: Consolas, Menlo, Monaco, &#39;Lucida Console&#39;, &#39;Liberation Mono&#39;, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Courier New&#39;, monospace, sans-serif; font-size: 13px; margin-bottom: 1em; max-height: 600px; overflow: auto; padding: 5px; width: auto; word-wrap: normal;&quot;&gt;&lt;code style=&quot;border: 0px; font-family: Consolas, Menlo, Monaco, &#39;Lucida Console&#39;, &#39;Liberation Mono&#39;, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, &#39;Courier New&#39;, monospace, sans-serif; margin: 0px; padding: 0px; white-space: inherit;&quot;&gt;&lt;span class=&quot;pln&quot; style=&quot;border: 0px; color: black; margin: 0px; padding: 0px;&quot;&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/3097181767474125770/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2015/08/error-500-driver-could-not-be-found.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/3097181767474125770'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/3097181767474125770'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2015/08/error-500-driver-could-not-be-found.html' title='Error 500 driver could not be found '/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-1010900597705822650</id><published>2015-07-28T18:32:00.000-04:00</published><updated>2015-07-28T18:32:54.331-04:00</updated><title type='text'>Mapeo de tipos de datos  de las BD con DOCTRINE</title><content type='html'>A fin de realizar el mapeo de la base de datos a los objetos PHP se facilita la siguiente tabla que nos orientará sobre su implementación.&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;table border=&quot;1&quot; class=&quot;docutils&quot;&gt;&lt;thead valign=&quot;bottom&quot;&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;th class=&quot;head&quot; rowspan=&quot;2&quot;&gt;Doctrine&lt;/th&gt;
&lt;th class=&quot;head&quot; rowspan=&quot;2&quot;&gt;PHP&lt;/th&gt;
&lt;th class=&quot;head&quot; colspan=&quot;3&quot;&gt;Database vendor&lt;/th&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;th class=&quot;head&quot;&gt;Name&lt;/th&gt;
&lt;th class=&quot;head&quot;&gt;Version&lt;/th&gt;
&lt;th class=&quot;head&quot;&gt;Type&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody valign=&quot;top&quot;&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td rowspan=&quot;7&quot;&gt;&lt;strong&gt;smallint&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;7&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;integer&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;SMALLINT&lt;/span&gt;&lt;/code&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;UNSIGNED&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id94&quot; id=&quot;id1&quot;&gt;[10]&lt;/a&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;AUTO_INCREMENT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id95&quot; id=&quot;id2&quot;&gt;[11]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;INT&lt;/span&gt;&lt;/code&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;UNSIGNED&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id94&quot; id=&quot;id3&quot;&gt;[10]&lt;/a&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;AUTO_INCREMENT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id95&quot; id=&quot;id4&quot;&gt;[11]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;SMALLINT&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;NUMBER(5)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;SMALLINT&lt;/span&gt;&lt;/code&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;IDENTITY&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id95&quot; id=&quot;id5&quot;&gt;[11]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;UNSIGNED&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id94&quot; id=&quot;id6&quot;&gt;[10]&lt;/a&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;SMALLINT&lt;/span&gt;&lt;/code&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;IDENTITY&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id95&quot; id=&quot;id7&quot;&gt;[11]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;INTEGER&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id100&quot; id=&quot;id8&quot;&gt;[16]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td rowspan=&quot;8&quot;&gt;&lt;strong&gt;integer&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;8&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;integer&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;INT&lt;/span&gt;&lt;/code&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;UNSIGNED&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id94&quot; id=&quot;id9&quot;&gt;[10]&lt;/a&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;AUTO_INCREMENT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id95&quot; id=&quot;id10&quot;&gt;[11]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td rowspan=&quot;2&quot;&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;INT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id96&quot; id=&quot;id11&quot;&gt;[12]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;SERIAL&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id95&quot; id=&quot;id12&quot;&gt;[11]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;NUMBER(10)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;INT&lt;/span&gt;&lt;/code&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;IDENTITY&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id95&quot; id=&quot;id13&quot;&gt;[11]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;UNSIGNED&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id94&quot; id=&quot;id14&quot;&gt;[10]&lt;/a&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;INT&lt;/span&gt;&lt;/code&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;IDENTITY&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id95&quot; id=&quot;id15&quot;&gt;[11]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;INTEGER&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id100&quot; id=&quot;id16&quot;&gt;[16]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td rowspan=&quot;8&quot;&gt;&lt;strong&gt;bigint&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;8&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;string&lt;/span&gt;&lt;/code&gt;
&lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id92&quot; id=&quot;id17&quot;&gt;[8]&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;BIGINT&lt;/span&gt;&lt;/code&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;UNSIGNED&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id94&quot; id=&quot;id18&quot;&gt;[10]&lt;/a&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;AUTO_INCREMENT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id95&quot; id=&quot;id19&quot;&gt;[11]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td rowspan=&quot;2&quot;&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;BIGINT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id96&quot; id=&quot;id20&quot;&gt;[12]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;BIGSERIAL&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id95&quot; id=&quot;id21&quot;&gt;[11]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;NUMBER(20)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;BIGINT&lt;/span&gt;&lt;/code&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;IDENTITY&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id95&quot; id=&quot;id22&quot;&gt;[11]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;UNSIGNED&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id94&quot; id=&quot;id23&quot;&gt;[10]&lt;/a&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;BIGINT&lt;/span&gt;&lt;/code&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;IDENTITY&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id95&quot; id=&quot;id24&quot;&gt;[11]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;INTEGER&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id100&quot; id=&quot;id25&quot;&gt;[16]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td rowspan=&quot;7&quot;&gt;&lt;strong&gt;decimal&lt;/strong&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id91&quot; id=&quot;id26&quot;&gt;[7]&lt;/a&gt;&lt;/td&gt;
&lt;td rowspan=&quot;7&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;string&lt;/span&gt;&lt;/code&gt;
&lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id93&quot; id=&quot;id27&quot;&gt;[9]&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;NUMERIC(p,&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;s)&lt;/span&gt;&lt;/code&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;UNSIGNED&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id94&quot; id=&quot;id28&quot;&gt;[10]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;6&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;6&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;NUMERIC(p,&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;s)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td rowspan=&quot;7&quot;&gt;&lt;strong&gt;float&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;7&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;float&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;DOUBLE&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;PRECISION&lt;/span&gt;&lt;/code&gt; &lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;UNSIGNED&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id94&quot; id=&quot;id29&quot;&gt;[10]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;6&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;6&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;DOUBLE&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;PRECISION&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td rowspan=&quot;9&quot;&gt;&lt;strong&gt;string&lt;/strong&gt;
&lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id84&quot; id=&quot;id30&quot;&gt;[2]&lt;/a&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id87&quot; id=&quot;id31&quot;&gt;[5]&lt;/a&gt;&lt;/td&gt;
&lt;td rowspan=&quot;9&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;string&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;4&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;VARCHAR(n)&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id85&quot; id=&quot;id32&quot;&gt;[3]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;CHAR(n)&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id86&quot; id=&quot;id33&quot;&gt;[4]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;VARCHAR(n)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td rowspan=&quot;2&quot;&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;VARCHAR2(n)&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id85&quot; id=&quot;id34&quot;&gt;[3]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;CHAR(n)&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id86&quot; id=&quot;id35&quot;&gt;[4]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td rowspan=&quot;2&quot;&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;NVARCHAR(n)&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id85&quot; id=&quot;id36&quot;&gt;[3]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;NCHAR(n)&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id86&quot; id=&quot;id37&quot;&gt;[4]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td rowspan=&quot;10&quot;&gt;&lt;strong&gt;text&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;10&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;string&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;td rowspan=&quot;4&quot;&gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;4&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TINYTEXT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id101&quot; id=&quot;id38&quot;&gt;[17]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TEXT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id102&quot; id=&quot;id39&quot;&gt;[18]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;MEDIUMTEXT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id103&quot; id=&quot;id40&quot;&gt;[19]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;LONGTEXT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id104&quot; id=&quot;id41&quot;&gt;[20]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;3&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;3&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TEXT&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;CLOB&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;VARCHAR(MAX)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td rowspan=&quot;7&quot;&gt;&lt;a href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id42&quot;&gt;&lt;span class=&quot;problematic&quot; id=&quot;id43&quot;&gt;**&lt;/span&gt;&lt;/a&gt;guid **&lt;/td&gt;
&lt;td rowspan=&quot;7&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;string&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;4&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;4&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;VARCHAR(255)&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id83&quot; id=&quot;id44&quot;&gt;[1]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;UNIQUEIDENTIFIER&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;UUID&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td rowspan=&quot;8&quot;&gt;&lt;strong&gt;binary&lt;/strong&gt;
&lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id84&quot; id=&quot;id45&quot;&gt;[2]&lt;/a&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id89&quot; id=&quot;id46&quot;&gt;[6]&lt;/a&gt;&lt;/td&gt;
&lt;td rowspan=&quot;8&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;resource&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;4&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;VARBINARY(n)&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id85&quot; id=&quot;id47&quot;&gt;[3]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td rowspan=&quot;2&quot;&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td rowspan=&quot;2&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;BINARY(n)&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id86&quot; id=&quot;id48&quot;&gt;[4]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;VARBINARY(n)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;RAW(n)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;BYTEA&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id100&quot; id=&quot;id49&quot;&gt;[16]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;BLOB&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id100&quot; id=&quot;id50&quot;&gt;[16]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td rowspan=&quot;10&quot;&gt;&lt;strong&gt;blob&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;10&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;resource&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;td rowspan=&quot;4&quot;&gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;4&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TINYBLOB&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id101&quot; id=&quot;id51&quot;&gt;[17]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;BLOB&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id102&quot; id=&quot;id52&quot;&gt;[18]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;MEDIUMBLOB&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id103&quot; id=&quot;id53&quot;&gt;[19]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;LONGBLOB&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id104&quot; id=&quot;id54&quot;&gt;[20]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;3&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;3&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;BLOB&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;VARBINARY(MAX)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;LONG&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;BINARY&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;BYTEA&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td rowspan=&quot;7&quot;&gt;&lt;strong&gt;boolean&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;7&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;boolean&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TINYINT(1)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;3&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;3&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;BOOLEAN&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;BIT&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;NUMBER(1)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td rowspan=&quot;8&quot;&gt;&lt;strong&gt;date&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;8&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;\DateTime&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;6&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;7&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;DATE&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td rowspan=&quot;2&quot;&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&amp;gt;= 2008&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&amp;lt; 2008&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;DATETIME&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id100&quot; id=&quot;id55&quot;&gt;[16]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td rowspan=&quot;7&quot;&gt;&lt;strong&gt;datetime&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;7&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;\DateTime&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;DATETIME&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id97&quot; id=&quot;id56&quot;&gt;[13]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TIMESTAMP&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id98&quot; id=&quot;id57&quot;&gt;[14]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;3&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;3&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;DATETIME&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TIMESTAMP(0)&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;WITHOUT&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;TIME&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;ZONE&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TIMESTAMP(0)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td rowspan=&quot;9&quot;&gt;&lt;strong&gt;datetimetz&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;9&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;\DateTime&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;3&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;4&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;DATETIME&lt;/span&gt;&lt;/code&gt;  &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id99&quot; id=&quot;id58&quot;&gt;[15]&lt;/a&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id100&quot; id=&quot;id59&quot;&gt;[16]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td rowspan=&quot;2&quot;&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&amp;lt; 2008&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&amp;gt;= 2008&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;DATETIMEOFFSET(6)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TIMESTAMP(0)&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;WITH&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;TIME&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;ZONE&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td rowspan=&quot;2&quot;&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&amp;lt; 12&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;DATETIME&lt;/span&gt;&lt;/code&gt;  &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id99&quot; id=&quot;id60&quot;&gt;[15]&lt;/a&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id100&quot; id=&quot;id61&quot;&gt;[16]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&amp;gt;= 12&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TIMESTAMP&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;WITH&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;TIME&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;ZONE&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td rowspan=&quot;8&quot;&gt;&lt;strong&gt;time&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;8&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;\DateTime&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;4&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;4&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TIME&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TIME(0)&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;WITHOUT&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;TIME&lt;/span&gt; &lt;span class=&quot;pre&quot;&gt;ZONE&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;DATE&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id100&quot; id=&quot;id62&quot;&gt;[16]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td rowspan=&quot;2&quot;&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&amp;lt; 2008&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;DATETIME&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id100&quot; id=&quot;id63&quot;&gt;[16]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&amp;gt;= 2008&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TIME(0)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;array&lt;/strong&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id83&quot; id=&quot;id64&quot;&gt;[1]&lt;/a&gt;&lt;/td&gt;
&lt;td rowspan=&quot;10&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;array&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;td rowspan=&quot;4&quot;&gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;4&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TINYTEXT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id101&quot; id=&quot;id65&quot;&gt;[17]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td rowspan=&quot;9&quot;&gt;&lt;strong&gt;simple array&lt;/strong&gt;
&lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id83&quot; id=&quot;id66&quot;&gt;[1]&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TEXT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id102&quot; id=&quot;id67&quot;&gt;[18]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;MEDIUMTEXT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id103&quot; id=&quot;id68&quot;&gt;[19]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;LONGTEXT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id104&quot; id=&quot;id69&quot;&gt;[20]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;3&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;3&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TEXT&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;CLOB&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;VARCHAR(MAX)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td rowspan=&quot;11&quot;&gt;&lt;strong&gt;json_array&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;11&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;array&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;td rowspan=&quot;4&quot;&gt;&lt;strong&gt;MySQL&lt;/strong&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id83&quot; id=&quot;id70&quot;&gt;[1]&lt;/a&gt;&lt;/td&gt;
&lt;td rowspan=&quot;4&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TINYTEXT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id101&quot; id=&quot;id71&quot;&gt;[17]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TEXT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id102&quot; id=&quot;id72&quot;&gt;[18]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;MEDIUMTEXT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id103&quot; id=&quot;id73&quot;&gt;[19]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;LONGTEXT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id104&quot; id=&quot;id74&quot;&gt;[20]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td rowspan=&quot;2&quot;&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&amp;gt;= 9.2&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;JSON&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&amp;lt; 9.2&lt;/td&gt;
&lt;td rowspan=&quot;3&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TEXT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id83&quot; id=&quot;id75&quot;&gt;[1]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;CLOB&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id83&quot; id=&quot;id76&quot;&gt;[1]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;VARCHAR(MAX)&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id83&quot; id=&quot;id77&quot;&gt;[1]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td rowspan=&quot;10&quot;&gt;&lt;strong&gt;object&lt;/strong&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id83&quot; id=&quot;id78&quot;&gt;[1]&lt;/a&gt;&lt;/td&gt;
&lt;td rowspan=&quot;10&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;object&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;td rowspan=&quot;4&quot;&gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;4&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TINYTEXT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id101&quot; id=&quot;id79&quot;&gt;[17]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TEXT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id102&quot; id=&quot;id80&quot;&gt;[18]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;MEDIUMTEXT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id103&quot; id=&quot;id81&quot;&gt;[19]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;LONGTEXT&lt;/span&gt;&lt;/code&gt; &lt;a class=&quot;footnote-reference&quot; href=&quot;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html#id104&quot; id=&quot;id82&quot;&gt;[20]&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;3&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;3&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;TEXT&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Anywhere&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;Drizzle&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;Oracle&lt;/strong&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td rowspan=&quot;2&quot;&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;CLOB&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-even&quot;&gt;&lt;td&gt;&lt;strong&gt;SQLite&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr class=&quot;row-odd&quot;&gt;&lt;td&gt;&lt;strong&gt;SQL Server&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;all&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;&lt;code class=&quot;docutils literal&quot;&gt;&lt;span class=&quot;pre&quot;&gt;VARCHAR(MAX)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;table class=&quot;docutils footnote&quot; frame=&quot;void&quot; id=&quot;id83&quot; rules=&quot;none&quot;&gt;&lt;colgroup&gt;&lt;col&gt;&lt;/col&gt;&lt;/colgroup&gt;
&lt;tbody valign=&quot;top&quot;&gt;
&lt;tr&gt;&lt;td class=&quot;label&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
fuente:&lt;br /&gt;
&amp;nbsp;http://doctrine-dbal.readthedocs.org/en/latest/reference/types.html&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/1010900597705822650/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2015/07/mapeo-de-tipos-de-datos-de-las-bd-con.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/1010900597705822650'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/1010900597705822650'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2015/07/mapeo-de-tipos-de-datos-de-las-bd-con.html' title='Mapeo de tipos de datos  de las BD con DOCTRINE'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-6875990233789508230</id><published>2015-07-23T19:03:00.000-04:00</published><updated>2015-07-23T19:03:28.202-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="GIT"/><category scheme="http://www.blogger.com/atom/ns#" term="GitHub"/><category scheme="http://www.blogger.com/atom/ns#" term="servidor Git"/><title type='text'>Conectando el cliente al servidor GIT</title><content type='html'>&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;WINDOWS&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Primero se realiza el mapeado de la carpeta creada en el
servidor GIT en la ruta donde realizaremos el desarrollo en este caso&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;en nuestro servidor WAMP:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXNypWHRLnftohnYLkQEPsc6jTuWcG6sk3YIrMgXTc-l1VBEayFfi5owwUIGSvwu4DwUBOeTFEVpErnud-j9MS_z2L5X4OXR30X3qaqH1q0bk5FVXebKb7da9N3CSSiX-YnepYXXdzqJcS/s1600/3.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;125&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXNypWHRLnftohnYLkQEPsc6jTuWcG6sk3YIrMgXTc-l1VBEayFfi5owwUIGSvwu4DwUBOeTFEVpErnud-j9MS_z2L5X4OXR30X3qaqH1q0bk5FVXebKb7da9N3CSSiX-YnepYXXdzqJcS/s400/3.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Realizamos el comando $git clone
git@DIRECCION_IP_SERVIDOR_GIT :/RUTA_PUBLICACION_ARCHIVO.git&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Introducir el password&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Con ello la carpeta se creara y se mapeara desde el
servidor, dicha carpeta será nuestra área de trabajo donde iremos trabajando y
subiendo nuestras versiones del código.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;LINUX&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Nos dirigimos a nuestra ruta donde queremos realizar el
mapedo e introducimos la siguiente línea en la consola:&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
/home/Christian/documentos$git clone
git@DIRECCION_IP_SERVIDOR_GIT :/RUTA_PUBLICACION_ARCHIVO.git&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Con ello la carpeta se creara y se mapeara desde el
servidor, dicha carpeta será nuestra área de trabajo donde iremos trabajando y
subiendo nuestras versiones del código.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
COMANDOS PARA REALIZAR UN CARGADO AL AREA DE TRABAJO&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Para verificar el estado de nuestro codigo en cotraposicion
con el codigo alojado en el servidor GIT:&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
#git status&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;o:p&gt;&lt;b&gt;&amp;nbsp;WINDOWS-LINUX&lt;/b&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Para agregar los cambios realizados en la carpeta&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
#git add .&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Para agregar un archivo en especifico&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
#git add archivo_nuevo.css&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Para realizar el commit inicial ingresando un comentario
descriptivo:&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
#git commit -m &quot;primer commit :)&quot;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Para realizar un GLV(get last version-obtener la ultima
version de código del servidor)&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
#git pull origin master&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Para realizar el check in(subida del código) al repositorio
GIT&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
#git push origin master&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
PAra realizar la verificación que el código se subió
correctamente:&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
#git status&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Para ver el histórico de las subidas y comentarios al
servidor:&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
#git log&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/6875990233789508230/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2015/07/conectando-el-cliente-al-servidor-git.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/6875990233789508230'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/6875990233789508230'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2015/07/conectando-el-cliente-al-servidor-git.html' title='Conectando el cliente al servidor GIT'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXNypWHRLnftohnYLkQEPsc6jTuWcG6sk3YIrMgXTc-l1VBEayFfi5owwUIGSvwu4DwUBOeTFEVpErnud-j9MS_z2L5X4OXR30X3qaqH1q0bk5FVXebKb7da9N3CSSiX-YnepYXXdzqJcS/s72-c/3.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-8863622552501713897</id><published>2015-07-23T16:46:00.001-04:00</published><updated>2015-07-23T16:46:16.650-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="conexion bd"/><category scheme="http://www.blogger.com/atom/ns#" term="postgresql"/><category scheme="http://www.blogger.com/atom/ns#" term="symfony2"/><title type='text'>Conexion BD postgresql-symfony2</title><content type='html'>&lt;div class=&quot;MsoNormal&quot;&gt;
Para la conexión de la base de datos postgresql con el framework symfony2 se deben seguir los siguientes pasos, en función al entorno en que se esta desarrollando.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;WINDOWS&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Dirigirse a al ruta&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
C:\wamp\bin\php\php5.5.12&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&amp;nbsp;Y descomentar las líneas&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
extension=php_pgsql.dll&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
extension=php_pdo_pgsql.dll&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;b&gt;LINUX&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
Realizar la instalación del complemento:&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
apt-get install php5-pgsql&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;o:p&gt;Reiniciar el sevicio apache&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;o:p&gt;/home/christian#sudo /etc/init.d/apache2 restart&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;o:p&gt;&lt;b&gt;WINDOWS-LINUX&lt;/b&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
y luego realizar la configuración en los archivos del
symfony&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxvsQ2ogKjFz-XI3BR3ytgiSmrnC1cVsp_Lg1ZOJi6Chf8ldEC8vabwzrbtT-wKnKqZO0VUDGf6c7SQJE2SvPIdBR2MaWyEIdzp50X3kZj1nfXRdEhrCOkV_7yTrBun2rydO7Tpitb-uce/s1600/1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;208&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxvsQ2ogKjFz-XI3BR3ytgiSmrnC1cVsp_Lg1ZOJi6Chf8ldEC8vabwzrbtT-wKnKqZO0VUDGf6c7SQJE2SvPIdBR2MaWyEIdzp50X3kZj1nfXRdEhrCOkV_7yTrBun2rydO7Tpitb-uce/s400/1.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgHKPcgZAuOPpcl6eTGrjTSOQiJgA3p6BeM59Pj1iqvrmIio3kj_OWGxyusxu-tulQt5GXC9HaZBDuCxrm9lfNi1UGCdfSq1ayXQh0uetHmntK5q24OmCNzsbjWUDys17M5I5Pu3Hge0qx/s1600/2.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;230&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgHKPcgZAuOPpcl6eTGrjTSOQiJgA3p6BeM59Pj1iqvrmIio3kj_OWGxyusxu-tulQt5GXC9HaZBDuCxrm9lfNi1UGCdfSq1ayXQh0uetHmntK5q24OmCNzsbjWUDys17M5I5Pu3Hge0qx/s400/2.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/8863622552501713897/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2015/07/conexion-bd-postgresql-symfony2.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/8863622552501713897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/8863622552501713897'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2015/07/conexion-bd-postgresql-symfony2.html' title='Conexion BD postgresql-symfony2'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxvsQ2ogKjFz-XI3BR3ytgiSmrnC1cVsp_Lg1ZOJi6Chf8ldEC8vabwzrbtT-wKnKqZO0VUDGf6c7SQJE2SvPIdBR2MaWyEIdzp50X3kZj1nfXRdEhrCOkV_7yTrBun2rydO7Tpitb-uce/s72-c/1.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-8931096628608666580</id><published>2015-07-23T09:07:00.004-04:00</published><updated>2015-07-23T09:09:53.099-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="entel"/><category scheme="http://www.blogger.com/atom/ns#" term="prefijos de celular"/><category scheme="http://www.blogger.com/atom/ns#" term="tigo"/><category scheme="http://www.blogger.com/atom/ns#" term="viva"/><title type='text'>Diccionario de prefijos de lineas ENTEL,VIVA Y TIGO</title><content type='html'>&lt;h2&gt;
&lt;b&gt;Como se si un celular de Bolivia es Viva Entel o Tigo?&lt;/b&gt;&lt;/h2&gt;
&lt;b&gt;&lt;span style=&quot;color: blue;&quot;&gt;Aquí le presentamos los prefijos de los celulares Viva Tigo Entel de Bolivia clasificados por empresas y los prefijos con los cuales inician los números de celulares indistinto al departamento que corresponda.&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7Xz9_3847t4l_6ajhHFuwXoGG3Od_xniScp5HIXJ-Ek9VhKlDQuCetTpJkv5osYRfpMx96wdRrMmqiurhBk6moxlT-mzO7ZTNDVuMsLY9-PzuTFAyNseHRa6HBtH3Sv0qqB2n6suLRcZt/s1600/numeros.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;225&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7Xz9_3847t4l_6ajhHFuwXoGG3Od_xniScp5HIXJ-Ek9VhKlDQuCetTpJkv5osYRfpMx96wdRrMmqiurhBk6moxlT-mzO7ZTNDVuMsLY9-PzuTFAyNseHRa6HBtH3Sv0qqB2n6suLRcZt/s400/numeros.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/8931096628608666580/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2015/07/diccionario-de-prefijos-de-lineas.html#comment-form' title='7 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/8931096628608666580'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/8931096628608666580'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2015/07/diccionario-de-prefijos-de-lineas.html' title='Diccionario de prefijos de lineas ENTEL,VIVA Y TIGO'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7Xz9_3847t4l_6ajhHFuwXoGG3Od_xniScp5HIXJ-Ek9VhKlDQuCetTpJkv5osYRfpMx96wdRrMmqiurhBk6moxlT-mzO7ZTNDVuMsLY9-PzuTFAyNseHRa6HBtH3Sv0qqB2n6suLRcZt/s72-c/numeros.png" height="72" width="72"/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-4859955171435143186</id><published>2015-07-14T19:41:00.000-04:00</published><updated>2015-07-14T19:41:05.154-04:00</updated><title type='text'>Configuración de proxy en CentOS a nivel consola</title><content type='html'>Se ingresa a la siguiente ruta&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;[root@client ~]# vi /etc/profile&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;#Adicionar el siguiente código en el archivo de configuración&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;PROXY_URL=&quot;http://10.10.2.3:3128/&quot;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;HTTP_PROXY=$PROXY_URL&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;HTTPS_PROXY=$PROXY_URL&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;FTP_PROXY=$PROXY_URL&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;http_proxy=$PROXY_URL&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;https_proxy=$PROXY_URL&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;ftp_proxy=$PROXY_URL&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;#Comando que aplica las configuraciones definidas&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;export HTTP_PROXY HTTPS_PROXY FTP_PROXY http_proxy https_proxy ftp_proxy&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
A veces no es suficiente con esa configuración y se debe realizar la definición de la utilización del proxy para cada aplicación instalada y que requiera una conexión a internet para alguna acción.&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;# Para yum&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;[root@client ~]# vi /etc/yum.conf&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;# Se adiciona el siguiente codigo al final de la liena de configuración&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;proxy=http://prox.server.world:8080/&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;# Para wget&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;[root@client ~]# vi /etc/wgetrc&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;# Se adiciona el siguiente codigo al final de la liena de configuración&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;http_proxy = http://prox.server.world:8080/&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;https_proxy = http://prox.server.world:8080/&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0b5394;&quot;&gt;ftp_proxy = http://prox.server.world:8080/&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Fuente: http://www.server-world.info/en/note?os=CentOS_7&amp;amp;p=squid&amp;amp;f=2&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/4859955171435143186/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2015/07/configuracion-de-proxy-en-centos-nivel.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/4859955171435143186'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/4859955171435143186'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2015/07/configuracion-de-proxy-en-centos-nivel.html' title='Configuración de proxy en CentOS a nivel consola'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-3266008288622876079</id><published>2013-07-15T18:34:00.000-04:00</published><updated>2013-07-15T18:36:56.487-04:00</updated><title type='text'>Tarea Semana 4</title><content type='html'>Para la siguiente actividad tienen que elaborar una pagina con una aspecto similar a este:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjuF56zA3I9X81ScQKGAzW4bcnHVMhe6S0ozLubZs1DpxyCRfuvpcIxbwPmVROh1gdIKsj_iLyA4N6_Nl27NjpG-BI-HN-JdZMOsUBi9pyJfzbkUK1ukTiQUWGFFTbqwM1NDINunE4mhBc/s1600/ta.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjuF56zA3I9X81ScQKGAzW4bcnHVMhe6S0ozLubZs1DpxyCRfuvpcIxbwPmVROh1gdIKsj_iLyA4N6_Nl27NjpG-BI-HN-JdZMOsUBi9pyJfzbkUK1ukTiQUWGFFTbqwM1NDINunE4mhBc/s400/ta.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Como ven, consta de una pagina maestra que contiene 4 paginas (Products,Downloads,Support,Shop), estas deben visualizarse dentro del contenedor(area de trabajo). asimismo la pagina maestra contiene una animación como en la figura que va variando cada cierto tiempo. La animación la pueden realizar en Flash o en Silverlight.&lt;br /&gt;
pueden ver el ejemplo&amp;nbsp;&lt;a href=&quot;http://www.microsoft.com/en-us/default.aspx&quot;&gt;aqui&lt;/a&gt;&lt;br /&gt;
La entrega del trabajo es el sábado 20 de Julio en aula.</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/3266008288622876079/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2013/07/tarea-semana-4.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/3266008288622876079'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/3266008288622876079'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2013/07/tarea-semana-4.html' title='Tarea Semana 4'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjuF56zA3I9X81ScQKGAzW4bcnHVMhe6S0ozLubZs1DpxyCRfuvpcIxbwPmVROh1gdIKsj_iLyA4N6_Nl27NjpG-BI-HN-JdZMOsUBi9pyJfzbkUK1ukTiQUWGFFTbqwM1NDINunE4mhBc/s72-c/ta.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-2984110298775292648</id><published>2013-07-10T12:08:00.004-04:00</published><updated>2013-07-10T12:08:44.308-04:00</updated><title type='text'>&quot;String or binary data would be truncated. The statement has been terminated.&quot;</title><content type='html'>Existen 3 posibles acciones para solucionar este problema:&lt;br /&gt;
&lt;br /&gt;
El tipo de dato que se quiere ingresar :&lt;br /&gt;
&lt;br /&gt;
-No es el mismo que el definido en la Base de Datos por ejemplo ingresar &quot;6955500LP&quot; en &lt;b&gt;ci int&lt;/b&gt;&lt;br /&gt;
-Es mas grande que el que quiere ingresar por ejemplo: ingresar &amp;nbsp;&quot;christian&quot; en &lt;b&gt;nombre varchar(5)&lt;/b&gt;</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/2984110298775292648/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2013/07/string-or-binary-data-would-be.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/2984110298775292648'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/2984110298775292648'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2013/07/string-or-binary-data-would-be.html' title='&quot;String or binary data would be truncated. The statement has been terminated.&quot;'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-5784183997556532346</id><published>2013-07-10T11:43:00.002-04:00</published><updated>2013-07-10T12:10:57.935-04:00</updated><title type='text'>El punto de interrupción no se activara actualmente.el código fuente es distinto al de la versión original. ( VS2012 )</title><content type='html'>Este problema generalmente aparece cuando el ejecutable o compilado de tu solucion no es el mismo con el que acabas de editar y guardar, para solucionarlo es necesario:&lt;br /&gt;
&lt;br /&gt;
Limpiar la solución como se ve en la figura:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiSvJPT0Z181o-AZ_1x8Xzp70_Uvrzv9zMw60-sQakYaEkPjbEUEZrxIYtLf-YExID3hbJagM5E0K32hdoxFVYILl7xJHu0rjiBhmyt7fExD2VoVuq0gnDVaO2fUxEtnQ-t6YwzSOS2l2UK/s1600/l1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;175&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiSvJPT0Z181o-AZ_1x8Xzp70_Uvrzv9zMw60-sQakYaEkPjbEUEZrxIYtLf-YExID3hbJagM5E0K32hdoxFVYILl7xJHu0rjiBhmyt7fExD2VoVuq0gnDVaO2fUxEtnQ-t6YwzSOS2l2UK/s400/l1.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&amp;nbsp;Limpiar el proyecto:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcppcD6dumhQqM7ot_B26fEfI06lBhbaSMHdxftBdCRUlsqjmGQgqxxPzwnk29XA6WppiHDa8uQCxY-Mw3I2S99saCOn0pVx2-OLzUJMrU0sL5yTGJtuof3NDaK8TpDkg9kqU9KbNvJ9ab/s1600/lp.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;177&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjcppcD6dumhQqM7ot_B26fEfI06lBhbaSMHdxftBdCRUlsqjmGQgqxxPzwnk29XA6WppiHDa8uQCxY-Mw3I2S99saCOn0pVx2-OLzUJMrU0sL5yTGJtuof3NDaK8TpDkg9kqU9KbNvJ9ab/s400/lp.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Luego ejecutar y funcionaran sin problemas los breakpoints:&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjvsUwaRU9_DURpGi29pxtf5wSIbJ_XLpn1uhVMnFKMvJ5vUgRTSIp8CkYupKKaw_b5juwHVUGbnVEsPD0e7oO_IBGjckJMyKIBMsBuBDLpSsOzwQmdN_ifItKHQ-Us304tPl2g0EF8TFgJ/s1600/funciuona.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;225&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjvsUwaRU9_DURpGi29pxtf5wSIbJ_XLpn1uhVMnFKMvJ5vUgRTSIp8CkYupKKaw_b5juwHVUGbnVEsPD0e7oO_IBGjckJMyKIBMsBuBDLpSsOzwQmdN_ifItKHQ-Us304tPl2g0EF8TFgJ/s400/funciuona.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/5784183997556532346/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2013/07/el-punto-de-interrupcion-no-se-activara.html#comment-form' title='5 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/5784183997556532346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/5784183997556532346'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2013/07/el-punto-de-interrupcion-no-se-activara.html' title='El punto de interrupción no se activara actualmente.el código fuente es distinto al de la versión original. ( VS2012 )'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiSvJPT0Z181o-AZ_1x8Xzp70_Uvrzv9zMw60-sQakYaEkPjbEUEZrxIYtLf-YExID3hbJagM5E0K32hdoxFVYILl7xJHu0rjiBhmyt7fExD2VoVuq0gnDVaO2fUxEtnQ-t6YwzSOS2l2UK/s72-c/l1.png" height="72" width="72"/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-1082067381800438779</id><published>2013-07-08T12:56:00.001-04:00</published><updated>2013-07-08T12:56:48.796-04:00</updated><title type='text'>Tarea semana 3</title><content type='html'>Deben realizar un sistema web en aspx que tenga el aspecto de una calculadora que tenga el siguiente aspecto:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://calculadora.us/wp-content/uploads/2010/08/calculadora.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;http://calculadora.us/wp-content/uploads/2010/08/calculadora.jpg&quot; width=&quot;224&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
Numeros y Comandos son botones, el display donde se muestran las operaciones es un textbox. La fecha de entrega es el dia 14 de Julio en clase.&lt;br /&gt;
Pueden ver un modelo en:&amp;nbsp;&lt;a href=&quot;http://calculadora.us/&quot;&gt;http://calculadora.us/&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/1082067381800438779/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2013/07/tarea-semana-3.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/1082067381800438779'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/1082067381800438779'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2013/07/tarea-semana-3.html' title='Tarea semana 3'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-2259459684216076319</id><published>2012-08-23T14:15:00.001-04:00</published><updated>2012-08-23T14:15:17.382-04:00</updated><title type='text'>Hacking To The Gate</title><content type='html'>Hacking To The Gate&lt;br /&gt;Steins;Gate&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;Suujuuoku mono kodou no kazu sae&lt;br /&gt;Anata ni wa matataki teido no saji na toukyuu&lt;br /&gt;Kako ni torawarete mirai wo nageku mo&lt;br /&gt;Chiri hitotsu gosan wo yurusanu hitsuzen&lt;br /&gt;
&quot;mugen&quot; ni hirogaru yume mo egaku mirai mo&lt;br /&gt;Bokutachi ni yurusareta kyoei no genri&lt;br /&gt;&quot;yuugen&quot; sore wa futatsu no hari ga shimesu&lt;br /&gt;Zankoku na yakujou to sentaku e hacking to the gate---&lt;br /&gt;
Dakara ima ichibyou goto ni sekaisen wo koete&lt;br /&gt;Kimi no sono egao mamoritai no sa&lt;br /&gt;Soshite mata kanashimi no nai jikan no ruupu e to&lt;br /&gt;Nomikomarete yuku kodoku no kansokusha&lt;br /&gt;
Inochi no shuchou to muimi no shoumei&lt;br /&gt;Anata ni wa taikutsu shinogi ni taranu kokkei&lt;br /&gt;Shihaisha kidori no oroka na shuzoku wa&lt;br /&gt;Unuboreta chisetsu na teiri wo narabeta&lt;br /&gt;
&quot;mugen&quot; to shinjita ai mo sora no kanata mo&lt;br /&gt;Bokutachi ni shimesareta kasou no jiyuu&lt;br /&gt;&quot;yuugen&quot; sore wa mujihi ni toki wo kizami&lt;br /&gt;Asu sae mo hitei suru sentaku e hacking to the gate---&lt;br /&gt;
Ikutsu mono kagayakeru hibi nakama to no yakusoku&lt;br /&gt;Nakatta koto ni wa shite wa ikenai&lt;br /&gt;Sono tame ni toki wo azamuku nokosareta shikake ni&lt;br /&gt;Mou mayoi wa nai kodoku no kansokusha&lt;br /&gt;
Dakara ima ichibyou goto ni sekaisen wo koete&lt;br /&gt;Kimi no sono egao mamoritai no sa&lt;br /&gt;Soshite mata kanashimi no nai jikan no ruupu e to&lt;br /&gt;Nomikomarete yuku kodoku no kansokusha</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/2259459684216076319/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2012/08/hacking-to-gate.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/2259459684216076319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/2259459684216076319'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2012/08/hacking-to-gate.html' title='Hacking To The Gate'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8298967677235020644.post-8495690548290684497</id><published>2012-08-07T00:07:00.001-04:00</published><updated>2012-08-07T00:07:28.868-04:00</updated><title type='text'>Como hacer un ensayo</title><content type='html'>&lt;br /&gt;
&lt;b&gt;Que es un ensayo?&lt;/b&gt;&lt;br /&gt;
Consiste en poner por escrito una opinion.&lt;br /&gt;
Caracteristicas del ensayo:&lt;br /&gt;
-tono formal&lt;br /&gt;
-tener en cuenta:contenido relevante,argumento apropiado,ortografia&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
&lt;b&gt;Pasos para elaborar un ensayo:&lt;/b&gt;&lt;br /&gt;
1. Hacer una lista de ideas&lt;br /&gt;
2. ordenar la lista&lt;br /&gt;
3. hacer un borrador&lt;br /&gt;
4. perfeccionarlo&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Como escribir un ensayo&lt;/b&gt;&lt;br /&gt;
-presentar argumentos&lt;br /&gt;
desarrollar cada argumento y refutar el contraargumento&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;Estructura&amp;nbsp;&lt;/u&gt;&lt;br /&gt;
&lt;b&gt;Inicio-&amp;gt;&lt;/b&gt;generar ideas sobre una pregunta concreta, organizarlo.Se pueden aplicar:sorpresa,confirmacion(se basa en la informacion que el lector ya conoce),contradiccion(empieza con algo aceptado pr la mayoria y demuestra que es erronea y la corrige),suspenso(se presentan los datos poco a poco dejand abierta la pregunta clave.&lt;br /&gt;
OJO:el inicio se escribe al final cuando ya se tiene una idea clara de todo el trabajo.&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
&lt;b&gt;Desarrollo-&amp;gt;&lt;/b&gt;contiene el desarrollo de los aspectos presentados en la introduccion.Por lo general, cada aspecto mencionado ocupara un parrafo del ensayo.Se pueden empearlas siguiente estrategias de organizacion para presentar el ensayo:Analisis(descripcion de componentes),Comparacion y contraste(senalar semejanzas y diferencias ente 2 o mas conjuntos o entidades),definicion(aclaracion de terminos o conceptos que el lector puede desconocer),Clasificacion(se parece al analisis, pero se pregunta por las diferentes clases de la entidad&lt;br /&gt;
OJO:se debe convencer no con la evidencia sino con la emotividad, es recomendable utilzar imagenes, metaforas y otras figuras retoricas.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Conclusion-&amp;gt;&lt;/b&gt;se debe recoger o recapitular las ideas presentadas.Se comienza con un breve resumen del ensayo y se termina con una frase bien pensada que llame la atencion del lector sobre el punto clave del articulo.&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
&lt;b&gt;Despues de escribir-&amp;gt;&lt;/b&gt;&lt;br /&gt;
Primera revision:observar el contenido y la organizacion del ensayo, para ver si comunica su proposito al lector.&lt;br /&gt;
Segunda revision:aspectos gramaticales, es decir signos de puntuacion, la concordancia de genero y numero.&lt;br /&gt;
Le recomiendo que anote los problemas gramaticales que tuvo en este ensayo y que los&lt;br /&gt;
compare con los del ensayo anterior. Quizás sería de utilidad &amp;nbsp;hacerse una lista de sus 6&lt;br /&gt;
errores comunes para revisarlos antes de entregar la siguiente tarea. Le ayudará a mejorar&lt;br /&gt;
en tareas siguientes.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Consejos:&lt;/b&gt;&lt;br /&gt;
Escriba mucho.Escriba frecuentemente para si mismo:anote momentos clave de su vida en un diario o escriba sobre asuntos importantes aunque no vaya a compartirlos con nadie.&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://christianmarbelvega.blogspot.com/feeds/8495690548290684497/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://christianmarbelvega.blogspot.com/2012/08/como-hacer-un-ensayo.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/8495690548290684497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8298967677235020644/posts/default/8495690548290684497'/><link rel='alternate' type='text/html' href='http://christianmarbelvega.blogspot.com/2012/08/como-hacer-un-ensayo.html' title='Como hacer un ensayo'/><author><name>christian</name><uri>http://www.blogger.com/profile/17269156629507769325</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>