# Stilul de cod Total.js: nume, fișiere, CSS, SQL și componente

> Convențiile comunității Total.js pentru JavaScript, nume, scheme, require(), CSS, pluginuri și componente jComponent, scripturi SQL și foldere, pentru ca toate proiectele să se citească la fel, iar o echipă sau un asistent AI să le poată continua.

Framework: total5
Product: Total.js 5 (total5@0.0.19)
Language: ro
Content-SHA256: 058c94725fa3ed122dd129ce27df51b18cb2604c9b6cbf1b24d6d798ab6eb5e8
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: total5-installed@total5@0.0.19
Review: not-recorded

Proiectele Total.js împart un stil, iar asta este o forță: deschizi oricare și știi unde sunt lucrurile și cum sunt scrise. Această pagină adună într-un singur loc convențiile din [Total.js guidelines](https://github.com/totaljs-es/guidelines) (revizia consultată este înregistrată în [ai-sources.json](/ai-sources.json)). Urmează mai întâi stilul proiectului în care lucrezi; acestea sunt regulile implicite pentru cod nou. Pentru partea de framework, citește [convențiile Total.js 5 pentru asistenții de cod](/en/docs/totaljs-agent-conventions/).

## JavaScript

- **Fișiere:** nume cu litere mici, cu cratime în loc de liniuțe de subliniere (`user-profile.js`).
- **Format:** tab-uri (lățime 4), fără spații în plus și punct și virgulă la sfârșitul fiecărei instrucțiuni.
- **Șiruri:** ghilimele simple pentru șirurile scurte.
- **Variabile:** folosește `var` sau `let` în metode și păstrează `const` pentru începutul unui modul.
- **Bucle:** unde se potrivește, se preferă un `for` clasic în locul lui `forEach()`.
- **Dependențe:** păstrează-le la minimum și urmează codul care există deja.

## Nume care călătoresc între proiecte

Folosește peste tot același nume pentru același lucru, astfel încât codul să poată fi mutat între proiecte și citit dintr-o privire:

| Nume | Utilizare |
|---|---|
| `id`, `name`, `value`, `email` | identificatorul, numele, valoarea și e-mailul obișnuite |
| `items` or `arr`, `item` | o listă și unul dintre elementele ei |
| `tmp` | o valoare temporară |
| `dtcreated`, `dtupdated` | date de creare și de actualizare |

**Schemele** au un nume la plural care începe cu literă mare (`Contacts`), iar identificatorii se creează cu `UID()`.

## Folosirea require()

La începutul unui modul folosește `const` și începe numele variabilei cu literă mare: `const Fs = require('fs');`.

## CSS

- Nume de fișiere cu litere mici și cratime.
- Scrie fiecare regulă de stil pe o singură linie.
- Nu scrie prefixele browserelor de mână: adaugă comentariul `/*auto*/` și Total.js pune prefixele pentru tine.
- Ghilimele simple și CSS simplu în loc de LESS sau SASS.

## Pluginuri și componente (jComponent)

- Litere mici pentru numele pluginurilor, componentelor și intrărilor din `FUNC.`, `MAIN.` și `REPO.`, precum și pentru variabile.
- Evită liniuțele de subliniere unde poți și păstrează imbricarea la două sau trei niveluri.
- Un plugin se scrie cu `exports.`; o componentă folosește `self`, `config` și `cls`.
- Proiectează pentru reutilizare.

## Scripturi SQL

- Nume de tabele și câmpuri cu litere mici, tab-uri pentru indentare și punct și virgulă la sfârșitul fiecărei instrucțiuni.
- Elimină conversiile de tip inutile, formatează scriptul și păstrează tabelele, vizualizările, procedurile sau funcțiile și indecșii în scripturi separate.

| Prefix | Pentru |
|---|---|
| `tbl_` | tabele, cu numele la singular |
| `cl_` | liste de coduri |
| `view_` | vizualizări |
| `sp_` | proceduri stocate |
| `fn_` | funcții |

În câmpuri, `dt` începe o dată, `is` începe o valoare booleană, cheile urmează tiparul `id` sau `userid`, iar în loc de `varchar` se folosește `text`. Folosește `id`, `name` și `dtcreated` unde se potrivesc și ordonează coloanele ca identificatori, câmpuri principale, numere, valori booleene și date, cu restricțiile de cheie străină la sfârșit.

## Foldere

Pune imaginile în `/img/`, scripturile în `/js/`, stilurile în `/css/`, fonturile în `/fonts/` și videoclipurile în `/videos/`, și numește fișierele cu cratime.

## De ce ajută

Un stil comun face un proiect ușor de predat, de revizuit și de extins și oferă unui asistent AI un tipar clar de urmat. Dă-i asistentului tău această pagină împreună cu [convențiile Total.js 5 pentru asistenții de cod](/en/docs/totaljs-agent-conventions/) și codul lui se va potrivi cu restul aplicației tale.
