|
devMeth
This explains the BYOM (methodology) concept of SOS.
SOS Basics > devMeth Developer Methodologies IntroductionEncapsulation and decoupling are two buzzwords of architecture gurus. Yet nearly every framework on the market has the methodology of coding an application tightly coupled to the Application framework. Let me cover this in stages to simplify the concept. MVCMany developers have heard the drum beat that advanced developers and technology all use MVC. That is pretty much the truth but what they don't tell you is how different one MVC can be from the next. They also don't tell us that all this basically means is the logic of our Model (functional objects that typically persist their state in a database), View (the part of markup to generate what the user is visually interacting with) and the Controller (where the application request is handled for interacting with the model and business logic.)... all of those with MVC are seperated into layers to clarify where to write and where to locate code. In reality MVC is the methodology concept of keeping code seperated. Application FrameworkAlmost all ColdFusion frameworks have one thing in common. They share the MVC variation called Model 2. This means the request is handled by a "front controller" that then passes the flow of the request to another controller. (I call this the "request controller".) This is a good way to describe the majority of application frameworks on any web platform actually. MethodologyHow we code should not be determined by the application framework if we follow the strong beliefs of the gurus because this means the methodology is "tightly coupled" to the application framework. DetailsWith that said let's take a look at the common methodologies that are available for SOS.
These frameworks all conform to the applicaiton frameworks standards but they allow the application to be coded according to different methdologies for each application. It also allows applications to be swapped out with a different methodology with basically no lost links to search engines or bookmarks. It also provides a common API to help streamline code inside those methodologies. At the end of the day we realize that just like MVC was a great concept for segmenting code there are great advantages to segmenting what belongs in the Application Framework API, what belongs in the methodology and other concepts like skinning. There is a common workflow to code inside all methodologies. | |