Skip to main content

Featured

kayu gaharu

 

Google Chrome 14 Brings Native Code to the Web


Google has released Chrome 14 to the Chrome beta testing channel, which includes, among other new features, the initial beta release of Google’s "Native Client" technology, first announced in 2010.If you’d like to try out Chrome 14 beta, head on over to the beta downloads page.Chrome 14 has several improvements including the much better OS X Lion integration we mentioned previously, along with print-preview support for Mac OS X users. But possibly the biggest news is that Google’s Native Client technology is getting closer to prime time.

Native Client is a set of open source tools that allow Chrome to run compiled C and C++ code the same way the browser currently runs JavaScript or other common web programming languages. Native Code offers both a security sandbox and a set of interfaces that provide C and C++ bindings to the capabilities of HTML5. That means web application developers will be able to tap into desktop libraries to create faster, more powerful web apps.

For example, imagine you wanted to create a video editing web app along the lines of Final Cut Pro. You could building the user interface with HTML, CSS and JavaScript, but the actual processing of video would likely be very slow if you handed off the job to the server. You could try to use JavaScript in the browser, but again speed would be an issue. Native Client would allow you to do the video processing in the browser, but running native code. Then all you need to do is push the final changes up to the server, which makes for a much snappier web app.

How much faster Native Client will be is open to debate. Certainly JavaScript performance has improved since Google first announced Native Client in June 2010. The past year has seen huge JavaScript speed improvements in nearly all the major web browsers, which means Native Client feels less necessary than it might have when Google first began working on it. Of course there are still plenty of web apps, especially computationally intensive apps like non linear video editors, that could benefit from Native Client.

The problem for web app developers is that thus far Native Client is only available in Chrome. Google has created an API, dubbed Pepper  Native Client is abbreviated NaCl, which is also shorthand for table salt, get it?  which allows the browser to talk to Native Client and means that any web browser could, in theory, implement it. Thus far, however, none have.

For now, if you want to test out some Google’s sample code, grab the latest Chrome beta and head on over to the Native Client demo page. In my testing Native Client was indeed quite speedy, but running it for any length of time sent my laptop’s fan into overdrive.While Native Client is still a beta release, if it catches on with developers and other browsers embrace it, it could open the doors for a whole new generation of faster, more powerful web apps.



Native Client is an open-source technology that allows you to build web applications that seamlessly execute native compiled code inside the browser.

Here are some of the things Native Client offers web developers:
-Graphics, audio, and much more
Run native code modules that render 2D and 3D graphics, play audio, respond to mouse and keyboard events, run on multiple threads, and access memory directly—all without requiring the user to install a plugin.
1.Portability
Write your apps once and you'll be able to run them on any major platform (Windows, Linux, Mac, and soon, Chrome OS).
2.Security
Installing a desktop app or a browser plugin can present serious security risks. Native Client uses a double sandbox designed to protect resources on the user's system. This framework offers the safety of traditional web apps in addition to native performance benefits.
3.Easy migration path to the web
Many developers and companies have years of work invested in existing desktop applications. Native Client makes the transition from desktop app to web app significantly easier because Native Client supports C and C++ (and will continue to add more languages).
4.Performance
Native Client allows your app to run at a speed comparable to a desktop app. This capability enables demanding applications such as console-quality games to run inside the browser.


Comments