sustitucion sintaxis manejo comandos archivos perl design structure

sintaxis - ¿Cómo puedo aprender a escribir programas bien estructurados en Perl?



sintaxis de perl (9)

En primer lugar, independientemente del tipo de programación de Perl que esté haciendo, probablemente encontrará que Perl :: Critic es invaluable. La herramienta de línea de comandos es de lejos la más conveniente para obtener comentarios sobre su código, pero también hay una interfaz web donde puede cargar su código Perl y recibir comentarios instantáneos y automáticos. Tenga en cuenta que Perl :: Critic no le enseñará una buena estructura , pero le ayudará a mejorar su estilo en general, y le alejará de algunos errores comunes.

Para ir con Perl :: Critic, recomiendo obtener una copia de Perl Best Practices (PBP). Contiene una gran cantidad de información detallada sobre la cual se basó Perl :: Critic. Incluso si no está de acuerdo con las pautas particulares del libro, le hace pensar en cómo codifica, y eso es muy, muy valioso. No tiene que desembolsar dinero para un libro, pero los dos se complementan muy bien, y hay largas discusiones que encontrará en PBP que no obtendrá de Perl :: Critic.

Si ya ha trabajado con otros lenguajes OO y diseño OO, probablemente encuentre que Moose es una transición cómoda. Moose es muy estable, está muy bien respaldado y tiene una gran comunidad activa (especialmente a través de IRC). Moose reemplaza casi todos los consejos de OO Perl existentes, incluido el mío. El diseño orientado a objetos es común por una razón; tiene sentido para muchos proyectos, y no hay razón para no usarlo en Perl.

Personalmente, encontré una mejora masiva en la estructura de mi propio programa cuando pasé a un modelo de desarrollo basado en pruebas. Bajo tal modelo, es esencial dividir un problema en unidades pequeñas y fáciles de probar. Comience con Test :: Tutorial si es la primera vez que prueba en Perl y luego consulte otros recursos de prueba o libros si desea obtener más información. Use una herramienta como Devel :: Cover o Devel :: NYTProf para ver cuáles son sus casos de prueba y cuáles no. Tener un código que es difícil de probar es a menudo un signo de mala estructura.

Habiendo dicho todo esto, el mejor maestro de lejos es involucrarse con un proyecto existente de Perl con contribuidores experimentados. Vea cómo hacen las cosas, y cuando haga contribuciones, piense en sus consejos. Si quieres una aplicación real con un increíble valor que parece haber absorbido a la mejor y más brillante de la comunidad de Perl, te recomiendo involucrarte con Padre, el editor de Perl .

Si (por algún motivo) no puede involucrarse con otro proyecto, considere publicar muestras de código en comunidades como Stack Overflow o PerlMonks . Mejor aún, si puede hacer que su código sea de código abierto, hágalo y solicite comentarios. Todos los lenguajes de programación se aprenden mejor con otros que ya están familiarizados con ellos, y Perl no es la excepción aquí.

Que hagas Buena Magia con Perl,

Pablo

Empecé a aprender Perl, pero la mayor parte de mi experiencia previa en programación ha sido en lenguajes que enfatizan la programación orientada a objetos, como C # y Java. Todos los ejemplos de Perl que he encontrado tienden a ser programas largos de función única y encuentro mi código de auto escritura de la misma manera. ¿Hay recursos o tutoriales para escribir programas bien estructurados mantenibles?


Escriba Perl del modo en que escribiría C, aunque debería aprovechar algunas cosas BEGIN bloques y módulos. Debe formatearse para que se parezca más o menos al código K de estilo antiguo.

En cuanto a la estructura, omita las cosas de OO y póngalas como ADT en su lugar:

http://en.wikipedia.org/wiki/Abstract_data_type

Básicamente, se hace esto mediante el uso de estructuras de datos donde habría utilizado objetos en OO (y separando los algoritmos en sus propias funciones).

Luego, elija una sola forma de hacer las cosas y cúmplala, la consistencia es vital para la legibilidad.

Si logras eso, el código puede ser legible y fácil de entender.

Pablo.


Si crees que ya estás aprendiendo los conceptos básicos y quieres mejorar la estructura del programa, te sugiero estos libros, probablemente lo mejor sea leer en este orden:

  • Perl intermedio : este es probablemente el lugar para comenzar por lo que pregunta; cubre el desarrollo y uso de módulos Perl (esenciales para una buena estructura), referencias, estructuras de datos complejas, OO y más

  • Perl Medic: Transformar código heredado : demuestra Perl bien estructurado mostrando cómo corregir Perl mal estructurado

  • Programación eficaz de Perl: Escribir mejores programas con Perl : un clásico, pero aún útil; lleno de modismos Perl que te ayudarán a escribir más Perl-ish Perl; no mucho en OO, pero cubre estructuras de codificación más fundamentales para hacer que su código sea más conciso y, a la vez, más expresivo. Pienso en esto como el libro que me llevó de la alfabetización de Perl a la fluidez de Perl

Los tres son mejores una vez que te sientas cómodo con la sintaxis básica de Perl, pero ninguno de ellos llega demasiado lejos en conceptos avanzados esotéricos que no puedes seguir si todavía estás empezando en Perl pero ya tienes una experiencia de programación razonable en otros idiomas.


Si ya sabe cómo escribir programas bien estructurados y quiere escribir Perl bien estructurado, el único impedimento para eso es la abundancia de ejemplos antiguos, crudos y con código de espagueti que se encuentran diseminados por la red y se niegan a morir. ..

Ignora los ejemplos. O al menos ignore su estructura pobre y solo preste atención a los pequeños bits sintácticos de los que debe aprender.

No hay nada en Perl que lo obligue a escribir un código incorrecto. Si ya sabe cómo escribir un buen código en otros idiomas, puede aplicar los mismos principios y prácticas en Perl. Es solo una cuestión de disciplina, como en cualquier otro idioma.




Personalmente, no escribí un buen OO Perl hasta que comencé a aprender Java. Le recomiendo que dedique una pequeña cantidad de tiempo a aprender OO en un verdadero lenguaje OO y aplique lo que aprenda a Perl.

Para un lugar para ser mentor, PerlMonks es GENIAL .


Si estás aprendiendo OO Perl, también podrías pasar a la siguiente gran cosa y comenzar a aprender Moose .

Moose es un sistema de objetos posmoderno para Perl 5 que elimina el tedio de escribir Perl orientado a objetos. Toma prestadas todas las mejores características de Perl 6, CLOS ( Lisp ), Smalltalk , Java, BETA , OCaml , Ruby y más, sin dejar de ser fiel a sus raíces Perl 5.

Moose está listo para la producción al 100% y se usa mucho en una serie de sistemas y crece cada día.


Además de las fuentes mencionadas anteriormente, recomiendo encarecidamente el libro "Higher-Order Perl" de Mark Jason Dominus. Si puede pagarlo, cómprelo, de lo contrario, el autor ha puesto el libro en su sitio web de forma gratuita como en cerveza gratis, Free Higher Order Perl . Para la versión PDF: URL de descarga directa (1.9 MB).

Editar:

Olvidé mencionar Perl Design Patterns. El sitio PerlDesignPatterns es un muy buen recurso o referencia para aprender patrones de diseño de Perl.