Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 271045
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 12, 20262026-05-12T00:05:58+00:00 2026-05-12T00:05:58+00:00

A while back i read somewhere about how to improve upon the MVC pattern

  • 0

A while back i read somewhere about how to improve upon the MVC pattern to accomodate the highly flexible and layered (web)applications we see today. (and to my frustration, i can’t seem to find that article again)

For example, some of the Google applications like GMail or even a browser like Firefox.

It consists of components that can be extended and completely replaced. Users can choose the user interface or theme they like, has some kind of plugin system, etc etc…

Owkay I know, this is how big/great applications are build. That’s why i ask this question.

Could you provide me with resources or insight in what patterns are used or how these applications are build architecturally…

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-12T00:05:58+00:00Added an answer on May 12, 2026 at 12:05 am

    I guess you are talking about software architecture (in contrast to hardware or system architecture).

    Possibly the most important rule (I wouldn’t call it pattern) is seperation of concerns. Meaning one component should handle exactly one task, only that task and the complete task. If you stick to that (which is harder than it seems). You’ll have the basis for the plugability you mentioned, e.g. exchanging the UI. If your UI layer really does only UI, it can be replaced by something completely different.

    If you are really talking big, like the mentioned GMail the concept of ‘eventually consistent’ becomes important. Classical applications are structured in a way that the user performs an action, say pressing a button. The application processes that action (e.g. saving data from a form in a database). And refreshes the GUI when it is done (e.g. replacing the ‘save’ button with an edit button. This linear processing has the benefit, that the user always sees a consistent state. If he turns around and searches the database he’ll find his data right there. But this doesn’t scale to well, when you have extremely high load on the system, because the optimum database for saving, is most of the time not the perfect database for searching. So some application do something like this: When the user hits the save button, the store the data in the fastes way possible (e.g. a database optimised for updates), set a marker that further processing is needed and refresh the gui. Now a separate process comes along to process the saved data, e.g. by updating special indexes or by storing it in a separate database that is optimized for searching. This second process might gather changes for many actions in order to improve performance.

    With this design you can scale further, because you are separating concerns: storing and searching data are two different tasks, so they are split in two different component, which can in this extrem case work in parallel. For the user this means he might not immediately find the stuff he just saved, but he eventually will. Hence ‘eventual consistency’

    Edit: I forgot about the resources. Great books about application architecture are: Martin Fowlers ‘Patterns of Enterprise Application Architecture’. For Patterns in general of course: ‘Design Patterns’ for Patterns concerning Messaging Architecture ‘http://www.amazon.de/s/ref=nb_ss_eb?__mk_de_DE=%C5M%C5Z%D5%D1&url=search-alias%3Denglish-books&field-keywords=Enterprise+Integration&x=0&y=0‘. I can’t recommend any books on scalability, but ‘Building Scalable Web Sites’ was recommended to me. The architecture of various big applications (e.g. Twitter) is a topic of talks, presentations and papers, so you’ll get lots of resources when you google > architecture twitter <.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 206k
  • Answers 206k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer what i would do, is to make sure that AttachValidationFunction… May 12, 2026 at 9:15 pm
  • Editorial Team
    Editorial Team added an answer The first image will be from the very first frame.… May 12, 2026 at 9:15 pm
  • Editorial Team
    Editorial Team added an answer You have your types and variables mixed up. Try: DECLARE… May 12, 2026 at 9:15 pm

Related Questions

Using Model->find('all') returns an array with the following structure: array( 0 => array('Model1' =>
I'm trying to get into unit tests for a BizTalk application I'm working on,
My program, alas, has a memory leak somewhere, but I'll be damned if I
I have some jQuery code that highlights which radio button is checked by turning

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.