Módulo vs Espacio de nombres - Importar vs Requerir mecanografiado

Tengo mucha confusión conmodule/namespace/export yimport, require, reference uso. Siendo de origen Java, ¿puede, omeone explicarme en pocas palabras cuándo usar qué y cuál es el diseño correcto? Siento que me estoy equivocando cuando estoy escribiendo un proyecto de muestra

Hasta ahora, este es mi entendimiento 1.module es para paquetes externos 2.namespace es para paquetes internos

¿No entendí cómo los categorizamos?¿Cuándo exportar una clase o espacio de nombres o paquete?Si exportamos paquete / espacio de nombres, todas las clases dentro de eso se exportan o necesitan exportarse explícitamente¿Cómo se puede importar / requerir cada uno de ellos?

Según el doc., si estoy creando cada archivo "ts" para cada administrador / modelo, ¿Tipos de letra no recomienda usar "espacios de nombres"? ¿Usar directamente rutas de referencia?

Por favor explique en detalle ya que vengo de diferentes antecedentes y no estoy seguro acerca de ES6 / ES5, etc.

He visto a varias personas plantearse / confundirse con las mismas preguntas. Espero que alguien pueda explicar en detalle el escenario del mundo real.

Respuestas a la pregunta(4)

Su respuesta a la pregunta