Bizley
8 years ago
committed by
GitHub
1 changed files with 27 additions and 0 deletions
@ -0,0 +1,27 @@
|
||||
Decyzje projektowe |
||||
================== |
||||
|
||||
Ten dokument zawiera listę decyzji projektowych, które podjęliśmy po długich debatach. O ile nie ma bardzo ważnych powodów ku temu, |
||||
aby działać inaczej, postanowienia te powinny być zawsze w mocy, dla zachowania spójności. Każda zmiana poniższych decyzji |
||||
powinna być najpierw zatwierdzona przez głównych deweloperów. |
||||
|
||||
1. **[Kiedy wspierać aliasy ścieżek dostępu](https://github.com/yiisoft/yii2/pull/3079#issuecomment-40312268)** |
||||
powinniśmy wspierać tworzenie aliasów ścieżej dla właściwości, które są konfigurowalne, ponieważ używanie aliasów ścieżek |
||||
w konfiguracjach jest bardzo wygodne. W pozostałych przypadkach powinniśmy ograniczyć wsparcie dla aliasów. |
||||
2. **Kiedy tłumaczyć komunikaty** |
||||
komunikaty powinny być tłumaczone, kiedy są prezentowane użytkownikowi końcowemu nie będącemu deweloperem i są wobec tego dla niego |
||||
zrozumiałe. Komunikaty statusów HTTP, wyjątki w kodzie itp. nie powinny być tłumaczone. Komunikaty konsoli prezentowane są zawsze |
||||
w języku angielskim z powodu potencjalnych problemów ze stroną kodową znaków. |
||||
3. **[Dodawanie wsparcia dla nowych klientów uwierzytelniających](https://github.com/yiisoft/yii2/issues/1652)** |
||||
W celu łatwiejszej utrzymalności kodu, nie będziemy dodawać żadnych dodatkowych klientów uwierzytelniających do bazowego rozszerzenia. |
||||
Dodatkowe klienty powinny być dodane w rozszerzeniach użytowników. |
||||
4. **Podczas używania domknięć** zalecane jest, aby **podać wszystkie przekazywane parametry** w sygnaturze funkcji, nawet jeśli |
||||
nie wszystkie z nich są wykorzystane. Dzięki temu modyfikowanie i kopiowanie kodu jest znacznie łatwiejsze, ponieważ wszystkie |
||||
informacje są bezpośrednio widoczne i nie ma konieczności sprawdzania w dokumentacji, które parametry są w ogóle dostępne. |
||||
([#6584](https://github.com/yiisoft/yii2/pull/6584), [#6875](https://github.com/yiisoft/yii2/issues/6875)) |
||||
5. Preferowane jest używanie typu **int zamiast unsigned int** w schematach baz danych. Użycie int ma tę zaletę, że może być |
||||
prezentowany w PHP jako typ integer. |
||||
W przypadku unsigned i 32 bitowych systemów, musielibyśmy używać typu string do tej prezentacji. |
||||
Dodatkowo, pomimo tego, że unsigned int podwaja jego zakres, jeśli tabela wymaga tak dużych liczb, bezpieczniej jest używać typu |
||||
bigint lub mediumint, niż polegać na unsigned. |
||||
<https://github.com/yiisoft/yii/pull/1923#issuecomment-11881967> |
Loading…
Reference in new issue