/guide

A common list of the software design principles behind the farallons collection of libraries

MIT LicenseMIT

guide

A common list of the software design principles for the farallons collection of libraries

command-query separation

(as taught by Bertrand Meyer - ETH Zurich)

uniform access

(as taught by Meyer)

interfaces

(as taught by James Gosling - Java founder and lead designer)

small interfaces

(as taught by Robert Sedgewick - Princeton University)

polyglot build

(as with Bazel)

Please note that not every language is yet conducive to these principles in full, nor is the knowledge of contributors such as I, so this all is a work in progress, admitedly approaching these ideals in fits and starts