ARC305 Code Generation: Architecting a New Kind of Reuse
Speaker(s): Scott Hanselman
Session Type(s): Breakout
Track(s): Architecture, Developer Tools, Web Development
Day/Time: Tuesday, June 7 10:45 AM - 12:00 PM Room: S 210 E
Code Generation is often used to jump start projects or generate CRUD stored procedures. But what if you wanted to build a more automated software factory? What if the constraints of your business were fairly vertical, like 'Retail eBanking' but wide open, like 'The Web Channel'? By using Domain Specific Languages or by extended existing things like XmlSchema (XSD) or Web Services Description Language (WSDL) to describe contracts between systems, fairly complex systems can be built. This advanced session explores and takes apart a real-life system built with .NET in order to support a legacy C++ application. We discuss the role of Code Generation, Visual Studio Add-Ins and tools, command line generators and compilers, validation of rules and constraints, and Continuous Integration and Automated Testing. Learn how this team generated everything from Domain Objects to the actual Microsoft Word specification document.