Not bad, but it seems like the author conflates an app's architecture with a framework here.<p>App architecture, at it's best, is a intentional structuring that isolates what the system does from how it does it. In other words, it separates the business concerns from the technical concerns, as they may change for separate reasons. This is what results if you don't use a framework. It may seem impossible, but there were tons of desktop apps made without a framework (I consider .NET/GTK/Win32 et al to be <i>class libraries</i> because they did not force any architecture on you.)<p>Contrast this with a framework: a ready-made set of abstractions used for solving a particular problem. Most frameworks prescribe an architecture: their own.