I want to know what is the best practice for deploying a "Solution" in SharePoint Online.
For example, if I want to create an "Employee Site with Leaves" in SharePoint Server 2013, when we did this as a SharePoint Solution (.wsp), we created 1 solution with multiple SharePoint Projects inside. Features handle deployment of 'features' (ex. Branding is 1 feature, Columns / Content Types is 1 feature, Site Structure is 1 feature, etc.).
However, for SharePoint Apps, does it make sense to separate it into multiple SharePoint Apps? For example, given the "Employee Site with Leaves", 1 SharePoint App is for Branding, 1 SharePoint App is for Columns / Content Types, 1 SharePoint App is for Site Structure? Or can everything be in just 1 SharePoint App?
I'm also looking at this in a maintenance / upgrade perspective if we need to do any upgrades. In .wsp, I can just use the versioning and Upgrade using powershell, but not sure how it is for SharePoint Apps.