About 296 results: "api.duckduckgo.com"
Page 7 of 15
Filter Results
Sources
Languages
Filter Results
Try Search On
















  1. 
                        
  2. **a long and barely relevant anecdote** (feel free to skip this or come back to it later)
  3. 
                        
  4. <img src="http://australia.quest.com/japan/java_and_portals/jprobe/images/jp40_launchpad.gif" height="532" width="705"/>
  5. 
                        
  6. At that time, C++ testing frameworks were rather [grody][valspeak], so we kept automated testing simple: We built the core of Threadalyzer as a command-line application, even though command-line functionality was *not* a business requirement. All configuration was done through a configuration file. Our test suite was written as shell scripts.
  7. 
                        
  8. Threadalyzer had a UI that was built by a colleague. Early versions of the user interface actually talked to the core application through the command line. The user interface was written using Java Swing because our company's policy was to eat the Java dog food whether it was palatable or not. As an aside, I also recall writing a UI for editing Threadalyzers configuration files using a cross-platform implementation of Hypercard called [Metacard][mc]. Despite working perfectly, it was later rewritten with Java Swing by a coöp student.
  9. 
                        
  10. Although we didn't have a grand architectural desire to "use best practices," we ended up with an application strongly factored into two components: A domain logic engine and a user interface.
  11. 
                        
  12. Flash forward to today and many enterprise-scale business applications are built with a similar architecture. An internal domain logic server talks to various resources like databases or legacy, screen-scraped applications. The domain logic server exposes an API for performing queries and updates in XML or JSON over a mechanism like MQ or perhaps HTTP. The domain logic server enforces business rules and atomicity. For example, an online bank might have a certain rules about eligibility for opening a new type of account. If the applicant fails these automated rules, they must speak to a customer service representative. Those rules are enforced by the domain logic server.
  13. 
                        
  14. 
                        
  15. MVC is a good thing. Or at least, it's a good thing until you want to combine MVC with REST in the same server. A RESTful server does not know anything about the views and controllers used to build a client application. This is implicit in the REST architecture: The RESTful server simply exposes an API for operations on resources, and a client of that server implements the user interface.




Back to Top