Applications such as Noteflight (music notation), Adobe Buzzword (word processing) or Scholastic’s Timeliner (time-based content) go far beyond what most people think of as a typical Flash application. These are complex visual editors built in Flex or Flash, which a short time ago might have been delivered as medium-to-large apps for the desktop. What kinds of design patterns and architecture are necessary to pull off apps such as these? Joe will present an overview of the internals of several such applications, and discuss real-world examples drawn from their development and delivery. In the process, he will focus on some large-scale principles that are invaluable to anyone planning or building a complex interactive editor in Flash. Topics include Model/View/Controller patterns and their variants, tracking a “current selection” of objects, the Mediator pattern, mouse gesture handling, document persistence, and automated testing.
Anyone interested in building medium-to-large-scale interactive editors, or who’s curious about how they work.
A set of proven ideas that help in successfully planning and developing these types of application. The Moccasin open-source project will be introduced as a way for attendees to get a running start.