코드 안의 회색 줄은 원문 영어 주석이고, 파란 줄은 그 영어 주석의 번역이며, 연분홍 줄은 코드가 하는 일의 설명이다.
| 번호 | 이름 | 종류 | CL 코드 원문, 번역, 설명 |
| 1 | eggsVideo1 | 미디어 | # Injects one of these timecodes into the video component
# depending on which option is selected in the mcEggs component.
▷ 아래의 재생 시간 값 중 하나를, mcEggs 구성요소에서 선택한 보기에 따라 동영상 구성요소에 전달한다.
time:
when mcEggs.isSelected(1) 13.78
when mcEggs.isSelected(2) 11.72
when mcEggs.isSelected(3) 6.54
when mcEggs.isSelected(4) 5.66
when mcEggs.isSelected(5) 1.2
otherwise 0
▶ 동영상의 재생 위치(time)는 mcEggs의 1번 보기가 선택되었다면 13.78, 2번이면 11.72, 3번이면 6.54, 4번이면 5.66, 5번이면 1.2, 어느 것도 선택되지 않았다면 0으로 한다.
isSelected(번호)는 객관식 구성요소에서 그 번호의 보기가 선택되었는지를 참 또는 거짓으로 알려 주고, when은 조건을 차례로 확인해 처음 맞는 값을 쓴다.
|
| 2 | 레이블 없는 메모 | 메모 | # The next five variables are all used to construct a sentence
# that reports the number of eggs at a certain time. It's then
# injected into the note content.
▷ 다음 다섯 변수는 모두 어느 시점에 달걀이 몇 개인지를 알리는 문장을 만드는 데 쓰인다. 이 문장은 이어서 메모의 내용에 끼워 넣는다.
eggsNum =
when mcEggs.isSelected(1) 1
when mcEggs.isSelected(2) 2
when mcEggs.isSelected(3) 3
when mcEggs.isSelected(4) 4
when mcEggs.isSelected(5) 5
otherwise 0
▶ 변수 eggsNum은 mcEggs의 1번~5번 보기가 선택되었다면 각각 1~5로, 어느 것도 선택되지 않았다면 0으로 한다.
isSelected(번호)는 객관식 구성요소에서 그 번호의 보기가 선택되었는지를 참 또는 거짓으로 알려 주고, when은 조건을 차례로 확인해 처음 맞는 값을 쓴다.
pluralVerb =
when not(mcEggs.isSelected(1)) "were"
otherwise "was"
▶ 변수 pluralVerb는 mcEggs의 1번 보기가 선택되지 않았다면 "were"(복수형 동사)로, 그렇지 않으면 "was"(단수형 동사)로 한다.
not(…)은 참/거짓을 뒤집는 함수이다.
pluralNoun =
when not(mcEggs.isSelected(1)) "s"
otherwise ""
▶ 변수 pluralNoun은 mcEggs의 1번 보기가 선택되지 않았다면 "s"(복수형 어미)로, 그렇지 않으면 빈 글자로 한다.
eggsTimes =
when mcEggs.isSelected(1) 13.78
when mcEggs.isSelected(2) 11.72
when mcEggs.isSelected(3) 6.54
when mcEggs.isSelected(4) 5.66
when mcEggs.isSelected(5) 1.2
otherwise 0
▶ 변수 eggsTimes는 mcEggs의 1번 보기가 선택되었다면 13.78, 2번이면 11.72, 3번이면 6.54, 4번이면 5.66, 5번이면 1.2, 어느 것도 선택되지 않았다면 0으로 한다.
optionSelected = mcEggs.isSelected(1) or mcEggs.isSelected(2) or mcEggs.isSelected(3) or mcEggs.isSelected(4) or mcEggs.isSelected(5)
▶ 변수 optionSelected는 mcEggs의 1번~5번 보기 가운데 하나라도 선택되었다면 참, 아니면 거짓으로 한다.
or는 둘 중 하나라도 참이면 참이다.
time =
when mcEggs.isSelected(1) 13.78
when mcEggs.isSelected(2) 11.72
when mcEggs.isSelected(3) 6.54
when mcEggs.isSelected(4) 5.66
when mcEggs.isSelected(5) 1.2
otherwise 0
▶ 변수 time은 mcEggs의 1번 보기가 선택되었다면 13.78, 2번이면 11.72, 3번이면 6.54, 4번이면 5.66, 5번이면 1.2, 어느 것도 선택되지 않았다면 0으로 한다.
time =은 등호로 쓰였으므로 동영상의 time이 아니라 변수이다.
eggsRemoved =
when optionSelected "\n\nThere ${pluralVerb} ${eggsNum} egg${pluralNoun} at ${time} seconds."
otherwise ""
▶ 변수 eggsRemoved는 optionSelected가 참이면 "\n\nThere ${pluralVerb} ${eggsNum} egg${pluralNoun} at ${time} seconds."(${time}초에 달걀이 ${eggsNum}개 있었다.)로, 아니면 빈 글자로 한다. 글자 앞의 \n\n은 줄바꿈 두 번(빈 줄)이고, ${ }는 글자 안에 변수의 값을 끼워 넣는 표기이다. when은 조건을 차례로 확인해 처음 맞는 값을 쓴다.
content:
"How many eggs do you want to see?${eggsRemoved}"
▶ 메모의 내용(content)은 "How many eggs do you want to see?${eggsRemoved}"(달걀을 몇 개 보고 싶은가? 뒤에 eggsRemoved의 값을 붙인 것)로 한다.
${ }는 글자 안에 변수의 값을 끼워 넣는 표기이다. content는 메모에 직접 적은 글을 덮어쓴다.
|