장해서 화면이나 웹 페이지 등에 위젯을 ‘그리도록’ 지원하자. 또한 자바 프로그래머에게 친숙한
구체적 메서드인
toString
()
을 오버라이딩해서 우리가 원하는 형식의 문자열을 만들 것이다.
NOTE
_
그리기는 실제로 여러 경계를 횡단하는 관심사
cross
-
cutting
concern
다. 위젯의 상태는 한 가지 관심사다.
하지만 여러 다른 플랫폼(‘뚱뚱한’ 클라이언트, 웹 페이지, 모바일 장치 등)에서 어떻게 표시할지는 별도의 문
제다. 따라서 그리기는 트레이트를 만들 수 있는 좋은 후보다. 특히
GUI
추상화의 이식성을 높이고 싶은 경우
엔 더 그렇다. 하지만 단순화하기 위해 여기서는 그림을 그리는 것도
Widget
의 계층구조 안에서 처리할 것이다.
다음은
draw
와
toString
메서드로 변경한
Widget
이다. 이제는
Widget
을 추상 클래스로 바꿨
다. 왜냐하면 그것이 버튼 등의 모든
UI
위젯의 논리적인 부모이기 때문이다. 하지만 이를 트
레이트로 정의했더라도 진행할
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month, and much more.
O’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
I wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
I’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
I'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.