Skip to content

feat(week-03): complete counter assignment#45

Open
honeyhornet66 wants to merge 1 commit intoBay-17th:mainfrom
honeyhornet66:honeyhornet66/week-03
Open

feat(week-03): complete counter assignment#45
honeyhornet66 wants to merge 1 commit intoBay-17th:mainfrom
honeyhornet66:honeyhornet66/week-03

Conversation

@honeyhornet66
Copy link

과제 제출 정보

주차: Week

과제 유형:

  • [v] 이론 (Theory Quiz)
  • [v] 개발 (Dev Assignment)

구현 내용

  • deposit()에서 msg.value만큼 balances[msg.sender]에 더하고 이벤트를 발생시켰다.
  • withdraw()에서 CEI패턴을 적용하여 재진입 공격이 불가능하게 만들었다.

배운 점 (What I Learned)

이번 주에 배운 것 (2-3가지)

  1. balances[]와 .balance의 차이를 이해했다.
  2. Account
    ├── nonce
    ├── balance ← (ETH 잔액)
    ├── code
    └── storage ← (balances[] 여기 저장됨)
  3. deposit에서 ETH 이동은 함수 내부 코드가 아니라 protocol 레벨에서 자동 실행되고(Solidity와 무관) 변경된 기록만 코드 내에서 행해진다.
  4. 반면 withdraw는 컨트랙트가 ETH를 밖으로 내보내야 하니까 call과 같은 호출이 필요하다.

어려웠던 점과 해결 방법

어려웠던 점:
없다.

해결 방법:

질문 사항


체크리스트

테스트

  • [v] forge build 성공
  • [v] forge test 모든 테스트 통과

제출 규칙

  • [v] 브랜치명이 {username}/week-{XX} 형식
  • [v] .env 파일이 커밋에 포함되지 않음
  • [v] 커밋 메시지가 규칙을 따름

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant