B
Beatrice Rutger
Hi,
I am a previous Micro$oft desertee (moved from VB/VC++ to Java before
this whole DOTNET thing) because I had several issues with Micro$oft. I
am not completely in love with Windoze, but I have to say that Java
SWING sucks BIG TIME for developing and deploying desktop applications
(especially on Windoze).
Unfortunately, I have been dragged kicking and screaming back to my old
haunts - but the landscape has changed somewhat and I would appreciate
some feedback from people with real world experience of what I'm trying
to achieve. Basically, I'm torn between two worlds (Java programmers
hate me for deserting, and are trying to convince me to use the slow
clunky SWING GUI because it's a better fit - yeah tha'll happen!), and
in the past, I have been bombarded by .NET zealots who want me to
re-write my whole backend to use the flaky IISP etc - and I'm like yeah
right!).
My backend is pure Java (J2EE) running on Unix - but because SWING is so
shitty, I basically am forced to use .NET which, with its (Forms?) is
really cool, looks good and allows you to write an application that
really looks and feels at home on a Windoze box - and blows away crappy
lokking SWING applications in sheer performance and looks.
The problems then are this:
1). Inter-operatability (communication between the front end and backend)
2). Code protection at the client side
INTER-OPEATABILITY
====================
I have a J2EE backend and a .NET frontend. I need to get them to
communicate. I do NOT want to use SOAP/XML because it is far too heavy
weight, and I get the performance hit caused by parsing on both sides. I
would like to use something like base 64bit encoding and servlets to
transfer data in binary format between the backend component - I will
issue HTTPS request from the .NET client, receive the request on the
Servlet at the backend, process it and hand the response back (in base
64 bit encoded form). Any ideas about how I can do this on the .NET side
of things (is theer a library for issuing HTTPS requests and handling
base 64 encoded daat?)
CODE SECURITY
==============
Admitedly, this is a problem that Java also has, but we do have class
loaders, and that (along with code obfuscation) can lead to some pretty
secure code. I would like to be able to place my executable on my remote
server (probably as 64 bit encoded ASII strings - since it will be on a
different platorm) and then "load" the executables on demand from
accross the internet - so that there are no executables on the local
machine for prying eyes to reverse engineer. Is there anyway, I can load
binaries from a remote location and then run it on a local machine?. I
will be very interested in knowing if and how this can be done.
I would not need to worry about code security if I was developing with
VB or VC++ - however, the future of VB seems uncertain (is the plug
going to get pulled on VB at some stage or what?), and also last time I
checked (several years ago), VC++ was lousy at creating GUIs - the
DOTNET framework has these nice forms which unfortunately, I cannot use
in VB or VC++ without making the whole damn executable easy to reverse
engineer - is there another way of getting the fantastic GUIs (which is
the only reason I am back), along with the code security of ("non
reverse engineerable") executables?. Is there a language or language
combination that gives me the desired results ?
Lastly, but not the least, can I use MDD (model driven design in .NET)
you know, UML nad design patterns etc to generate the underlying code?.
I sthere a tool that allows me to create UML designs and then generate
the appropriate code in .NET?
I look forward to your responses
Regards,
B.
I am a previous Micro$oft desertee (moved from VB/VC++ to Java before
this whole DOTNET thing) because I had several issues with Micro$oft. I
am not completely in love with Windoze, but I have to say that Java
SWING sucks BIG TIME for developing and deploying desktop applications
(especially on Windoze).
Unfortunately, I have been dragged kicking and screaming back to my old
haunts - but the landscape has changed somewhat and I would appreciate
some feedback from people with real world experience of what I'm trying
to achieve. Basically, I'm torn between two worlds (Java programmers
hate me for deserting, and are trying to convince me to use the slow
clunky SWING GUI because it's a better fit - yeah tha'll happen!), and
in the past, I have been bombarded by .NET zealots who want me to
re-write my whole backend to use the flaky IISP etc - and I'm like yeah
right!).
My backend is pure Java (J2EE) running on Unix - but because SWING is so
shitty, I basically am forced to use .NET which, with its (Forms?) is
really cool, looks good and allows you to write an application that
really looks and feels at home on a Windoze box - and blows away crappy
lokking SWING applications in sheer performance and looks.
The problems then are this:
1). Inter-operatability (communication between the front end and backend)
2). Code protection at the client side
INTER-OPEATABILITY
====================
I have a J2EE backend and a .NET frontend. I need to get them to
communicate. I do NOT want to use SOAP/XML because it is far too heavy
weight, and I get the performance hit caused by parsing on both sides. I
would like to use something like base 64bit encoding and servlets to
transfer data in binary format between the backend component - I will
issue HTTPS request from the .NET client, receive the request on the
Servlet at the backend, process it and hand the response back (in base
64 bit encoded form). Any ideas about how I can do this on the .NET side
of things (is theer a library for issuing HTTPS requests and handling
base 64 encoded daat?)
CODE SECURITY
==============
Admitedly, this is a problem that Java also has, but we do have class
loaders, and that (along with code obfuscation) can lead to some pretty
secure code. I would like to be able to place my executable on my remote
server (probably as 64 bit encoded ASII strings - since it will be on a
different platorm) and then "load" the executables on demand from
accross the internet - so that there are no executables on the local
machine for prying eyes to reverse engineer. Is there anyway, I can load
binaries from a remote location and then run it on a local machine?. I
will be very interested in knowing if and how this can be done.
I would not need to worry about code security if I was developing with
VB or VC++ - however, the future of VB seems uncertain (is the plug
going to get pulled on VB at some stage or what?), and also last time I
checked (several years ago), VC++ was lousy at creating GUIs - the
DOTNET framework has these nice forms which unfortunately, I cannot use
in VB or VC++ without making the whole damn executable easy to reverse
engineer - is there another way of getting the fantastic GUIs (which is
the only reason I am back), along with the code security of ("non
reverse engineerable") executables?. Is there a language or language
combination that gives me the desired results ?
Lastly, but not the least, can I use MDD (model driven design in .NET)
you know, UML nad design patterns etc to generate the underlying code?.
I sthere a tool that allows me to create UML designs and then generate
the appropriate code in .NET?
I look forward to your responses
Regards,
B.