loading...

How do you structure your app?

hdennen profile image Harry Dennen ・1 min read

We have a fairly large app currently organized at a high level into view, logic, model, communication, and utils. All files are aliased and we have scripts to handle any moves. For the most part we follow grouping by purpose, but it's still a bear to find things sometimes.

This is the second time our team has taken a shot at reorganizing so I'd love to hear about everyone's experience with this.

Example:

|-view
  |-engine
    |-core
    |-animation

  |-feature
    |-featureName

Discussion

markdown guide
 

I might separate it like this:

| root files
| - bin
| - lib
  | - engine
    | - sound
    | - graphics
    | - gui
  | - entity
     | - manager
     | - components
| - app/data/content
  | - entities
    | - mobs
    | - npcs
    | - items
  | - guis
    | - menu
    | - inventory
  | - models
  | - gfx
  | - shaders

 

I've realized the most important part of this exercise is to make sure the structure guides a team to make the same decisions on where to put things. Whether they're good or bad isn't really relevant as long as everyone reaches the same conclusions when looking at the structure.