Viajero en el tiempo

la licencia GPL de java vs ECMA de Mono y C#.

Publicado por jcrs en Noviembre 27, 2007

 colaboración (Abelardo Jara)

1.      Java vs C#: La licencia GPL vs los riesgos de ECMA en Mono y .NET

No soy un fanatico del software libre, aunque si me parece que es la opcion mas decente con respecto al sistema operativo. El sistema operativo y herramientas basicas de programacion DEBEN SER LIBRES. Otra cosa son los programas en si (alli en mi opinion si podriamos hacer negocio por propiedad intelectual). En ese sentido no estoy a favor de lo que dice Richard Stallman, el creador de las herramientas de programacion GNU GCC.Miguel de Icaza ha declarado reiteradamente que las patentes necesarias para la aplicación de las normas ECMA – 334 (C #) y ECMA – 335 (CLI) están disponibles en Microsoft “RAND + Royalty Free”. Esto pareceria un permiso efectivo de uso de la patente abierta de C#, y motivaria mas usar Mono. Pero perdonen, yo aun he visto una declaración oficial de Microsoft que este aceptando este royalty free.Incluso si aceptamos este RAND+Royalty Free para usar C#/CLI hay que tener un acuerdo de licencia con Microsoft. La razon por la cual Novell firmo el acuerdo de no demandas por violacion de patentes con Microsoft fue con el fin de no ganarse una demanda de Microsoft con respecto al C#/CLI. El mismo Miguel de Icaza (el creador y lider del proyecto Mono) dice que este acuerdo se extiende pero solo a los desarrolladores en plataformas Novell y clientes de Novell. Vease articulo (en ingles):http://en.wikipedia.org/wiki/Mono_(software)Siendo estrictos en terminos legales (por favor vean mi siguiente post) las empresas pueden usar C# y Mono solo si lo obtiene de Novell mediante Suse, pero no si lo obtiene o usa en Redhat, Ubuntu, (y distros que no hayan firmado este acuerdo con Microsoft) tiene la obligacion de tener un acuerdo de licencia con Microsoft. Y esto debido a que no existe ningun acuerdo de este tipo entre Microsoft y Ubuntu o Redhat. RAND + Royalty Free aun implica que las empresas que desarrollan distribuyen codigo en C# todavía tienen que obtener una licencia. Y una licencia puede estipular varias cosas (si queremos ser pesimistas, includo el escritorio Gnome si lo programaran en C#).Aqui hay un texto que copio de Wikipedia y que lo dice Richard Stallman (el creador del GCC)http://en.wikipedia.org/wiki/Mono_(software):“Mono is a free implementation of Microsoft’s language C#. Microsoft has declared itself our enemy and we know that Microsoft is getting patents on some features of C#. So I think it’s dangerous to use C#, and it may be dangerous to use Mono. There’s nothing wrong with Mono. Mono is a free implementation of a language that users use. It’s good to provide free implementations. We should have free implementations of every language. But, depending on it is dangerous, and we better not do that. Pero me ire mas al lado tecnico. C# es muy bueno y no hay duda, pero solo es una opcion para Windows. El .NET Framework de Microsoft es mejor diseñado que la maquina virtual de Java y corre mas rapido en Windows, tambien. Pero eso es a respecto de la maquina virtual.Pero de alli a hablar que .NET con Mono es multiplataforma es muy diferente. .NET no es multiplataforma, Mono trata de brindar esta capacidad, pero Mono es una implementacion de maquina virtual nueva compatible con .NET, pero no es .NET.La JVM es mas rapida en Linux y Windows que el Mono (lo afirmo por pruebas de performance y profiling en mis trabajos).A nivel aplicaciones empresariales de nivel profesional esta por este momento solo Java (el mas utilizado a nivel empresas para multiplataforma, su documentacion y comunidad de desarrolladores es enorme). Que institucion o empresa de prestigio dicta o usa C# con Gtk, lo mas usado es Java o .NET pero no Gtk#. Ni siquiera puedes poner eso en tu CV.Hablemos ahora del lenguaje y de los entornos de desarrollo: Java tiene una gran ventaja, los IDEs los tiene tanto en Windows y Linux y la calidad de ambos: Netbeans o Eclipse es muy alta. A la altura del Visual Studio. Monodevelop para desarrollar con Mono en Linux es por ahora y lo digo por experiencia (mis aplicaciones compiladas con Mono tienen cierres imprevistos, no corren como esperado en Windows, etc) es por ahora muy verde.Java tiene ahora una gran madurez de programar donde sea y ejecutar en donde sea. Por ejemplo, yo programo Java sobre Linux con Eclipse y Netbeans y la aplicacion funciona sobre Windows igual de bien. Adicionalmente mis herramientas de desarrollo trabajan como es exigido en un entorno profesional (sin cuelgues ni fallos inesperados). Y ademas dado que Java ahora integra una infinidad de tecnologias que ahorita son las mas fuertes de Internet(XML, RMI, Beans, SOA, etc) y todo desde el mismo lenguaje, pues es bastante comodo al momento de desarrollar.Mono es ademas aun una implementacion incompleta de la API .NET. Su grupo de desarrollo esta trabajando recien en la implementacion de la API .NET 2.0 (aun inconclusa), mientras en Visual Studio ya van por la API 3.0. Las principales funciones no implementadas completamente son las API de Windows Forms, ASP. NET y ADO. NET. Estos tres frameworks y es importante decirlo no estan dados a ECMA, por tanto Microsoft puede perfectamente demandar al proyecto Mono por violacion de patentes. Microsoft solo ha dado a ECMA C# y el CLI.Una alternativa a no usar la API de Windows Forms es usar una API libre desarrollada por el proyecto Mono llamada GTK# para hacer formularios. No existe un IDE visual aun comodo para programar diseñar formularios excepto el Glade (que no es comodo para muchos). Si nuestra decision nos impulsa a programar con Mono y GTK# (para no usar Windows Forms en la esperanza de libranos de los problemas de licencia con Microsoft) tenemos a disposicion dos IDEs: Sharpdevelop en Windows o Monodevelop en Linux. Sin embargo, ambos (sobre todo el Monodevelop) no estan a la altura ni cerca del Netbeans o Eclipse (ambos libres) o del Visual Studio, asi que si por madurez y si uno opta por una aplicacion profesional y no para experimentos, recomiendo Java. He probado Monodevelop en Ubuntu Gutsy (anda por la version 0.16) y es muyyy lento. Y su creador de interfaces GUI, Stetic tambien (recien anda por la version 0.1). El debugger tambien es muy malo aun. Asi que estamos hablando de herramientas muy inmaduras, no recomendables si estamos programando en entornos que requieren herramientas realmente profesionales.

Ventajas de Java
1. Para personas que se inician Java+Netbeans es directo para aprender (en universidades, institutos, etc). A ver si Mono+Gtk# lo es. O habra que ver si instituciones de entrenamiento con prestigio o empresas grandes se deciden a programar en Mono+Gtk# (algo experimental) en lugar de .NET+Windows Forms o Java+Swing? (lo harian?)
2. Hay montones (literalmente) de librerias de clases disponibles en Java. Muchas de ellas son open-source (parece que los fanaticos de Microsoft, decir open-source es como una vulgaridad).3. Java tiene un conjunto de APIs totalmente multiplataforma, incluso para GUIs, multimedia, graficos, 3D, voz, telefonia mobil, y todas las futuras APIs (muy faciles de usar) seguiran siendo multiplataforma (Windows, Linux, …) Mono no tiene estas APIs, asi que hablar de multiplataforma con Mono es inmaduro. Microsoft usara seguro Direct Sound en C# y eso no es ni a balas multiplataforma.4. Swing esta muy bien diseñada y usa los patrones de diseño MVC, en lo que se cae completamente Windows Forms.5. Java es mucho mas utilizado a nivel de estudiantes de postgrado con base solida en programacion orientada a objetos (OOP).6. Aunque no esta reconocida por un estandar internacional, Java es open-source controlado por por Sun y los miembros del JCP (los cuales son muchos, entre ellos Intel, Google, Samsung, Redhat, sino mira
http://jcp.org/en/home/index
). C# es un estandar tipo ECMA pero aparte de Microsoft pocas otras empresas han decidido implementarlo. Sun ademas segrega mucho menos que Microsoft con respecto a sus productos.
7. Otra cosa: el estandar C#/CLI ECMA solo es un subconjunto del framework .NET. Habra que ver si Microsoft decidira si enviara para estandarizacion las futuras APIs de .NET. (LO HARA?Huh?)Como nota final: miren nomas lo que dice Chris Williams, director de desarrollo de productos de Microsoft, que ellos aceptan la pirateria para motivar que la gente se familiarize con Microsoft y de alli al ocurrir eso pueden presionar con las leyes y obtener ganancias solo si ven que sera rentable (que tactica tan noble no?):

