2010-01-13 17 views
7

Quiero preguntar sobre las diferentes técnicas que utilizaron para recordar varias técnicas de programación. Revisamos varios libros y varios consejos y tutoriales en línea; también obtenemos tantas ideas del código escrito por otra persona.Código de administración Escrito para aprender

Ahora todas estas entradas se memorizan o se almacenan en algún formato para que se pueda encontrar fácilmente cuando se refiera. La ausencia de dicho almacenamiento puede dar como resultado la reescritura del código o la reinvención de la rueda.

Utilizo para crear una carpeta de trabajo donde guardo todo el código de prueba, pero en algún momento después de algunos días/meses ya que el código no está etiquetado o nombrado correctamente es difícil encontrarlo de nuevo.

+1

Un buen administrador de fragmentos multiplataforma y multilingüe con soporte para organización jerárquica y etiquetado sería bueno ... no he encontrado uno todavía. –

+1

-1 para el uso de la palabra "expertos" – AntonioCS

+1

¿Qué hay de malo en usar la palabra? –

Respuesta

1

Es como aprender cualquier otra lengua o aprender cualquier otra técnica. Cuando lees un libro y lo encuentras interesante, comienzas a asociar lo que estás leyendo con situaciones de la vida real y problemas que podrías haber tenido antes de que el nuevo material aprendido te solucione.

Es posible que, después de un par de días o así se olvida de lo que ha aprendido, hasta que usted tropieza con el problema que usted relacionada con la lectura del libro o mirando a la conferencia. Este tipo específico de memoria se llama algo así como la técnica de memoria de asociación.

Hay una gran cantidad de otras técnicas diferentes para recordar cosas por pero muchos de ellos se reduce a las relaciones con otras partes de lo que ya sabe.

Otro ejemplo es matemática que es algo que fuerza a su cerebro para entender, pero una vez que salga de usarlo sobre una base diaria que poco a poco se degeneran las células matemáticas-genio.

Programación para mí, al menos, es sólo otra manera de expresarme y cuando aprenda nuevas características es sólo una nueva forma de expresar cosas que no podrían haber sido fácil de hacer antes.

Editar

que podría tener missunderstood la pregunta .. ¿verdad?

+0

No es útil, mi pregunta es sobre la recopilación de información útil y su almacenamiento para el futuro, ya sea mediante la memorización o el almacenamiento de alguna manera para que pueda ser utilizado en el futuro. –

1

Bueno, para mí, cuando estoy tratando de aprender, me enfoco en aprender el enfoque para resolver el programa, en lugar de una técnica. Eso es importante para mi. Además, con la programación diaria habitual algunas técnicas se vuelven arraigadas.

La otra cosa que hago es mantener un cuaderno con mis notas en él, fragmentos de código, comentarios, atajos que he aprendido a lo largo de los años. Esto ayuda también.

Recientemente he llevado a mantener mis notas en Evernote, esto hace que sea fácil de buscar y etiquetar.

1

Para la web, utilizo el complemento Delicious + Firefox para almacenar lo que ya leí.

Cuando busco una solución a algo que no puedo resolver, me acostumbré a preguntar/buscar aquí.

Y para mis propias soluciones, trato de crear componentes reutilizables y recordar en qué proyecto resolví qué y eventualmente volver a consultarlo cuando lo necesite.

1

Cuando se estudia una técnica de programación como Java que siempre se asignan las cosas correspondientes con C++ y C++ perl.Java y permanece igual en más concepts.And mejor almacenar la carpeta de trabajo en su correo electrónico de manera que cada vez que se necesita se puede descargar y tenerlo.

1

Puede probar un programa como Surfulater. No sé qué tan bien funciona con ejemplos de código, pero sí sé que el desarrollador estaba (¿todavía está?) Activo en los foros de Joel on Software, por lo que estoy seguro de que se lo puede contactar con cualquier pregunta específica.

3

Para Perl, tengo un módulo que llamo staging.pm, y use staging; es un pragma en mi código que me permite usar código experimental, no completamente desarrollado en mi desarrollo. Este código de desarrollo se colocará en una rama llamada "transición" fuera del directorio de la biblioteca del usuario. Lo principal que hace el módulo es poner mi directorio provisional al frente de @INC. Una vez que mi código esté maduro, si es que alguna vez lo está, se moverá a mi directorio lib de usuario.

En cuanto a los scripts, se pueden ejecutar desde donde se encuentren y utilizo un directorio llamado test off del directorio bin.

Así que ese es mi tipo de enfoque. No sé lo útil que es para ti.

1

Si usa Windows, puede usar Google Desktop para indexar parte de su disco duro, incluidos los fragmentos de su programa.

Si puede recordar solo un poco, Google lo encontrará.

(Spotlight hace lo mismo de forma automática en un Mac)

+0

Ya uso Google Desktop, es bueno encontrar los documentos y correos. Eso no se enfoca mucho en la necesidad del desarrollador. Un tipo de búsqueda de código de Google para mi código local seguramente podría ser útil. –

+0

Si no puede usar Google Desktop para localizar algo que haya aprendido, ¿realmente lo aprendió? –

+0

De todos modos, eche un vistazo a http://exampledepot.com/, que tiene ejemplos basados ​​en necesidad y paquete. –

1

En Mac OS X, TextMate proporciona una solución casi perfecta a este problema. TextMate es un editor de programación que ofrece soporte para cientos de lenguajes de programación y es personalizable a través del editor de paquetes. A través del editor de paquetes, puede agregar cualquier fragmento de código que desee memorizar y categorizarlo adecuadamente en su idioma respectivo. También puede asignar teclas rápidas o secuencias de caracteres para invocar un fragmento y copiarlo en su contexto de edición actual.

creo que Notepad ++ es una herramienta similar para Windows, pero no estoy seguro si es tan personalizable como TextMate.

Cuestiones relacionadas