Estos son algunos de los principios básicos que creo y que he encontrado útiles.
- Al atacar un nuevo problema, aprenda cómo se ha resuelto antes . Casi cada nuevo problema es un viejo problema disfrazado. Comprender eso y revisar la técnica anterior puede acelerar y mejorar su solución. No podría creer cuántas veces he visto un problema complejo resuelto sin comprender la técnica anterior, convirtiendo todos los errores en la peor técnica anterior cometida en SU primer intento. Pérdida de tiempo y energía, lo que resulta en un software de baja calidad.
- Si está escribiendo sus propios protocolos de seguridad / criptografía, lo está haciendo mal . Utilice protocolos criptográficos y de seguridad existentes y bien estudiados. Nadie lo hace bien la primera vez, y es muy probable que algo que hagas por tu cuenta tenga vulnerabilidades que no aparecerán hasta que sea demasiado tarde para solucionarlo.
- No seas inteligente. Para el desarrollo de software comercial, lo más importante es que el código se entienda, depure y mantenga fácilmente. Esto hace que sea menos probable que esté mal, y hace que sea menos probable que sea desechado por la siguiente persona que tiene que trabajar en ello.
- No optimice demasiado o modularice por adelantado . La optimización temprana complica el código y puede mejorar el tiempo de ejecución de una manera intrascendente. Obtenga un algoritmo claro y limpio y optimícelo más tarde. Del mismo modo, trabajar duro para hacer que el sistema sea modular y extensible es algo que debe hacerse con moderación. En cuatro de mis proyectos de varios años, pasé más de un año (cada uno) haciendo un modelo de complemento que podría ampliarse fácilmente. El único complemento que se escribió en cada caso fue el único ejemplo con el que comenzó mi equipo, pero complicamos significativamente el desarrollo y las pruebas al adoptar este enfoque. Espere hasta que lo necesite, o corre el riesgo de hacer las interfaces incorrectas y perder tiempo y energía. Finalmente, he visto varios ejemplos de personas que se van por la borda con OOP y encapsulación, complicando innecesariamente el código.
- Nunca lo ‘arreglarás más tarde ‘, así que hazlo bien . Otro error que he cometido muchas veces es arrojar algo junto con la intención de arreglarlo antes de enviarlo. Luego, surge un fuego tras otro, y el código se envía en una forma horrible. Escríbalo de la manera correcta la primera vez.
- Añadir registro sensible . Asegúrese de tener una forma de registrar / rastrear la ejecución de su código. Asegúrese de que el mecanismo sea liviano y tenga niveles de registro seleccionables (por ejemplo, informativo, advertencia, error) para permitirle controlar cuánto se registra.
Hay muchos más, pero estos son los más útiles para mí.
- ¿Qué avances importantes se esperan en este campo?
- ¿Cuál es la calidad de las universidades de ingeniería en la Universidad de Shivaji?
- ¿De qué manera los metamateriales y las antenas podrían absorber energía?
- ¿Qué tipo de máquina puede crear movimientos aleatorios?
- ¿Qué negocios puede iniciar un ingeniero en electrónica y telecomunicaciones?