Java / JRuby on Rails vs .NET 3.5 ... feel like I'm doing it wrong

I am planning to develop web services (SOAP client in C ++) in Java with Metro / Hibernate and migrate to it with a website written in JRuby on Rails, plugging in Java modules via JRuby and generally via a database. I've already written the code and configured everything.

Now I have heard that .NET 3.5 is really powerful and after some reading I admitted that it is true. However, would it be wise to ditch this monstrous but curious hybrid of Java and RoR in order to switch everything to .NET? Everything: services, database connection (linq for objects), web interface, ajax - all in one huge .NET 3.5 solution.

I also want to have fun, but not as fun as, say, C ++ for the server side :)

I know that with the power of RoR, it doesn't really matter if it has both sides. However, whether I'm set up for .NET or Java, I still get the feeling that I'm doing it wrong and I should just switch to the not-me-in-time.

I have very limited experience with web development, I only wrote an ASP.NET web service once and supported a Java web service, so I have a real OCD with platform choices here.

0


source to share


4 answers


Sorry, but what you are doing sounds like a big ball. It doesn't matter to me which path you take, but I would simplify the architecture by reducing the number of technologies / frameworks you use. If you can find a way to do this in Ruby / Rails without reference to Java (although you might need to keep the C ++ client side), that will work. Obviously working in .NET (my preferred platform) is another choice. Windows Communication Foundation makes it easy to create web services that are lighter than older ASP.NET web services, including RESTful web services using JSON.



If I were doing this today, I would use ASP.NET MVC for web, WCF (for web services) and either eliminate the C ++ client or consider writing it in C # with .NET or Mono.

+2


source


.NET 3.5 is fun (among the major platforms), but in my personal opinion Ruby is as fun as if it weren't more fun than .NET 3.5.

About the possibilities, they are also roughly equivalent, you can certainly make a SOAP web services application without a problem.

There is no such thing about "monster hybrid", it's just a (very active) port like IronRuby or IronPython in .NET.



There will be more of a coherent whole if you go into .NET and write in, say, C #, if, of course, you mix and match Ruby and Java. But you can of course only use JRuby.

Given that the fun and opportunity factors are more or less equal, I would choose JRuby in case I have to deploy on Linux, Solaris, or something that won't be Windows in the future.

If you're sure you'll want to stick with Windows forever, pick the one that works best for you.

+4


source


It seems to me that you are planning too much or over engineering. I don't have a clear picture of your architecture reading, but I see a lot of words like .NET, Java, SOAP, C ++, JRuby on Rails, RoR, web services, Hibernate, ajax, linq, etc. around, so I just wonder how they all come together. Here are some simplified architectures that may or may not suit your needs as I don't quite understand your problem. I also don't see there are any questions in your post, so given the circumstances, I would suggest:

  • Web interface: RoR with Ajax. Web services: NET. Data Access: Linq.

    What this means, your .NET web services will use Linq to access data and expose via SOAP, which will be consumed by the front end of the Ror.

  • Alternatively replace .NET with Java and Linq with Hibernate.

If the above is useless, then my other suggestion is that you don't need to combine all these technologies in one solution.

0


source


I would rather move to FreeBSD or Debian in the future ... I'm sure I don't want to stay on Windows forever. But there is Mono, right?

0


source







All Articles