Skip to content

Latest commit

 

History

History
21 lines (19 loc) · 1.22 KB

Understanding dependencies.md

File metadata and controls

21 lines (19 loc) · 1.22 KB

Dependencies exist when the correct compilation or functioning of program code relies on code/data from other smart contracts that were not necessarily developed by the project team.

  1. Explicit program dependencies are captured in the import statements and the inheritance hierarchy. For e.g., many projects use the community-developed, audited and time-tested smart contracts from OpenZeppelin for tokens, access control, proxy, security etc.
  2. Composability is expected and encouraged via smart contracts interfacing with other protocols and vice-versa, which results in emergent or implicit dependencies on the state/logic of external smart contracts via oracles for example.
  3. This is especially of interest/concern in DeFi protocols that rely on other related protocols for stablecoins, yield generation, borrowing/lending, derivatives, oracles etc.

Slide Screenshot

096.jpg


Slide Text

  • External Code/Data
  • Libraries/Protocols/Oracles
  • Composability
  • Assumptions on Functionality/Correctness

References


Tags