How do I facilitate and encourage implementation of my specification?

25 views Asked by At

Suppose I have written a library in a programming language (e.g. Java) to interact with an external component (e.g. a database).

I would now like the community to provide implementations in other languages.

How can I enable and encourage, other developers to provide implementations that are identical in functionality to mine.

Some examples may be:

  • Provide a written specification of behaviour
  • Provide a reference implementation
  • Provide a testing framework so they can validate their implementation (can this be done across multiple languages?)

What other options are available?

1

There are 1 answers

0
ekostadinov On

Common approach of all that you are after for, can be the abstraction level of Coding conventions. Since they are set of guidelines for a programming languages that recommend programming style, practices and methods for each aspect of a piece program written. These conventions usually cover file organization,indentation, comments, declarations,statements, white space, naming conventions, programming practices,programming principles, programming rules of thumb, architectural best practices, etc.

About

 enable and encourage, other developers to provide implementations that are identical in functionality to mine.

you can use Interfaces (protocols). Even if they are used to define an abstract type that contains no data or code, they also define behaviors as method signatures.

Your examples are good. But in addition to

Provide a testing framework so they can validate their implementation

you can introduce the main ideas of the Test-driven development:

  • Establishing the goals of different stakeholders required for a vision to be implemented

  • Drawing out features which will achieve those goals using feature injection

  • The goal of developer TDD is to specify a detailed, executable design for your solution

  • read more