CryptoZombies レッスン3
ここでは高度なコンセプトについて
学ぶらしい
チャプター1
デプロイすると
もうコントラクトを
編集したり更新したりできなくなる
あら
このことをイミュータブルになる
という
外部依存関係にあり、
関連しているコントラクトに
バグがあれば
自分で作ったコントラクトにも
影響が出て、
使い物にならなくなる可能性がある
こういったことを考えて
ソースコードを考えていかなければ
いけない
チャプター2
externalは
誰でも参照することができる
Solidityのライブラリである
OpenZeppelinの
Ownableコントラクトという
ものがある
コントラクトを作った人だけが
参照することができる
特別なもの
チャプター3
なんか関数修飾子というものが
出てきた
(さっきも出てきたが...)
viewもpureも関数修飾子だったそうで
え
唖然
チャプター4
なぜgasが必要なのか
無限ループなどの危険要素を
排除するため
でもgas高いと使わないよねー
誰か代わりに払ってー
structの中身を変えることで
gasを少なくすることができるらしい
チャプター5
Solidityの時間について
いっぱい書いてあったよー
チャプター6
structへのstorageポインタは、private
やinternal
関数の引数として渡すことができる。これは便利だから覚えておくようにな。例えば、Zombie
structを関数に渡すことも可能だ。
こんな風に書けばいい:
function _doStuff(Zombie storage _zombie) internal {
// _zombieを処理する
}
storageポインタ??
前にもした気がするけど
忘れてるやつ
チャプター7
セキュリティーは
やっぱり大事よ
publicとかinternalとか
よく考えないといけない