Archivo de la categoría: Entorno Desarrollo

CONTROL DE VERSIONES

 

Trabajo  de Entornos de Desarrollo.

Realizado: Emilio Sedano Gijón

 

 

Resumen de lo que es un Control de  Versiones………………………………………….……………….1.1

Objetivos de un control de versiones………………………………………………………………..…..1.2

Porque utilizar el control de Versiones……………………………………………………………….….1.3

Tipos de control de Versiones existentes hoy día………………………………………………………1.4

Comandos y operaciones básicas……………………………………………………………………..1.5

Instalación de uno de ellos………………………………………………………………………..…….1.6

Instalación de una de estas en un entorno de desarrollo………………………………………..……1.7

Ventajas y Desventajas………………………………………………………………………..………….1.8

Conclusiones……………………………………………………………………………………….…..…1.9

Bibliografías………………………………………………………………………………………………….2.0

 

 

  • Introducción

 

El desarrollo de software no es una tarea exclusivamente individual. En la gran mayoría de los proyectos tanto Open Source como privados es necesario trabajar en equipos en donde son varios los desarrolladores que acceden al mismo código fuente.

Coordinar las modificaciones al código de una forma manual es una tarea importante, sobre todo en proyectos muy complejos o con una gran cantidad de desarrolladores.

Uno de los objetivos de CVS es proveer una herramienta que permita mezclar distintos cambios al código para consolidar un código único final de una forma segura, siempre que sea posible.

Otro de las funciones que cumple una herramienta como CVS es mantener un registro de los cambios que se hacen al código fuente. De tal forma que se tenga acceso a todo el historial de cambios del proyecto. Esta característica permite volver a versiones anteriores, encontrar defectos introducidos y mantener un mismo proyecto en una versión “estable” y “en desarrollo” a partir de un solo repositorio común.

Estas capacidades son de vital importancia en proyectos Open Source, en donde los desarrolladores están separados geográficamente y temporalmente. Sin embargo las mismas prácticas son también aplicables a proyectos privados

 

1.1 Que es un control  de Versiones.

 

Realmente un control de versiones es la gestión de los diversos cambios que se realizan sobre los elementos de algún producto o una configuración del mismo.

Una versión, revisión o edición de  un producto, es el estado en el que se encuentra dicho producto en un momento dado su desarrollo o modificion.

Por ejemplo programas informáticos, documentación, gráficos de procedimientos, monografías y cartas. RCS también puede ser utilizado para manejar archivos binarios, pero con eficacia y eficiencia reducidas. Las distintas versiones son archivadas mediante la ayuda de la herramienta diff.

Aunque un sistema de control de versiones puede realizarse de forma manual, es muy aconsejable disponer de herramientas que faciliten esta gestión dando lugar a los llamados sistemas de control de versiones o SVC (del inglés System Versión Control). Estos sistemas facilitan la administración de las distintas versiones de cada producto desarrollado, así como las posibles especializaciones realizadas (por ejemplo, para algún cliente específico). Ejemplos de este tipo de herramientas son entre otros: CVS, Subversión, SourceSafe, ClearCase, Darcs, Bazaar , Plastic SCM, Git, Mercurial, Perforce.

 

1.2 Objetivos de un control de Versiones.

 

  • Establecer una política de implementación de nuevas versiones de hardware y software.
  • Implementar las nuevas versiones de software y hardware en el entorno de producción tras su verificación en un entorno realista de pruebas.
  • Garantizar que el proceso de cambio cumpla las especificaciones de la RFC
  • Asegurar, en colaboración con la Gestión de Cambios y Configuraciones, que todos los cambios se ven correctamente reflejados en la CMDB.
  • Archivar copias idénticas del software en producción, así como de toda su documentación asociada, en la Biblioteca de Software Definitivo (DSL).
  • Mantener actualizado el Depósito de Hardware Definitivo (DHS).

 

1.3  Porque crear el control de versiones (Beneficios).

Los beneficios de una correcta Gestión de Versiones se resumen en:

  • Las nuevas versiones cumplen los objetivos propuestos.
  • Se reduce el número de incidentes por incompatibilidades con otro software o hardware instalado.
  • El proceso de pruebas asociado no sólo permite asegurar la calidad del software y hardware a instalar sino que también permite conocer la opinión de los usuarios sobre la funcionalidad y usabilidad de las nuevas versiones.
  • El correcto mantenimiento de la DSL impide que se pierdan (valiosas) copias de los archivos fuente.
  • Se reduce el número de copias de software ilegales.
  • Control centralizado del software y hardware desplegado.
  • Protección contra virus y problemas asociados a versiones de software incontroladas.

 

1.4 Tipos de control de versiones existentes hoy en día.

Hasta ahora, los dos sistemas de control de versiones más populares en el mundo del software libre son Concurrente Versiones Sistema (CVS), http://www.cvshome.org/) y Subversión (SVN, http://subversion.tigris.org/).

CVS lleva largo tiempo y los desarrolladores más experimentados ya están familiarizados con él. Hace más o menos lo necesario y ya que ha sido popular durante mucho tiempo es probable que no se termine discutiendo su utilización.

Cualquier sistema de control de versiones estable y listo para entornos de producción será suficiente, no hay que preocuparse demasiado sobre tomar una decisión equivocada. Si simplemente no se puede decidir, entonces la opción es Subversión. Es relativamente fácil de aprender y es probable que se mantenga como el estándar por unos años más.

 

 

Subversión:

Subversión es un sistema de control de versiones diseñado específicamente para reemplazar al popular CVS. Es software libre bajo una licencia de tipo Apache/BSD y se le conoce también como svn por ser el nombre de la herramienta utilizada en la línea de comando.