Publicado en Principal | 5 Comentarios »

¿ Que hay tras los virus?

Publicado por jcrs en Noviembre 26, 2007

                                             gusano.jpg

muchos de nosotros nos hemos visto afectados por los virus ya sea caballos de troya, gusanos , etc ..  y hay varias definiciones sobre virus en el internet y libros pero yo no hablare de ello, en esta ocasión hablare acerca de ¿que hay tras los virus?

Tengo dos preguntas sobre los virus  : ¿Quienes lo hacen? ¿Por que?  si crees tener tu respuesta no olvides dejar tu comentario.

Una persona que se dedica a crear virus es obvio que posee excelentes conocimientos en sitemas operativos, aplicaciones y mil cosas mas , pero tengo una interrogante ¿Porque el ser humano se dedica a crear cosas que perjudican a los demás?. Con esos solidos conocimientos porque no intentan aplicarlos en cosas que sean útiles al resto de mortales pués yo digo : cuando encuentro un virus en mi pc yo siempre espero tener algun día  al creador del virus y apalearlo como un animal rabioso , cosa que no sucede cuando encuentro un tutorial o encuentro un sitio de la red que se dedica a la creación de conocimiento , publicando lo que saben (algunos mas avanzados que otros) pero no le hacen mal a nadie ¿acaso es más fácil destruir que construir? parece que sí.

