If there is one thing that Enterprises need to do today - they need to deliver functionality and data onto mobile devices. Although there are plenty of technology options for remoting and moving data around the cloud and/or to a client, a clear, emerging, leader here is the use of REST technology.
Basically, for those who are not aware, REST presents a lightweight remoting protocol that can also move data around with JSON, a lightweight data interchange format. Since many Enterprise applications are written in C++, how can you take advantage of it. For those of you using VCL or FireMonkey you can use provided components but there is a new and very interesting project that deserves a further look. Recently, Microsoft released a new C++ REST SDK, called Casablanca, as an open source project. Even though it comes form Microsoft, it is not Windows specific.
Here is how it is described on the Casablanca codeplex project site:
This library is an effort to support cloud-based client-server communication in native code using a modern asynchronous C++ API design.
The C++ REST SDK (codename "Casablanca") is a project to start exploring how to best support C++ developers who want to take advantage of the radical shift in software architecture that cloud computing represents.
What is most interesting about this SDK, to me, is that it takes advantage of new C++11 features, particularly around asynchronous operations. Here is how the project creators describe their goals in that regard.
This library also gives you a convenient model for composing asynchronous operations. Whether your application is compute-intensive or I/O-driven, its scalability is likely to require careful resource utilization. Asynchronous APIs are great for scalability, but can be very hard to use when all you have is C-level functionality. Fortunately, C++ 11 offers a whole new set of capabilities that can make dealing with asynchronous operations easy, and the library takes advantage of that throughout.
I agree! C++11 does offer a whole new set of capabilities to improve asynchronous operations. Now that we have a highly compliant C++11, I plan to work on building this with our BCC64 compiler and reporting back. Anyone interested in working on that with me?
P.S. For those of you not understanding the reference in the title check out this scene from the classic 1942 movie, Casablanca.Posted by J T on March 20th, 2013 under Uncategorized |