추상 위키백과/업데이트/2024-01-17

This page is a translated version of the page Abstract Wikipedia/Updates/2024-01-17 and the translation is 100% complete.
추상 위키백과 업데이트 Translate

메일링 리스트를 통한 추상 위키백과 IRC의 추상 위키백과 텔레그램의 위키함수 마스토돈의 위키함수 트위터의 위키함수 페이스북의 위키함수 유튜브의 위키함수 위키함수 웹사이트 Translate

함수 페이지 새로고침

 
이전 함수 페이지의 "정보" 탭

이번 주에는 함수 페이지의 재설계 및 재작성이 프로덕션에 배포되었음을 발표하게 되어 기쁘게 생각합니다.

함수 페이지는 "정보"와 "세부 정보"라는 두 개의 탭으로 구분되어 있다는 점에서 항상 다른 페이지와 약간 달랐습니다.

 
이전 함수 페이지의 "세부 정보" 탭

정보 페이지에는 이름과 설명을 포함하여 함수에 대한 개요가 포함되어 있습니다. 실제로 함수를 실행할 수 있는 위젯도 제공했습니다. 세부 정보 페이지에는 공식 함수 정의, 입력 및 출력 유형, 구현 및 테스트 목록이 표시되었습니다.

이 페이지에 대한 피드백은 몇 가지 문제를 지적하고 있었습니다. 정보 페이지는 (의도적으로) 정보가 부족했고, "페이지"와 "토론" 아래 탭의 두 번째 줄은 약간 혼란스러웠으며, " 세부정보' 탭을 참조하세요.

 
새로운 함수 페이지

우리의 UX 리더인 아민은 과거 연구를 검토하고 커뮤니티로부터 의견을 수집하여 전체 경험을 재설계했습니다. 그는 앞 페이지의 설명과 이름을 뒷 페이지의 유형 정보 및 인수 이름과 함께 새로운 상자인 정보 위젯에 결합했습니다. 함수를 시험해 볼 수 있는 위젯은 페이지 상단의 눈에 띄는 위치에 남아 있으며, 구현 및 테스트 테이블도 새로 고쳐져 새로운 구현 및 테스트 생성을 위한 "+"가 통합되어 있습니다. 이러한 변경 사항은 이제 함수 페이지가 다른 페이지와 더 일관성이 있고 기술적인 "백엔드" 세부 정보가 더 눈에 띌 수 있음을 의미합니다. 우리는 이것이 사용자를 압도하거나 상황이 너무 기술적이거나 환영받지 못한다고 느끼게 하지 않기를 바랍니다.

우리는 새로운 함수 페이지에 대한 여러분의 피드백을 기대하고 있으며, 함수 페이지를 디자인하고, 피드백을 수집하고, 개발하고, 테스트하는 데 열심히 노력해주신 모든 분들께 감사의 말씀을 전하고 싶습니다.

금주의 함수: ROT13

금주의 함수는 ROT13입니다. "13자리 회전"의 약어인 ROT13은 메시지를 암호화하는 간단한 방법인 카이사르 암호의 가장 잘 알려진 변형입니다. 모든 문자는 영어 알파벳에서 13번째 문자로 대체됩니다(알파벳이 링인 경우). 따라서 첫 번째 문자 A는 N으로, B는 O로, C는 P로 대체됩니다. 숫자 13의 특별한 점은 영어 알파벳이 26개의 문자로 구성되어 있으며 13은 정확히 그 절반에 해당한다는 것입니다. 문자 N은 차례로 A로, O는 B로, P는 C로 대체됩니다. 이는 이전에 말한 것과 정확히 반대입니다.

즉, ROT13을 문자열에 두 번 적용하면 26자 앞으로 이동합니다. 즉, 모든 문자가 다시 그 자체가 됩니다! ABC는 NOP가 되고, ROT13을 NOP에 적용하면 다시 ABC가 됩니다. 이렇게 ROT13은 암호화 기능뿐만 아니라 복호화 기능까지! 동일한 함수를 사용하여 메시지를 암호화하고 해독할 수 있는데 이는 다소 특이한 현상입니다.

ROT13은 제가 위키미디어 작업 외에 가장 많이 사용해 온 기능이었습니다. 예를 들어 토론에 스포일러를 넣으면 ROT13을 사용하여 이를 암호화한 다음 ROT13에 대한 위키함수 페이지로 연결됩니다. 대부분의 사람들은 머릿속으로 ROT13을 수행할 수 없기 때문에 모든 사람이 쉽게 스포일러를 건너뛸 수 있습니다.

Vg vf abg ernyyl zrnag nf n erny rapelcgvba gurfr qnlf, orvat sne gbb boivbhf naq rnfl gb qrpelcg.

ROT13은 영어 알파벳에 크게 의존합니다. 구현 시 영어 알파벳이 아닌 모든 문자는 수정되지 않은 상태로 유지됩니다. 다른 알파벳에서도 작동하는 몇 가지 변형된 암호를 사용할 수 있다면 좋을 것입니다. 어린이용 키릴 문자를 사용하는 언어로 된 어린이용 책에는 키릴 문자로 작동하는 표가 포함되어 있으며 아마도 다른 문자에서도 마찬가지일 것입니다. 그 중 몇 가지가 더 구현되는 것을 보는 것은 흥미로울 것입니다.

글을 쓰는 시점에서 함수에는 단 하나의 테스트만 있는데, 이는 실제로 그다지 좋지 않습니다. 테스트가 두 개 이상 있으면 다양한 구현이 작동하고 동일한 결과를 얻을 수 있으며, 빈 문자열이나 수정되지 않은 아랍어 입력 전달 등과 같은 다양한 사례를 적절하게 처리할 수 있다는 확신이 커집니다.

구성은 문자를 1씩 회전시키는 ROT1 함수에 의존합니다. ROT1은 A를 B로, B를 C로, C를 D로 바꾸는 등의 작업을 수행합니다. 공상 과학 소설에서 가장 유명한 컴퓨터 중 하나인 HAL의 이름에 ROT1을 적용하면 그 이름에 대한 영감을 얻을 수 있습니다. ROT1을 두 번 실행하면 사실상 ROT2를 얻게 됩니다. 그리고 13번 실행하면 ROT13이 나옵니다. 따라서 ROT13의 구성은 ROT1에 대한 13개의 호출을 사용합니다.

인수 유형으로 숫자와 함수를 도입하면 특정 입력에 대해 지정된 함수를 지정된 횟수만큼 호출하는 "반복" 함수가 생성되는 것을 볼 수 있습니다. 그러면 좀 더 읽기 쉬운 멋진 대체 구성을 작성하는 것이 가능해집니다.

텍스트의 모든 예제는 위키에서 실행할 수 있으며, 연결된 함수 페이지에서 다른 예제를 탐색할 수 있습니다.

소프트웨어의 최근 변경 사항

이번 주 사용자가 직면한 가장 큰 변화는 물론 위에서 설명한 함수 페이지의 새로운 디자인입니다(T339954). 그 외에도 프런트엔드 사용자 경험(T353544)에 사용자 제어 디버그 로그를 표시하기 위한 지원을 추가하고, 프런트엔드 코드 아키텍처에 대한 광범위한 개요를 작성했으며, 코드에 대한 여러 가지 정리 수정 사항을 적용했습니다.