views:

78

answers:

3

I am going to 4th and final year in my university. During this year all of the students must complete FYP (final year project). I am just at the beginning of the research for it and i am pretty much stuck.

For past few days i was reading up on SOAP vs REST debate and I cant decide which protocol to use. Both of them would work for my project and that should not be a big problem, however this project would most likely end up on my CV (resume).

So that's why i have mixed feelings. SOAP is well documented, well supported and recently updated protocol. However most of big companies are using REST over SOAP (eg google).

So what would be more beneficiary in terms of good "corporate" experience. I now that REST is still red hot, but on the other hand C is still used in big companies.

Thx for any insight

+1  A: 

I'd suggest going for the one that you would be most interested in pursuing after the project and university is over. Is there an employer or industry that catches your attention? i.e. would you rather a startup company or a big iron employer?

Large corporations and governments are invested in SOAP web services. They're well understood & accepted, as you mention, and have large sets of tooling and libraries around them.

I start to think that it's a bit of a micro-decision, as an employer would expect that you could duck and weave either way. Technology changes rapidly, and you'll likely be in a position at some point to recommend one over the other as a developer/architect.

Are you able to incorporate BOTH into your project?

p.campbell
A: 

Just to clarify, C has nothing to do with the choice of SOAP vs. REST. :-)

You choice really depends on the actual API you want to design. There are certain things that SOAP does better than REST and others that REST does better than SOAP. For example, SOAP has better support for encryption and digital signatures for the payload, it supports atomic transactions, and non-HTTP protocols. REST is easier to implement, simpler to understand, allows non-XML payload (JSON). (Though some SOAP implementations also support binary XML as an alternative)

Meanwhile, most of the major webservice frameworks out there actually support exposing the API of your webservice both as SOAP and REST, so you shouldn't have much trouble actually implementing both.

Franci Penov
+1  A: 

It depends on your project. You should research them both, make sure you understand them and maybe do a small implementation of both protocols. Then you take the advantages and disadvantages of both architectures and make an informed decision as to which fits your project and justify the choice. It will give you plenty to write about in the write up (assuming you have one like I did), and you will have an understanding of both.

Chris Diver