Glossário

Open/Close

Easy

The price at which a cryptocurrency opens at a time period or the programming principle of software parts being extendable.

What Is Open/Close?

Open/close can refer to the price at which a cryptocurrency opens at a time period, for example at the start of the day; the price at which a cryptocurrency closes at a time period, for example at the end of the day. In general, these terms were more useful in traditional financial markets as there are fixed hours of the day in which trading occurs.

In software development, open/close refers to the programming principle of software parts (functions, modules etc.) being extendable without allowing any kind of change in the source code. The code itself permits flexibility while restricting the ability to change its fundamental parts. This eliminates the need to change the software completely every time when new requirements arise. It was first described by Bertrand Meyer and forms part of the SOLID principle of object-oriented programming. Open/close is especially important for blockchain and crypto projects design because of their immutable nature.
Blockchain and its parameters aren’t easily changeable once implemented. This is because any change has to be agreed by all nodes and participants of the network and a consensus needs to be formed, which isn’t exactly easy. For that reason, blockchain platforms and decentralized applications are typically only changeable through a hard fork, which means starting on a new chain. 

Hard forks are an inconvenient procedure and quite risky for users. It’s not practical for projects to hard fork every time they need to pursue changes and add/modify functionalities. Hence, blockchain programming relies heavily on the open/close principle, which means leaving room for extending capabilities without causing drastic changes.