Tu tarea
Implementa una aplicación de consola (similar a Twitter) que cumpla con los siguientes escenarios.
Escenarios
Publicar
Alice puede publicar mensajes en su línea de tiempo personal.
> Alice -> Me encanta el clima de hoy
> Bob -> ¡Maldita sea! ¡Perdimos!
> Bob -> Aunque fue un buen partido.
Leer
Bob puede ver la línea de tiempo de Alice.
> Alice
> Me encanta el clima de hoy (hace 5 minutos)
> Bob
> Aunque fue un buen partido. (hace 1 minuto)
> ¡Maldita sea! ¡Perdimos! (hace 2 minutos)
Seguir
Charlie puede suscribirse a las líneas de tiempo de Alice y Bob, y ver una lista agregada de todas sus suscripciones.
> Charlie -> ¡Estoy en Nueva York hoy! ¿Alguien quiere tomar un café?
> Charlie follows Alice
> Charlie wall
> Charlie - ¡Estoy en Nueva York hoy! ¿Alguien quiere tomar un café? (hace 2 segundos)
> Alice - Me encanta el clima de hoy (hace 5 minutos)
> Charlie follows Bob
> Charlie wall
> Charlie - ¡Estoy en Nueva York hoy! ¿Alguien quiere tomar un café? (hace 15 segundos)
> Bob - Aunque fue un buen partido. (hace 1 minuto)
> Bob - ¡Maldita sea! ¡Perdimos! (hace 2 minutos)
> Alice - Me encanta el clima de hoy (hace 5 minutos)
Requisitos generales
La aplicación debe utilizar la consola para la entrada y salida de datos.
El usuario introduce comandos en la aplicación:
- Publicar:
<nombre de usuario> -> <mensaje>
- Leer:
<nombre de usuario>
- Seguir:
<nombre de usuario> follows <otro usuario>
- Muro:
<nombre de usuario> wall
No te preocupes por manejar excepciones o comandos inválidos. Asume que el usuario siempre escribirá comandos correctos. Céntrate únicamente en los escenarios ideales.
Puedes usar cualquier lenguaje y framework que desees. (proporciona instrucciones sobre cómo ejecutar la aplicación)
NOTA: Las palabras “publicar:”, “leer:”, “seguir:” y “muro:” no forman parte del comando. Todos los comandos empiezan con el nombre del usuario.
Recursos
Fuente: https://github.com/sandromancuso/social_networking_kata