I am planning to develop a large website that will contain mobile applications (for both Android and iPhone) in the future. I haven't done much web development (I'm still in school but I will graduate soon), but I plan to use ASP.NET (MVC or Razor sites and Blazor client side). However, I'm not sure what is the best industry approach to architecture for this application. Here are the options I'm considering:
- Use the clean architecture to implement the entire app
- Develop an ASP.NET core REST API
- The website and the mobile apps access and change the data using the REST API
However, I'm not sure if this approach can be scaled and, above all, if it's the best way to do it. Although I know that my questions are very broad, would you please share your experience on how I could achieve my goals? specifically:
- What is the most appropriate architecture used in the real world that I should use?
- All other suggestions (e.g. web resources, books and blog posts) are welcome. Suppose I am ready (and I have the illusion that I am able) to learn any technology in due course.