Espacios de nombres adecuados para API pública

Estoy tratando de descubrir cómo usar adecuadamente los espacios de nombres al crear una API pública a partir de un gran montón de código de implementación.

Estoy escribiendo una API para poner una cara pública amigable en todo el código que mi compañía ha creado para hackear los problemas en nuestro marco más utilizado.

El espacio de nombres raíz de mi nuevo proyecto se llama 'FrameworkSDK'.

Bajo FrameworkSDK, tengo FrameworkSDK.CompanyNameLibrary, que es donde reside todo el código de implementación que mi compañía ha creado.

Estoy tratando de escribir PublicFacingAPI, lo que idealmente pondría una buena cara sobre FrameworkSDK.CompanyNameLibrary, para que los nuevos desarrolladores puedan comenzar a usarlo instantáneamente, etc.

¿En qué espacio de nombres debo poner mi nuevo PublicFacingAPIcode?

¿Debería colocarse en FrameworkSDK.CompanyNameLibrary.PublicFacingAPI? Luego, cada vez que los desarrolladores importen este dll, sería absurdo usar una declaración.

Podría colocar el código en el espacio de nombres FrameworkSDK, pero luego todas mis clases públicas tendrían que incluir la instrucción using usando FrameworkSDK.CompanyNameLibrary o FrameworkSDK.CompanyNameLibrary.SubNameSpace.

¿A dónde debe ir este código?

Gracias

Respuesta 1

No creo que SDK.CompanyNameLibrary.CompanyInternalAPI sea tan ridículo. Es un poco largo, pero es descriptivo y cualquiera que use el dll sabrá exactamente lo que está obteniendo.

Respuesta: 2

Este es mi código: usuario de clase pública {ID de cadena privada; nombre de usuario de cadena privada; fecha de nacimiento larga privada; dirección de cadena privada; booleano privado habilitado; ...

Estoy convirtiendo un código de la biblioteca Http Client 3.x a la biblioteca Http Components 4.x. El código anterior contiene una verificación para asegurarse de que la respuesta no supera un determinado tamaño. Esto es ...

para un proyecto escolar nos pidieron que hiciéramos el algoritmo de dijkstra. Tengo las clases: Node, Edge, graph y Dijkstra usando graph.getNodes (devolver una lista) y almacenarlo en una variable local en ...

Tengo un único InputStream o String con dos xmls, así: <? Xml version = "1.0" standalone = "yes"?> <Items blahblahblah1 </items> <? Xml version = "1.0" ...