@bernso said:However, the group is definitely into using
Microsoft solutions, and I'll readily admit that I've never seen front
ends in the miscellaneous Java technologies that could compete with the
drag-and-drop interfaces you can build with Visual Studio. So
I've been thinking, why not interface the two technologies - a C# front
end communicating via Web Services with a Java backend. After
all, it's pretty well acknowledged that though Microsoft is winning the
desktop battle (including pretty, responsive interfaces), Java
still has a slight advantage in the enterprise/server environment.
Is this a complete WTF or might there be some value to this
blended architecture?
It's perfectly possible to do that, and it will probably even help you
to seperate the tiers and avoid vendor specific shortcuts that
compromise the quality of the design, portabilty etc.
Of course this should only be done if you have a group of developers
for the front end and another group of developers for the back end. If
you force people to work in C# and Java at the same time, the little
differences between those two languages will drive them mad; at least
you can say goodbye to coding style standards.
One last thought: Microsoft has a terrible (yes terrible) record for
maintaining the portability of their proprietary programming languages.
Back in '98, they introduced VB6 proposed to write business logic in VB6 and place it
in the MS Transaction Server. Only 5 years later, VB6 was legacy and while it's still
possible to use it today, there will never be a 64 bit compiler for
x86-64 Windows. Face it: it will be dead sooner or later. Moving it to VB.net is not as straight-forward as it should be.
Five years (or ten years, for the matter) is a ridiculously short
lifespan for business logic. It's perfectly okay to replace the front
end every (say) 5-10 years; adapt it to new operating systems, make it
more user friendly, utilitzing the growing power of PCs. But for any
reasonably large system, you don't want to do that with the business
logic. For that reason, I would prefer any other vendor than MS for the
language used for the business logic. Once MS manages to keep a usable
language upward-compatible and maintained for 15 years, I might
reconsider my position. Let's wait for 2018 to see if C# is a good idea
for business logic or not.