Monday, December 31, 2007
Saturday, December 22, 2007
I am so so excited to receive Sacrament of Jesus Christ and I just want to let you know that I am getting married to Rosmi on 30th January 2008. The engagement is planned on 26th January in St: Mary’s Church, Kalady, Ernakulam and the Catholic Wedding Ceremony will be held at St: Francis Xavier’s Church, Cheranalloor East, Perumbavoor, Ernakulam (30 KM away from Kochi).
Dear friends, "Please pray for us"
Thursday, December 6, 2007
Just like Visual Basic made client-based application development available to a wider tier of developers by removing much of the complexities, Volta is a toolkit of language extensions, APIs, and tools that do the same for web programming. As a result, ordinary programmers can concentrate on the essential aspects of building distributed and mobile applications such as partitioning and owing code and data across tiers, deployment, security, etc. without getting bogged down in low level details. "If you look at when VB came on the market, it was really, really hard to do Windows programming. You had to be a C++ programmer, and then VB came around and then suddenly people could write Windows programs. Now it's the era of the Web, but in some senses we're back in the early days of Windows programming." Meijer said.
I am so excited with the new Volta toolkit and will add new blog entries later with lot of details.
Wednesday, December 5, 2007
What is REST?
REST is an acronym standing for Representational State Transfer and it is an architecture style of networked systems. According to Roy Fielding (one of the principal authors of the Hypertext Transfer Protocol (HTTP) specification) , the explanation of Representational State Transfer is :
"Representational State Transfer is intended to evoke an image of how a well-designed Web application behaves: a network of web pages (a virtual state-machine), where the user progresses through an application by selecting links (state transitions), resulting in the next page (representing the next state of the application) being transferred to the user and rendered for their use." Systems that follow Fielding’s REST principles are commonly known as “RESTful”;
REST means that each unique URL is a representation of some object. You can get the contents of that object using an HTTP GET, to delete it, you then might use a POST, PUT, or DELETE to modify the object.
Unlike SOAP, REST is not a standard or specification. It is just an architectural style. You can design your web services using this architectural style.
REST is using the built-in operations in HTTP: GET, POST, and others. And rather than identify the information to be accessed with parameters defined in XML, as SOAP typically does, REST assumes that everything is identified with a URL. However REST is not a standard, it does use the following standards
- XML/HTML/GIF/JPEG/etc (Resource Representations)
- text/xml, text/html, image/gif, image/jpeg, etc
REST Vs SOAP - Which is the best approach?
Software Architects have been involving a never-ending debate about whether SOAP-based or REST-style web services are the right approach and recently the debate is too heating up. Yahoo's web services are using REST and google using SOAP for their web services. Some organizations have web services for both REST and SOAP. REST is Lightweight than SOAP because it does not requires lot of xml markup like SOAP.
I believe that SOAP will be the primary choice for intranet and enterprise level applications because SOAP and the WS-* specifications addresses many challenges of enterprise level applications such as reliability, distributed transactions, and other WS-* services. But I think open, Internet applications will gear towards to REST because of REST’s explicitly Web-based approach and its simplicity.
RESTful services for WCF 3.5
WCF 3.5 provides explicit support for RESTful communication using a new binding named WebHttpBinding.
The below code shows how to expose a RESTful service
int GetStock(string StockId);
By adding the WebGetAttribute, we can define a service as REST based service that can be accessible using HTTP GET operation.