user40897: I am studying to write smart contract and see that there are some token standards such as ERC20. My question is: what is the purpose of those standards ? Why do we need to add those interface to our code rather than just implement "some" functions that we need.
Thanks

user69241: It's a standard.
ALL those ERC20 based tokens have (at least) the same attribute names, the same method names.
So I do automaticly know that I need to call the method "transfer" when I want to transfer my tokens. No one would name it "transfer_tokens_hello_world". Irrelevant which of the thousands of token I want to transfer: It's always the same method.
The advantage for exchanges and/or user interfaces is that it's really easy to implement. If an exchange list token A and B, then token C has the same structure and it's easy to implement it, too.

40897: <p>I am studying to write smart contract and see that there are some token standards such as <a href="https://theethereum.wiki/w/index.php/ERC20_Token_Standard" rel="nofollow noreferrer">ERC20</a>. My question is: what is the purpose of those standards ? Why do we need to add those interface to our code rather than just implement "some" functions that we need.</p>

<p>Thanks</p>
 69241: <p>It's a <strong>standard</strong>.</p>

<p>ALL those ERC20 based tokens have (at least) the same attribute names, the same method names.</p>

<p>So I do automaticly know that I need to call the method "transfer" when I want to transfer my tokens. No one would name it "transfer_tokens_hello_world". Irrelevant which of the thousands of token I want to transfer: It's always the same method.</p>

<p>The advantage for exchanges and/or user interfaces is that it's really easy to implement. If an exchange list token A and B, then token C has the same structure and it's easy to implement it, too.</p>
