Archive for April, 2009

  • Como Optimizar Eclipse

    1

    A veces reniego con mi IDE Eclipse porque se alenteja mucho. Igual lo prefiero toda la vida comparado con su primo Netbeans. En la empresa donde trabajo va a ser siempre una rivalidad sana, ya que podemos usar la herramienta que querramos. Yo soy hincha de Eclipse, pero debo admitir que a veces no es para usuarios novatos, en cambio, Netbeans si puede ser perfectamente lo que yo recomendaria para empezar a sumergirse en el mundo del desarrollo de software porque con sus mil wizards hace todo mas sencillo.

    Aca vamos a ver una serie de parametros para optimizar Eclipse y que no se atortugue despues de un par de dias de estar encendido.

    El archivo que vamos a tocar va a ser eclipse.ini que esta en el directorio ROOT de tu instalacion de Eclipse.

    Primero vamos a tocar un par de settings para decirle cuanta memoria puede usar.

    -Xms512m
    -Xmx512m
    -XX:PermSize=256m
    -XX:MaxPermSize=256m
    

    Tambien vamos a evitar que verifique el bytecode

    -Xverify:none
    

    Y por ultimo vamos a toquetear los settings del Garbage Collector

    -XX: UseConcMarkSweepGC
    -XX: CMSClassUnloadingEnabled
    -XX: CMSPermGenSweepingEnabled
    

    Espero les haga el Eclipse mas usable aun.

  • ANT: Como Optimizar El Task javac

    0

    Hoy vemos cuales son las diferentes opciones que nos presenta el task javac para poder adecuarnos a situaciones especificas.

    Abajo vemos un task ANT de compilacion, vamos a explicar los diferentes parametros que estamos utilizando.

    <javac failonerror="true" destdir="${bin}" debug="on"
    	optimize="on" deprecation="off" memorymaximumsize="800m" target="1.6">
      <src path="${mysource}" />
    

    Aqui podemos ver la siguiente lista de parametros:

    • failonerror=true

    Este parametro dice que si algo llega a fallar en la compilacion todo el build se va a detener.

    • debug=on

    Dice que compila el codigo con la opcion debug encendida. Es sumamente util para ver en que linea esta la falla en el caso de que imprimamos un stacktrace.

    • optimize=on

    Esta opcion simplemente le indica al javac si queremos o no optimizar el codigo.

    • deprecation=off

    Dice al compilador si debemos compilar con informacion deprecada.

    • memorymaximumsize=800m

    Si tu proyecto contiene muchas cosas que compilar seria bueno que setees esta opcion. Mi proyecto contiene como 4000 clases y se hace necesario una amplitud en la memoria provista.

    • target=1.6

    Claramente compila el codigo para una jvm 1.6

    Espero les sirva

  • ANT: Como Referenciar Archivos JAR Para Compilar Codigo Java

    0

    En la entrega de hoy vemos como referenciar librerias jar para ser usadas al momento de compilacion.

    Dentro de nuestro task de compilacion agregamos un task 'classpath' como podemos apreciar debajo. Para ver como se diagrama basicamente un archivo ANT pueden ingresar aca.

    <javac destdir="${output}">
      <src path="${framework.src}" />
      <classpath>
       <fileset dir="c:/myproject/lib">
        <include name="**/*.jar" />
       </fileset>
      </classpath>
    </javac>
    

    De esa manera ya tenemos disponibles en el tiempo de compilacion las librerias que se encuentran en 'c:\myproject\lib'

    Ahora vamos a adornar nuestra compilacion con un par de mensajes a la cosola usando el task 'echo'.

    <echo message="compiling source code..."/>
    <javac destdir="${output}">
      <src path="${framework.src}" />
      <classpath>
       <fileset dir="c:/myproject/lib">
        <include name="**/*.jar" />
       </fileset>
      </classpath>
    </javac>
    <echo message="done!!"/>
    

    En la proxima entrega vamos a ver como optimizar el task de compilacion para adecuar a necesidades especificas.

  • ANT: Como Compilar Codigo Java

    0

    Vamos a empezar a escribir acerca de ANT ya que es super util para automatizar miles de tareas tediosas. Yo utilizo mucho ANT para compilar y hacer deploys de webapps asi como de desktop applications.

    Hoy vamos a ver la estructura basica de un ANT script y una tarea de compilacion.

    Primero hay que obtener una distribucion de ANT desde apache.
    Una vez que tenemos la distribucion unzipped en algun directorio podemos empezar a trabajar sobre el script. Yo utilizo Eclipse que ya trae todo lo relacionado a ANT integrado.

    Estructura basica de un script ANT

    <project name="some title" default="init" basedir=".">
      <target name="init">
      </target>
    </project>
    

    Aca vemos que es todo XML basico con tags predefinidos. El primer tag project define un atributo default el cual va a ser la primera tarea a ejecutar.

    Dentro de project vemos el tag target con su nombre correspondiente. Todo nuestro script de compilacion va a ir dentro de este target.

    Comenzemos declarando una variable para saber donde esta el source que queremos compilar y otra que marque el directorio de output.

    <project name="some title" default="init" basedir=".">
      <property name="src" value="c:\myproject\src" />
      <property name="output" value="c:\builds" />
      <target name="init">
      </target>
    </project>
    

    Ahora vamos a crear el directorio de output. Solo mostramos el codigo del target que es el que nos interesa de ahora en mas.

      <target name="init">
        <mkdir dir="${output}"/>
      </target>
    

    La proxima tarea es simplemente la compilacion.

      <target name="init">
        <mkdir dir="${output}"/>
        <javac destdir="${output}">
    	<src path="${src}" />
        </javac>
      </target>
    

    Esto es basicamente como se compila con ANT. Aca esta el manual completo de las tareas que podemos escribir . http://ant.apache.org/manual/index.html

    Ma

  • Primer Release de Apache Pivot

    0

    Otro RIA framework esta aca. Apache Pivot. Este proyecto es un mix de web/java y sinceramente no se si lo eligiria. Es casi como hacer una aplicacion webstart o un applet (es basicamente un applet) y ya dependemos de la version de Java instalada en el cliente.

    Quiza sirva para hacer aplicaciones de manera rapida, no lo se. Dejemos que madure. mas..

    Aca una lista de los features que ofrece Pivot.


    Componentes

    • Accordion
    • Calendar
    • Slider
    • Color Picker
    • Table
    • List
    • View/Editor
    • File Browsing
    • Input fields (text, area, check, etc)
    • Drag and Drop

    Ademas parece que contiene un interesante framework de validacion.

    http://cwiki.apache.org/PIVOT/index.data/kitchen_sink.png

Page 1 of 3123»