a continuación escribo un cuento que lei en cierta ocasión( disculpenme por no citar la fuente pues en este momento no la recuerdo):

“un samurai verdugo, antes de  ejecutar a un monje le pregunto cuál sería su ultimo deseo y el monje le respondio:

¿Ves ese árbol? cortalo con tu espada? el samurai lo hizo de una solo tajo,

- muy bien ahora ponlo como estaba antes y que siga viviendo. y que su savia continue circulando.

-eso no lo puedo hacer contesto el samurai.

- a lo que el monje respondio : cualquier necio puede destruir , pero crear pocos.

¿tú escoge que quieres hacer?

Publicado en Principal | 7 Comentarios »

java vs .net (II)

Publicado por jcrs en Noviembre 26, 2007

Colaboración: Abelardo Jara (un blog donde encontraran artículos interesantes)

La Java Virtual Machine es mas rapida que Mono en multiplataforma.

Java y .NET tienen aspectos similares y cosas diferentes. Java es un lenguaje que se compila para correr en una maquina virtual JVM. Esta maquina virtual corre en casi cualquier sistema operativo: Windows, Linux, UNIX, Solaris, hasta en dispositivos mobiles. Es realmente fantastico ya que el mismo proyecto ya compilado como archivo .class o mejor .jar correra en cualquier otro sistema operativo sin ningun tipo de recompilacion. Basta con que des el archivo .jar y ya tienes una aplicacion completamente distribuitble. Incluso ademas si la combinas con las librerias SQLite puedes tienes en un tiro una aplicacion con base de datos totalmente portable y que se ejecutara en cualquier sistema operativo.

