rich - Aprendiendo Clojure leyendo core.clj
clojurescript (10)
Como buen punto de partida, recomendaría 4Clojure . Parece similar a Project Euler y Code Katas, pero tiene una curva de aprendizaje más indulgente.
Me encontré con el tweet hoy:
Comience cada día leyendo la implementación de una función o macro en core.clj de Clojure.
Mi conocimiento de Clojure es muy básico, casi no puedo leer el código de Clojure (o Lisp) de otros.
¿Puedo hacerlo bien con core.clj
, especialmente tengo la sensación de que está lleno de macros complicadas?
Considero que el clojure.core es una buena manera de encontrar ideas de cómo se implementan las cosas, como una guía de referencia. Como se señaló anteriormente, las partes tempranas o ni bonitas ni ejemplares. Sin embargo, las partes posteriores pueden ser un buen ejemplo, especialmente cuando se necesita escribir una función que esté cerca de la función principal pero sea diferente.
Creo que un mejor lugar para comenzar es haciendo un proyecto; Todo lo que te interese y parezca manejable es bueno.
core.clj
no se puede leer en este momento; tal vez la segunda mitad sea, pero la primera mitad no es algo que desearía para nadie como introducción al lenguaje. La verdad es que, incluso si lo lees con mucho cuidado, no tendrías una idea sólida de lo que estaba sucediendo sin leer también mucho código Java.
- Haga un juego asíncrono basado en texto (la tecnomancia, Phil Hagelburg, tiene un buen aspecto para ver en su Github, aunque ya está un poco anticuado)
- Raspe los sitios web utilizando la biblioteca Enlive .
- Tal vez solo resuelva algunos problemas de matemáticas, y / o
- Graficar cosas usando Incanter .
Construir primero Una vez que se familiarice con las herramientas que está utilizando, comience a leerlas. Las bibliotecas mencionadas aquí están bien escritas (no puedes equivocarte con nada de Christophe Grand, por ejemplo), y una vez que comiences a usarlas, entenderás lo que hacen, lo que hace que sea mucho más sencillo descubrir el por qué y como despues
El consejo anterior es bueno. Otro buen ejemplo de aprender haciendo está bien ilustrado aquí por el creador de Ruby on Rails: ¿Cómo aprendo a programar? Espero que tengas una aplicación que te interese y que puedas elegir en Clojure.
Ese tweet es probablemente una gran idea una vez que tenga suficiente experiencia para poder leer el código de Clojure lo suficientemente bien como para entender lo que está sucediendo.
Antes de ese momento, recomendaría que se familiarice con el lenguaje escribiendo muchos pequeños mini programas. Es mejor aprender haciendo, después de todo.
Personalmente, encontré el Proyecto Euler muy útil mientras aprendía Clojure.
Hay muchas cosas que no entiendo, pero también hay muchas cosas que sí, y es fascinante ver el lenguaje que está siendo arrastrado desde su implementación inicial mínima.
Intente leer las bibliotecas de contrib Clojure o consulte algunos proyectos de Clojure en github para obtener una mejor idea del código de Clojure idiomático.
Necesitas lo básico del idioma, creé un sitio llamado Clojurecademy para principiantes para que puedas revisar los cursos de Clojure allí, básicamente es Codecademy for Clojure
Otro lugar para buscar pequeños proyectos para ponerte en marcha sería cualquiera de los repositorios de Kata. Mi favorito personal en este momento es Coding Kata.org , pero también está Coding Dojo , Ruby Koans (con un pequeño esfuerzo de traducción) y, por supuesto, Google .
Intenta hacer uno de esos al día y rápidamente aprenderás el idioma.
También puedes echar un vistazo a los Clojure Koans , aunque pueden ser un poco orientados a los principiantes para ti, dependiendo de cuánto Clojure ya sabes.