https://lush93md.medium.com/%E5%BE%9E-viewmodel-%E4%BD%BF%E7%94%A8%E8%B3%87%E6%96%99%E4%B8%B2%E6%B5%81-1aa0a8b874f3