.NET no es multiplataforma y eso es algo que es importante resaltar. Hay un proyecto llamado Mono que hace los programas compilados con .NET corran sobre Linux y UNIX pero te sere sincero, todavia hay muchos cuelgues (te lo digo por experiencia propia). Este proyecto Mono incluye un compilador (2 versiones: mcs para net 1.1 y gmcs para net 2.0) y una maquina virtual (llamada mono) y es organizado por Miguel de Icaza. Mono es una maquina virtual que emula al .NET y trata de emular a Java en ser multiplataforma. Pero el estado de Mono es a verdad incompleto sobre todo en el paquete Windows Forms que no esta completamente portado y es inestable. Recuerda que aqui hay mucho trabajo de ingenieria inversa y eso siempre sera muy lento.

.NET aporta funcionalidad en que es posible ejecutar e interoperar diversos fragmentos de código escritos en distintos lenguajes, esto es, si codigas en C# o VisualBasic o J# todos estos lenguajes serán convertidos al lenguaje intermediario MSIL(”Microsoft Intermediate Language”) a través de un compilador determinado, este lenguaje intermediario es el que ejecuta el .Net Framework, de esta manera su código escrito en más de 20 lenguajes podrá interoperar. El codigo compilado desde cualquier lenguaje es compilado para correr sobre una maquina virtual que es el .NET Framework.
Mono trata de implementar este .NET framework.

Entonces aunque ambas son maquinas virtuales, la JVM y la .NET Framework son diferentes tambien, una es multiplataforma y la otra es solo para Windows. Una diferencia mas es que JVM es desde hace poco open-source desde que Sun la libero, asi que ahora es controlada ahora en su desarrollo por la comunidad y .NET si es controlada completamente por Microsoft.

Personalmente te aconsejaria ir por Java, dado que .NET es una plataforma privativa y siempre en el fondo estaras amarrado a Microsoft. Para Java tienes entornos de desarrollo muy bueno como Netbeans y Eclipse (ambos corren en Windows, Linux, etc). Ademas paquetes con clases en Java hay a montones, que te permiten hacer casi cualquier cosa, incluso un compilador para tu propio lenguaje (clases JLex y Java CUP). Conexion para base de datos las tienes con JDBC que te permite conectarte a casi cualquier gestor de base de datos: Postgres (la mejor base de datos libre), MySQL (tiene defectos en respecto a relaciones por sus tablas de tipo ISAM), SQLite (la mejor opcion si quieres hacer una base de datos de un solo usuario igualito que Microsoft Access y gratis), Oracle (que tiene una edicion libre personal para Linux y Windows)

Yo he comparado la performance actual en Linux Ubuntu de una aplicacion de ordenamiento de burbuja midiendo tiempo promedio y usando en cada medida un vector de 100 elementos con datos al azar, usando para compilarla el compilador C++ libre GNU, el compilador Intel C++ para Linux (libre tambien y se puede descargar de Internet), el compilador Java 1.6 y finalmente el compilador de Mono gmcs (para .NET 2.0) y los resultados son con respecto a performance:
de mejor a mas lento
1. Intel C++ Compiler y GNU g++ (empate, promedio de 0.24s para el algoritmo, ambos compilan a codigo maquina, puse nivel de optimizacion -O2)
2. Java 1.6 (promedio 0.34s)
3. Mono (usando gmcs para compilar y mono para correr: promedio 0.43s)

Algo interesante, he probado los tiempos tambien en Windows y los tiempos en Linux y son practicamente iguales, lo que indica que la JVM es superior a Mono en ambos sistemas. No he podido probar con Visual C++ 2005 asi que no podria decir si en codigo nativo en Windows es superior o igual o inferior a Linux.

Si quieres aplicaciones que compilen a codigo nativo tanto en windows como en Linux hay ademas un framework para C++ que se llama wxWidgets. Se programan con un IDE para C++ que trabaja tanto en Windows como Linux que se llama Code::Blocks. Es muy bueno y puedes construir aplicaciones graficas en minutos. Personalmente lo uso cuando quiero que mis aplicaciones sean muy rapidas ya que no compila a ninguna maquina virtual. Las clases provistas por la wxWidgets se parecen muchisimo a las MFC (Microsoft Foundation Classes) del Visual C++ asi que aprenderlas es muy directo. Las librerias wxWidgets tambien son libres y el Code::Blocks tambien. Para aplicaciones multiplataforma que quieres que sean de alta velocidad te las recomendaria sobre las librerias GTK y sobre las Qt (Qt no son gratuitas en Windows)

Finalmente mi recomendacion para aplicaciones con rapido tiempo de desarrollo, multiplataforma pero de verdad (no como con Mono), y que no estaras dominado a la larga por las decisiones de Microsoft, entonces usa Java + Netbeans + Swing + (Postgres o SQLite). No tendras que pagar a nadie por las herramientas de desarrollo y correra en cualquier plataforma: Windows, Linux (Ubuntu) o UNIX (PC-BSD). No aconsejo MySQL al menos por ahora (ya que la tabla por defecto ISAM no hacepta llaves foraneas e integridad referencial, el nuevo tipo de tabla InnoDB si).

Ahora si quieren hacer una aplicacion con alta performance compilado a codigo nativo, recomendaria usar Code::Blocks Nightly Build + GNU Compiler + WxWidgets 2.8

Publicado en Principal | Deja un Comentario »

Cosas inexplicables

Publicado por jcrs en Noviembre 22, 2007

Un profesor afirmaba que había que leer mucho,consultar para conocer cualquier país del mundo, ahora yo digo la mayor forma de conocer un país es ir y vivir ahi o haber nacido ahi , conocer un pais no es ir de turismo pues al turista solo se le muestra un lado de la moneda( el mejor lado) , conocera sus monumentos , sus parques , sus museos sus playas, etc… pero no la realidad   del país, la verdadera la que se conoce conversando con la gente visitando todos sus pueblos, un turista jamas conocera un país si primero no se despoja de su burbuja que lo rodea.

imaginense si he conocido personas que no conocen su país(el mío) y les he escuchado hablar barbaridades sobre algunos lugares que yo conozco, habitantes de un mismo país que no conocen su país pues ( que les parece)  se rodean de una burbuja a su alrededor.

Una persona primero debe conocer su país ( la realidad ) para ayudar a mejorar nuestra situación , pues la ignorancia es una venda sobre nuestros ojos, y nos arrojara a un barranco sobre el cual no saldremos fácilmente.

Vamos conozcamos nuestro país y eliminemos algunos prejuicios raciales que imperan en nuestro país (lamentablemente algunos no superan complejos de inferioridad o de superioridad aun viendo como esta el pais) pues yo les digo  el 35 % de la población  es indígena y el 45%  es de mestizos( mezcla de blanco e indio), y el restante de negros blancos ,zambos,mulatos.

En algunas ocaciones he escuchado comentarios como este (en mi país Ecuador) negro de mierda o indio de mierda, entonces yo les digo si más del 90%de la población tiene algo de indio o de negro cuales son sus traumas,¿ se averguenzan se si mismos? no lo sé.

Parece irónico (pero aun persisten estos complejos) en nuestro propio país. imaginense cuando vayan a Europa o EEUU y se encuentren con algun Xenofobo( no todos los europeos o estadounidenses lo son, pocos son los cabezas huecas en ese aspecto)  a esos que hoy dicen indios de mierda o negros de mierda , a ellos los trataran a todos por igual :indio de mierda o negro de mierda.

