Skip to content
Wooseong Kim edited this page Dec 29, 2015 · 1 revision

WingsHelper

Wings 클래스는 유저 프로그래머 입장에서 실제로 쓰이지는 않는 클래스. 데이터 핸들링을 위해서 유틸리티 클래스들이 활용한다고 생각하면 됨.

날개를 사용, 충전, capacity 등등 조작하는 로직은 WingsHelper에 있음.

  • refreshInternalState(): 실제적인 날개 계산을 하는 로직 날개가 하나라도 사용될 경우 충전을 위해 시간을 체크하는데, 백그라운드에서 계속 타이머를 돌릴 수 없기 때문에, 마지막으로 풀충전이 아니게 된 시간을 체크해서 다시 앱에 접속할 경우 해당 시간을 빼서 다시 타이머를 돌린다.

  • increaseWings(count: Int, allowingOverCharge: Bool): 주의해야 할 점이 allowingOverCharge의 기본값이 true로 되어 있다. 안드로이드에서 포팅된 로직이고 중간에 true -> false가 되었기 때문에 로직을 수정하기 어렵다. 그래서 사용할 때 주의를 요함

  • panelty(): 기획적인 부분인데, 날개가 0개일때 Dislike를 받으면 충전시간이 더 길어지는 기능. 현재는 쓰이지 않고 있지만 알아둘 필요가 있음.

WingsObservable

날개 상태의 변화를 관찰하는 protocol, 자세한 내용은 usage 참고.

Clone this wiki locally