Programming idiom
In programming and in code, an idiom describes a commonly-used way to code a relatively small construct in a particular programming context. Many such constructs are found in multiple programming contexts yet tend to vary by context. Like a linguistic idiom, a programming idiom is a commonly-used way to express a concept in a language that exists outside the definition of the language yet is constrained by it.
Similar to a software [design pattern], an idiom is a template to be followed, not code that can be copy-and-pasted into a codebase. In this sense, an idiom is a pattern, yet software design pattern is a classification reserved for significantly larger-scale functionality; usually involving the interaction of multiple objects.
Using the idioms for a programming context helps a team work together since they lower the cognitive load of the resulting code. Such idiomatic use is common in Crowdsourced [software development |crowdsourced] repositories to help developers overcome programming barriers.
Examples
Writing to standard output
Writing to standard output is generally something covered early when learning a language; it is often presented through the task of writing a hello world program.A common idiom in C++ like:
std::println;
For Java:
System.out.println;
For Rust:
println!;
Using dynamic memory
In C, use the C dynamic memory allocation functions such asmalloc and free.In C++, use the and operators. The C dynamic memory allocation functions are usable in C++, but would generally be considered idiosyncratic.