Pregunta

Posible duplicado:
Diagrama UML relacional inspirado en SO

He desarrollado mi tarea desde el cargo.

Problema: hacer publicaciones de manera similar a SO para que la primera publicación sea la pregunta y las otras publicaciones sean respuestas después de la pregunta.

Pregunta: ¿Cómo mejorarías las interfaces?¿Alguna estructura de datos más simple facilitaría las cosas?

¿Fue útil?

Solución

Su primera pregunta me confunde. UML me hace pensar en los objetos y "Mensajes-mesa" me hace pensar en las bases de datos relacionales. ¿A cuál te refieres? Vamos a suponer que desea objetos.

Es necesario una interfaz o abstracción que representa las dos preguntas y respuestas - tal vez esa es la interfaz de Correos. Que tendrá como atributos de texto y el autor y una marca de tiempo cuando fue publicada.

Dado que la cuestión nunca llegará antes de una respuesta, si usted tiene una colección de Correos casos que va a ser en el orden correcto si ordena por fecha y hora.

UPDATE: UML medios de programación orientado a objetos. Python es a la vez un objeto y orientada a un lenguaje funcional. Por lo que significa que va a pensar en el problema en términos de objetos en primer lugar.

pensar en términos de objetos medios de establecimiento de lado las preocupaciones acerca de la interfaz de usuario y la base de datos. A diseñar los objetos para proporcionar el tipo de comportamiento que usted necesita. Usted puede tener una interfaz de texto simple al principio, y la serialización de objetos va a hacer por la persistencia. Pero conseguir los objetos bien a la primera.

Cuando se dice "interfaz", pienso en interfaces Java. Declaran la firma de la clase, pero no dicen nada acerca de la implementación. Por lo que su interfaz de mensaje podría tener preguntas y respuestas implementaciones.

¿Qué contiene todas las instancias de correos? ¿Qué es el dueño? Tendría otro objeto llamado KnowledgeExchange de poseer la colección de Correos. Deje que se esconden todos los detalles de implementación y proporcionar métodos para getQuestion y getAnswers. No obligue a sus clientes a tener que saber todos esos detalles, o incluso si se implementa como una pila o lista.

Como dije, no se preocupe acerca de las tablas o persistencia por el momento. Piense acerca de los objetos. Es mejor hacer todo el problema en términos de objetos en lugar de sólo Post, pregunta y respuesta.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top