Hadí případ - Snake case
tento článek příliš spoléhá na Reference na primární zdroje.Srpna 2015) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
Hadí případ (stylizované jako snake_case) odkazuje na styl psaní, ve kterém je každý prostor nahrazen znakem podtržítko Znak (_) a první písmeno každého slova napsané malými písmeny. Jedná se o běžně používanou konvenci pojmenování v výpočetní, například pro proměnná a podprogram jména a pro názvy souborů. Jedna studie zjistila, že čtenáři dokážou rozpoznat hodnoty případů hada rychleji než velbloudí pouzdro.[1]
Dějiny
Použití podtržítka jako oddělovače slov sahá až do konce šedesátých let. To je zvláště spojeno s C, byl nalezen v Programovací jazyk C. (1978), a v kontrastu s pascal případ (typ velbloudí pouzdro ). Konvence však tradičně neměla žádný konkrétní název: Python (programovací jazyk) průvodce stylem jej označuje jednoduše jako „lower_case_with_underscores“.[2]
V rámci Usenet termín snake_case byl poprvé viděn v Rubín komunita v roce 2004[3], použitý Gavinem Kistnerem, psaní:
„BTW ... jak * říkáš tomu stylu pojmenování? Snake_case? Tak tomu budu říkat, dokud mě někdo neopraví.“
Bývalý inženýr společnosti Intel Jack Dahlgren však uvedl, že tento výraz používal interně ve společnosti Intel (a možná v dialogu s Microsoft v roce 2002.[4] Je možné, že se tento pojem vyvinul samostatně ve více než jedné komunitě.
Od roku 2015[Aktualizace], názvy jiných oddělovačů konvence pojmenování pro víceslovné identifikátory nebyly standardizovány, i když některé termíny mají rostoucí úroveň využití, například lisp-case, kebab-case, SCREAMING_SNAKE_CASE a další.[5][6][7]
Příklady
Seznam programovacích jazyků, které běžně používají hadí případ
- ABAP[8]
- C ++, Zvýšit[9]
- C, pro některé názvy typů ve standardní knihovně, ale ne pro názvy funkcí.
- Eiffelova, pro názvy tříd a funkcí[10]
- Elixír, pro názvy atomů, proměnných a funkcí[11]
- Erlang, pro názvy funkcí[12]
- GDScript, pro názvy proměnných a funkcí[13]
- Jáva, pro statické konečné konstanty a hodnoty výčtu.
- OCaml, pro hodnoty, typy a názvy modulů[14]
- Perl, pro lexikální proměnné a podprogramy[15]
- Prolog, pro atomy (názvy predikátů, názvy funkcí a konstanty) i proměnné[16]
- Krajta, pro názvy proměnných, názvy funkcí, názvy metod a názvy modulů nebo balíků (tj. souborů)[2]
- PHP použijte SCREAMING_SNAKE_CASE pro konstanty třídy
- R, pro názvy proměnných, názvy funkcí, názvy argumentů, zejména ve stylu tidyverse[17]
- Rubín, pro názvy proměnných a metod[18]
- Rez, pro názvy proměnných, názvy funkcí, názvy metod, názvy modulů a makra[19]
- Tcl
Viz také
- Velbloudí pouzdro, častější v Javě
- Kebab případ, častější v LISP
- Konvence pojmenování (programování)
Reference
- ^ Sharif, Bonita; Maletic, Jonathan I. (2010). "Studie sledování očí na stylech identifikátorů camelCase a under_score". 18. IEEE 18. mezinárodní konference o porozumění programu (PDF). str. 196–205. CiteSeerX 10.1.1.421.6137. doi:10.1109 / ICPC.2010.41. ISBN 978-1-4244-7604-6.
- ^ A b Guido van Rossum, Barry Varšava, Nick Coghlan (05.07.2001). „PEP 0008 - Průvodce stylem pro Pythonův kód“.CS1 maint: používá parametr autoři (odkaz)
- ^ Gavin Kistner (23.02.2004). "Vhodné použití camelCase". Diskusní skupina: comp.lang.ruby. Usenet: HBn_b.379957$xy6.2073499@attbi_s02. Citováno 2015-08-13.
- ^ "Quora". 2013-05-10.
- ^ „StackOverflow - Jak se jmenuje snake_case s pomlčkami?“.
- ^ „Programátoři - pokud je to camelCase, co to je?“.
- ^ „Camel_SNAKE-kebab“. 23. dubna 2020.
- ^ "Pojmenování konvencí v objektech ABAP". help.sap.com. Citováno 2020-07-28.
- ^ „Zvyšte požadavky a pokyny pro knihovnu“. Citováno 2015-08-13.
- ^ "Eiffelova třída a názvy funkcí". 28. prosince 2019.
- ^ „Průvodce stylem elixíru“. Květen 2020.
- ^ „Programovací pravidla“. Citováno 2017-08-11.
- ^ „Průvodce stylem GDScript“.
- ^ „Xen wiki“. Citováno 2017-03-15.
- ^ Damian Conway (2005). Osvědčené postupy Perlu. O'Reilly Media Inc. str.44. ISBN 978-0596001735.
- ^ Michael A. Covington; Roberto Bagnara; Richard A. O'Keefe; Jan Wielemaker; Simon Price (2009). "Pokyny pro kódování pro Prolog (v.3)". p. 14. arXiv:0911.2899 [cs.PL ].
- ^ Wickham, Hadley. Průvodce úhledným stylem.
- ^ „Konvence pojmenování rubínů“. Květen 2020.
- ^ „Naming - Rust API Guidelines“.