moi | goto | stuff

Proyectos de Programación

Básicamente lo que pretendo montar aquí es un recurso, principalmente para estudiantes, de manera que puedan revisar distintas formas de solucionar problemas, que vean herramientas que tal vez puedan ser útiles, o por ejemplo trabajar con las estructuras de datos.
Como señalamiento súper importante: Si cualquier cosa que bajes de aquí no compila bien, tiene un error de lógica o de programación, please let me know! También quiero avisar que este código lo pongo aquí para compartirlo.. pero si dices que lo hiciste tú.. no te voy a demandar pero qué poca abuela tienes.

Respecto a los IDE's, definitivamente el mejor (aunque todavía no soy muy experimentado en él) es el Eclipse . Está genial pues, al igual que en Visual Studio (por ejemplo) vas escribiendo y te va haciendo advertencias de variables no declaradas, tiene un debugger, un listado de métodos en tiempo real, etc etc etc!! En fin, es una chulada de cosa... sin embargo lo más importante en definitiva es que puedes compilar prácticamente cualquier cosa (de entrada sirve para Java y C++... ya con eso debería bastarte jaja.. así que ... bueno, lo recomiendo definitivamente. Para cuestiones de instalación... no es tan sencillo como el DevCpp, pero es muy bueno. La contraparte es que a veces es difícil encontrar los plug-ins que necesitas para compilar en tu lenguaje.
Ahhh.. claro... si no tienes ni idea de qué es un IDE.. no me voy a poner a explicarte aquí... así que espero que al menos sepas que la documentación de Java la tienes que bajar directamente desde q Java Sun .
Si no te la quieres complicar (en realidad tiene tantas funciones el Eclipse, que marea), a continuación un listado de los IDE's que conozco, para que tengas de dónde escoger (conseguirlos ya es tu rollo, yo sólo los recomiendo jeje).

IDE's de Java

  • El RealJ es probablemente el mejor IDE para empezar con Java, pues tiene las funciones más básicas, y es una buena manera de familiarizarse con el concepto de "proyectos"... aunque aguas porque si abres mal los archivos, te reemplaza tus proyectos finales por el famoso "Hello World".... le pasó al amigo de un amigo...
  • Si ya tienes un poco más de experiencia con Java, probablemente JCreator sea tu nueva mejor opción, pues tiene varias funciones más que lo convierten en un mejor editor, en vez de casi simplemente un editor y ya. (te rellena los paréntesis y todo bien bonito)

IDE's para C++

  • Un compilador sencillísimo es el Turbo C++ 4.5, el cual estoy utilizando en la clase de "Lenguaje Ensamblador", debido a su "seamless" integration entre C++ y ensamblador (sí es bastante bueno, aunque un poco viejo jaja). De hecho, versiones anteriores de Turbo C++ (sí, ése de la pantallita azul) se usan todavía actualmente... pueees... cuestión de cada quién (algunos no pueden vivir sin su Borland).

Programando Lenguaje Ensamblador

  • Como ya dije, Turbo C++ 4.5 es una muy buena integración con lenguaje ensamblador, pero también hay otros sencillos y buenos como el MASM (de Microsoft). No tengo ligas por el momento, pero les puedo dar una lista con todas las interrupciones de ensamblador, y otra liga que van a usar MUCHO: tabla de códigos ASCII.




ESTRUCTURAS DE DATOS EN JAVA

Para aprenderte bien las estructuras de datos, no hay nada mejor que implementar tú mismo tus propias clases, y después hacerlas tronar y mejorarlas ^_^!
  • Nodo (Lista Encadenada)
    • Ver listado de métodos.
  • Lista Encadenada
    • Ver listado de métodos.

JAVA

  • Clase Rational. Clase con distintos métodos para que imeplementes operaciones con fracciones.

C++

  • Hangman 1.0. El juego del ahorcado, en versión express y customizable jaja. Lo hice todo chafa y rápido porque la tarea tenía que ser completamente en ensamblador (ver solución más abajo). readme file
  • Validador de paréntesis. Implementación de un verificador de paréntesis (matcher) utilizando pilas. El programa recibe un paréntesis por línea - (),{} ó [] -, e indica si cierra un paréntesis anterior, si no tiene pareja (termina el programa), o si puede seguir aceptando paréntesis. (requiere la clase stack).

Ensamblador

  • Hangman 1.0. Una versión más estable (supuestamente) del juego del ahorcado. No sé cómo demonios me salió mejor en emsablador. Tiene 15 palabras precargadas. No maneja archivos.

ACM problems

La ACM (Association for Computer Machinery) es una asociación que, entre muchas muchas otras cosas, lanza convocatorias de concursos de programación a nivel mundial. Estos concursos consisten en resolver una serie de problemas mediante la programación de sus soluciones, pero con restricciones de tiempo y memoria, lo cual elimina muchas opciones. Los problemas pueden ser desde un sencillo recorrido de arreglos (y aún así deben ser eficientes) hasta manejar algoritmos de matrices y métodos matemáticos. Los problemas que pongo aquí no han sido enviados a los distintos "online judges" para que me digan si la solución que propongo cae dentro de las especificiaciones... pero ahhh parecen funcionar! Chécalos y dime :P

COMMON ALGORITHMS

Pon atención, porque algunos de estos agoritmos te los preguntan en entrevistas de trabajo. El lenguaje por lo general no importan, pero éstos están codificados en su mayoría en Java... good ol' java.
  • Invertir orden de caracteres en un arreglo de caracteres (string).
  • Redondea decimales de un double al número que tú quieras).



disclaimer - guestmap - XML feed