Czy ktoś zdefiniował standard głośnego odczytu kodu dla dowolnego języka? Wyobrażam sobie, że jest to ważne dla oprogramowania takiego jak czytniki ekranu dla osób niedowidzących. Tego rodzaju rzeczy pojawiają się również, gdy dyskutujesz z kimś o kodzie, przeglądasz go w grupie lub prowadzisz zajęcia.
W rodzinie języków C jest wiele słów z „oczywistą” wymową. Niektóre z nich są po prostu angielskie słowa: for
, break
, case
, default
, itd. Niektóre skróty, jak int
są jednoznaczne. A potem jest char
.
Zawsze staram się to powiedzieć (i słyszeć w mojej głowie) jak pierwszą sylabę „węgla drzewnego”. To było dla mnie denerwujące, kiedy po raz pierwszy rozmawiałem o kodzie z kimś, kto wymawiał go jako „samochód”, co w rzeczywistości ma większy sens, ponieważ char
tak naprawdę jest skrótem słowa „znak”, więc wyraźnie powinno być wymawiane tak samo. Ale nawet wiedząc o tym, węgiel drzewny wydaje mi się bardziej odpowiedni.
A potem są takie zdania foo = bar ? *(++baz) : zardoz
.
Czy ktokolwiek opracował dokument dyktujący prawidłowy (ich zdaniem) sposób odczytywania kodu na głos? Albo dla konkretnego języka, a może kodu w ogóle?
źródło
:=
?Odpowiedzi:
Szybki kombinezon: przeczytaj ten wspaniały artykuł w Coding Horror
Ilekroć omawiam kod przez telefon, nigdy go nie czytam dosłownie. Musisz go „skompilować” z człowiekiem, a jeśli nadal jest zamieszanie na drugim końcu linii, możesz przejść do bardziej dosłownego czytania. Na przykład przeczytałbym twój przykład jako
Od połowy lat 90. jestem pełnoetatowym telepracownikiem, więc praktycznie wszystkie moje interakcje z kolegami odbywały się przez telefon lub w inny pośredni sposób. Bardzo często udostępniamy sesję screen (terminal) lub VNC (X). Oprócz zwykłej koleżeństwa spędzamy cały dzień na rozmowach o kodzie, projektowaniu, planowaniu itp.
Kiedy mówimy o kodzie, używamy żargonu, który jest ściśle powiązany z rodzajem projektu. Jednym z (wielu) powodów, dla których nowy członek grupy musi być w pełni funkcjonalny, jest to, że zasadniczo uczą się nowego języka za każdym razem, gdy dołączają do nowego działu / firmy.
Jak powiedziałem powyżej i jak powiedzieli inni, staramy się rozmawiać na tak wysokim poziomie, jaki jest odpowiedni dla każdej dyskusji. Ale czasami naprawdę musisz po prostu powiedzieć komuś: „Wpisz to”
Jak to powiedzieć? Cóż, moglibyśmy podać takie wyliczenie jak ...
Tak właśnie „my” wypowiadamy te postacie. Aby zapoznać się z całym zakresem powiedzenia „#”, zajrzyj na stronę wiki dla #
Więc jest za dużo zmienności. Musi być specyficzny dla języka, w którym się piszesz (tak jak piszę to po angielsku dla naszej ludzkiej komunikacji).
Bez kontekstu językowego musiałbyś ciągle powracać do pisowni znak po znaku. Więc większość ludzi, których znam, wraca do tego, co standard językowy nazywa.
Każdy z nich byłby sugerowany przez powiedzenie „Ustaw X na ...” w odpowiednim kontekście. Nawet nie zaczynaj od tego, który kod jest czytany jako „ciąg X jest równy ciągowi Y”.
Jeśli powiesz „hash bang bin bash” lub „shebang bash”, prawie wszyscy będą wiedzieć, że oznacza to „#! / Bin / bash”. Jeśli tego nie zrobią, powiedzą „hę?”, A ty zejdziesz na dół „Na górze pliku: znak funta, wykrzyknik, ukośnik, kosz, ukośnik, ukośnik, nowa linia”. Jeśli nadal go nie rozumieją, cofnij go jeszcze raz: „Widzisz tę klawiaturę przed sobą? Widzisz klawisz„ 3 ”? Ten znak na górze po naciśnięciu klawisza Shift jest znakiem funta”.
Dolna linia:
źródło
#
lub a!
. Nie mów nawet, dlaczego dyskutujesz o kodzie przez telefon. Skoro masz najwięcej głosów, czy mógłbyś jeszcze bardziej udzielić odpowiedzi?Nigdy nie spotkałem się z żadnymi standardami mówienia na głos. Natknąłem się na małe fragmenty, w których ktoś wyraził swoje osobiste preferencje, na przykład odnosząc się do „#! / Bin / sh” jako „Hash-bang slash bin slash SH” w przeciwieństwie do „funta wykrzyknika do przodu slash BIN do przodu slash SH „później może założyć, że słuchacz ma mniejszą znajomość konstrukcji.
Istnieje również duża rozbieżność w ilości, z jaką różne języki są czytelne na głos. Weźmy na przykład różnice między Pythonem, który wydaje się łatwiejszy do mówienia na głos, niż powiedz Perl, który wymaga albo wypowiedzenia dużej interpunkcji, albo przetłumaczenia z „$ var [20]” na „dwudziesty element tablicy var”.
Moje własne doświadczenie jest takie, że jest bardzo kontekstowe, w oparciu o powód, dla którego muszę czytać kod na głos, poziom wiedzy słuchacza i język, o którym mowa.
W przypadku recenzji kodu bardziej prawdopodobne jest, że wyjaśnię oświadczenie, niż próbuję odczytać je na głos, ponieważ zazwyczaj ważniejsze jest zrozumienie znaczenia lub przemyślenia procesu niż po prostu odczytanie surowego kodu słuchaczowi.
Kiedy próbuję nakłonić kogoś do wpisania dokładnego wiersza kodu C w edytorze (na przykład patrzę przez ramię młodszego programisty i widzę, jak naprawić wiersz jego kodu), często kończę wypowiadanie kodu w słowach kluczowych i symbolach, takich jak „jeśli spacja open-paren null podwójnie równa się p close-paren ...” Ta sama wymiana z bardziej zaawansowanym programistą może zacząć się bardziej jak „musisz sprawdzić, czy p jest tutaj null ... „
źródło
Mówienie o kodzie jest jednym z tych przypadków, kiedy pseudo-kod staje się niezwykle przydatny.
Jeśli ktoś zacznie dawać mi kod według postaci, po prostu powiem mu, że prześlę go e-mailem i dam znać, co myślę.
źródło
Krótka odpowiedź
Najbliższą standardową instrukcją wymowy wydaje się wpis „ASCII” w Słowniku hakerów ( zwanym także plikiem Jargon ). Zawiera tabelę pochodzącą z „wersji 2.3 Przewodnika po wymowach Usenet ASCII”, której nie można już łatwo znaleźć w Internecie. W maju-czerwcu 1991 r. Znajduje się odpowiedni wątek dyskusyjny „ Nazwij tę postać! ”
comp.misc
, W którym Maarten Litmath zachował oryginalny dokument. Wątek zauważa, że „mądrzejsze” nazwy, takie jak „Kaczor Donald” dla „&”, zostały pominięte w nowym dokumencie.źródło