versiones - git version command




Carpetas de "preocupaciones" aleatorias y archivos ".keep" (2)

Preocupaciones es un concepto simple pero poderoso. Existe para la reutilización del código. Básicamente, la idea es extraer trozos de código comunes y / o específicos del contexto para limpiar los modelos y evitar que se vuelvan demasiado gordos e inmanejables.

Me gustaría especificar explícitamente que debe usar objetos de servicio para proporcionar funcionalidad que no sea la preocupación del objeto específico. Por ejemplo, una organización tiene muchos usuarios. Ahora el administrador de la organización necesita exportar un archivo CSV de todos los usuarios de esta organización. Este código se puede colocar en el modelo de organización pero, como no es responsabilidad del objeto de la organización, este código debe colocarse en una clase en la que acaba de pasar el objeto de la organización y devuelve el CSV de todos los usuarios.

 class Services::GenerateCsv
     def self.get_users org
         #add logic the fetch users for the org and generate the CSV and return the CSV data
     end
 end

Siempre que necesite generación CSV, puede colocar esa lógica en la clase anterior. Este enfoque mantiene el objeto (en este caso, el modelo de organización) limpio del código que no debería ser su responsabilidad. Un principio general que sigo es: si el código está modificando el objeto propio, mueva el código a un objeto de servicio.

Nota: Su pregunta fue sobre inquietudes, pero pensé en agregar algunas cosas adicionales que sigo para mantener la base de código limpia y manejable, ya que podría ayudar a otros programadores. Ese enfoque anterior es discutible.

Estoy aprendiendo rails.

En algún momento, noté que aparecían carpetas y archivos aparentemente aleatorios en el directorio de la aplicación de mis rieles. En algunas carpetas hay una carpeta de concerns con un archivo .keep dentro. El archivo .keep parece estar vacío. En otras carpetas no hay carpeta de concerns pero hay un archivo .keep vacío.

¿Alguien sabe cuál es el trato con estos archivos / carpetas?


.keep archivos .keep son archivos de 0 bytes que están ahí para evitar que las carpetas vacías sean ignoradas por todo tipo de procesos. Nada de que preocuparse.







version-control