Hey /prog/,
If you were to program a BBS similiar to this and wanted to make it object-oriented how would you call the classes? I guess "Reply" would do for any post after the first post. Since you often call the first poster OP (Original Poster) would you call the first post "OriginalPost"? Some suggestions would be great since I'm really bad at making decisions.
This is a stupid thread and [spoiler]IPHBT[/spoilers].
The problem of making a Shiichan-like imageboard is pretty simple, and using an object-oriented approach would likely only overcomplicate things and add to the overhead, however shiichan's code itself is quite a mess, even if it works. In the event I would use an object-oriented approach at solving such a problem(I wouldn't), I think some of the class names would have such names/structure:
Post - contains an individual post, it has an index, date, name, email, text blob, it's (de)serializable, possibly ID or IP of poster or hash.
Thread - contains an index, a collection of Post, serializable
Board - contains a collection of Thread, board properties, styling, user list(admins)
User - staff user/hash of pass, priviledge level, or even better, a collection of priviledges
BBCodeParser - conversion from bbcode to text which can be stored in a post
From here on, depending on the language you're developing, you're going to have to decide how to render the webpage, how to handle skins(board templates/visual styles), serialization( flat files, binary, databases, etc), what priviledges do admins have, and do you implement them, and so on.
Why are you even a programmer if you can't think about simple things such as these?