Estoy a punto de escribir un script de PowerShell para los administradores de Windows, con el fin de ayudarlos en ciertas tareas relacionadas con la implementación de una aplicación web.Cuándo elegir el desarrollo de un módulo de PowerShell sobre PowerShell Script
¿Hay alguna razón por la que debería favorecer o excluir el desarrollo de un módulo de PowerShell (.psm1) en vez de hacer un script de PowerShell (.ps1)?
Argumentos para desarrollar una secuencia de comandos
- simplicidad: Yo lo que el uso de un guión es un poco más fácil y más sencillo para los administradores de Windows, ya que no requiere el módulo a instalar (pero podría estar mal ya que no soy un administrador de Windows!).
- desarrollo más rápido: desarrollar un módulo requiere una programación más cuidadosa y una exposición de métodos internos, es como diseñar una API y por lo tanto debe ser más riguroso.
Argumentos para desarrollar un módulo de:
- reutilización: se trata de las primeras cosas que viene a la mente: si el administrador desea integrar nuestro guión en un guión propio, podría ser ¿le resulta más fácil reutilizar un módulo exponiendo uno (o varios) cmdlet en lugar de invocar nuestro script?
- ...
Si conoce el caso de uso común de las secuencias de comandos PS vs módulos PS, o las limitaciones técnicas de cada opción, que podría ayudar.
Un pensamiento: al crear el código, créelo como un script; de esa manera obtienes el beneficio de "desarrollo más rápido".Una vez que tenga un script en funcionamiento, migrelo a un módulo (es decir, copie las funciones, agregue documentación y, en general, asegúrese de que esté completamente empaquetada); de esta manera, obtienes la funcionalidad trabajando rápidamente mientras estás en la mentalidad de desarrollador, luego cambias a la mentalidad de tu arquitecto cuando refactorizas/reenvasas para su reutilización. – JohnLBevan