superen esos complejos de una vez . (La cifra de acomplejados se disminuye cada día mas ya quedan pocos) espero que se acaben esos complejos para siempre.  y se me olvidaba a conocer el país en serio.

“un pueblo ignorante es un instrumento ciego de su propia destrucción”. Simón Bolívar   

Publicado en Principal | 4 Comentarios »

Frase para los estudiantes

Publicado por jcrs en Noviembre 15, 2007

Francisco de Roux, S.J. en la Lección inaugural de la Facultad de Ciencias Sociales de la Pontificia Universidad Javeriana en 1998:

“Vayan y vivan esa realidad, vayan y vean, vayan y sufran y rían y celebren y teman, y acierten y equivóquense con la gente. Entonces les saldrá una palabra propia, fuerte, apasionada, una palabra que le sobrecogerá a ustedes mismos.

Entonces no habrá más en las clases preguntas artificiales, pulidas por ustedes o tomadas de otros. La misma vida de ustedes se convertirá en una pregunta. Y ustedes experimentarán una credibilidad y una legitimidad en su palabra que ustedes mismos no entenderán de dónde procede”

 

 

Publicado en Principal | Deja un Comentario »

No los olvidamos

Publicado por jcrs en Noviembre 15, 2007

                             obreros2.jpg

 Son 85 años, pasarán 100 años , 1000 años,no los olvidaremos, mientras existan personas de buena voluntad en Ecuador se les recordara. Recordarán que un 15 de Noviembre de 1922 un grupo de asesinos los acribillo a disparos en Guayaquil durante la presidencia de Tamayo. y no lo digo por los ejecutores de la orden, si no por los canallas que la idearon, pero se equivocaron al pueblo jamás lo podrán asesinar, nunca callaran al pueblo.

Gracias Panaderos,barrenderos,trabajadores del tranvía, etc… gracias hermanos obreros ,su asesinato a mano de los oligarcas no logro detenerlos,su amor al país dio sus frutos, amigos míos aun no hemos conformado la nación que soñasteis y que se las debemos , pero en ese camino estamos y hacia patria vamos, se que desde donde esten nos apoyan y quieren lo mejor para el Ecuador.

Salud hermanos, ustedes son  inmortales.

Publicado en Principal | Deja un Comentario »

IPhone

Publicado por jcrs en Octubre 30, 2007

                                   iphone.jpg 

desde la época de Bell no se interesaban tanto por un télefono. y no es para menos pues sus ventas ya han superado las del ipod de Apple (la misma fabricante del ihpone) ,las series Blackberry, y al palm, surgió con muchos problemas:

El principal con Cisco, que tenía una marca del mismo mombre , que ya se resolvio .

otro problema :en EEUU aparece amarrado a un convenio por dos años con AT&T y no liberaran al telefono para usarlo con otras lineas hasta que venza el plazo.

tiene funcionalidades de télefono (una version del ihpone (ipod touch) no la tiene),correo e internet  su interfaz es amigable con el usuario y pantalla dactilar.¿ sera posible tanta belleza?  pronto lo sabremos.  

Publicado en Principal | 1 comentario

Maximas de Baloo(El libro de la selva)

Publicado por jcrs en Octubre 24, 2007

las manchas son orgullo del leopardo

sus cuernos del bufalo el honor

se limpio que la fuerza del que caza

se juzga de la piel por su color

si sucede que un toro de voltea

o pruebas del sambhur una cornada

no pierdas tu tiempo en contarnosla

que es cosa que tenemos ya olvidada

no maltrates al cachorro ajeno

miralo como a un hijo de tu padre

que aunque debil y fragil es muy posible

que a una osa talvez tenga por madre

no hay nadie como yo dice el cachorro

con la sangre de su primera pieza

pero la selva es grande y el pequeño

deja que piense en calma que ahora empieza

comentarios aqui

Publicado en Principal | 2 Comentarios »

java vs .Net

