Pravidlo nejmenší moci - Rule of least power
v programování, pravidlo nejmenší moci je princip návrhu, který „navrhuje zvolit nejméně výkonný [počítačový] jazyk vhodný pro daný účel“.[1] Uvedeno alternativně, vzhledem k výběru mezi počítačové jazyky, jejichž třídy se pohybují od popisný (nebo deklarativní) až procesní čím méně procedurální, tím popisnější jazyk si zvolíte, tím více lze s daty uloženými v tomto jazyce dělat.
Toto pravidlo je aplikací zásada nejmenších privilegií k návrhu protokolu.[2]
Odůvodnění
Původně navrženo jako axiom dobrého designu, termín je rozšířením Princip KISS aplikován na výběr z řady jazyků od
- ty jasně popisné (například obsah většiny databáze nebo HTML ),
- logické jazyky omezené výroková logika (jako seznamy řízení přístupu ),
- deklarativní jazyky na pokraji bytí Turing-kompletní,
- ty, které jsou ve skutečnosti Turing-úplné, i když je člověk veden k tomu, aby je tak nepoužíval (XSLT, SQL ),
- ty, které jsou funkční a Turing-kompletní univerzální programovací jazyky, do
- ty, které jsou „nestydatě rozkazovací způsob ".[1]
Jak vysvětlil Tim Berners-Lee:[3]
Počítačová věda v šedesátých až osmdesátých letech strávila spoustu úsilí vytvářením co nejsilnějších jazyků. V dnešní době musíme ocenit důvody, proč jsme si vybrali ne nejvýkonnější řešení, ale nejméně výkonné. Důvodem je to, že čím méně výkonný jazyk, tím více můžete s daty uloženými v tomto jazyce dělat. Pokud jej napíšete v jednoduché deklarativní formě, může kdokoli napsat program, který jej bude analyzovat mnoha způsoby. The Sémantický web je pokus do značné míry o mapování velkého množství existujících dat do společného jazyka, takže data mohou být analyzována způsoby, o kterých se jeho tvůrcům nikdy nesnilo. Pokud má například webová stránka s údaji o počasí RDF při popisu těchto dat je uživatel může načíst jako tabulku, snad ji průměrovat, vykreslit, odvodit z ní věci v kombinaci s dalšími informacemi. Na druhém konci stupnice jsou informace o počasí vylíčené mazaným appletem Java. I když to může umožnit velmi cool uživatelské rozhraní, nelze jej vůbec analyzovat. Vyhledávač, který najde stránku, nebude mít žádnou představu o tom, o jaké údaje jde, nebo o co jde. Jediným způsobem, jak zjistit, co Java applet znamená, je nastavit jej před osobou.
Reference
- ^ A b W3C. „Pravidlo nejméně síly“. Citováno 2016-02-24.
- ^ Meredith L. Patterson (2011-12-28). Věda nejistoty. 28. Chaos komunikační kongres.
- ^ Berners-Lee, Tim. "Axiomy webové architektury". Citováno 2002-01-14.
- Pravidlo nejméně síly, W3C, TAG Finding 23. února 2006
- B. Carpenter, redaktor: „Architectural Principles of the Internet“, rada internetové architektury, červen 1996, RFC 1958