3. Cacheability. Chunks should be cacheable. That is, the contents of the chunks should not vary from page to page. If a chunk is required by both page A and page B, it should not be necessary to download the chunk a second time when navigating from page A to page B.
6. Defaults. Some default set of chunks should be provided so that application developers are not forced to go to the trouble of defining their own chunk layout.
7. Ordering. The solution should ensure that chunks are loaded in an order that honors code dependencies between chunks. If chunk A depends on code in chunk B, chunk A should be loaded before chunk B.
8. Extensibility. Custom components should be able to participate in the solution. That is, it should be possible to chunk custom component code in the same manner as ADF Faces framework/component code.
Assuming we’ve hit the key requirements (and hopefully we did, as I am running out of serious-sounding words to describe each requirement), these requirements translate into a fairly straightforward solution. Which of course is the topic of my next entry.