あってる気がするが swift で delegate は使わない方が綺麗だと思う
下位互換で用意はされているけどブロック利用がトレンドじゃないかね