Information Technology Blog

Friday, October 21, 2005

Beyond Java, By Bruce A. Tate

When is Java right?
• Safe decision
– With limited productivity
• Large teams (Community = choice)
– Teams need portability across problems domains
• Specialized requirements
– High-powered ORM, for example
• Fine-grained integration
– Java plug-ins
– RPC with serialized objects
• High-powered team
– That’s most productive in Java space
– And happy to be there

When might you use alternatives?
• Productivity is the overriding concern
– Especially in startup environments
• Small highly productive teams
• Coarse-grained integration is OK
– Web services (REST or Soap style), Database
only, HTTP-based RPC with primitives
• Emphasize the most crucial part
– User interfaces, text processing (parsing, etc)

How might you push Java?
• Emerging programming models
– Aspect oriented programming
– Frameworks like Trails
• Leverage ideas
– Less XML (annotations, parsed text)
– More emphasis on defaults and convention (Rails)
– Inversion of control (code blocks, seaside)
• Progressive frameworks that shun convention
– Establish a role for scripting languages
– Spring over EJB
– Tapestry over Struts
– Parsed text over XML
– REST over SOAP
– Scripting languages over XML config

0 Comments:

Post a Comment

<< Home