I was wondering though, what are your preferred design pattern for a User and Message System for your application? This is the structure I am considering, but I am not quite sure at this point:
- User System:
abstract class User
class Member extends User
class AdminUser extends Member
class RegularUser extends Member
class BannedUser extends Member
class Guest extends User
Not sure what design pattern this is, its somewhat similar to abstract factory but has lots of differences Id say?
- Message System:
interface Message
class SystemMessage implements Message
class PrivateMessage implements Message
class VisitorMessage implements Message
class Shoutboxmessage implements Message
class EmailMessage implements Message
Seems like a simple strategy design pattern to me?
So what would you do if you were the designer of a User and a Message System? What design patterns would you use? Id really like to collect ideas, suggestions and criticisms before getting started, thanks.