Skip to content

Standardy

Požadavky, kterými musí projít každá změna a kterým musí dostát každý software, a co se stane, když je něco nesplní.

Jeden standard pro celou organizaci

Pravidla jsou jedna sdílená předvolba, @trebired/configs, a @trebired/code-discipline ji vynucuje v každé kódové základně Trebired, ať je napsaná v čemkoli: TypeScript, JavaScript, Rust, Go, C++, C#, Python, QML, shell, SCSS i CSS. Repozitář přidává jen to, co je jeho vlastní.

Porušte pravidlo a aplikace neběží

Každá aplikace běží za bránou code-discipline. Než se cokoli spustí, zkontroluje celý repozitář, takže stačí jediné porušené pravidlo a aplikace neběží.

  • 0

    Žádné porušení

    Aplikace se spustí.

  • 1

    Jedno porušení

    Nespustí se nic, ani na vašem vlastním stroji, dokud se to neopraví.

Každý soubor má jméno, které nikdo nevybral

@trebired/code-discipline dá každému zdrojovému souboru náhodný alias a celou mapu drží v synchronizaci. Import, který šplhá ze složky přes ../, se přepíše na ten alias, takže kód ukazuje na soubor, ne na cestu k němu. Alias je náhodný schválně: neříká nic o tom, kde soubor leží.

Místo

../../components/chrome/hero/tones

Každý import zní

#0s6jb8phbwma
#0s6jb8phbwma
  • Jedna mapa, v repozitáři

    Každý alias leží v .trebired/code-discipline/imports vedle kódu. Pohled kompilátoru se z ní generuje a do repozitáře nepatří.

  • ./ zůstává, jak je

    Import, který začíná ./, zůstane, jak je. Přepíše se jen ten, který šplhá ven přes ../.

  • Mrtvé importy pryč

    Importovaný název, který v souboru nic nepoužívá, se při opravě repozitáře odstraní.

Čísla v měřítku

Limity, které nastavuje předvolba a tento standard, každý nakreslený ve skutečné velikosti.

  • 350

    řádků v souboru nanejvýš. Delší soubor se rozdělí, než se projekt znovu spustí.

  • 50

    řádků ve funkci nanejvýš. Delší funkce dělá dvě věci a stanou se z ní dvě funkce.

  • 500 MB

    paměti na aplikaci nanejvýš, cílem je 200 MB. Nad stropem se nic nevydá a opravuje se příčina, nikdy strop.

  • 150

    znaků na řádku. Formátovač zalomí, co jde zalomit bezpečně, a zbytek se hlásí, dokud ho někdo nepřepíše.

  • 120

    znaků je hranice, od které začíná pravidlo DRY. Porovná každou funkci ve zdrojovém stromu bez názvů, mezer a komentářů, takže dvě funkce, které dělají totéž, jsou jedna skupina duplicit i po přejmenování a jedna z nich musí pryč.

  • 72

    znaků v předmětu commitu, v rozkazovacím způsobu, o chování a nikdy o souborech, které se pohnuly.