π‘ ΠΡΠ»ΡΠ°Ρ Π΄ΠΎΡΠΎΠΆΠΊΠ° #
ΠΡΠ»ΠΈ Π²Ρ Π²ΡΠ±ΡΠ°Π»ΠΈ ΡΡΠΎΡ Π²Π°ΡΠΈΠ°Π½Ρ β Π·Π½Π°ΡΠΈΡ, Π²Π°ΠΌ ΠΏΡΠ΅Π΄ΡΡΠΎΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° C# ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠ·ΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠ΅ΠΉ ΠΊΠΎΠ΄Π° MSIL Π΄Π»Ρ .NET
- ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ°, ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΡΠ°ΠΉΠ»
- ΠΡ ΠΏΠΈΡΠ΅ΡΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Π½Π° C#
- ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ DLL (.NET-ΡΠ±ΠΎΡΠΊΡ) Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π² ΡΡΠ΅Π΄Π΅ .NET
ΠΠΈΠΆΠ΅ ΠΎΠΏΠΈΡΠ°Π½Ρ ΠΎΠ±ΡΠΈΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΡΡΠΎΠΌΡ Π²Π°ΡΠΈΠ°Π½ΡΡ.
ΠΠΎΠΌΠΎΡΡ ΠΠ-ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ #
- ΠΡ Π΅Π΄Π²Π° Π»ΠΈ Π½Π°ΠΉΠ΄ΡΡΠ΅ Ρ ΠΎΡΠΎΡΠΈΠΉ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ, ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΠΈΠΉ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠ΅ΠΉ ΠΊΠΎΠ΄Π° MSIL Π΄Π»Ρ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ .NET
- ΠΠΎΡΡΠΎΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Ρ Π»Π΅ΠΊΡΠΈΠΉ, ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΎΡ ΠΏΡΠ΅ΠΏΠΎΠ΄Π°Π²Π°ΡΠ΅Π»Ρ ΠΈ Π·Π°Π΄Π°Π²Π°ΠΉΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ ΠΠ-ΠΌΠΎΠ΄Π΅Π»ΡΠΌ
ΠΡΠΈΠΌΠ΅ΡΡ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΡΠ΅ΡΠ΅Π· ΡΠ°Ρ:
Π€Π°Π·Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ #
ΠΠ°ΡΠΈΠ½Π°Ρ ΡΠΎ 2-ΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΠΌΠ΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ°Π·Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ:
| Π€Π°Π·Π° | Π‘ΠΏΠΎΡΠΎΠ± ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ |
|---|---|
| ΠΠ΅ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ· | Π ΡΠΊΠΎΠΏΠΈΡΠ½ΡΠΉ ΡΠ°Π·Π±ΠΎΡ ΡΠΎΠΊΠ΅Π½Π° Π·Π° ΡΠΎΠΊΠ΅Π½ΠΎΠΌ ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΡ ΠΏΠ°ΡΡΠ΅ΡΠ° |
| Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ· | Π Π΅ΠΊΡΡΡΠΈΠ²Π½ΡΠΉ ΡΠΏΡΡΠΊ Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ΠΌ AST ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ |
| Π‘Π΅ΠΌΠ°Π½ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ· | ΠΠ±Ρ ΠΎΠ΄Ρ AST Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ°Π±Π»ΠΎΠ½Π° Visitor Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΎΠΊ ΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π°ΡΡΠΈΠ±ΡΡΠΎΠ² AST |
| ΠΠ΅Π½Π΅ΡΠ°ΡΠΈΡ MSIL | ΠΠ±Ρ ΠΎΠ΄ AST Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ°Π±Π»ΠΎΠ½Π° Visitor Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΡΠΏΠΈΡΠΊΠ° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΉ |
| Π‘ΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Assembly | Π‘ΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ DLL-ΡΠ°ΠΉΠ»Π° Ρ MSIL Ρ ΠΏΠΎΠΌΠΎΡΡΡ PersistedAssemblyBuilder |
Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΡΠ·ΡΠΊΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ #
ΠΠΈΠΆΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ ΡΠΏΠΈΡΠΎΠΊ ΡΠΏΠΈΠΊΠΎΠ² ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ ΡΠ·ΡΠΊΠ° Ρ ΡΡΠ΅ΠΌΡ ΠΏΠΎΠΌΠ΅ΡΠΊΠ°ΠΌΠΈ:
- ΠΡΠ΅Π½ΠΊΠ° 3 ΠΈ Π²ΡΡΠ΅ β ΡΡΠ½ΠΊΡΠΈΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½Π° Π½Π° ΠΎΡΠ΅Π½ΠΊΡ 3 ΠΈΠ»ΠΈ Π²ΡΡΠ΅, Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΠ΄Π΅Π»Π°Π½Π° Π²ΠΎ 2-ΠΉ Π»ΠΈΠ±ΠΎ Π² 3-ΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ
- ΠΡΠ΅Π½ΠΊΠ° 4 ΠΈ Π²ΡΡΠ΅ β ΡΡΠ½ΠΊΡΠΈΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½Π° Π½Π° ΠΎΡΠ΅Π½ΠΊΡ 4 ΠΈΠ»ΠΈ Π²ΡΡΠ΅, Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΠ΄Π΅Π»Π°Π½Π° Π² 4-ΠΉ Π»ΠΈΠ±ΠΎ Π² 5-ΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ
- ΠΡΠ΅Π½ΠΊΠ° 5 β ΡΡΠ½ΠΊΡΠΈΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½Π° Π½Π° ΠΎΡΠ΅Π½ΠΊΡ 5 ΠΈΠ»ΠΈ Π²ΡΡΠ΅, Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΠ΄Π΅Π»Π°Π½Π° Π² 6-ΠΉ ΠΈΠ»ΠΈ 7-ΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ
ΠΠΏΠΈΠΊ β1. ΠΠ°Π·ΠΎΠ²ΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ (ΠΎΡΠ΅Π½ΠΊΠ° 3 ΠΈ Π²ΡΡΠ΅) #
ΠΡ Π΄Π΅Π»ΠΈΡΠ΅ ΡΡΠΎΡ ΡΠΏΠΈΠΊ Π½Π° Π΄Π²Π΅ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ (2-Ρ ΠΈ 3-Ρ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ). Π‘ΠΏΠΎΡΠΎΠ± Π΄Π΅Π»Π΅Π½ΠΈΡ Π²ΡΠ±ΠΈΡΠ°Π΅ΡΠ΅ ΡΠ°ΠΌΠΈ.
1. ΠΠ°Π·ΠΎΠ²ΡΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ #
Π―Π·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΈΠΌΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΡΠΌ ΠΈ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΈΠΏΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ.
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° ΠΈ ΠΈΠΌΠ΅Π΅Ρ ΠΎΠ΄Π½Ρ ΡΠΎΡΠΊΡ Π²Ρ ΠΎΠ΄Π°
- ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π³Π»Π°Π²Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠ°ΠΊ Π² C/C++
- ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π±Π»ΠΎΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠ°ΠΊ Π² Pascal
2. ΠΠ°Π·ΠΎΠ²ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ #
ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΡΠ±ΡΠ°ΡΡ Π΄Π»Ρ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠ·ΡΠΊΠ° ΡΡΠΈ Π±Π°Π·ΠΎΠ²ΡΡ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ . ΠΠ°ΡΠΈΠ°Π½ΡΡ:
- Π¦Π΅Π»ΡΠ΅ ΡΠΈΡΠ»Π°, ΡΠΈΡΠ»Π° Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ ΡΠΎΡΠΊΠΎΠΉ ΠΈ ΡΡΡΠΎΠΊΠΈ
- Π¦Π΅Π»ΡΠ΅ ΡΠΈΡΠ»Π°, ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΈ ΡΡΡΠΎΠΊΠΈ
- Π¦Π΅Π»ΡΠ΅ ΡΠΈΡΠ»Π°, Π±ΡΠ»Π΅Π² ΡΠΈΠΏ ΠΈ ΡΡΡΠΎΠΊΠΈ
- Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ, Π±ΡΠ»Π΅Π² ΡΠΈΠΏ ΠΈ ΡΡΡΠΎΠΊΠΈ
- Π¦Π΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° ΡΠΎ Π·Π½Π°ΠΊΠΎΠΌ, ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π° Π±Π΅Π· Π·Π½Π°ΠΊΠ° ΠΈ ΡΡΡΠΎΠΊΠΈ
ΠΡΠ»ΠΈ Π²Ρ Π²ΡΠ±ΡΠ°Π»ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ Π±ΡΠ»Π΅Π²Π° ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ , ΡΠΎ ΡΡΡΠΈΡΠ΅: ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π»ΠΈΡΡ Π²ΠΎ 2-ΠΌ ΡΠΏΠΈΠΊΠ΅.
3. ΠΠ²ΠΎΠ΄-Π²ΡΠ²ΠΎΠ΄ #
- ΠΡΡΡ Π»ΠΈΡΠ΅ΡΠ°Π»Ρ Π²ΡΠ΅Ρ Π±Π°Π·ΠΎΠ²ΡΡ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ
- ΠΡΡΡ ΡΡΠ΅Π΄ΡΡΠ²Π° Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° Π»ΠΈΡΠ΅ΡΠ°Π»ΠΎΠ² Π²ΡΠ΅Ρ Π±Π°Π·ΠΎΠ²ΡΡ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ
- ΠΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΈ Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ
4. ΠΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π°Π΄ ΡΠΈΡΠ»Π°ΠΌΠΈ #
ΠΡΠΎ Π½ΡΠΆΠ½ΠΎ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΠΈΡΠ»ΠΎΠ²ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ .
- ΠΡΡΡ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π°Π΄ ΡΠΈΡΠ»Π°ΠΌΠΈ
- ΠΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΈ ΡΠΊΠΎΠ±ΠΊΠΈ Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ°
- ΠΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ
5. ΠΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π°Π΄ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ #
ΠΡΠΎ Π½ΡΠΆΠ½ΠΎ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΡΡΠΎΠΊΠΎΠ²ΡΠΉ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ .
- ΠΡΡΡ ΡΡΠ΅Π΄ΡΡΠ²Π° Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΠ°ΡΠ΅Π½Π°ΡΠΈΠΈ, Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»ΠΈΠ½Ρ ΡΡΡΠΎΠΊ
- ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π²Π²ΠΎΠ΄-Π²ΡΠ²ΠΎΠ΄ ΡΡΡΠΎΠΊ
6. ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ #
- ΠΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΡΠ²Π»ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅
- ΠΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ
- ΠΠΏΠΈΡΠ°Π½Π° ΡΠ΅ΠΌΠ°Π½ΡΠΈΠΊΠ° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ , ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠΉ ΠΈ ΠΎΠ±Π»Π°ΡΡΠ΅ΠΉ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ
ΠΠΎΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π½Π° Π΄Π²Π΅ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ:
- ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ (mutable) β ΡΡΠΎ ΠΈ Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅
- Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ (immutable) β ΠΈΡ Π΄ΠΎΠΏΡΡΠΊΠ°Π΅ΡΡΡ Π½Π°Π·ΡΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ°ΠΌΠΈ
ΠΠΏΠΈΠΊ β2. ΠΠΎΠ½ΡΡΠΎΠ»Ρ ΠΏΠΎΡΠΎΠΊΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ (ΠΎΡΠ΅Π½ΠΊΠ° 4 ΠΈ Π²ΡΡΠ΅) #
1. Π€ΡΠ½ΠΊΡΠΈΠΈ #
- ΠΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΠΈ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
- ΠΠ»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ Π΄ΠΎΡΡΡΠΏΠ½Π° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ return
- Π‘Π΅ΠΌΠ°Π½ΡΠΈΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΉ ΡΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Π½Π° β Π²ΠΊΠ»ΡΡΠ°Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΈ Π²ΠΎΠ·Π²ΡΠ°Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ
2. ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ #
- ΠΡΡΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Β«ΠΈΒ», Β«ΠΈΠ»ΠΈΒ», Β«Π½Π΅Β»
- ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Β«ΠΈΒ», Β«ΠΈΠ»ΠΈΒ» Π²ΡΡΠΈΡΠ»ΡΡΡΡΡ ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΊΠΎΠΉ ΡΡ Π΅ΠΌΠ΅ (short-circuit evaluation)
- ΠΡΠ»ΠΈ Π΅ΡΡΡ Π±ΡΠ»Π΅Π² ΡΠΈΠΏ, ΡΠΎ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π½ΠΈΠΌ. Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΌ ΡΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½ΡΡ .
- ΠΡΠ»ΠΈ Π΅ΡΡΡ Π±ΡΠ»Π΅Π² ΡΠΈΠΏ, ΡΠΎ Π΅ΡΡΡ ΠΈ Π»ΠΈΡΠ΅ΡΠ°Π»Ρ Π΄Π»Ρ Π½Π΅Π³ΠΎ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
true/false)
3. ΠΠ΅ΡΠ²Π»Π΅Π½ΠΈΡ #
- ΠΡΡΡ Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΡ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ if..then..else
- Π‘Π΅ΠΌΠ°Π½ΡΠΈΠΊΠ° Π²Π΅ΡΠ²Π»Π΅Π½ΠΈΠΉ ΡΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Π½Π°
4. Π¦ΠΈΠΊΠ»Ρ #
- ΠΡΡΡ ΡΠΈΠΊΠ»Ρ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ while
- Π‘Π΅ΠΌΠ°Π½ΡΠΈΠΊΠ° ΡΠΈΠΊΠ»ΠΎΠ² ΡΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Π½Π°
ΠΠΏΠΈΠΊ β3. Π‘ΠΎΡΡΠ°Π²Π½ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ (ΠΎΡΠ΅Π½ΠΊΠ° 5) #
1. ΠΠ°ΡΡΠΈΠ²Ρ #
- ΠΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· Π»ΡΠ±ΠΎΠ³ΠΎ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π΄Π°Π½Π½ΡΡ
- ΠΡΡΡ Π»ΠΈΡΠ΅ΡΠ°Π» Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈΠ· Π½Π°Π±ΠΎΡΠ° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ
- ΠΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π½Π° ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ Π½Π° Π·Π°ΠΏΠΈΡΡ ΡΠ΅ΡΠ΅Π· ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ:
myArray[index]
2. Π‘ΡΡΡΠΊΡΡΡΡ #
- ΠΠΎΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°ΡΡ ΡΠΈΠΏ ΡΡΡΡΠΊΡΡΡΡ Ρ ΡΠΈΠΏΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΠΏΠΎΠ»ΡΠΌΠΈ
- ΠΡΡΡ Π»ΠΈΡΠ΅ΡΠ°Π» Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡΡ ΠΏΡΡΡΠΌ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π²ΡΠ΅Ρ Π΅Ρ ΠΏΠΎΠ»Π΅ΠΉ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ
- ΠΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΏΠΎΠ»Ρ ΡΡΡΡΠΊΡΡΡΡ Π½Π° ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ Π½Π° Π·Π°ΠΏΠΈΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
myObject.fieldΠΈΠ»ΠΈmyObject->field
ΠΠ΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ #
ΠΠΎ ΠΆΠ΅Π»Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π²Π½Π΅ΡΡΠΈ ΡΠ²ΠΎΠΈ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
- Π‘Π΄Π΅Π»Π°ΡΡ for-ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠΈΠΊΠ» Π΄Π»Ρ ΠΎΠ±Ρ ΠΎΠ΄Π° ΠΌΠ°ΡΡΠΈΠ²Π°
- Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅ΡΠ½ΡΠ΅ ΠΌΠ°ΡΡΠΈΠ²Ρ
ΠΡΠΈ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ Π±ΡΠ΄ΡΡ Π²ΠΎΠ·Π½Π°Π³ΡΠ°ΠΆΠ΄Π΅Π½Ρ Π±ΠΎΠ½ΡΡΠ½ΡΠΌΠΈ Π±Π°Π»Π»Π°ΠΌΠΈ, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΠΈ Π±Π΅Π· ΠΏΡΠΎΠ±Π΅Π»ΠΎΠ² Π² ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ.