다시 도전!
정답률 40%
문제별 결과
PHP에서 global 키워드로 전역 변수에 접근할 수 있다.
function f() { global $x; } 또는 $GLOBALS["x"]로 전역 변수에 접근 가능합니다.
PHP에서 final 키워드를 사용한 메서드는 자식 클래스에서 오버라이드할 수 없다.
final method는 하위 클래스에서 재정의할 수 없습니다. final class는 상속 자체가 불가능합니다.
Python에서 dataclass 데코레이터는 Python 3.7에서 도입되었다.
@dataclass로 __init__, __repr__, __eq__ 등을 자동 생성합니다.
Python에서 lambda 함수는 여러 줄의 코드를 포함할 수 있다.
lambda는 단일 표현식만 가능합니다. 여러 줄이 필요하면 def로 함수를 정의해야 합니다.
PHP에서 Reflection API로 클래스의 구조를 런타임에 분석할 수 있다.
ReflectionClass, ReflectionMethod 등으로 클래스의 메서드, 프로퍼티, 인자 등을 런타임에 분석합니다.
JavaScript에서 Promise.all()은 하나라도 실패하면 나머지를 취소한다.
Promise.all()은 하나가 실패하면 reject되지만, 이미 실행 중인 다른 Promise는 취소되지 않고 계속 실행됩니다.
PHP에서 리소스(resource) 타입은 PHP 8에서 완전히 제거되었다.
PHP 8에서 일부 리소스가 객체로 변환되었지만(예: GD), 모든 리소스가 제거되지는 않았습니다.
PHP 8.0에서 constructor promotion은 추상 클래스에서도 사용할 수 있다.
추상 클래스의 생성자에서도 public string $name 같은 프로모션 구문을 사용할 수 있습니다.
PHP에서 strlen()은 한글 문자 "가"에 대해 1을 반환한다.
strlen()은 바이트 수를 반환합니다. UTF-8에서 한글은 3바이트이므로 strlen("가")은 3을 반환합니다.
PHP에서 empty("0")는 true를 반환한다.
PHP에서 문자열 "0"은 empty()에 의해 true로 평가됩니다. 이는 PHP의 특이한 동작 중 하나입니다.