views:

346

answers:

3

We are currently designing a REST API that we want to publish in a few months. Since this is a brand new application we can choose any other programming language other than PHP. At this moment we are using the following link to have a base of best practices for APIs.

What is the most suitable Rich Internet Application Programming Language to construct a REST API? I know you can accomplish this goal with almost any PL, we are looking for one that will give us the base. And while you are at it, if you can point the second better and the reasoning that will be perfect.

Thanks SO for this great website.

EDIT 1: Other link related to this question.

+1  A: 

Depends on what your team is comfortable with.

You really can't go wrong with Ruby on Rails or Microsoft .NET (using WCF with REST endpoints).

Ruby on Rails is good if that architecture works for your application and you only need that REST endpoint.

With .NET, you can create the REST endpoint for your WCF service but also provide other endpoints if you find you need them.

Justin Niessner
A: 

I actually don't think you could use an RIA language to build a REST API, because a REST (Web) API is an collection of resources served via an HTTP server. An RIA usually runs client-side.

So I assume you're asking what's the most suitable programming language to build a REST API which will be used by an RIA.

There are many good choices. I'm not sure what your parameters are, so I'll suggest what I would use if I needed to build a REST API.

Some good choices:

  • Java, using the Restlet framework. I use this all the time and I'm very happy with it.
  • Ruby, using the Ruby on Rails framework or the Sinatra micro-framework
  • Python, using a micro-framework such as Bottle, djng, itty, juno, mnml, newf, web.py, or Werkzeug. It's definitely possible to use a full-blown framework such as Django or CherryPy, but I've found them to be not particularly well suited to this use case.

Hope this helps!

Avi Flax
Thanks Avi: I think you are right. I want to build an API to be used by an RIA application. Thanks for the clarification. Your post is very helpful.
Geo
My pleasure, glad to hear it. You might want to consider editing the question to make it a little clearer. (And maybe give my answer a vote up?)
Avi Flax
BTW, I'm a big fan of Restlet. It's possible to use it with Ruby or Python by using JRuby or Jython, which are implementations of those languages for the Java platform.
Avi Flax
A: 

If not PHP, then Ruby or Python.

pbreitenbach