I have 5 apps that I want to make right now, but creating them one by one seems inefficient. It seems like a better idea to make them all at approximately the same time in order to share segments of code where applicable. What are your thoughts on the most productive way to create a long list of moderately complex apps? For comparison, let's put them all on the difficulty level of a familiar & simple app - SnapChat.
Even though it sounds more efficient this sounds like a surefire way to either at best waste time or at worst (and most likely) get a lot of half written apps that never get to production. Unless this is a white label app where instead of 5 separate apps there is one app with 5 different skins you will likely never finish one of them let alone five. A 'simple app' like Snapchat still requires a lot of development time and testing, user adoption studies, and most of all focus of your effort.
Based on your question you have a good deal to learn about the development process. That is fine, you can do it, but focus on the best idea and put all your effort into that. It will take a lot more time and work than you expect and you will be happy you aren't worried about four other projects.