If attendance at JavaOne sessions is any indication of what's on the minds of developers, then aspect-oriented programming (AOP) is a technology whose day is coming.
At the show on Wednesday a standing-room-only crowd numbering an estimated 1500 people attended at least part of a technical session on AOP, a form of modular development.
"There's confusion about what it means," says attendee Simon Jones, consultant at BlackPepper, a Java consultancy in Leamington Spa, United Kingdom. Asked his assessment of why so many attended, Jones responded, "Curiosity."
"I think the key benefit is the modularising of your code," Jones says.
After the session, panelist Gregor Kiczales, a computer science professor at the University of British Columbia, described AOP as the next step in modularity after object-oriented programming. Developers can capture factors such as policies for security, persistence, and transactions, he says. "It lets you write them as modular aspects," Kiczales sais.
"Modularity is the most important concept in software development," Kiczales said. During the session, Kiczales stressed that AOP is "first and foremost a way of thinking".
While Java is considered the prominent platform for AOP, incorporating the concept more fully into the language will take time, he said.
Panelists noted there are challenges to AOP.
"There are definitely things I like about AOP, but I would definitely qualify myself as a sort of a conflicted AOP advocate," said Cedric Beust, senior software engineer at BEA Systems.
"I think AOP's hard," he said. "Maybe it's just intrinsic to the technology."
Another panelist, James Gosling, Sun CTO for the Sun Java Development Platform and Tools team, said he, too was conflicted about AOP, noting it has promise but also drawbacks. For example, imposing security policies throughout a program via a transport layer can cause problems, with policies needing to be different dependent upon environment.
"The fantasy in AOP for me is you just define the nouns, you define the verbs and somehow or another all the intersections kind of just fill in," Gosling said.