Agile Zone is brought to you in partnership with:

Den is a DZone Zone Leader and has posted 460 posts at DZone. You can read more from them at their website. View Full User Profile

Web services - do you use/develop them?

10.09.2010
| 10333 views |
  • submit to reddit

In the recent era of web technologies, when pretty much every piece of software and hardware is in some way tied to an online component, it is hard to imagine life without web interactions. Besides web applications, that are built to be accessible from anywhere independently from the platform, a multitude of desktop applications and mobile clients interact with web-based content via web services, that often do the heavy lifting when it comes to processing specific data.

So, following the definition of a web service, it is basically a web API that allows developers (and general users for that matter) to access specific functionality without being tied to a specific client - therefore, if the developer wants - he/she can create his own client for any platform that will use the endpoints provided by the service.

This is a great way to make a software product as flexible as possible - if it is dependent on a web service, then any updates can be pushed directly to the web service core, and any client that is built around existing endpoints, will automatically be receiving updated data (as long as no endpoints are modified to expose a different data type or object structure) - since clients don't perform specific actions (that are delegated to a web service) but rather process the request and response data.

Of course, there is a specific limit between actions that should be delegated to a web service and those that should be executed locally to avoid additional dependencies. That's it - the developer should know when to delegate an action to a web service. For example, if the developer knows that the core of the application will be often modified and it is impossible to update the multitude of distributed copies, then it might make sense to build a web service that will handle interactions and will simply feed data to requesting clients - as long as this is acceptable under the application design requirements. At the same time, it is probably a bad idea to delegate local security control to a web service - it is better to handle these elements directly in the application to avoid the risk of the service being compromised or unavailable (although it depends on  specific requirements - depending on the number of users and the platform they use).

I am curious - how many developers are only consuming existing web services and how many of them are building them (thus the poll). If you have any comments, feel free to post them and explain your choice.

 

I mainly consume(d) web services (e.g. REST services like Twitter, Google services)
10% (13 votes)
50/50 between service consumption and development
18% (24 votes)
I develop(ed) web services (.NET - Old-style web services/WCF)
12% (16 votes)
I develop(ed) web services (Java)
41% (54 votes)
I develop(ed) web services (PHP)
7% (9 votes)
I develop(ed) web services (Ruby)
0% (0 votes)
I develop(ed) web services (Other)
4% (5 votes)
I plan on consuming web services (no prior experience)
3% (4 votes)
I plan on building web services (any platform)
2% (2 votes)
Do not plan on consuming/developing web services
5% (6 votes)
Total votes: 133

Comments

Srikanth Shenoy replied on Mon, 2010/10/11 - 12:27pm

Why is it a radio button and not checkbox? I develop web services in Java, .NET and PHP is a valid answer isnt it?

Peter Kuhn replied on Mon, 2010/10/18 - 4:18am

Yes. If you are developing modules for customers you have to work with the technology the system of thyy customer offers for you.

Normally I only use self developed webservives in my software solutions. There are only a few I just consume.

Lötkolben

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.