A method of developing a
software program for resource constrained
mobile computing devices comprises the step of using a
library of three mandatory types of code which enable a
system to be modelled, the three types of code being: (a) a first re-useable object which defines the transmission of raw binary data between a writer end and a reader end; (b) a second re-useable object which defines ordered name / value pairs and (c) an abstract API definition that defines how to write, create, call or use a task which handles the first and / or second objects. This
very high level abstraction has been found, surprisingly, to apply to virtually all systems which have been analysed by the applicant. Hence, the present invention allows a small (deliberately restricted), core
library of “primitives” to be built once and re-used very many times as building blocks by different applications. Re-use of code defining high level abstractions considerably reduces overall
code size (a major technical
advantage for
mobile computing devices) and speeds up developing new programs (major technical
advantage in the rapidly moving world of program development for
mobile computing devices).