tgoop.com/HowProgrammingWorks/1866
Last Update:
π ΠΠΌΠ΅ΡΡΠ΅ ΡΡΠΈ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΡΠΎΡΠΌΠΈΡΡΡΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ Π΄Π»Ρ local-first ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ:
1οΈβ£ PWA (Progressive Web App)
ΠΠ΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌ ΠΎΠΏΡΡΠΎΠΌ, Π±Π»ΠΈΠ·ΠΊΠΈΠΌ ΠΊ Π½Π°ΡΠΈΠ²Π½ΠΎΠΌΡ: ΠΎΡΠ»Π°ΠΉΠ½-ΡΠ΅ΠΆΠΈΠΌ, ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ°, Π±ΡΡΡΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ. Π Π΅ΡΠ°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΏΠ»ΠΎΡ
ΠΎΠΉ ΡΠ²ΡΠ·ΠΈ ΠΈ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΉ ΡΠ΅ΡΠΈ, ΡΠΎΡΠ΅ΡΠ°Ρ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° Π²Π΅Π±Π° ΠΈ Π½Π°ΡΠΈΠ²Π½ΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
2οΈβ£ CRDT (Conflict-Free Replicated Data Types)
Π‘ΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ
Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² Π² ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ
ΡΠΈΡΡΠ΅ΠΌΠ°Ρ
. Π Π΅ΡΠ°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ, ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ ΡΠ°Π±ΠΎΡΡ ΠΎΡΠ»Π°ΠΉΠ½-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π±Π΅Π· ΠΏΠΎΡΠ΅ΡΠΈ ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² Π΄Π°Π½Π½ΡΡ
.
3οΈβ£ CAS Containers (Compare-And-Swap)
ΠΡΠΎΠΌΠ°ΡΠ½ΡΠΉ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Ρ
ΡΠ°Π½ΠΈΡ Π·Π°ΠΏΠΈΡΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
Ρ Π·Π°ΡΠΈΡΠΎΠΉ ΡΠ΅ΡΠ΅Π· Ρ
Π΅ΡΠΈ ΠΈΠ»ΠΈ Π²Π΅ΡΡΠΈΠΈ. Π Π΅ΡΠ°Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ race conditions, ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΊΠΎΠ½ΡΠΈΡΡΠ΅Π½ΡΠ½ΠΎΡΡΡ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΡΡΠΈΡΠ½ΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΠΌ Π΄ΠΎΡΡΡΠΏΠΎΠΌ Π² ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ
ΠΠ.
4οΈβ£ IndexedDB (browser built-in database)
ΠΡΡΡΠΎΠ΅Π½Π½Π°Ρ Π² Π±ΡΠ°ΡΠ·Π΅Ρ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ
Ρ API Π΄Π»Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ Ρ
ΡΠ°Π½Π΅Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
Π΄Π°Π½Π½ΡΡ
Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°. Π Π΅ΡΠ°Π΅Ρ Π·Π°Π΄Π°ΡΠΈ ΠΎΡΠ»Π°ΠΉΠ½-Ρ
ΡΠ°Π½Π΅Π½ΠΈΡ, Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ
Π·Π°ΠΏΡΠΎΡΠΎΠ², ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ b-tree ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
5οΈβ£ OPFS (Origin Private File System)
ΠΠ°ΡΠΈΡΡΠ½Π½Π°Ρ Π²ΡΡΠΎΠΊΠΎΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΡΠ°ΠΉΠ»ΠΎΠ²Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ°, Π΄ΠΎΡΡΡΠΏΠ½Π°Ρ ΡΠΎΠ»ΡΠΊΠΎ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌ Π² ΡΠ°ΠΌΠΊΠ°Ρ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ origin (ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ°). Π Π΅ΡΠ°Π΅Ρ Π·Π°Π΄Π°ΡΠΈ Ρ
ΡΠ°Π½Π΅Π½ΠΈΡ ΠΊΡΡΠΏΠ½ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ Π²ΡΡΠΎΠΊΠΎΡΠΊΠΎΡΠΎΡΡΠ½ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π² Π²Π΅Π±Π΅.
6οΈβ£ Blockchain (Π±Π΅Π· ΠΌΠ°ΠΉΠ½ΠΈΠ½Π³Π°)
Π Π°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΉ Π·Π°ΡΠΈΡΡΠ½Π½ΡΠΉ ΠΆΡΡΠ½Π°Π» Π·Π°ΠΏΠΈΡΠ΅ΠΉ Π΄Π»Ρ Π΄Π΅ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
Ρ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΠΉ ΠΈΡΡΠΎΡΠΈΠ΅ΠΉ. Π Π΅ΡΠ°Π΅Ρ Π·Π°Π΄Π°ΡΠΈ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ ΠΈ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ
, ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΠΈ ΠΈ Π΄ΠΎΠ²Π΅ΡΠΈΡ.
7οΈβ£ JavaScript Smart Contracts
ΠΠΈΠ·Π½Π΅Ρ-Π»ΠΎΠ³ΠΈΠΊΠ°, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠ°Ρ Π½Π° ΡΠ·ΡΠΊΠ΅ JavaScript Π² Π΄Π΅ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ
ΡΡΠ΅Π΄Π°Ρ
. Π Π΅ΡΠ°Π΅Ρ Π·Π°Π΄Π°ΡΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΠΈ Π΄ΠΎΠ²Π΅ΡΠΈΡ ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½ΡΡ
, Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΡ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΡΠ½Π½ΠΎΡΡΠ΅ΠΉ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π°.
8οΈβ£ WebSocket
ΠΡΠΎΡΠΎΠΊΠΎΠ» Π΄Π»Ρ Π΄Π²ΡΠ½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½ΡΠΌΠΈ Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΠ΅ΡΠ΅Π· ΠΎΠ΄Π½ΠΎ TCP-ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅. Π Π΅ΡΠ°Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π·Π°Π΄Π΅ΡΠΆΠ΅ΠΊ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π±Π»ΠΈΠ·ΠΊΠΈΠ΅ ΠΊ ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
9οΈβ£ WebRTC (Web Real-Time Communication)
ΠΡΠΎΡΠΎΠΊΠΎΠ» Π΄Π»Ρ ΠΏΠΎΡΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΌΡΠ»ΡΡΠΈΠΌΠ΅Π΄ΠΈΠ° ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½ΡΠΌΠΈ Π½Π°ΠΏΡΡΠΌΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ. Π Π΅ΡΠ°Π΅Ρ Π·Π°Π΄Π°ΡΠΈ ΠΏΡΡΠΌΠΎΠ³ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, Π½ΠΈΠ·ΠΊΠΈΡ
Π·Π°Π΄Π΅ΡΠΆΠ΅ΠΊ ΠΈ Π΄Π΅ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π±Π΅Π· ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ
ΡΠ΅ΡΠ²Π΅ΡΠΎΠ².
π Metaschema
ΠΠ΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠ²Π½ΡΠΉ ΡΠ·ΡΠΊ ΡΡ
Π΅ΠΌ Π΄Π»Ρ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΠΈ ΠΈ ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ
. Π Π΅ΡΠ°Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π½Π΅ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΡ Π΄Π°Π½Π½ΡΡ
, ΡΠ²ΠΎΠ»ΡΡΠΈΠΈ ΠΈ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ ΡΡ
Π΅ΠΌ, ΡΠΏΡΠΎΡΠ°Π΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ
ΠΈ ΡΠ°Π±ΠΎΡΡ ΡΠΎ ΡΠ»ΠΎΠΆΠ½ΡΠΌΠΈ ΡΡΡΡΠΊΡΡΡΠ°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ
.
BY HowProgrammingWorks - JavaScript and Node.js Programming

Share with your friend now:
tgoop.com/HowProgrammingWorks/1866