Publicado por jcrs en Octubre 24, 2007

boxeo.jpg

no se trata de una pelea (aunque quisisera verla ) solo se trata de las ventajas de cada uno de ellos(java y C#) tratare de ser lo mas imparcial posible aunque prefiera java .

ventajas de .Net (msdn2.microsoft.com)

  • Modelo de programación mejorada: los lenguajes de .NET Framework proporcionan construcciones y funcionalidades previamente no disponibles para los desarrolladores de SQL.
  • Seguridad mejorada: el código administrado ejecuta un entorno de Common Language Runtime que se aloja en el motor de la base de datos. De esta forma, los objetos de base de datos de .NET Framework estar más seguros que los procedimientos almacenados extendidos disponibles en versiones anteriores de SQL Server.
  • Tipos y agregados definidos por el usuario: los tipos y agregados definidos por el usuario son dos nuevos objetos de base de datos administrados que expanden el almacenamiento y las funcionalidades de generación de consultas del servidor SQL Server.
  • Entorno de desarrollo común: el desarrollo de la base de datos se integra al entorno de desarrollo de Microsoft Visual Studio. Los desarrolladores utilizan las mismas herramientas para desarrollar y depurar objetos de base de datos y secuencias de comandos que las que usan para escribir componentes y servicios de .NET Framework de nivel medio o nivel de cliente.
  • Mejor rendimiento: algunas funciones, como aquellas que ejecutan operaciones matemáticas en cada fila de una base de datos, pueden funcionar mejor cuando son ensamblados compilados que se integran a partir de un proyecto de Visual Basic, Visual C# o Visual C++ en lugar de escribirse en Transact-SQL, que es código interpretado. Por ejemplo, se lograrán mejoras de rendimiento para las funciones, particularmente aquéllas que realizan operaciones con números enteros. Sin embargo, los procedimientos almacenados que sólo tienen acceso a datos no funcionarán mejor.
  • Riqueza del lenguaje: Visual Basic, Visual C# y Visual C++ proporcionan funcionalidades que no están disponibles en Transact-SQL, como las matrices, el control de excepciones sofisticado y la reutilización de código.
  • Reutilización de Código: es posible crear y distribuir con mayor facilidad una biblioteca de ensamblados administrados que una secuencia de comandos de Transact-SQL.
  • Extensibilidad: mediante la utilización de Visual Basic, Visual C# o Visual C++, es posible crear dos objetos de base de datos que no se pueden crear mediante Transact-SQL: agregados y tipos definidos por el usuario.
  • Utilización de conocimientos existentes: es posible utilizar y mejorar sus conocimientos en los lenguajes y desarrollar entornos en los que ya existe experiencia para crear objetos de base de datos.
  • Experiencia del desarrollador más enriquecida: al desarrollar objetos de base de datos mediante la plantilla del proyecto de SQL Server, se cuenta con integración completa con el sistema de proyectos, como por ejemplo, generación, depuración e implementación a varios servidores.
  • Estabilidad y confiabilidad: los objetos de base de datos que se crean utilizando Visual Basic, Visual C# o Visual C++ son más seguros, estables, sólidos y confiables que los procedimientos almacenados extendidos, que podrían generar pérdidas de memoria u otros problemas que reducen el rendimiento y la confiabilidad del servidor. Cuando se ejecutan procedimientos almacenados creados mediante Visual Basic, Visual C# o Visual C++ el procedimiento almacenado no realiza administración de memoria ni subprocesamiento y, por lo tanto, se controlan de manera más sólida.
  • Seguridad: al utilizar objetos de base de datos creados mediante Visual Basic, Visual C# o Visual C++, la seguridad de acceso a código de aquellos lenguajes se combina con los permisos basados en usuario en el servidor SQL Server.
  • parece que todas estas ventajas dejarían KO a Java y a cualquiera que se cruce en su camino pero java reaccionara to be continued….

    Publicado en Principal | 6 Comentarios »