Click here to learn
about this Sponsor:
Home  |  News  |  Articles  |  Polls  |  Forum

Keywords: Match:
In memory database vendor promotes "self-diagnostic" software APIs
Apr. 05, 2004

Linux Journal has published an article on self-diagnostic APIs. Commercial software application programming interfaces (APIs) are a major source of costly bugs, according to author Steve Graves, CEO of McObjects. Too often, Graves writes, these APIs are data structure ignorant -- they handle data without knowing its type. This limits the compiler's and middleware runtime's abilities to perform any validation, boosting the chance that programming mistakes will go undetected.

Using database APIs as an example, the article acknowledges benefits -- including convenience, portability and productivity -- afforded by widely used interfaces.

The downside of pre-defined database APIs is that for an interface library to be able to manage data of any database definition, it must have a programming interface that ignores the type of all data. It must treat the data as un-typed, or opaque.

"To accomplish this," Graves writes, "databases use void pointers to pass data between the database library and the application program. A void pointer is a C/C++ language variable that legally can point to any type of data. With no type, neither the C/C++ compiler nor the database runtime can perform any validation on them."

Graves suggests verifying functions using function prototypes -- the signatures of functions, introduced in the 1980s. If a function's use doesn't match its signature, the compiler flashes an error message, and the offending code must be corrected before the program can be successfully compiled.

Implementing a self-diagnostic API that harnesses the ANSI C compiler's function prototyping in order to catch programming errors means abandoning the old idea of an API as a static library of functions, but would result in a more intuitive, easier-to-learn programming interface, according to Graves.

Graves argues, carries the added benefit of creating a more intuitive, easier-to-learn programming interface. Self-diagnostic APIs can also be more readable and self-documenting than are functions from a static interface designed for use with an infinite variety of database designs. The article's ample code illustrations, drawing from popular Linux data management platforms, give readers the chance to start deciding for themselves.

Read full story.



Related Stories:


(Click here for further information)


FUEL Database on MontaVista Linux
Whether building a mobile handset, a car navigation system, a package tracking device, or a home entertainment console, developers need capable software systems, including an operating system, development tools, and supporting libraries, to gain maximum benefit from their hardware platform and to meet aggressive time-to-market goals.

Breaking New Ground: The Evolution of Linux Clustering
With a platform comprising a complete Linux distribution, enhanced for clustering, and tailored for HPC, Penguin Computing¿s Scyld Software provides the building blocks for organizations from enterprises to workgroups to deploy, manage, and maintain Linux clusters, regardless of their size.

Data Monitoring with NightStar LX
Unlike ordinary debuggers, NightStar LX doesn¿t leave you stranded in the dark. It¿s more than just a debugger, it¿s a whole suite of integrated diagnostic tools designed for time-critical Linux applications to reduce test time, increase productivity and lower costs. You can debug, monitor, analyze and tune with minimal intrusion, so you see real execution behavior. And that¿s positively illuminating.

Virtualizing Service Provider Networks with Vyatta
This paper highlights Vyatta's unique ability to virtualize networking functions using Vyatta's secure routing software in service provider environments.

High Availability Messaging Solution Using AXIGEN, Heartbeat and DRBD
This white paper discusses a high-availability messaging solution relying on the AXIGEN Mail Server, Heartbeat and DRBD. Solution architecture and implementation, as well as benefits of using AXIGEN for this setup are all presented in detail.

Understanding the Financial Benefits of Open Source
Will open source pay off? Open source is becoming standard within enterprises, often because of cost savings. Find out how much of a financial impact it can have on your organization. Get this methodology and calculator now, compliments of JBoss.

Embedded Hardware and OS Technology Empower PC-Based Platforms
The modern embedded computer is the jack of all trades appearing in many forms.

Data Management for Real-Time Distributed Systems
This paper provides an overview of the network-centric computing model, data distribution services, and distributed data management. It then describes how the SkyBoard integration and synchronization service, coupled with an implementation of the OMG¿s Data Distribution Service (DDS) standard, can be used to create an efficient data distribution, storage, and retrieval system.

7 Advantages of D2D Backup
For decades, tape has been the backup medium of choice. But, now, disk-to-disk (D2D) backup is gaining in favor. Learn why you should make the move in this whitepaper.

 


Got a HOT tip?   please tell us!
Free weekly newsletter
Enter your email...
Click here for a profile of each sponsor:
PLATINUM SPONSORS
GOLD SPONSORS
(Become a sponsor)

ADVERTISEMENT
(Advertise here)

Check out the latest Linux powered...

mobile phones!

other cool
gadgets



BREAKING NEWS

• Hacker-friendly karaoke PMP runs Linux
• Maemo gains KOffice port
• OLPC partners with Amazon, ITU
• "cJTAG" debuts
• First $100 laptop runs Linux
• First Linux on Everest
• Dell ships Ubuntu- and Atom-based netbook
• Smallest x86 board ever?
• MontaVista Vision gains focus
• "Olympics" phone runs Linux
• Android Challenge winners push location awareness
• Atmel-based industrial SBC runs Linux
• Atom squeezes onto Pico-ITX board
• Via frees Chrome graphics driver source
• Webinar dissects Linux multicore migration


Most popular stories -- past 90 days:
• Open source phone goes mass-market
• Updated! Linux Mobile Phones Showcase
• World's cheapest Linux-based laptop?
• Garmin Nav devices run Gnome Linux
• First Atom-based notebook runs Linux
• ARM9 board boots Debian in 0.69 seconds
• Open source camera records geotagged video to SATA HDD
• Linux-friendly Beagle fetches $150
• "PDA phone" runs Linux
• Intel offers $80 "Little Falls" Atom mobo
• Netflix Player runs Linux


DesktopLinux headlines:
• OSCON 2008 presentations, videos posted
• Debian distro named for little green man
• Google spins web browser
• Summit debuts for Linux end users
• "UbuntuLite" reviewed
• Linux in the SME
• Linux: not yet photo-friendly
• Linux to gain anti-virus software
• Linux gains backup utility
• Testing Lenny


Also visit our sister site:


Sign up for LinuxDevices.com's...

news feed

Home  |  News  |  Articles  |  Polls  |  Forum  |  About  |  Contact
 

Ziff Davis Enterprise Home | Contact Us | Advertise | Link to Us | Reprints | Magazine Subscriptions | Newsletters
Tech RSS Feeds | White Papers | ROI Calculators | Tech Podcasts | Tech Video | VARs | Channel News

Baseline | Careers | Channel Insider | CIO Insight | DesktopLinux | DeviceForge | DevSource | eSeminars |
eWEEK | Enterprise Network Security | LinuxDevices | Linux Watch | Microsoft Watch | Mid-market | Networking | PDF Zone |
Publish | Security IT Hub | Strategic Partner | Web Buyer's Guide | Windows for Devices

Developer Shed | Dev Shed | ASP Free | Dev Articles | Dev Hardware | SEO Chat | Tutorialized | Scripts |
Code Walkers | Web Hosters | Dev Mechanic | Dev Archives | igrep

Use of this site is governed by our Terms of Service and Privacy Policy. Except where otherwise specified, the contents of this site are copyright © 1999-2008 Ziff Davis Enterprise Holdings Inc. All Rights Reserved. Reproduction in whole or in part in any form or medium without express written permission of Ziff Davis Enterprise is prohibited. Linux is a registered trademark of Linus Torvalds. All other marks are the property of their respective owners.