Sei sulla pagina 1di 3

Things you should do to become a top quality programmer

Here is how you can become a good programmer according to experts

How do I become a good coder and what should the ideal characteristics of a good coder?

Programming is one of the better career choices available to you. One reasons that many
youngsters choose programming is the pay, the high quality programmers command and other is
the sheer glamour of building your own ultimate software. As we move towards a global online
economy, more and more top notch programmers will be needed in future to fuel this expansion.

While many youngsters aspire to be coders, a few of them actually make it to the list of top rung
programmers. There are many reasons for this. One of the prime reasons is however poor choice
and lack of dedication. Some blame it on technology while others have their own reasons. But at
last it all boils down to how much you can put into coding.

Quora user, Guillermo Schwarz, who has spent over twenty years developing software, has a list of
dos and donts for wannabe programmers

1. Know the language you are working with. Read manuals. Read all the stuff you can about it.
Learn the language inside and out. Doubt what you read, make experiments. This is
important: To really learn, you need to test and experiment for yourself. Make up your own
mind.
2. Check parameters in every function. Learn defensive programming. Make sure your code is
solid, in the sense that it is almost impossible to use incorrectly, it is impossible to break.
3. Learn best practices. This is different than mere manuals, because manuals have all the
important information, everything you can do with the language, but they dont distinguish
between: this is a good practice and this is going to be bring you problems down the road.
4. Learn design patterns. The idea of design patterns is to make your code more dynamic, in
the sense that changing requirements can be accepted. See GoF design patterns. If you
have time also read the anti patterns.
5. Learn object orientation. It is a way to order your code, not a way to model the worldthat
is the wrong approach. You need written requirements and work from there. A design is
comprised of design decisions. Number requirements. For every requirement there must be
at least one design decision that at least conceptually solves the requirement. Create a
prototypes for every design decision to show it works. Use source control to store
prototypes.
6. Automated unit testing. Unit test everything. This is what makes the difference between
wannabes and real programmers.
7. Learn make, ant, maven, gradle, or whatever tool you can use to make one step compilation.
8. Avoid memory leaks.
9. Avoid resource leaks.
10. Use issue trackers to store your backlog. That way you can always remember what is
missing or how you solved things. If you are using Scrum, Kanban or XP, you can always
copy issues from the issue tracker into sticky notes. You will end up doing it anyhow,
because looking at a scrum board makes it so much easier to see what is missing.
11. Dry and not wet: dry = dont repeat yourself, wet = write everything twice. No repeated code,
period.
12. Methods no longer than 10 lines.
13. Classes contain no more than 10 methods and 3 instance variables.
14. According to Bertrand Meyer, when your design is too complex, you need more classes.
15. One responsibility per class, and only one class per responsibility. That responsibility should
go in a comment at the beginning of said class.
Cosas que debe hacer para convertirse en un programador de primera calidad

Aqu es cmo usted puede convertirse en un buen programador segn los expertos

Cmo puedo ser un buen programador y lo que debe a las caractersticas ideales de un buen
programador?

La programacin es una de las mejores opciones de carrera disponibles para usted. Una de las
razones de que muchos jvenes eligen la programacin es la paga, los programadores de alta
calidad comando y otra es la pura glamour de la construccin de su propio software final. A medida
que avanzamos hacia una economa global en lnea, sern necesarios ms y ms programadores
de primera clase en el futuro para impulsar esta expansin.

Mientras que muchos jvenes aspiran a ser programadores, algunos de ellos en realidad hacen a
la lista de los mejores programadores del rengln. Hay muchas razones para esto. Una de las
razones principales es sin embargo mala eleccin y la falta de dedicacin. Algunos echarle la culpa
a la tecnologa, mientras que otros tienen sus propias razones. Pero al final todo se reduce a la
cantidad que puede poner en la codificacin.

Quora usuario, Guillermo Schwarz, quien ha pasado ms de veinte aos el desarrollo de software,
tiene una lista de tareas pendientes y no debe hacer para los programadores del imitador

1. Conocer el lenguaje que se est trabajando. Leer los manuales. Lea todo el material que
pueda sobre l. Aprender el lenguaje por dentro y por fuera. Duda de lo que se lee, hacer
experimentos. Esto es importante: Para aprender realmente, es necesario probar y
experimentar por s mismo. Decdete de una vez.

2. Verificar los parmetros en cada funcin. Aprender programacin defensiva. Asegrese de


que su cdigo es slido, en el sentido de que es casi imposible de usar de forma incorrecta, es
imposible de romper.

3. Aprender las mejores prcticas. Esto es diferente que simples manuales, porque
manuales tienen toda la informacin importante, todo lo que puede hacer con el lenguaje,
pero no distinguen entre: "esta es una buena prctica" y "esto va a ser traer problemas en el la
carretera."

4. Conocer los patrones de diseo. La idea de los patrones de diseo es hacer que el cdigo
sea ms dinmico, en el sentido de que los requisitos cambiantes pueden ser aceptados.
Ver los patrones de diseo GoF. Tambin, si tienes tiempo de leer los patrones contra.

5. Aprender la orientacin a objetos. Es una manera de ordenar su cdigo, no una forma de


"modelar el mundo", es decir el enfoque equivocado. Es necesario requisitos escritos y
trabajar desde all. Un diseo se compone de las decisiones de diseo. requisitos
numricos. Por cada requisito de que debe haber al menos una decisin de diseo que
resuelve al menos conceptualmente el requisito. Crear una prototipos para cada decisin de
diseo para mostrar su funcionamiento. Use control de fuente para prototipos de tiendas.

6. unidad de pruebas automatizado. prueba de todo unidad. Esto es lo que hace la diferencia entre
los aspirantes y programadores reales.

7. Aprender a hacer, hormiga, Maven, Gradle, o cualquier herramienta que puede utilizar
para hacer una compilacin de paso.

8. Evitar prdidas de memoria.

9. Evitar las prdidas de recursos.


10. Uso de seguimiento de incidencias para almacenar su cartera de pedidos. De esta manera
siempre puede recordar lo que falta o cmo resolver las cosas. Si est utilizando Scrum, Kanban o
XP, siempre se puede copiar temas del gestor de incidencias en las notas adhesivas. Usted va a
terminar haciendo de todos modos, porque mirando un tablero scrum hace que sea mucho ms
fcil ver lo que falta.

11. seco y no hmedo: seco = no se repiten a s mismo, hmedo = escribir todo dos veces. No
repiti cdigo, y punto.

12. no ms de 10 lneas de mtodos.

13. Las clases contienen no ms de 10 mtodos y 3 variables de instancia.

14. De acuerdo con Bertrand Meyer, cuando su diseo es demasiado complejo, se necesita
ms clases.

15. Una de las responsabilidades por clase, y slo una clase por responsabilidad. Esa
responsabilidad debe ir en un comentario al inicio de dicha clase.

Potrebbero piacerti anche