Una característica importante de Subversión es que, a diferencia de CVS, los demás archivos con versionamiento no tienen cada uno un número de revisión independiente, en cambio, todo el repositorio tiene un único número de versión que identifica un estado común de todos los archivos del repositorio en un instante determinado del repositorio que se está trabajando.

Subversión puede acceder al repositorio a través de redes, lo que le permite ser usado por personas que se encuentran en distintas computadoras. A cierto nivel, la posibilidad de que varias personas puedan modificar y administrar el mismo conjunto de datos desde sus respectivas ubicaciones fomenta la colaboración. Se puede progresar más rápidamente sin un único conducto por el cual deban pasar todas las modificaciones. Y puesto que el trabajo se encuentra bajo el control de versiones, no hay razón para temer por que la calidad del mismo vaya a verse afectada —si se ha hecho un cambio incorrecto a los datos, simplemente deshaga ese cambio.[2

 

 

1.5 Comandos u Operaciones básicas a la hora de cambiar de Versiones.

Repositorio

En la parte de servidor de CVS se maneja un repositorio. Un repositorio es simplemente un directorio en el servidor que contiene diversos módulos. Por ejemplo, un proyecto podría tener un repositorio, y en cada modulo estarían los subproyectos.

A su vez, cada modulo contiene un conjunto de archivos, y representa al proyecto con el que se quiere trabajar. Por ejemplo en sitios grandes como sourceforge, cada uno de los proyectos tiene su propio repositorio CVS, y cada uno de ellos tiene uno o más módulos de trabajo. Cuando un desarrollador trabaja con CVS lo hace a nivel de modulo.

Para conectarse al servidor se pueden usar distintos tipos de protocolos, sin embargo los más extendidos son “pserver” para acceso anónimo o algún tipo de acceso en donde la seguridad no es importante. El otro es ssh, y se usa en casos más críticos, por ejemplo cuando se requiere acceso para poder realizar cambios al repositorio.

Para que un directorio pueda ser utilizado como repositorio CVS, lo primero que se debe hacer es decirle a CVS que genere los archivos y subdirectorios necesarios para funcione como tal. Podríamos crear un repositorio con los siguientes comandos:

Primero creamos un grupo especial para que pueda hacer cambios en CVS

Una vez descargada, la ejecutamos e instalamos. Ahora hay que crear los repositorios, para ello:

  • Abrimos una consola (Menú inicio -> Ejecutar -> CMD).
  • Creamos una carpeta de repositorio, la crearemos en la unidad C:
    • CD \
    • mkdir svnrepo
    • cd svnrepo
    • Ahora crearemos una carpeta en el repositorio para los proyectos.
    • svnadmin create java

Ya hemos acabado la primera fase. Ahora procedemos a realizar la integración con Eclipse.

 

Necesitamos instalar el plugin Subclipse. Desde la web, en la sección Download and Install obtenemos las url necesarias para su instalación en Eclipse, vienen denominadas como “Eclipse update site URL“.

 

Con esa url, abrimos eclipse y hago lo siguiente:

  • Pinchamos en Help -> Install New Software.
  • Presiono el botón ADD
  • Pongo lo siguiente en los campos:
    • Name: Subclipse
    • Location: http://subclipse.tigris.org/update_1.8.x
  • Presiono OK
  • Marco los paquetes que se recuperan del servidor y procedemos a su instalación.
  • Eclipse se reiniciará.

Ahora ya podemos poner los proyectos que queramos en el repositorio. Para ello, pinchamos con el botón derecho en el título del proyecto que queramos dentro del navegador de paquetes de eclipse (Package Explorer) y seleccionamos: Team -> Share Project

 

Saldrá una ventana que nos ofrece la posibilidad entre usar CVS y SVN. Seleccionamos SVN y le damos a continuar (Next).

 

Ahora la aplicación nos ofrece la posibilidad entre usar un repositorio existente (si es que tenemos) o crear uno nuevo. En nuestro caso dado que estamos creando uno nuevo, optaremos por la crear uno nuevo (Create a new repository location). Le damos a Next.

 

Ahora nos pide la URL del repositorio. Como estamos usando un repositorio local, utilizaremos el protocolo file:// e introduciremos el path completo hasta el repositorio. En mi caso tengo que introducir: file:///C:/svnrepo/java

 

El proyecto se creará en el repositorio, puede que eclipse quiera cambiar el modo de vista a colaborativo; yo prefiero no cambiarlo.

 

Ahora hay que decidir qué carpetas introducimos. Por ejemplo la de las fuentes de las aplicaciones, en mi caso src. Para ello pincho con el botón derecho en la carpeta y le damos a Team -> Commit.

 

Ponemos un comentario y aceptamos el commit. Ya disponemos de esas carpetas en el repositorio y podemos agregar versiones nuevas, comparar con antiguas y todas las ventajas que ofrece un sistema de control de versiones como SVN. A partir de aquí recomiendo leer un poco la documentación de SVN para los que no hayáis trabajado con él previamente.

 

1.6 Instalación de uno de ellos.

Lo primero que tenemos que hacer es descargarnos Eclipse desde Linux.

Lo siguiente será abrirlo y meternos en Subversive SVN Team provider y lo descargamos.

Una vez terminada la instalación ya tendremos Eclipse y Subversive.

Tendremos que abrir el programa y crearnos un proyecto y lo guardamos en SVN .

Lo siguiente nos creamos el repositorio con Créate a new reposity locación.

Lo siguiente introducir abajo la URL donde se encuentra el repositorio, y seleccionamos el modo

avanzado y siguiente.

Ya por ultimo introduciremos un comentario para la operación de conmit que se va hacer en el

repositorio SVN y seleccionamos Finish.

Y ya tendremos Eclipse configurado para hacer un control de versiones

 

 

1.7 Instalación de Eclipse en Linux.

Nos vamos a Centro de software de Ubuntu y desde allí ponemos Eclipse.

Y le damos a instalar.

Una vez la tengamos instalado podemos hacer lo mencionado en el punto anterior para la instalación de SVN en Eclipse algo sencillo y rápido.

 

1.8 Ventajas y desventajas del Control de Versiones.

 

Ventajas

Es gratis.

Permite la concurrencia del trabajo.

Variedad de clientes a escoger.

Manejo de múltiples versiones simultaneas.

Desventajas

El protocolo no soporta eliminación de directorios o renombrados.

Depende de la implementación de los clientes.

 

2.0 BIBLIOGRAFIA

 

http://es.wikipedia.org/wiki/Revision_Control_System

http://itil.osiatis.es/Curso_ITIL/Gestion_Servicios_TI/gestion_de_versiones/introduccion_objetivos_gestion_de_versiones/introduccion_objetivos_gestion_de_versiones.php

http://producingoss.com/es/vc.html

http://es.wikipedia.org/wiki/Subversion

http://geekopasion.tuars.com/2013/03/04/como-instalar-subversive-plugin-svn-en-eclipse-juno-ubuntu-12-10/

 

http://www.tuxpan.com/fcatrin/files/cvs.html)

http://www.slideshare.net/dbaccess/control-de-versiones-uso-de-cvs-en-proyectos-net

 

 

 

TRABAJO ENTORNOS DE DESARROLLO LIBRES Y COMERCIALES

ECLIPSE

 

 

CARACTERISTICAS

 

Entre otras características nos encontramos con un potente editor de texto con la capacidad de resaltar sintaxis, así como también una compilación en tiempo real y soportes para (AWT/SWING), WEB (Servlets,jsp,ect) entre otros más..

 

VENTAJAS

En el amplio mundo de la programación existen múltiples plataformas para trabajar, pero si buscas un software para hacer mucho más cómodo tu trabajo, Eclipse es una buena alternativa para lograrlo. Para muchos inclusive Eclipse es el IDE ideal para utilizar en desarrollo de software, ya sea en distintos lenguajes de programación como Java así como también para PHP y otros.

 

DESVENTAJAS

Eclipse tiene un muy buen soporte de refactorización del cual netbeans carece (solo hay un pequeño módulo gratuito con pocas refactorizaciones) así como ayuda a la codificación (con las maravillosas sugerencias).
Netbeans tiene un muy buen soporte de webapps (.war, jsp y servlets) del cual eclipse carece (los plugins por lo general no son ni tan potentes ni tan sencillos como el módulo que en Netbeans viene preinstalado)

 

AMBITO DE APLICACION

 

La plataforma Eclipse consiste en un Entorno de Desarrollo Integrado (IDE, Integrated Development Environment) abierto y extensible. Como elementos básicos, un IDE cuenta con en un editor de código, un compilador/intérprete y un depurador. Eclipse sirve como IDE Java y cuenta con numerosas herramientas de desarrollo de software. También da soporte a otros lenguajes de programación, como son C/C++, Cobol, Fortran, PHP o Python. A la plataforma base de Eclipse se le pueden añadir extensiones (plugins) para extender la funcionalidad

 

LENGUAJES QUE SOPORTA

 

Con respecto a las plataformas, el Eclipse Consortium proporciona instalaciones binarias para Windows, Linux, Solaris, HP-UX, AIX, QNX, y Mac OS X.

 

AÑO DE LA ULTIMA VERSION DE ECLIPSE

Eclipse 3.7 Indigo supone una nueva evolución del IDE que ya lleva una década entre nosotros desde Eclipse 1.0 presentado en Noviembre de 2001. La última versión estable del IDE era Eclipse 3.6 Helios liberada en Junio de 2010.

 

 

 

BIBLIOGRAFIA  ECLIPSE

 

Las sigla IDE significa (Integrated Development Environment) nacieron desde la nesesidad de que los
desarrolladores tenemos que tener un aviente de compila miento y de pruebas en varios servidores, es
decir ese programara que es un IDE aparte de chequear tu sintaxis ejecuta su código escrito en una

maquinara virtual o servidores que le ayas instalado.

Por lo general los IDE mas conocido son de JAVA ya que trabajar en JAVA no es fácil, no es muy amistoso
que digamos cuando programas y estructura los directorios, preso los IDE ayudaron mucho al desarrollo
de software, un ejemplo seria el famoso Eclipse y NetBeans ambos IDE son para programar en lenguaje java.

 

———————————————————————————————————————————–

BLUEJ

 

CARACTERISTICAS

 

Entre sus características más llamativas está, el utilizar muy pocos recursos de la máquina y es muy sencillo de manejar, lo que no sucede con el Un One Studio de Un (desarrollado también en Java), o el Eclipse .

 

VENTAJAS

 

Esta herramienta es muy útil, ya que crea modelos altamente intuitivos, lo que hace a nuestro programa muy entendible a terceros.

Tiene incluido además un editor de textos, en el cual se resaltan las palabras reservadas de Java; ya sé: “eso lo hace cualquier IDE decente”, lo verdaderamente interesante es que podemos desarrollar/mantener la documentación interna de nuestro programa a la vez que vamos codificando.

 

DESVENTAJAS

 

Crea Automáticamente un archivo de documentación.

Solo está disponible en versión inglés.

Resulta complicada la corrida de los programas, para programadores expertos.

Su entorno no es muy amigable..

 

 

AMBITO DE APLICACION

 

Las funciones de interacción visual de BlueJ están diseñadas para permitir a uno retrasar la introducción de ciertos conceptos programáticos considerados complicados o dificultosos por los educadores.

 

LENGUAJES QUE SOPORTA

 

BlueJ está bajo una licencia GPL, por lo cual podemos usarlo y distribuirlo libremente, funciona en sistemas GNU/Linux, Windows, Mac/OS y aquellos que soporten el lenguaje Java.

 

 

 

AÑO DE LA ULTIMA VERSION

 

La última versión estable, la 3.0.3, fue lanzada el 19 de octubre de 2010. Ésta versión proporciona funciones mejoradas del editor tales como completado de código o destacamento de alcance (scope highlighting).

 

BIBLIOGRAFIA

 

Desarrollado por Barnes, David J.; Kolling, Michael (September 1, 2008 .

JCREATOR

 

CARACTERISTICAS

 

 

JCreator es un potente entorno de desarrollo interactivo (IDE) para las tecnologías Java que proporciona más poder a su alcance que todos los IDEs ordinarios combinados.

 

JCreator es la herramienta de desarrollo para cada programador que le gusta para hacer lo que mejor sabe hacer: la programación. Es más rápido, más eficiente y más fiable que otros IDE.

 

VENTAJAS

 

Entre sus ventajas destaca la de consumir menos recursos que otros IDEs, y entre los inconvenientes el ser menos completo que dichos entornos (como Netbeans, Eclipse, JBuilder, JDeveloper, y no ser libre como los dos primeros).

 

DESVENTAJAS

 

Esta en Ingles.

 

 

 

AMBITO DE APLICACION

 

 

Es un entorno de desarrollo integrado (IDE) para programación en lenguaje Java en entorno Windows.

Es un producto comercial de la compañía Xinox Software. Utiliza el J2SDK de Sun Microsystems para compilar y ejecutar los programas, pero no es necesario para ejecutar el JCreator, ya que a diferencia de otros IDEs para Java como Netbeans o Eclipse este programa no es una aplicación nativa Java.

 

LENGUAJES QUE LOS SOPORTA

 

 

Saltar a: navegación, búsqueda

JCreator es un entorno de desarrollo integrado (IDE) para programación en lenguaje Java en entorno Windows.

Es un producto comercial de la compañía Xinox Software. Utiliza el J2SDK de Sun Microsystems para compilar y ejecutar los programas, pero no es necesario para ejecutar el JCreator, ya que a diferencia de otros IDEs para Java como Netbeans o Eclipse este programa no es una aplicación nativa Java.

 

JCreator es un entorno de desarrollo para Java. Existen dos versiones de este programa, una es comercial (JCreator PRO) y por la misma razón contiene algunas utilidades adicionales en comparación a la versión gratuita (JCreator LE). El JCreator actúa como una máscara sobre el JDK y permite usarlo en ambiente Windows. Por ello el Java Development Kit debe estar instalado previamente en la máquina para poder instalar su JCreatoR

 

 

 

 

ULTIMA VERSION ACTUALIZADA

 

Tal como lo leen la version 4.0 del famoso(solo en mi pueblo xD) JCreator ya salió al aire, la verdad es que está disponible desde el 16 de Octubre al parecer, sólo que según yo este IDE ya estaba “muerto” o abandonado y pensé que ya no tendría más actualizaciones.

 

NETBEANS

 

 

LAS VENTAJAS Y DESVENTAJAS QUE HAY EN NETBEANS.

Netbeans tiene un muy buen soporte de webapps (.war, jsp y servlets) del cual eclipse carece

(los plugins que  probé no eran ni tan potentes ni tan sencillos como el módulo que en Netbeans viene preinstalado)

-Puedes programar webs en Java sin instalarle ningun plugin ya que posee un tomcat de serie.
-El  depurado de las aplicaciones es mas sencillo.

El problema o e contra es que consume muchos recursos.

Comparación de otros compiladores es que el proceso de compilación es un tanto mas engorroso

ya que hay que ubicar perfectamente proyecto, paquete y al final la clase y la clase en donde se

encuentra el método main.

 

  AMBITO DE APLICACION

Editor de texto ideado para trabajar con codigo fuente de algun lenguaje. Por lo general incluyen

un debug (para revisar errores en tu codigo), analizador de sintaxis, precompiladores (para

detectar errores previos a la compilacion) y ponen de distintos colores la palabras reservadas

del lenguaje de programacion.

 LENGUAJES QUE SOPORTA

NetBeans Supported Technologies (Traduccion: NetBeans Soporta estas tegnologias)
Ajax | C/C++  Databases | Debugger | Desktop | Editor | GUI Builder | Java EE | JavaFX | Java ME  Java SE | Java Script | Mobile | PHP | Profiler Refactor | REST | Rich Client Platform | Ruby | SOA | SOAP   UML | Web SDL .

ULTIMA VERSION

La nueva versión de Netbeans ya está disponible para su descarga. La última versión es la 7.2, y según las notas oficiales de la versión, aumenta bastante el rendimiento y la experiencia de programar.

 

 

BIBLIOGRAFIA DE ESTE TRABAJO

 

http://www.altatorre.com/webclase/java/manualito_java1.htm

http://aplicaciones.org/eclipse-ide-de-desarrollo-open-source/

http://mx.answers.yahoo.com/question/index?qid=20100208230109AAQKJhO

http://www.programacion.com/articulo/eclipse_–_i_–_historia_y_toma_de_contacto_288http://casidiablo.net/bluej-que-buen-ide/http://www.ecured.cu/index.php/BlueJ

HYPERLINK “http://www.filecluster.es/programas/JCreator-LE-97409.htmlhttp://www.panchosoft.com/blog/2006/11/06/jcreator-40-disponible/”http://www.filecluster.es/programas/JCreator-LE-97409.htmlhttp://www.panchosoft.com/blog/2006/11/06/jcreator-40-disponible/

http://www.linuxparatodos.net/portal/forum/viewtopic.php?showtopic=32195http://es.answers.yahoo.com/question/index?http://www.tufuncion.com/ide-php

   Trabajo  de Entornos de Desarrollo.   

CONTROL DE VERSIONES

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Realizado: Emilio Sedano Gijón

 

 

 

 

 

Resumen de lo que es un Control de  Versiones………………………………………….……………….1.1

Objetivos de un control de versiones………………………………………………………………..…..1.2

Porque utilizar el control de Versiones……………………………………………………………….….1.3

Tipos de control de Versiones existentes hoy día………………………………………………………1.4

Comandos y operaciones básicas……………………………………………………………………..1.5

Instalación de uno de ellos………………………………………………………………………..…….1.6

Instalación de una de estas en un entorno de desarrollo………………………………………..……1.7

Ventajas y Desventajas………………………………………………………………………..………….1.8

Conclusiones……………………………………………………………………………………….…..…1.9

Bibliografías………………………………………………………………………………………………….2.0

 

 

 

 

 

 

 

 

 

 

 

  • Introducción

 

El desarrollo de software no es una tarea exclusivamente individual. En la gran mayoría de los proyectos tanto Open Source como privados es necesario trabajar en equipos en donde son varios los desarrolladores que acceden al mismo código fuente.

Coordinar las modificaciones al código de una forma manual es una tarea importante, sobre todo en proyectos muy complejos o con una gran cantidad de desarrolladores.

Uno de los objetivos de CVS es proveer una herramienta que permita mezclar distintos cambios al código para consolidar un código único final de una forma segura, siempre que sea posible.

Otro de las funciones que cumple una herramienta como CVS es mantener un registro de los cambios que se hacen al código fuente. De tal forma que se tenga acceso a todo el historial de cambios del proyecto. Esta característica permite volver a versiones anteriores, encontrar defectos introducidos y mantener un mismo proyecto en una versión “estable” y “en desarrollo” a partir de un solo repositorio común.

Estas capacidades son de vital importancia en proyectos Open Source, en donde los desarrolladores están separados geográficamente y temporalmente. Sin embargo las mismas prácticas son también aplicables a proyectos privados

 

 

 

 

 

 

1.1 Que es un control  de Versiones.

 

Realmente un control de versiones es la gestión de los diversos cambios que se realizan sobre los elementos de algún producto o una configuración del mismo.

Una versión, revisión o edición de  un producto, es el estado en el que se encuentra dicho producto en un momento dado su desarrollo o modificion.

 

 

 

por ejemplo programas informáticos, documentación, gráficos de procedimientos, monografías y cartas. RCS también puede ser utilizado para manejar archivos binarios, pero con eficacia y eficiencia reducidas. Las distintas versiones son archivadas mediante la ayuda de la herramienta diff.

Aunque un sistema de control de versiones puede realizarse de forma manual, es muy aconsejable disponer de herramientas que faciliten esta gestión dando lugar a los llamados sistemas de control de versiones o SVC (del inglés System Versión Control). Estos sistemas facilitan la administración de las distintas versiones de cada producto desarrollado, así como las posibles especializaciones realizadas (por ejemplo, para algún cliente específico). Ejemplos de este tipo de herramientas son entre otros: CVS, Subversión, SourceSafe, ClearCase, Darcs, Bazaar , Plastic SCM, Git, Mercurial, Perforce.

 

 

 

1.2 Objetivos de un control de Versiones.

 

 

  • Establecer una política de implementación de nuevas versiones de hardware y software.
  • Implementar las nuevas versiones de software y hardware en el entorno de producción tras su verificación en un entorno realista de pruebas.
  • Garantizar que el proceso de cambio cumpla las especificaciones de la RFC
  • Asegurar, en colaboración con la Gestión de Cambios y Configuraciones, que todos los cambios se ven correctamente reflejados en la CMDB.
  • Archivar copias idénticas del software en producción, así como de toda su documentación asociada, en la Biblioteca de Software Definitivo (DSL).
  • Mantener actualizado el Depósito de Hardware Definitivo (DHS).

 

 

1.3  Porque crear el control de versiones (Beneficios).

Los beneficios de una correcta Gestión de Versiones se resumen en:

  • Las nuevas versiones cumplen los objetivos propuestos.
  • Se reduce el número de incidentes por incompatibilidades con otro software o hardware instalado.
  • El proceso de pruebas asociado no sólo permite asegurar la calidad del software y hardware a instalar sino que también permite conocer la opinión de los usuarios sobre la funcionalidad y usabilidad de las nuevas versiones.
  • El correcto mantenimiento de la DSL impide que se pierdan (valiosas) copias de los archivos fuente.
  • Se reduce el número de copias de software ilegales.
  • Control centralizado del software y hardware desplegado.
  • Protección contra virus y problemas asociados a versiones de software incontroladas.

 

1.4 Tipos de control de versiones existentes hoy en día.

Hasta ahora, los dos sistemas de control de versiones más populares en el mundo del software libre son Concurrente Versiones Sistema (CVS), http://www.cvshome.org/) y Subversión (SVN, http://subversion.tigris.org/).

CVS lleva largo tiempo y los desarrolladores más experimentados ya están familiarizados con él. Hace más o menos lo necesario y ya que ha sido popular durante mucho tiempo es probable que no se termine discutiendo su utilización.

Cualquier sistema de control de versiones estable y listo para entornos de producción será suficiente, no hay que preocuparse demasiado sobre tomar una decisión equivocada. Si simplemente no se puede decidir, entonces la opción es Subversión. Es relativamente fácil de aprender y es probable que se mantenga como el estándar por unos años más.

 

 

Subversión:

Subversión es un sistema de control de versiones diseñado específicamente para reemplazar al popular CVS. Es software libre bajo una licencia de tipo Apache/BSD y se le conoce también como svn por ser el nombre de la herramienta utilizada en la línea de comando.

Una característica importante de Subversión es que, a diferencia de CVS, los demás archivos con versionamiento no tienen cada uno un número de revisión independiente, en cambio, todo el repositorio tiene un único número de versión que identifica un estado común de todos los archivos del repositorio en un instante determinado del repositorio que se está trabajando.

Subversión puede acceder al repositorio a través de redes, lo que le permite ser usado por personas que se encuentran en distintas computadoras. A cierto nivel, la posibilidad de que varias personas puedan modificar y administrar el mismo conjunto de datos desde sus respectivas ubicaciones fomenta la colaboración. Se puede progresar más rápidamente sin un único conducto por el cual deban pasar todas las modificaciones. Y puesto que el trabajo se encuentra bajo el control de versiones, no hay razón para temer por que la calidad del mismo vaya a verse afectada —si se ha hecho un cambio incorrecto a los datos, simplemente deshaga ese cambio.[2

 

 

1.5 Comandos u Operaciones básicas a la hora de cambiar de Versiones.

Repositorio

En la parte de servidor de CVS se maneja un repositorio. Un repositorio es simplemente un directorio en el servidor que contiene diversos módulos. Por ejemplo, un proyecto podría tener un repositorio, y en cada modulo estarían los subproyectos.

A su vez, cada modulo contiene un conjunto de archivos, y representa al proyecto con el que se quiere trabajar. Por ejemplo en sitios grandes como sourceforge, cada uno de los proyectos tiene su propio repositorio CVS, y cada uno de ellos tiene uno o más módulos de trabajo. Cuando un desarrollador trabaja con CVS lo hace a nivel de modulo.

Para conectarse al servidor se pueden usar distintos tipos de protocolos, sin embargo los más extendidos son “pserver” para acceso anónimo o algún tipo de acceso en donde la seguridad no es importante. El otro es ssh, y se usa en casos más críticos, por ejemplo cuando se requiere acceso para poder realizar cambios al repositorio.

Para que un directorio pueda ser utilizado como repositorio CVS, lo primero que se debe hacer es decirle a CVS que genere los archivos y subdirectorios necesarios para funcione como tal. Podríamos crear un repositorio con los siguientes comandos:

Primero creamos un grupo especial para que pueda hacer cambios en CVS

Una vez descargada, la ejecutamos e instalamos. Ahora hay que crear los repositorios, para ello:

  • Abrimos una consola (Menú inicio -> Ejecutar -> CMD).
  • Creamos una carpeta de repositorio, la crearemos en la unidad C:
    • CD \
    • mkdir svnrepo
    • cd svnrepo
    • Ahora crearemos una carpeta en el repositorio para los proyectos.
    • svnadmin create java

Ya hemos acabado la primera fase. Ahora procedemos a realizar la integración con Eclipse.

 

Necesitamos instalar el plugin Subclipse. Desde la web, en la sección Download and Install obtenemos las url necesarias para su instalación en Eclipse, vienen denominadas como “Eclipse update site URL“.

 

Con esa url, abrimos eclipse y hago lo siguiente:

  • Pinchamos en Help -> Install New Software.
  • Presiono el botón ADD
  • Pongo lo siguiente en los campos:
    • Name: Subclipse
    • Location: http://subclipse.tigris.org/update_1.8.x
  • Presiono OK
  • Marco los paquetes que se recuperan del servidor y procedemos a su instalación.
  • Eclipse se reiniciará.

Ahora ya podemos poner los proyectos que queramos en el repositorio. Para ello, pinchamos con el botón derecho en el título del proyecto que queramos dentro del navegador de paquetes de eclipse (Package Explorer) y seleccionamos: Team -> Share Project

 

Saldrá una ventana que nos ofrece la posibilidad entre usar CVS y SVN. Seleccionamos SVN y le damos a continuar (Next).

 

Ahora la aplicación nos ofrece la posibilidad entre usar un repositorio existente (si es que tenemos) o crear uno nuevo. En nuestro caso dado que estamos creando uno nuevo, optaremos por la crear uno nuevo (Create a new repository location). Le damos a Next.

 

Ahora nos pide la URL del repositorio. Como estamos usando un repositorio local, utilizaremos el protocolo file:// e introduciremos el path completo hasta el repositorio. En mi caso tengo que introducir: file:///C:/svnrepo/java

 

El proyecto se creará en el repositorio, puede que eclipse quiera cambiar el modo de vista a colaborativo; yo prefiero no cambiarlo.

 

Ahora hay que decidir qué carpetas introducimos. Por ejemplo la de las fuentes de las aplicaciones, en mi caso src. Para ello pincho con el botón derecho en la carpeta y le damos a Team -> Commit.

 

Ponemos un comentario y aceptamos el commit. Ya disponemos de esas carpetas en el repositorio y podemos agregar versiones nuevas, comparar con antiguas y todas las ventajas que ofrece un sistema de control de versiones como SVN. A partir de aquí recomiendo leer un poco la documentación de SVN para los que no hayáis trabajado con él previamente.

 

1.6 Instalación de uno de ellos.

Lo primero que tenemos que hacer es descargarnos Eclipse desde Linux.

Lo siguiente será abrirlo y meternos en Subversive SVN Team provider y lo descargamos.

Una vez terminada la instalación ya tendremos Eclipse y Subversive.

Tendremos que abrir el programa y crearnos un proyecto y lo guardamos en SVN .

Lo siguiente nos creamos el repositorio con Créate a new reposity locación.

Lo siguiente introducir abajo la URL donde se encuentra el repositorio, y seleccionamos el modo

avanzado y siguiente.

Ya por ultimo introduciremos un comentario para la operación de conmit que se va hacer en el

repositorio SVN y seleccionamos Finish.

Y ya tendremos Eclipse configurado para hacer un control de versiones

 

 

1.7 Instalación de Eclipse en Linux.

Nos vamos a Centro de software de Ubuntu y desde allí ponemos Eclipse.

Y le damos a instalar.

Una vez la tengamos instalado podemos hacer lo mencionado en el punto anterior para la instalación de SVN en Eclipse algo sencillo y rápido.

 

 

 

1.8 Ventajas y desventajas del Control de Versiones.

 

Ventajas

Es gratis.

Permite la concurrencia del trabajo.

Variedad de clientes a escoger.

Manejo de múltiples versiones simultaneas.

Desventajas

El protocolo no soporta eliminación de directorios o renombrados.

Depende de la implementación de los clientes.

 

2.0 BIBLIOGRAFIA

 

http://es.wikipedia.org/wiki/Revision_Control_System

http://itil.osiatis.es/Curso_ITIL/Gestion_Servicios_TI/gestion_de_versiones/introduccion_objetivos_gestion_de_versiones/introduccion_objetivos_gestion_de_versiones.php

http://producingoss.com/es/vc.html

http://es.wikipedia.org/wiki/Subversion

http://geekopasion.tuars.com/2013/03/04/como-instalar-subversive-plugin-svn-en-eclipse-juno-ubuntu-12-10/

 

http://www.tuxpan.com/fcatrin/files/cvs.html)

http://www.slideshare.net/dbaccess/control-de-versiones-uso-de-cvs-en-proyectos-net

 

 

 

TRABAJO ENTORNOS DE DESARROLLO LIBRES Y COMERCIALES

ECLIPSE

 

 

CARACTERISTICAS

 

Entre otras características nos encontramos con un potente editor de texto con la capacidad de resaltar sintaxis, así como también una compilación en tiempo real y soportes para (AWT/SWING), WEB (Servlets,jsp,ect) entre otros más..

 

VENTAJAS

En el amplio mundo de la programación existen múltiples plataformas para trabajar, pero si buscas un software para hacer mucho más cómodo tu trabajo, Eclipse es una buena alternativa para lograrlo. Para muchos inclusive Eclipse es el IDE ideal para utilizar en desarrollo de software, ya sea en distintos lenguajes de programación como Java así como también para PHP y otros.

 

DESVENTAJAS

Eclipse tiene un muy buen soporte de refactorización del cual netbeans carece (solo hay un pequeño módulo gratuito con pocas refactorizaciones) así como ayuda a la codificación (con las maravillosas sugerencias).
Netbeans tiene un muy buen soporte de webapps (.war, jsp y servlets) del cual eclipse carece (los plugins por lo general no son ni tan potentes ni tan sencillos como el módulo que en Netbeans viene preinstalado)

 

AMBITO DE APLICACION

 

La plataforma Eclipse consiste en un Entorno de Desarrollo Integrado (IDE, Integrated Development Environment) abierto y extensible. Como elementos básicos, un IDE cuenta con en un editor de código, un compilador/intérprete y un depurador. Eclipse sirve como IDE Java y cuenta con numerosas herramientas de desarrollo de software. También da soporte a otros lenguajes de programación, como son C/C++, Cobol, Fortran, PHP o Python. A la plataforma base de Eclipse se le pueden añadir extensiones (plugins) para extender la funcionalidad

 

LENGUAJES QUE SOPORTA

 

Con respecto a las plataformas, el Eclipse Consortium proporciona instalaciones binarias para Windows, Linux, Solaris, HP-UX, AIX, QNX, y Mac OS X.

 

AÑO DE LA ULTIMA VERSION DE ECLIPSE

Eclipse 3.7 Indigo supone una nueva evolución del IDE que ya lleva una década entre nosotros desde Eclipse 1.0 presentado en Noviembre de 2001. La última versión estable del IDE era Eclipse 3.6 Helios liberada en Junio de 2010.

 

 

 

BIBLIOGRAFIA  ECLIPSE

 

Las sigla IDE significa (Integrated Development Environment) nacieron desde la nesesidad de que los
desarrolladores tenemos que tener un aviente de compila miento y de pruebas en varios servidores, es
decir ese programara que es un IDE aparte de chequear tu sintaxis ejecuta su código escrito en una

maquinara virtual o servidores que le ayas instalado.

Por lo general los IDE mas conocido son de JAVA ya que trabajar en JAVA no es fácil, no es muy amistoso
que digamos cuando programas y estructura los directorios, preso los IDE ayudaron mucho al desarrollo
de software, un ejemplo seria el famoso Eclipse y NetBeans ambos IDE son para programar en lenguaje java.

 

———————————————————————————————————————————–

BLUEJ

 

CARACTERISTICAS

 

Entre sus características más llamativas está, el utilizar muy pocos recursos de la máquina y es muy sencillo de manejar, lo que no sucede con el Un One Studio de Un (desarrollado también en Java), o el Eclipse .

 

VENTAJAS

 

Esta herramienta es muy útil, ya que crea modelos altamente intuitivos, lo que hace a nuestro programa muy entendible a terceros.

Tiene incluido además un editor de textos, en el cual se resaltan las palabras reservadas de Java; ya sé: “eso lo hace cualquier IDE decente”, lo verdaderamente interesante es que podemos desarrollar/mantener la documentación interna de nuestro programa a la vez que vamos codificando.

 

DESVENTAJAS

 

Crea Automáticamente un archivo de documentación.

Solo está disponible en versión inglés.

Resulta complicada la corrida de los programas, para programadores expertos.

Su entorno no es muy amigable..

 

 

AMBITO DE APLICACION

 

Las funciones de interacción visual de BlueJ están diseñadas para permitir a uno retrasar la introducción de ciertos conceptos programáticos considerados complicados o dificultosos por los educadores.

 

LENGUAJES QUE SOPORTA

 

BlueJ está bajo una licencia GPL, por lo cual podemos usarlo y distribuirlo libremente, funciona en sistemas GNU/Linux, Windows, Mac/OS y aquellos que soporten el lenguaje Java.

 

 

 

AÑO DE LA ULTIMA VERSION

 

La última versión estable, la 3.0.3, fue lanzada el 19 de octubre de 2010. Ésta versión proporciona funciones mejoradas del editor tales como completado de código o destacamento de alcance (scope highlighting).

 

BIBLIOGRAFIA

 

Desarrollado por Barnes, David J.; Kolling, Michael (September 1, 2008 .

JCREATOR

 

CARACTERISTICAS

 

 

JCreator es un potente entorno de desarrollo interactivo (IDE) para las tecnologías Java que proporciona más poder a su alcance que todos los IDEs ordinarios combinados.

 

JCreator es la herramienta de desarrollo para cada programador que le gusta para hacer lo que mejor sabe hacer: la programación. Es más rápido, más eficiente y más fiable que otros IDE.

 

VENTAJAS

 

Entre sus ventajas destaca la de consumir menos recursos que otros IDEs, y entre los inconvenientes el ser menos completo que dichos entornos (como Netbeans, Eclipse, JBuilder, JDeveloper, y no ser libre como los dos primeros).

 

DESVENTAJAS

 

Esta en Ingles.

 

 

 

AMBITO DE APLICACION

 

 

Es un entorno de desarrollo integrado (IDE) para programación en lenguaje Java en entorno Windows.

Es un producto comercial de la compañía Xinox Software. Utiliza el J2SDK de Sun Microsystems para compilar y ejecutar los programas, pero no es necesario para ejecutar el JCreator, ya que a diferencia de otros IDEs para Java como Netbeans o Eclipse este programa no es una aplicación nativa Java.

 

LENGUAJES QUE LOS SOPORTA

 

 

Saltar a: navegación, búsqueda

JCreator es un entorno de desarrollo integrado (IDE) para programación en lenguaje Java en entorno Windows.

Es un producto comercial de la compañía Xinox Software. Utiliza el J2SDK de Sun Microsystems para compilar y ejecutar los programas, pero no es necesario para ejecutar el JCreator, ya que a diferencia de otros IDEs para Java como Netbeans o Eclipse este programa no es una aplicación nativa Java.

 

JCreator es un entorno de desarrollo para Java. Existen dos versiones de este programa, una es comercial (JCreator PRO) y por la misma razón contiene algunas utilidades adicionales en comparación a la versión gratuita (JCreator LE). El JCreator actúa como una máscara sobre el JDK y permite usarlo en ambiente Windows. Por ello el Java Development Kit debe estar instalado previamente en la máquina para poder instalar su JCreatoR

 

 

 

 

ULTIMA VERSION ACTUALIZADA

 

Tal como lo leen la version 4.0 del famoso(solo en mi pueblo xD) JCreator ya salió al aire, la verdad es que está disponible desde el 16 de Octubre al parecer, sólo que según yo este IDE ya estaba “muerto” o abandonado y pensé que ya no tendría más actualizaciones.

 

NETBEANS

 

 

LAS VENTAJAS Y DESVENTAJAS QUE HAY EN NETBEANS.

Netbeans tiene un muy buen soporte de webapps (.war, jsp y servlets) del cual eclipse carece

(los plugins que  probé no eran ni tan potentes ni tan sencillos como el módulo que en Netbeans viene preinstalado)

-Puedes programar webs en Java sin instalarle ningun plugin ya que posee un tomcat de serie.
-El  depurado de las aplicaciones es mas sencillo.

El problema o e contra es que consume muchos recursos.

Comparación de otros compiladores es que el proceso de compilación es un tanto mas engorroso

ya que hay que ubicar perfectamente proyecto, paquete y al final la clase y la clase en donde se

encuentra el método main.

 

  AMBITO DE APLICACION

Editor de texto ideado para trabajar con codigo fuente de algun lenguaje. Por lo general incluyen

un debug (para revisar errores en tu codigo), analizador de sintaxis, precompiladores (para

detectar errores previos a la compilacion) y ponen de distintos colores la palabras reservadas

del lenguaje de programacion.

 LENGUAJES QUE SOPORTA

NetBeans Supported Technologies (Traduccion: NetBeans Soporta estas tegnologias)
Ajax | C/C++  Databases | Debugger | Desktop | Editor | GUI Builder | Java EE | JavaFX | Java ME  Java SE | Java Script | Mobile | PHP | Profiler Refactor | REST | Rich Client Platform | Ruby | SOA | SOAP   UML | Web SDL .

ULTIMA VERSION

La nueva versión de Netbeans ya está disponible para su descarga. La última versión es la 7.2, y según las notas oficiales de la versión, aumenta bastante el rendimiento y la experiencia de programar.

 

 

BIBLIOGRAFIA DE ESTE TRABAJO

 

http://www.altatorre.com/webclase/java/manualito_java1.htm

http://aplicaciones.org/eclipse-ide-de-desarrollo-open-source/

http://mx.answers.yahoo.com/question/index?qid=20100208230109AAQKJhO

http://www.programacion.com/articulo/eclipse_–_i_–_historia_y_toma_de_contacto_288http://casidiablo.net/bluej-que-buen-ide/http://www.ecured.cu/index.php/BlueJ

HYPERLINK “http://www.filecluster.es/programas/JCreator-LE-97409.htmlhttp://www.panchosoft.com/blog/2006/11/06/jcreator-40-disponible/”http://www.filecluster.es/programas/JCreator-LE-97409.htmlhttp://www.panchosoft.com/blog/2006/11/06/jcreator-40-disponible/

http://www.linuxparatodos.net/portal/forum/viewtopic.php?showtopic=32195http://es.answers.yahoo.com/question/index?http://www.tufuncion.com/ide-php