He estado teniendo este debate con un amigo donde tengo una biblioteca (su pitón pero no incluí eso como una etiqueta ya que la pregunta es aplicable a cualquier idioma) que tiene algunas dependencias. El debate es si proporcionar un entorno predeterminado en la inicialización o forzar al usuario del código a establecer explícitamente uno.¿Debo configurar el entorno por defecto para alguien que usa mi biblioteca?
Mi opinión es forzar al usuario como explícito y evitará confusiones y dejará en claro a qué apuntan.
Mi amigo esto es más seguro y más conveniente para un entorno predeterminado y dejar que el usuario anule si así lo desea.
¿Pensamientos? ¿Hay alguna buena referencia o ejemplos/patrones en bibliotecas populares que respalden alguno de nuestros argumentos? también, ¿algún blog o artículo popular que discuta este punto de diseño de API?
Reflexiones similares a http://stackoverflow.com/questions/1166539/do-you-find-convention-over -configuration-good-or-bad – mguymon
@mguymon: creo que es un tema ligeramente diferente. – leora
El público objetivo es otro gran factor a considerar. ¿Es algo interno de una compañía frente a alguien en la red? Para los usuarios con una mentalidad de diseñador vs mentalidad de ingeniería? Etc. –