ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅! Π‘ΡΡΠ»ΠΊΠΈ Π½Π° Π²ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠ΅ΠΌΠ΅ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½Ρ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ.
ΠΠ³Π»Π°Π²Π»Π΅Π½ΠΈΠ΅:
- ΠΠ°Π·ΠΎΠ²ΡΠ΅ ΠΏΠΎΠ½ΡΡΠΈΡ
- ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΠΎΠ½ΡΡΠΈΡ
- ΠΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ
- Π‘ΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ
- Π Π°ΡΡΠΈΡΠ΅Π½Π½ΡΠ΅ ΠΏΠΎΠ½ΡΡΠΈΡ
- ΠΡΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠ΄Π° ΠΈ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ
- ΠΠ°ΡΠ°Π΄ΠΈΠ³ΠΌΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ
- ΠΠ±ΡΡΡΠ°ΠΊΡΠΈΡ / Abstraction ΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅
- ΠΎΠ±ΠΎΠ±ΡΠ΅Π½Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ, ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠ΅Π΅ Π΄Π»Ρ ΡΠΈΡΠΎΠΊΠΎΠ³ΠΎ ΠΊΡΡΠ³Π° Π·Π°Π΄Π°Ρ
- ΠΌΠΎΠ΄Π΅Π»Ρ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° (ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²), ΡΠ²Π»ΡΡΡΠ°ΡΡΡ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΊ ΡΠ΅Π°Π»ΡΠ½ΠΎΡΡΠΈ, ΠΎΠ±ΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ
- ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ²ΠΎΠΉΡΡΠ² ΠΎΠ±ΡΠ΅ΠΊΡΠ°, ΠΎΡΠ½ΠΎΡΡΡΠΈΠ΅ΡΡ ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ Π΅Π³ΠΎ Π°ΡΠΏΠ΅ΠΊΡΡ
- Π‘Π»ΠΎΠΈ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΠΉ / Abstraction Layer
- ΠΠ°ΡΠ°Π΄ΠΈΠ³ΠΌΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ / Programming Paradigm
- ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΊ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ Π½Π° ΠΠΠ, Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΠ·ΡΡΡΠΈΠΉΡΡ ΡΡΠΈΠ»Π΅ΠΌ, Π½Π°Π±ΠΎΡΠΎΠΌ ΠΏΡΠΈΠ΅ΠΌΠΎΠ², Π΄ΠΎΠΏΡΡΠ΅Π½ΠΈΠΉ ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ
- ΡΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΡΡΡ ΠΈΠ΄Π΅ΠΉ ΠΈ ΠΏΠΎΠ½ΡΡΠΈΠΉ, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΡ Π΄Π»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°
- ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ / Variable
- ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Π°Ρ ΠΎΠ±Π»Π°ΡΡΡ ΠΏΠ°ΠΌΡΡΠΈ, ΠΈΠΌΠ΅ΡΡΠ°Ρ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ , Π°Π΄ΡΠ΅Ρ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅
- ΠΈΠΌΡ (ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ), Ρ ΠΊΠΎΡΠΎΡΡΠΌ ΡΠ²ΡΠ·Π°Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ
- ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΌΠ΅Π½ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ (Π° Π΄Π»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΈ ΡΠΈΠΏ)
let cityName = 'Beijing';
- ΠΠΎΠ½ΡΡΠ°Π½ΡΠ° / Constant
- ΠΈΠΌΡ (ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ), Ρ ΠΊΠΎΡΠΎΡΡΠΌ ΡΠ²ΡΠ·Π°Π½ΠΎ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠΈΠΏ
const WATCH_TIMEOUT = 5000;
- Π’ΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ
/ Data Types
- ΡΠΈΠΏ - ΡΡΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π½Π° ΡΡΠΎΠΌ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅
[5, 'Kiev', true, { city: 'Beijing' }, a => ++a ].map(x => typeof x);
- ΠΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΠ΅ ΠΈΠ»ΠΈ ΡΠΊΠ°Π»ΡΡΠ½ΡΠ΅ ΡΠΈΠΏΡ / Scalar Types
- ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΠ΅ ΡΠΈΠΏΡ ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, Π° Π½Π΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ ΠΏΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ (ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ), Π° Π½Π΅ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅
- Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
Number, String, Boolean
- Π‘ΡΡΡΠΊΡΡΡΠ½ΡΠ΅ ΡΠΈΠΏΡ / Composed types
- ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠ½ΡΠ΅ ΡΠΈΠΏΡ ΠΈΠ»ΠΈ ΡΡΡΡΠΊΡΡΡΡ ΡΠΎΡΡΠΎΡΡ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠΊΠ°Π»ΡΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΎΠ±ΡΠ΅Π΄ΠΈΠ΅Π½Π½ΡΡ Π² ΠΎΠ΄Π½ΠΎ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎΠ± Π½Π°Π΄ ΡΡΠΈΠΌ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΡΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π½Π°Π±ΠΎΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ
- Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ: ΠΎΠ±ΡΠ΅ΠΊΡ, ΠΌΠ°ΡΡΠΈΠ², ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ, ΠΊΠΎΡΡΠ΅ΠΆ
- Π‘ΡΡΠ»ΠΎΡΠ½ΡΠ΅ ΡΠΈΠΏΡ / Reference
- ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ , ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅, Π° Π½Π΅ ΠΏΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ
- Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
Object, Function, Array
- ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠ΄Π° ΠΏΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌ ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌ
- ΠΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΠΌΡΠ΅ ΡΠΈΠΏΡ / Enumerated types
- Π€Π»Π°Π³ / Flag
- ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠ΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΡΠ΅Π³ΠΎ-Π»ΠΈΠ±ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈΠ·Π½Π°ΠΊ Π·Π°ΠΊΡΡΡΠΈΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ, ΠΏΡΠΈΠ·Π½Π°ΠΊ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠΈΡΠΊΠ° ΠΏΠΎ ΡΡΡΡΠΊΡΡΡΠ΅ Π΄Π°Π½Π½ΡΡ ΠΈ Ρ.Π΄.
let flagName = false;
- ΠΠ°ΡΡΠΈΠ² / Array
- ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ ΡΠ»Π»Π΅ΠΌΠ΅Π½ΡΠΎΠ², Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΊΠΎΡΠΎΡΡΠΌ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌ
const cities = ['Tehran', 'Yalta', 'Potsdam'];
- Π¦ΠΈΠΊΠ» / Loop
- ΠΌΠ½ΠΎΠ³ΠΎΠΊΡΠ°ΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ²
- Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ / Conditional statements
- ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ°Π·Π½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΈΠ»ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠ°Ρ ΡΠ°Π·Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ (ΡΠ΅ΡΠ½Π°ΡΠ½ΡΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ) Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ (Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠ΅Π³ΠΎ true ΠΈΠ»ΠΈ false)
- Π‘ΡΡΠΎΠΊΠ° / String
- ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² (Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ·ΡΠΊΠΎΠ² ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΡΠ΅ΡΠ΅Π· ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ ΠΌΠ°ΡΡΠΈΠ²Π°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ)
- ΠΠ±ΡΠ΅ΠΊΡ / Object
- ΡΡΡΡΠΊΡΡΡΠ° Π΄Π°Π½Π½ΡΡ , ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ ΡΡΠΈΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ
- ΠΎΠ±ΡΠ΅ΠΊΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΎΠ·Π΄Π°Π½ ΠΊΠ°ΠΊ Π»ΠΈΡΠ΅ΡΠ°Π»
{}
ΠΈΠ»ΠΈ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΊΠ»Π°ΡΡΠ° (ΠΏΡΠΎΡΠΎΡΠΈΠΏΠ°)new ClassName()
ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΏΡΠΎΡΠΎΡΠΈΠΏΠ°new PrototypeConstructor()
ΠΈΠ»ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ ΠΈΠ· ΡΠ°Π±ΡΠΈΠΊΠΈ const person = { name: 'Marcus', city: 'Roma', born: 121 };
const person = new Person('Marcus', 'Roma', 121);
- ΠΠ½ΡΡΠ°Π½ΡΠΈΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ / Instantiation
- ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° (ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ°) ΠΈΠ»ΠΈ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ Π΄Π»Ρ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ
const rect = new Rectangle(-50, -50, 100, 150);
const rect = { a: { x: -50, y: -50 }, b: { x: 100, y: 150 } };
const cities = new Array(1000);
const cities = ['Tehran', 'Kiev', 'Yalta', 'Beijing', 'Potsdam', 'London'];
- ΠΠ»Π°ΡΡ / Class
- ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½Π°Ρ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΡ, ΠΎΠ±ΠΎΠ±ΡΠ°ΡΡΠ°Ρ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΠ²ΠΎΠΈΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠ²
class Point { constructor(x, y) { this.x = x; this.y = y; } }
- ΠΡΠΎΡΠΎΡΠΈΠΏ / Prototype
- ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΡΠ»Π°ΡΡΡΡ Π΅Π³ΠΎ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ, ΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ Π²ΠΈΠ΄Π½Ρ Ρ Π½Π°ΡΠ»Π΅Π΄Π½ΠΈΠΊΠΎΠ², Π΅ΡΠ»ΠΈ ΡΡΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π° Π½Π΅ ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ Ρ Π½Π°ΡΠ»Π΅Π΄Π½ΠΈΠΊΠΎΠ² (ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ ΡΠ΅ΠΏΠΎΡΠΊΠ° ΠΏΡΠΎΡΠΎΡΠΈΠΏΠΎΠ², ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΈΡΡΡΡΡ ΡΠ²ΠΎΠΉΡΡΠ²Π°, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡΠ΄ΡΡ Π½Π°ΠΉΠ΄Π΅Π½Ρ ΠΈΠ»ΠΈ ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΠΈΠ³Π½ΡΡ ΠΊΠΎΠ½Π΅Ρ)
- ΡΠ°Π±Π»ΠΎΠ½, ΠΊΠΎΡΠΎΡΡΠΉ ΠΊΠ»ΠΎΠ½ΠΈΡΡΠ΅ΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΠ½ΡΡΠ°Π½ΡΠΈΠΈΡΠΎΠ²Π°Π½ΠΈΡ
- Π€ΡΠ½ΠΊΡΠΈΡ
- ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ
- ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅: ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Π² ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π°
- ΠΈΠΌΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅: ΡΡΡΠ»ΠΊΠ° Π½Π° Π±Π»ΠΎΠΊ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² (Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΠΉ), ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠΈΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ
- ΠΎΠ±ΠΎΠ±ΡΠ΅Π½Π½ΠΎΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅: Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π±Π»ΠΎΠΊ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ², ΠΈΠΌΠ΅ΡΡΠΈΠΉ ΠΈΠΌΡ ΠΈΠ»ΠΈ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΡΠΉ, ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΡΡΠΈΠΉ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ, ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΠΈΠΉ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΎΠ² ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²
- ΠΠΎΠ½ΡΠ΅ΠΊΡΡ
- ΠΠ±Π»Π°ΡΡΡ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ / Scope
- ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ / Function definition
function max(a, b) { return a + b; }
- Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ / Function expression
- ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ / Named function expression
const max = function max(a, b) { return a + b; };
- Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ / Anonymous function expression
const max = function(a, b) { return a + b; };
- Π»ΡΠΌΠ±Π΄Π°-ΡΡΠ½ΠΊΡΠΈΡ / Lambda function
const max = (a, b) => { return a + b; };
- Π»ΡΠ±ΠΌΠ΄Π°-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, Π€ΡΠ½ΠΊΡΠΈΡ-ΡΡΡΠ΅Π»ΠΊΠ° / Lambda expression, Arrow function
const max = (a, b) => (a + b);
- ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ / Named function expression
- Π§ΠΈΡΡΠ°Ρ ΡΡΠ½ΠΊΡΠΈΡ / Pure Function
- ΡΡΠ½ΠΊΡΠΈΡ, Π²ΡΡΠΈΡΠ»ΡΡΡΠ°Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ², Π½Π΅ ΠΈΠΌΠ΅ΡΡΠ°Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΈ Π½Π΅ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΠ°ΡΡΡ ΠΊ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π°
- ΡΡΠ½ΠΊΡΠΈΡ, ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Π²ΡΠ΅Π³Π΄Π° Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ, Ρ.Π΅. Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ
- ΡΡΠ½ΠΊΡΠΈΡ, Π½Π΅ ΠΈΠΌΠ΅ΡΡΠ°Ρ ΠΏΠΎΠ±ΠΎΡΠ½ΡΡ ΡΡΡΠ΅ΠΊΡΠΎΠ² (ΡΠΌ. ΠΏΠΎΠ±ΠΎΡΠ½ΡΠΉ ΡΡΡΠ΅ΠΊΡ)
- ΠΠ°ΠΌΡΠΊΠ°Π½ΠΈΠ΅ / Closure
- Π΅ΡΠ»ΠΈ Π²Π΅ΡΠ½ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ
g
ΠΈΠ· ΡΡΠ½ΠΊΡΠΈΠΈf
, ΡΠΎg
Π±ΡΠ΄Π΅Ρ Π²ΠΈΠ΄Π΅ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ ΡΡΠ½ΠΊΡΠΈΠΈf
, ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΡΠ²ΠΎΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ - Π΅ΡΠ»ΠΈ
f
Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρg
, ΡΠΎ Π³ΠΎΠ²ΠΎΡΡΡ, ΡΡΠΎ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡg
Π·Π°ΠΌΠΊΠ½ΡΠ» ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡf
- ΡΠΏΠΎΡΠΎΠ±, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΡΠ²ΡΠ·Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ Ρ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΎΠΌ (Ρ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°)
- Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΎΠΌ ΡΠ²ΠΎΠΉΡΡΠ² Π² ΠΠΠ, ΡΠΎΠΆΠ΅ ΡΠ²ΡΠ·ΡΠ²Π°ΡΡΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° Ρ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌΠΈ ΡΠ΅ΡΠ΅Π· ΠΎΠ±ΡΠ΅ΠΊΡ, ΠΏΠΎ ΡΡΡΠΈ ΠΎΠ±ΡΠ΅ΠΊΡ Π² ΠΠΠ ΡΠ°ΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΎΠΌ ΡΠ²ΡΠ·ΡΠ²Π°Π½ΠΈΡ
- ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅
const add = a => b => a + b;
const hash = (data = {}) => (key, value) => (data[key] = value, data);
- Π΅ΡΠ»ΠΈ Π²Π΅ΡΠ½ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ
- Π‘ΡΠΏΠ΅ΡΠΏΠΎΠ·ΠΈΡΠΈΡ / Superposition
- ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π²ΡΠ·ΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΉ Π² Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΎΠ΄Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ
const expr2 = add(pow(mul(5, 8), 2), div(inc(sqrt(20)), log(2, 7)));
- ΠΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΡ / Composition
const compose = (f1, f2) => x => f2(f1(x));
const compose = (...funcs) => (...args) => (funcs.reduce((args, fn) => [fn(...args)], args));
- Π§Π°ΡΡΠΈΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ / Partial application
const partial = (fn, x) => (...args) => fn(x, ...args);
- ΠΠ°ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ / Currying
const result = curry((a, b, c) => (a + b + c))(1, 2)(3);
- ΠΠΎΠ±ΠΎΡΠ½ΡΠ΅ ΡΡΡΠ΅ΠΊΡΡ / Side effects
- Π€ΡΠ½ΠΊΡΠΈΡ Π²ΡΡΡΠ΅Π³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ° / Higher-order Function
- Π΅ΡΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π² Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°Ρ , ΡΠΎ ΡΡΠΎ ΠΊΠΎΠ»Π±Π΅ΠΊ
- Π΅ΡΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅, ΡΠΎ ΡΡΠΎ ΡΠ°Π±ΡΠΈΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΉ Π½Π° Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΡΡ
- Π΅ΡΠ»ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΠ°Ρ ΡΡΠ½ΠΊΡΠΈΡ ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΡ ΠΆΠ΅ ΡΠΌΡΡΠ», ΡΡΠΎ ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌΠ°Ρ Π² Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°Ρ (+ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅), ΡΠΎ ΡΡΠΎ ΠΎΠ±Π΅ΡΡΠΊΠ°
- ΠΎΡΠ΅Π½Ρ ΡΠ΅Π΄ΠΊΠΎ Π±ΡΠ²Π°Π΅Ρ, ΡΡΠΎ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΠ°Ρ ΡΡΠ½ΠΊΡΠΈΡ Π½Π΅ ΡΠ²ΡΠ·Π°Π½Π° Ρ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ ΠΈΠ· Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² (Π½ΠΎ ΠΏΠΎΠΊΠ° Π½ΠΈ ΠΊΡΠΎ Π½Π΅ Π½Π°ΡΠ΅Π» Π²ΡΠ°Π·ΡΠΌΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ°, Π³Π΄Π΅ ΡΡΠΎ ΡΠ΅Π°Π»ΡΠ½ΠΎ Π½ΡΠΆΠ½ΠΎ)
- Π΅ΡΠ»ΠΈ Π½Π° Π²ΡΡ ΠΎΠ΄Π΅ ΠΊΠ»Π°ΡΡ ΠΈΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΡ-ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ, ΡΠΎ ΡΡΠΎ ΡΠ°Π±ΡΠΈΠΊΠΈ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΠΏΡΠΎΡΠΎΡΠΈΠΏΠΎΠ² ΡΠΎΠΎΡΠ²Π΅ΡΡΠ²Π΅Π½Π½ΠΎ
- Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ / Functional Inheritance
- ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΠΉ, Ρ.ΠΏ., ΠΊΠ°ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π»ΡΠΌΠ±Π΄
- ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ
- ΠΠ΅ΡΠΎΠ΄ / Method
- ΡΡΠ½ΠΊΡΠΈΡ, ΡΠ²ΡΠ·Π°Π½Π½Π°Ρ Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΎΠΌ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ
{ a: 10, b: 10, sum() { return this.a + this.b; } }
- ΠΠ±Π΅ΡΡΠΊΠ° / Wrapper
- ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠ±ΠΎΡΠ°ΡΠΈΠ²Π°Π΅Ρ Π΄ΡΡΠ³ΡΡ ΡΡΠ½ΠΊΡΠΈΡ (ΠΈΠ½ΠΎΠ³Π΄Π° ΠΎΠ±ΡΠ΅ΠΊΡ, ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΈΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ), Π΄ΠΎΠ±Π°Π²Π»ΡΡ Π΅ΠΌΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
- ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π΅ΡΠ½ΡΡΡ ΡΠ΅Π»ΡΠΉ API ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΈ Π΄Π°ΠΆΠ΅ Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΊΠΎΠ»Π±Π΅ΠΊΠ°ΠΌΠΈ (Π΅ΡΠ»ΠΈ ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΠΊΠΎΠ½ΡΡΠ°ΠΊΡ)
- ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ / Interface
- Π½Π°Π±ΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² (ΡΡΠ½ΠΊΡΠΈΠΉ) ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΡΡ ΠΈΠ»ΠΈ ΠΎΠ±ΡΠΈΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΎΠΌ ΠΈΠ»ΠΈ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΊ ΡΡΡΡΠΊΡΡΡΠ°ΠΌ Π΄Π°Π½Π½ΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ Ρ.Π΅. ΡΠΌΡΡΠ»ΠΎΠΌ (API)
- ΡΠΏΠΎΡΠΎΠ± ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ (ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ) ΠΊΠΎΠ½ΡΡΠ°ΠΊΡΠ°, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΡΠ²ΡΠ·Π°Π½Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ
- ΠΠ°Π±ΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Ρ ΠΈΡ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ, Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ²
- ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ / Application Interface, API
- ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ²: ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, ΡΠ»ΠΎΠ΅Π² Π°Π±ΡΡΡΠ°ΠΊΡΠΈΠΈ, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ
- Π‘ΠΈΠ½Π³Π»ΡΠΎΠ½ / Singleton
- ΡΠ°Π±Π»ΠΎΠ½ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡΡΠΈΠΉ, ΡΡΠΎ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΈΠΌΠ΅Π½ (ΠΏΡΠΎΡΠ΅ΡΡΠ΅, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ ) Π±ΡΠ΄Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΊΠ»Π°ΡΡΠ° (ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ) ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΏΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ (ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠΌΡ) ΠΈΠΌΠ΅Π½ΠΈ
- Π€ΡΠ½ΠΊΡΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π°, ΠΊΠΎΠ»Π±Π΅ΠΊ / Callback
- ΡΡΠ½ΠΊΡΠΈΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΠ°Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° Π² Π΄ΡΡΠ³ΡΡ ΡΡΠ½ΠΊΡΠΈΡ (ΠΈΠ»ΠΈ ΠΌΠ΅ΡΠΎΠ΄) Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π±ΡΡΡ Π²ΡΠ·Π²Π°Π½Π½ΠΎΠΉ Π΄Π»Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈΠ»ΠΈ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ
- ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π° ΠΈΠΌΠ΅ΡΡ ΠΏΠΎΠ΄ΡΠΈΠΏΡ:
- ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· Π²ΡΠ·ΡΠ²Π°Π΅ΠΌΡΠ΅ (ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ)
- Π‘ΠΎΠ±ΡΡΠΈΠ΅ / Event
- ΠΠΈΡΠ΅Π½Π΅Ρ / Listener
- ΠΡΠ΅ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ / Iteration
- ΠΌΠ½ΠΎΠ³ΠΎΠΊΡΠ°ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π° ΠΈΠ»ΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π°Π΄ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ: ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ², ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ², ΡΠΏΠΈΡΠΊΠΎΠ², ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΉ ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΈΠΊΠ»Π°
- ΠΡΠ΅ΡΠ°ΡΠΎΡ / Iterator
- ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ: ΠΌΠ°ΡΡΠΈΠ²Π°, ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π°, ΡΠΏΠΈΡΠΊΠ°
- Π€Π°ΠΉΠ» / File
- ΠΠΎΡΠΎΠΊ, Π€Π°ΠΉΠ»ΠΎΠ²ΡΠΉ ΠΏΠΎΡΠΎΠΊ / Stream, File Stream
- Π‘ΠΎΠΊΠ΅Ρ / Socket
- ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ (ΠΈΠ»ΠΈ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΡ) Π΄Π»Ρ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½ΡΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΡΠ΅ΡΡΠ°ΠΌΠΈ
- ΠΠ΅ΡΠΊΡΠΈΠΏΡΠΎΡ / Handle
- ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° (ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ): ΡΠ°ΠΉΠ»Π°, ΡΠΎΠΊΠ΅ΡΠ°, ΠΎΠΊΠ½Π°, ΡΠ°ΠΉΠΌΠ΅ΡΠ°, ΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΈ Ρ.Π΄.
- Π‘ΠΎΡΡΠΎΡΠ½ΠΈΠ΅ / State
- ΡΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° (ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈ ΡΡΡΡΠΊΡΡΡ Π΄Π°Π½Π½ΡΡ ), ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΠ΅ Π΅Π³ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈ ΡΠ΅Π°ΠΊΡΠΈΡ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ Π½ΠΈΠΌ
- ΠΡΡ, ΠΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ / Cache
- ΠΌΠ΅ΡΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ (Π±ΡΡΠ΅Ρ, ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ, ΠΎΠ±Π»Π°ΡΡΡ ΠΏΠ°ΠΌΡΡΠΈ) Π΄Π»Ρ Π±ΡΡΡΡΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ° ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ
- Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠ΅ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΡΠ΅Π½ΠΈΡ, Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π·Π°ΠΏΠΈΡΠΈ (ΠΊΠΎΠ³Π΄Π° Π·Π°ΠΏΠΈΡΡ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π° Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π±ΡΡΡΡΠΎ) ΠΈΠ»ΠΈ ΡΠΏΡΠ΅Π·ΠΆΠ°ΡΡΠ΅Π΅ ΡΡΠ΅Π½ΠΈΠ΅ Π² Π±ΡΡΠ΅Ρ (ΠΊΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π±ΡΠ΄ΡΡ Π·Π°ΠΏΡΠΎΡΠ΅Π½Ρ Ρ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅ΠΉ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡΡ)
- Π₯ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ / Hashing
- ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ (Π±ΡΡΠ΅ΡΠ°, ΠΌΠ°ΡΡΠΈΠ²Π°, ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΈΠ»ΠΈ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ ) Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π±ΠΈΡΠΎΠ² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ (Ρ Π΅Ρ) ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Ρ Π΅Ρ-ΡΡΠ½ΠΊΡΠΈΠΈ (ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ 1 Π±ΠΈΡΠ° Π² Π΄Π°Π½Π½ΡΡ Ρ Π΅Ρ ΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ)
- Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ
- Π€ΡΠ½ΠΊΡΠΎΡ / Functor
- ΡΡΠ½ΠΊΡΠΎΡ - ΡΡΠΎ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎΠ΅ Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΠ΅ / recursive closure
- ΠΎΠ±ΡΠ΅ΠΊΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, Ρ ΡΠ°Π½ΡΡΠΈΠΉ Π² ΡΠ΅Π±Π΅ Π·Π°ΡΠΈΡΠ΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠ½ΠΊΡΠΎΡ ΡΠ΅ΡΠ΅Π· ΡΡΠ½ΠΊΡΠΈΡ
- ΠΠΏΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠ²Π½ΡΠΉ ΡΡΠ½ΠΊΡΠΎΡ
- ΠΠΎΠ½Π°Π΄Π° / Monad
- Π€ΡΠ½ΠΊΡΠΎΡ / Functor
- ΠΠ΅ΠΌΠΎΠΈΠ·Π°ΡΠΈΡ / Memoization
- ΠΎΠ±Π΅ΡΡΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠΎΡ ΡΠ°Π½ΡΡΡΠ°Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ
- ΠΡΠΈΠΌΠ΅ΡΡ / Mixin
- Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ², ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΈΠ»ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΏΠΎΡΠ»Π΅ Π΅Π³ΠΎ ΠΈΠ½ΡΡΠ°Π½ΡΠΈΠΈΡΠΎΠ²Π°Π½ΠΈΡ (ΡΠΎΠ·Π΄Π°Π½ΠΈΡ)
Object.assign(target, { field1, field2 }, { field3 });
- ΠΠ΅ΠΊΠΎΡΠ°ΡΠΎΡ / Decorator
- ΡΠ°Π±Π»ΠΎΠ½ ΠΎΠ±ΠΎΡΠ°ΡΠΈΠ²Π°Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΈΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΠΉ Π΄Π»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ°
- ΠΠ°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ / Inheritance
- ΠΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ / Multiple Inheritance
- ΠΠ΅ΠΏΡΡΠΌΠΎΠ΅ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ / Indirect Inheritance
- ΠΠ΅Π½Π΅ΡΠ°ΡΠΎΡ / Generator
- Π‘ΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ
- ΠΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ
- ΠΠ²ΠΎΠ΄/Π²ΡΠ²ΠΎΠ΄ / I/O, Input-output
- ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, Π²ΡΡ ΠΎΠ΄ΡΡΠΈΠ΅ Π·Π° ΡΠ°ΠΌΠΊΠΈ CPU ΠΈ RAM (Π°ΡΠΈΡΠΌΠ΅ΡΠΈΠΊΠΎ-Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ ΠΏΠ°ΠΌΡΡΠΈ), Ρ.Π΅. ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌΠΈ Π²Π²ΠΎΠ΄Π° Π²ΡΠ²ΠΎΠ΄Π°: ΡΠ΅ΡΡ, Π΄ΠΈΡΠΊ, ΠΏΠΎΡΡΡ, ΠΊΠΎΠ½ΡΠΎΠ»Ρ (ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ° ΠΈ ΡΠΊΡΠ°Π½), Π΄ΡΡΠ³Π΅ ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠΈΠΉΠ½ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° (Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΠΊΠΎΡΠΎΡΡΠΌΠΈ Π½Π° ΠΏΠΎΡΡΠ΄ΠΊΠΈ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, ΡΠ΅ΠΌ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π° ΠΠΠ£ ΠΈ ΠΏΠ°ΠΌΡΡΠΈ)
- EventEmitter
- ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½Π°Ρ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠΎΠ±ΡΡΠΈΡΠΌΠΈ ΡΠ΅ΡΠ΅ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΡ (subscription: addListener, on, once) ΠΈ ΠΎΡΠΏΡΠ°Π²ΠΊΡ (emit)
- Π§Π΅ΠΈΠ½ΠΈΠ½Π³ / Chaining
- ΡΠ΅ΠΏΠΎΡΠ½ΡΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π²ΡΠ·ΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΉ
total(april)(may)(july)
ΠΈΠ»ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²array.filter(f1).reduce(f2)
- ΡΠ΅ΠΏΠΎΡΠ½ΡΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π²ΡΠ·ΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΉ
- Π‘Π΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ / Serialization
- ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ (ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΠΎΠΉ Π² ΠΏΠ°ΠΌΡΡΠΈ) Π² Π±ΠΈΡΠΎΠ²ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΠΎΠ±ΡΡΠ½ΠΎ Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π±Π°ΠΉΡΠΎΠ² (Π±ΠΈΠ½Π°ΡΠ½Π°Ρ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ) ΠΈΠ»ΠΈ Π² ΡΡΡΠΎΠΊΡ (ΡΠ΅ΠΊΡΡΠΎΠ²Π°Ρ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ)
- ΠΠ΅ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ / Deserialization
- ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ, ΠΎΠ±ΡΠ°ΡΠ½Π°Ρ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ, Ρ.Π΅. Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π±ΠΈΡΠΎΠ² (ΡΠ°ΡΠ΅ Π±Π°ΠΉΡΠΎΠ² ΠΈΠ»ΠΈ ΡΡΡΠΎΠΊΠΈ)
- ΠΠ°ΡΡΠΈΠ½Π³ / Parsing
- ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ· ΡΠ΅ΠΊΡΡΠ°, ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠ΅Π³ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠ²Π»ΡΡΡΡΡ:
- Π΄Π»Ρ ΡΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π³ΡΠ°ΠΌΠ°ΡΠΈΠΊΠΈ - AST-Π΄Π΅ΡΠ΅Π²ΠΎ
- Π΄Π»Ρ ΡΠ»Π°Π±ΠΎΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ° - ΡΡΡΡΠΊΡΡΡΠ° Π΄Π°Π½Π½ΡΡ , ΠΈΠΌΠ΅ΡΡΠ°Ρ ΡΠ΅ΡΠΊΡΡ ΡΡΡΡΠΊΡΡΡΡ, Π² ΠΊΠΎΡΠΎΡΡΡ ΡΠ°ΡΡΠΈΡΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠ΅Π½Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΡΠ»Π°Π±ΠΎΠΉ ΡΡΡΡΠΊΡΡΡΡ
- Π΄Π»Ρ Π΄ΡΡΠ³ΠΈΡ Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΡ ΠΈΠ»ΠΈ ΠΈΡΠΊΡΡΡΠ²Π΅Π½Π½ΡΡ ΡΠ·ΡΠΊΠΎΠ² - ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΈΠΌ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅
- ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ· ΡΠ΅ΠΊΡΡΠ°, ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠ΅Π³ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠ²Π»ΡΡΡΡΡ:
- Π Π΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ / Regular Expressions
- ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ, ΠΏΠ°ΡΡΠ΅ΡΠ½, ΡΠΎΡΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ·ΡΠΊ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΠΉ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΠΏΠ°ΡΡΠΈΠ½Π³Π° Π΄ΡΡΠ³ΠΎΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ
- ΠΠΎΠ΄ΡΠ»Ρ, ΠΌΠΎΠ΄ΡΠ»ΡΠ½ΠΎΡΡΡ
- ΡΠ΅Π»ΠΎΡΡΠ½ΡΠΉ, ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ»Π½ΡΠΉ, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈΠΌΠ΅ΡΡΠΈΠΉ ΠΈΠΌΡ, ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ
- ΠΌΠΎΠ΄ΡΠ»ΡΠ½ΠΎΡΡΡ ΠΏΠΎΠ²ΡΡΠ°Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°, ΡΠΏΡΠΎΡΠ°Π΅Ρ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², ΡΠ»ΡΡΡΠ°Π΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΡ ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΠΏΠΎ ΡΠ°ΡΡΡΠΌ
- ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ: ΠΌΠΎΠ΄ΡΠ»ΠΈ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΈΠ»ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΊΠ»Π°ΡΡΡ/ΠΏΡΠΎΡΠΎΡΠΈΠΏΡ/ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ·ΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ ΠΈ/ΠΈΠ»ΠΈ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ°; ΠΌΠΎΠ΄ΡΠ»ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠ»Π°Π±ΠΎ ΡΠ²ΡΠ·Π°Π½Ρ, Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Π΄ΡΡΠ³ Ρ Π΄ΡΡΠ³ΠΎΠΌ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ΅Π· Π²Π½Π΅ΡΠ½Π΅Π΅ API (ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ) ΠΈΠ»ΠΈ ΡΠΈΠ½Ρ ΡΠΎΠ±ΡΡΠΈΠΉ (Π΅ΡΠ»ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΠΎΡΡΡΠΎΠ΅Π½Π° Π½Π° ΡΠΎΠ±ΡΡΠΈΠΉΠ½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠ΅ ΠΈΠ»ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π°ΠΊΡΠΎΡΠΎΠ²)
- ΠΠ°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ / Dependency
- ΡΠ²ΡΠ·Π°Π½Π½ΠΎΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ (Π·Π°Π²ΠΈΡΠΈΠΌΡΠΉ) "Π·Π½Π°Π΅Ρ" Π΄ΡΡΠ³ΠΎΠΉ; ΡΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ Π² Π½Π΅ΠΌ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ Π²ΡΠ·ΠΎΠ² ΠΌΠ΅ΡΠΎΠ΄Π° (ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ Π² Π΄ΡΡΠ³ΠΎΠΌ) ΠΈΠ»ΠΈ ΠΎΠ½ ΡΠ»ΡΡΠ°Π΅Ρ ΡΠΎΠ±ΡΡΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ Π΄ΡΡΠ³ΠΎΠΉ ΠΈΠ»ΠΈ ΠΎΠ½ "Π·Π½Π°Π΅Ρ" ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π½Ρ ΠΈΠ· Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°
- ΠΠ΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΡ / Decomposition
- ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° Π½Π° ΡΠ°ΡΡΠΈ ΠΏΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ, ΠΏΡΠΈ ΡΡΠΎΠΌ, ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΠ°ΡΡΡ Π±ΡΠ΄Π΅Ρ ΡΠ΅ΡΠ°ΡΡ ΠΏΠΎΠ΄Π·Π°Π΄Π°ΡΡ ΠΈ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΡΠ°ΡΡΡ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΠ²ΡΠ·ΠΈ Π²ΡΠ΅Ρ ΡΠ°ΡΡΠ΅ΠΉ (ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΡ)
- ΠΠ΅Π½ΠΈΠ²ΠΎΡΡΡ / Lazy
- ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΎΡΠΈΠ±ΠΎΠΊ / Error handling
- Π€Π°Π±ΡΠΈΠΊΠ° / Factory
- ΡΡΠ½ΠΊΡΠΈΡ ΠΈΠ»ΠΈ ΠΌΠ΅ΡΠΎΠ΄ Π΄Π»Ρ ΠΈΠ½ΡΡΠ°ΡΠΈΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΡΡΠ½ΠΊΡΠΈΠΉ, ΡΡΡΡΠΊΡΡΡ Π΄Π°Π½Π½ΡΡ ΠΈ Π»ΡΠ±ΡΡ Π΄ΡΡΠ³ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠ² ΠΊΠ»Π°ΡΡΠ° Π² ΠΎΠ±Ρ ΠΎΠ΄ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ° ΠΈΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²
- ΠΠ±ΡΠ΅ΠΊΡΠ½ΡΠΉ ΠΡΠ» / Object Pool
- ΠΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π·Π°ΡΠ°Π½Π΅Π΅ ΠΈΠ½ΡΡΠ°Π½ΡΠΈΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² (ΠΈΠ»ΠΈ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ², ΡΠΎΠΊΠ΅ΡΠΎΠ², Π±ΡΡΠ΅ΡΠΎΠ², ΡΡΡΡΠΊΡΡΡ Π΄Π°Π½Π½ΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΠΉ) ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡ Π±ΡΠ°ΡΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ (Π²ΠΌΠ΅ΡΡΠΎ ΠΈΠ½ΡΡΠ°Π½ΡΠΈΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½ΠΎΠ²ΡΡ ) ΠΈ ΠΎΡΠ΄Π°Π²Π°ΡΡ ΠΈΡ ΠΏΠΎΡΠ»Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ
- Π’Π°ΠΉΠΌΠ΅ΡΡ / Timers
- ΠΠΈΠ½ΡΠ΅Ρ / Linter
- ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ ΠΊΠΎΠ΄Π° (Π±Π΅Π· Π·Π°ΠΏΡΡΠΊΠ°), ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ ΡΡΠΈΠ»ΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅, Π³ΡΠ°ΠΌΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈΠ»ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΎΠ½Π½ΠΎΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ Π²ΡΡΠ²ΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ (Π° ΠΈΠ½ΠΎΠ³Π΄Π° ΠΈ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ Π΅Π΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ)
- Π‘ΠΈΡΡΠ΅ΠΌΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ
- ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²
- ΠΠ΅ΠΏΡΠ΅ΡΡΠ²Π½Π°Ρ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ
- Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
- ΠΠ°ΠΏΠΈΡΡ ΠΈΠ»ΠΈ ΡΡΡΡΠΊΡΡΡΠ° / Struct or Record
- ΠΠ°ΡΡΠΈΠ² / Array
- ΠΡΡΠ΅Ρ / Buffer
- Π‘ΠΏΠΈΡΠΎΠΊ / List
- ΠΠ΄Π½ΠΎΡΠ²ΡΠ·Π½ΡΠΉ, Π΄Π²ΡΡΠ²ΡΠ·Π½ΡΠΉ, ΠΊΠΎΠ»ΡΡΠ΅Π²ΠΎΠΉ, ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΡΠΉ ΡΠΏΠΈΡΠΎΠΊ (ΡΠΏΠΈΡΠΎΠΊ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²)
- Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡΠ°Ρ , ΠΌΠ°ΡΡΠΈΠ²Π°Ρ ΠΈ Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΡΡ
- Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ ΠΏΡΠΎΡΠΎΡΠΈΠΏΠΎΠ², ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΡΠ°Π±ΡΠΈΠΊ
- Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΡΡ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°Ρ
- Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Π΄Π²ΡΡ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΡΡ (ΡΠΎΠ»ΡΠΊΠΎ ΡΠ·Π΅Π» ΠΈΠ»ΠΈ ΡΠΏΠΈΡΠΎΠΊ ΠΈ ΡΠ·Π΅Π»)
- Π‘ΡΠ΅ΠΊ, ΠΎΡΠ΅ΡΠ΅Π΄Ρ, Π΄Π΅ΠΊ
- Π‘ΡΠ΅ΠΊ / Stack - Π‘ΠΏΠΈΡΠΎΠΊ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ ΠΏΡΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ LIFO
- ΠΡΠ΅ΡΠ΅Π΄Ρ / Queue - Π‘ΠΏΠΈΡΠΎΠΊ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ ΠΏΡΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ FIFO
- ΠΠ΅ΠΊ / Dequeue Π΄Π²ΡΡ ΡΡΠΎΡΠΎΠ½Π½ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ (ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ LIFO ΠΈ FIFO)
- ΠΠ΅ΡΠ΅Π²ΠΎ
- ΠΠ²ΠΎΠΈΡΠ½ΠΎΠ΅ Π΄Π΅ΡΠ΅Π²ΠΎ, ΠΏΠΎΠΈΡΠΊΠΎΠ²ΠΎΠ΅ Π΄Π΅ΡΠ΅Π²ΠΎ, ΠΊΡΠ°ΡΠ½ΠΎ-ΡΠ΅ΡΠ½ΠΎΠ΅ Π΄Π΅ΡΠ΅Π²ΠΎ
- ΠΡΡΠ° / Heap - Π΄ΡΠ΅Π²ΠΎΠ²ΠΈΠ΄Π½Π°Ρ ΡΡΡΡΠΊΡΡΡΠ° Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ ΠΎΠ±Π»Π°ΡΡΡ ΠΏΠ°ΠΌΡΡΠΈ Π΄Π»Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ΄ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ
- ΠΡΠ°Ρ / Graph
- ΠΡΡΠ΅Ρ / Buffer
- ΠΎΠ±Π»Π°ΡΡΡ ΠΏΠ°ΠΌΡΡΠΈ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ (ΠΎΠ±ΡΡΠ½ΠΎ Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π²Π²ΠΎΠ΄Π°/Π²ΡΠ²ΠΎΠ΄Π°)
- Π’ΠΈΠΏΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΌΠ°ΡΡΠΈΠ²Ρ
- ΠΠΎΠ»Π»Π΅ΠΊΡΠΈΡ / Collection
- ΡΡΡΡΠΊΡΡΡΠ° Π΄Π°Π½Π½ΡΡ , ΡΠ»ΡΠΆΠ°ΡΠ°Ρ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π½Π°Π±ΠΎΡΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠ°Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ Π½ΠΈΠΌ ΠΏΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌ ΠΈΠ»ΠΈ ΠΊΠ»ΡΡΠ°ΠΌ
- ΠΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ / Set
- ΡΡΡΡΠΊΡΡΡΠ° Π΄Π°Π½Π½ΡΡ , ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠ°Ρ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ "ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ"
- ΡΡΡΡΠΊΡΡΡΠ° Π΄Π°Π½Π½ΡΡ , ΡΠ»ΡΠΆΠ°ΡΠ°Ρ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΡΠΎΠ΄Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΠΈΠΌΠ΅ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΈΠ»ΠΈ ΠΊΠ»ΡΡΠ΅ΠΉ (Π½ΠΎ Π²Π½ΡΡΡΠΈ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΠΌΠ΅ΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ½Π΄Π΅ΠΊΡ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅, ΠΎΠ΄Π½Π°ΠΊΠΎ, ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π°Π±ΡΡΡΠ°Π³ΠΈΡΡΠ΅Ρ Π½Π°Ρ ΠΎΡ ΡΡΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ)
- ΠΠ»ΡΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, Π₯Π΅ΡΠΌΠ°ΠΏ / Map, Key-value
- Π‘Π±ΠΎΡΠΊΠ° ΠΌΡΡΠΎΡΠ° / Garbage Collection
- ΠΡΠΎΠΊΡΠΈ / Proxy
- Π‘ΠΈΠΌΠ²ΠΎΠ» / Symbol
- ΠΠΈΡΠ΅Ρ / Deferred
- ΠΡΠΎΠΌΠΈΡ / Promise
- Π€ΡΡΡΠ΅Ρ / Future
- ΠΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΠΎΡΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ async/await
- ΠΡΠΈΠ½Ρ ΡΠΎΠ½Π½Π°Ρ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΡ / Asynchronous Composition
- ΠΠΎΠ»Π»Π΅ΠΊΡΠΎΡΡ Π΄Π°Π½Π½ΡΡ / Data and Key Collectors
- ΠΠ΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ / Immutable Data
- ΠΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ / Mutable Data
- ΠΠ½ΡΡΠΎΡΠΏΠ΅ΠΊΡΠΈΡ / Introspection
- Π Π΅ΡΠ»Π΅ΠΊΡΠΈΡ / Reflection
- Π‘ΠΊΠ°ΡΡΠΎΠ»Π΄ΠΈΠ½Π³ / Scaffolding
- ΠΠ½Π²Π΅ΡΡΠΈΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ / IoC, Inversion of Control
- ΠΠ½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ / DI, Dependency Injection
- ΠΠ΅ΠΆΠΏΡΠΎΡΠ΅ΡΡΠΎΠ²ΠΎΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ / IPC, Interprocess Communication
- ΠΠ΅ΡΠΎΡΠ½ΠΈΡΠ° / Sandbox
- ΠΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° / Architecture
- Π‘Π»ΠΎΠΉ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π΄Π°Π½Π½ΡΠΌ / Data Access Layer
- ΠΡΡΡΠΎΡ / Cursor
- ΠΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΠΎΠ΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ / ORM, Object-relational Mapping
- Π‘Π΅ΡΠ²Π΅Ρ / Server
- ΠΡΠΈΠΊΠ»Π΅ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ IP ΠΈΠ»ΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΡΠ΅ΡΡΠΈΠΈ / IP or Session Sticky
- ΠΠ»Π°ΡΡΠ΅ΡΠΈΠ·Π°ΡΠΈΡ / Cluster mode
- ΠΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ cluster
- ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ child_process
- Π‘Π΅ΡΠ²Π΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ / Application Server
- Π’ΠΎΠ½ΠΊΠΈΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΈ ΡΠΎΠ»ΡΡΡΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ
- ΠΡΠΎΠ΅ΠΊΡΠΈΡ Π΄Π°Π½Π½ΡΡ / Projection
- ΠΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ / Benchmarking
- ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ / CLI, Command Line Interface and Console
- ΠΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ / File System Watching
- Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΠΎΠ½Π½ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ/Transaction
- ΠΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅ / Metadata
- ΠΡΠΎΡΠΎΠΊΠΎΠ» / Protocol
- ΠΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠ°Ρ Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ / Live Code Reload
- Http Request (HTTP, XMLHttpRequest, fetch): ΠΏΡΠΈΠΌΠ΅ΡΡ
- ΠΠ΅Π±Π»ΠΎΠΊΠΈΡΡΡΡΠΈΠ΅ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ
- ΠΠΈΠ²ΡΠ΅ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ / Live Table
- Π§Π°Ρ Π½Π° Π²Π΅Π±ΡΠΎΠΊΠ΅ΡΠ°Ρ / Websocket Chat
- ΠΠΌΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ / Imperative Programming
- ΠΠ΅ΡΡΡΡΠΊΡΡΡΠ½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ / Non-structured
- Π‘ΡΡΡΠΊΡΡΡΠ½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ / Structured Programming
- ΠΡΠΎΡΠ΅Π΄ΡΡΠ½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ / Procedural Programming
- Object-oriented programming
- Prototype-oriented programming
- Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ / Functional Programming
- ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ / Logical Programming
- ΠΠ΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠ²Π½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ / Declarative Programming
- ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠ΅ Π΄Π°Π½Π½ΡΠΌΠΈ / Data-driven Programming
- Π’Π΅Ρ
Π½ΠΈΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ
- ΠΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ / Asynchronous Programming
- Π Π΅Π°ΠΊΡΠΈΠ²Π½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ / Reactive Programming
- Π‘ΠΎΠ±ΡΡΠΈΠΉΠ½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ / Event-driven Programming
- ΠΠ΅ΡΠ°ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ / Metaprogramming