Documentation is a crucial part of any good API or framework. Despite this importance, it often gets neglected and treated as an afterthought.
I recently asked another developer how he always managed to put together such well-thought-out and complete documentation. His response was: “Documentation Driven Design (DDD): if your API feels clunky to document, it’s probably a bad design.” This reminded me of my first introduction to Test Driven Development (TDD). By breaking your code into smaller chunks and testing them first, you were immediately placed on a road traveling toward better design. Given how useful TDD has been for me, DDD seems worthwhile.
One of the main considerations that determines whether I use a framework is how complete and easy to understand the documentation is. But in my own hypocritical way, I’ve neglected good documentation principles on my own hobby projects and frameworks. Read more on Framework Docs Are a First-Class Citizen…
Posted in Process & Practices Also tagged API
A few months ago, I began working on a project with my RaspberryPi. The goal was to set up a web server that hosted a simple application. The application would acquire a temperature reading from an attached thermocouple and periodically update a webpage with the current temperature.
I’m sure this would be a very simple task for an experienced web developer, but I am not that. My focus is primarily on embedded systems, and I spend most of my days writing C code.
Apple has invested quite a bit of time into making it easy to compile for a number of different architectures in XCode. For instance, compiling a library into its armv6, armv7, and i386 variants is just a matter of specifying the supported architecture types. However, there isn’t a built-in mechanism to take the binaries built for the various architectures and merge them into a universal iOS framework.
Before we go through the steps of building a universal iOS framework we should first review what a framework is and why they are useful.
Read more on Building a Universal Framework for iOS…