10 hábitos de programación que los desarrolladores deben adoptar
La programación de aprendizaje es divertida y fácil, pero escribir un buen programa puede llegar a ser una tarea desalentadora . En la mayoría de los casos, nos encontramos constantemente rascándonos la cabeza tratando de entender el código de spaghetti que escribimos, o haciendo muchos cambios solo por una característica menor recientemente agregada .
Estos resultados pueden reducir nuestra confianza, pero de hecho, pueden resolverse con las prácticas de desarrollo adecuadas. Aquí hay 10 buenos hábitos en los que invertir para escribir código más limpio y más inteligente con menos esfuerzo . ¡Comencemos a desarrollar estos hábitos ahora!
1. Escribe un código humano amigable
Recuerde siempre que no solo está escribiendo códigos para máquinas, sino también para su yo futuro. Entonces, es importante escribir un código legible. En verdad, la programación es como escribir un buen poema. El tono debe ser consistente, las palabras descriptivas y las oraciones bien estructuradas.
Aquí hay algunos consejos para escribir un código amigable.
1. Seguir convenciones de nombres consistentes
Por ejemplo, si nombra variables privadas con guión bajo como la primera letra, debe seguir en el resto de su código.
Si está trabajando en colaboración, analice las convenciones de nombres antes de que cualquiera toque el código.
2. Variable descriptiva / nombre del método
La variable y el nombre del método deberían describir lo que hace ese código perfectamente . Por ejemplo, abreviaturas poco comunes como Sort_PT()
pueden ser confusas: ¿qué significa el PT? Si no puede responderlo en un segundo control, optimice el nombre para Sort_PostType()
para una mejor comprensión.
3. Sangría y salto de línea
¡La sangría es mágica! Con algunas simples teclas de tabulación, puede revelar toda la estructura del código y editar el código con una comprensión clara de cómo funcionará.
Para saltos de línea, úselo cuando 2 códigos en la misma línea ejecuten cosas diferentes . Por ejemplo, es mejor no encadenar las propiedades CSS en una sola línea: complica las cosas.
2. Piensa en la organización
Además del código más limpio, la estructura del código y la organización también ayudan con los problemas de accesibilidad. Es importante agrupar el código para permitir una modificación fácil (si necesita desplazarse hacia arriba y hacia abajo varias veces para encontrar la sección afectada, debe trabajar en la estructura)
Además, no arroje todo el código en una sola secuencia de comandos . Si bien puede parecer conveniente tener más de 8000 líneas de código en un solo archivo, la depuración es una pesadilla al intentar recordar nombres de métodos. Siempre piense en la facilidad del cambio .
La mejor práctica es separar el código en diferentes archivos de acuerdo con sus funciones principales, por ejemplo, administrador, interfaz, animación, extensión, etc.
(Fuente de la imagen: urbanINFLUENCE)
Siempre que sea posible, asegúrese de que el idioma solo cumpla un propósito particular . Si está escribiendo un efecto de animación con CSS3, evite escribir el efecto de animación jQuery, a menos que tenga un motivo suficientemente fuerte. Y si lo hace, comente en el archivo CSS sobre la excepción.
3. Planificación antes de la codificación
Es crucial saber exactamente qué hacer antes de presionar la primera tecla. En el mundo de la programación, es importante planificar el futuro. Escribir un menú de navegación fijo es fácil, pero ¿qué pasa si el menú debe ser receptivo, mientras se puede minimizar cuando los visitantes se desplazan hacia abajo?
Comenzar a codificar sin un procedimiento claro en mente a menudo conducirá a reintentos, agotamientos y un ciclo de depresión .
Planifica tu código
Entonces, en lugar de resolver problemas y programar de forma paralela, es mucho más fácil descubrir primero el procedimiento y luego escribir una solución . Haga una lista de los pasos generales primero (aquí hay un ejemplo):
- Use Bootstrap como marco receptivo.
- Crear menú de navegación
- Agregue
.navbar-fixed-top
al menú. - Cree una secuencia de comandos jQuery para cambiar el tamaño del menú cuando el usuario se desplaza hacia abajo por más de 200 px.
- Si el usuario se desplaza hacia la parte superior, cambie el tamaño del menú una vez más.
Solucionar problemas
En este punto, debe descubrir otras emisiones subyacentes, por ejemplo, cómo debemos redimensionar el logotipo del sitio y el título del menú de acuerdo con el tamaño del menú, o si también tenemos que cambiar el tamaño del menú desplegable, o si la detección debe ser dinámica en lugar de fija . Una vez que los resuelves, es muy fácil completar el menú.
4. Escribir código manejable
Créanme, no quieren cambiar cientos de variables individualmente, línea por línea. Lo hice, por 1 año consecutivo. Esa fue una experiencia humilde, y desde entonces aprendí a escribir código que requiere el menor número de cambios manuales posible .
(Fuente de la imagen: Logiq Tower)
¿Cómo lograr esto? Usa Matriz . Es perfecto para almacenar múltiples variables, y puede acceder a esas variables con comodidad for
loop o for each
método.
Hay formas incluso más dinámicas de agregar, organizar y recuperar datos en ciertos idiomas, como List y LINQ for C #, así que asegúrese de revisar periódicamente mejores características, bibliotecas o complementos para una administración de datos más inteligente.
Por último, para evitar modificar constantemente cosas en el código, escriba un código altamente independiente que no rompa todo el sistema cuando se apliquen nuevas funciones o cambios. Se llama Acoplamiento flojo . Después de la optimización, el desarrollador solo necesita modificar el código en 1 clase en lugar de 3 clases para las nuevas características.
5. Deje de exagerar las funciones
A medida que nuestras habilidades maduran, tendemos a desarrollar soluciones más complejas que se adaptan a una gama más amplia de necesidades. Es una buena señal de crecimiento, pero tenga cuidado ya que podría estar entrando en otra trampa: exagerar una característica que es completamente innecesaria para el proyecto.
En desarrollo, es importante recordar el objetivo principal del proyecto y solo agregar características que cumplan con el propósito . Si conoce el tamaño exacto de la colección, use Array. Si la función de la Lista puede recuperar los datos de la manera que desee, no use LINQ avanzado.
¿Por qué desarrollar un plugin cuando apenas usas esa función? El hecho de que puedas, no significa que debas . No pierdas tu tiempo. ¡Recuerda que la parte que más tiempo consume, es decir, terminar el proyecto, aún está por llegar! ¡Ahora, en la depuración!
6. Aprende a depurar inteligentemente
Donde hay código, hay errores. Es imposible tener una solución de código libre de errores, por lo que las habilidades de depuración son muy buscadas . El antiguo método de prueba y error puede funcionar, pero es lento. Demasiado lento. Además, ¿por qué torturarte cuando ya hay depuradores desarrollados para ti?
Herramientas de depuración
Tome Firebug para JavaScript como ejemplo. Viene con detección de errores, configuración de punto de interrupción, seguimiento de expresiones, verificación de rendimiento, todo para su conveniencia de depuración.
Los IDEs como Aptana Studio 3 y Xamarin Studio incluso se lanzan con su propio y poderoso depurador incorporado, por lo que invertir el tiempo para aprenderlos puede hacer su vida mucho más fácil.
Sin embargo, un depurador no sabrá su código al revés. En caso de duda, coloque la función de registro en el código, como console.log
para Firebug, y asegúrese de que sea bueno con la integración de variables (en lugar de volver a escribir nombres de variables como cadenas o simplemente 'It works!'
). La web está llena de métodos de depuración más avanzados y específicos para cada idioma.
7. Encuentra un editor más fuerte
Los editores correctos pueden ayudarlo a crecer en conocimiento y agilizar la finalización del proyecto. Independientemente de la experiencia que tenga, le recomendamos encarecidamente que elija editores con código completo, como Sublime Text y Aptana Studio 3.
La función no solo es muy útil para que los principiantes reconozcan y aprendan la sintaxis, sino que puede ser utilizada por profesionales para buscar códigos o soluciones posiblemente mejores. Tenga en cuenta que la mayoría de los IDE solo admiten la finalización de código para ciertos idiomas, por lo tanto, busque el correcto.
Filtrado de funciones
Por ejemplo, una cosa que me encanta de MonoDevelop es su característica de plantilla de código . Con una tecla de método abreviado personalizada, puede generar una plantilla de código autodefinida desde la instrucción de switch
común a la secuencia de comandos de administrador en toda regla. Esto es ideal para proyectos a gran escala, así que intente hacer de esta característica una prioridad durante su búsqueda de editor.
Otras características esenciales a tener en cuenta:
- depurador
- regex reemplazar
- macro
- control de versiones
- base de datos
- edición dividida
- personalizador de diseño
- Editor WYSIWYG
8. Hacer control de versiones
Habrá momentos en los que cometerá un gran error de programación y querrá volver a una versión anterior de un código. Ahora, ¿qué ocurre si su error involucra varios archivos en la base de código, y algunos de ellos fueron días modificados, o incluso meses atrás?
¿Volver al original y actualizar el código bit a bit mientras resuelve errores? Esto es contraproducente y por qué un sistema de control de versiones es muy esencial.
Sistemas de control de versiones
Entre varios softwares de control de versiones, Git es el más popular con una gran cantidad de documentos disponibles en línea. Con Git, puede mantener tantas revisiones como desee, ramificar el archivo para realizar algún experimento de código, rastrear la parte del código que cambió la última vez y volver a ellas cuando lo desee.
Se siente como un exceso? Tal vez, ya que se desarrolló originalmente para la programación en equipo, pero también es perfecto para proyectos personales a largo plazo. Puede dudar porque el Git es en sí mismo mucho para aprender, incluso con la versión de GUI. Pero es más tarde o temprano (mejor que lo hagas antes), además de que la web está repleta de tutoriales y guías para facilitar el proceso de aprendizaje.
9. No hay prototipos adicionales, finalice el proyecto actual
La codificación tediosa y la depuración pueden agotar a alguien física y emocionalmente. Y algunos de nosotros nos inclinamos a prototipar nuestro trabajo incluso antes de que se termine . Si bien la creación de prototipos es un comportamiento beneficioso a largo plazo, no ayuda cuando lo haces para escapar del trabajo .
Una mejor manera de perder algo de energía es disfrutar de algo totalmente ajeno al trabajo, el ejercicio, los juegos, la lectura (¿quizás?). Debe mantener su vida laboral en equilibrio . Cualquier cosa menos prototipos.
10. Siempre aprende algo nuevo
En este campo, puede eliminarse con bastante rapidez. Muchos enfoques de desarrollo y lenguajes de programación incluso se declaran obsoletos solo en los últimos 10 años . Incluso si te gradúas de una de las mejores universidades con un título en el tema , eso no garantiza que estés listo para el empleo.
La única forma de sobrevivir y prosperar es seguir aprendiendo . ¿Cuál es la mejor forma de aprender? No solo lea, programe . Ponte a prueba con proyectos prácticos que requieren una mayor escalabilidad . Esto te obliga a pensar de manera más eficiente. Explore y disfrute el proceso de creación. La práctica no es algo que puedas ignorar en la programación. Mientras más programes, mejor programador te convertirás.
35 veces la honestidad no salvó el día [PICS]
La honestidad es la mejor política, nos repiten una y otra vez cuando éramos niños, por los mismos adultos que farolean en las cartas, dicen mentiras, desmienten la verdad, exageran con los tamaños, difunden conceptos erróneos, mitos, chismes y calumnias. Entonces, ahora que soy adulto (un tanto), le paso la idea a la próxima generación de que a veces, niños, la honestidad puede no ser la mejor política para adoptar.Hay algo
Mejores prácticas para la mejora progresiva en el diseño web
El arte de crear sitios web es increíblemente complejo con muchas partes que cambian rápidamente. El objetivo de la comunidad de diseño web es disminuir la complejidad y reducir el potencial de error en cada etapa del proceso de creación.La mejora progresiva es una idea tal en el diseño web que tiene como objetivo reducir los errores y proporcionar una experiencia de usuario coherente en todos los ámbitos. El c