ΠΠ΅ΡΠΎΡΠ°ΡΠ½ΠΎ,
ΠΠΎ ΠΎΠ²Π°Π° ΡΡΠ°ΡΠΈΡΠ°, ΠΊΠΎΡΠ° Π΅ ΠΏΠΎ ΠΏΡΠΈΡΠΎΠ΄Π° ΠΏΡΠ΅Π³Π»Π΅Π΄, ΡΠ΅ ΡΠ΅ ΠΎΠ±ΠΈΠ΄Π΅ΠΌΠ΅ Π΄Π° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌΠ΅ Π½Π΅ΠΊΠΎΠΈ ΠΎΠ΄ ΠΎΡΠ½ΠΎΠ²ΠΈΡΠ΅ Π½Π° Eclipse Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° ΠΊΠ°ΠΊΠΎ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π·Π° Π³ΡΠ°Π΄Π΅ΡΠ΅ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½ΠΈ ΡΠ°Π·Π²ΠΎΡΠ½ΠΈ Π°Π»Π°ΡΠΊΠΈ ΠΈ Π΄Π° Π΄Π°Π΄Π΅ΠΌΠ΅ ΠΏΠΎΡΠ΅ΡΠ½Π° ΠΈΠ΄Π΅ΡΠ° Π·Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅ Π½Π° Eclipse ΠΊΠΎΠΈ ΡΠ° ΡΠΎΡΠΌΠΈΡΠ°Π°Ρ ΠΎΡΠ½ΠΎΠ²Π°ΡΠ° Π½Π° ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ°ΡΠ°. ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π·Π° βΠ½ΠΎΠ²ΠΈΠΎΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡβ 1C: Enterprise.
ΠΠΎΠ²Π΅Π΄ Π²ΠΎ Eclipse Architecture
ΠΡΠ΄Π΅ ΠΏΡΠ²ΠΎ Π΄Π° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌΠ΅ Π½Π΅ΠΊΠΎΠΈ ΠΎΠΏΡΡΠΈ Π°ΡΠΏΠ΅ΠΊΡΠΈ Π½Π° Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° Π½Π° Eclipse ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ Π³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΡ
ΠΡΠ΅Π΄ ΡΓ¨, ΡΡΠ΅Π±Π° Π΄Π° ΡΠ΅ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈ Π΄Π΅ΠΊΠ° Eclipse ΡΠ΅ ΠΊΠ°ΡΠ°ΠΊΡΠ΅ΡΠΈΠ·ΠΈΡΠ° ΡΠΎ ΠΏΡΠΈΠ»ΠΈΡΠ½ΠΎ ΡΠ°ΡΠ½ΠΎ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΠΎΠ½ΡΠΊΠΎ ΡΠ»ΠΎΠ΅Π²ΠΈΡΠΎΡΡ, ΡΠΎ ΠΎΠ΄Π²ΠΎΡΡΠ²Π°ΡΠ΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΠ° Π½Π΅Π·Π°Π²ΠΈΡΠ½Π° ΠΎΠ΄ ΡΠ°Π·ΠΈΠΊΠΎΡ ΠΎΠ΄ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΠ° Π΄ΠΈΠ·Π°ΡΠ½ΠΈΡΠ°Π½Π° Π΄Π° ΠΏΠΎΠ΄Π΄ΡΠΆΡΠ²Π° ΠΎΠ΄ΡΠ΅Π΄Π΅Π½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΡΠΊΠΈ ΡΠ°Π·ΠΈΡΠΈ ΠΈ ΠΎΠ΄Π²ΠΎΡΡΠ²Π°ΡΠ΅ Π½Π° βΡΠ°Π΄ΡΠ΅Π½ΠΈΡΠ΅β ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠ½ΠΈ ΠΎΠ΄ UI ΠΎΠ΄ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅ ΠΏΠΎΠ²ΡΠ·Π°Π½ΠΈ ΡΠΎ ΠΏΠΎΠΌΠΎΡΠ΅Π½ ΠΊΠΎΡΠΈΡΠ½ΠΈΡΠΊΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ.
Π’Π°ΠΊΠ°, ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Eclipse Π΄Π΅ΡΠΈΠ½ΠΈΡΠ° Π·Π°Π΅Π΄Π½ΠΈΡΠΊΠ° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° Π½Π΅Π·Π°Π²ΠΈΡΠ½Π° ΠΎΠ΄ ΡΠ°Π·ΠΈΠΊΠΎΡ, Π° Π°Π»Π°ΡΠΊΠΈΡΠ΅ Π·Π° ΡΠ°Π·Π²ΠΎΡ Π½Π° Java Π΄ΠΎΠ΄Π°Π²Π°Π°Ρ ΡΠ΅Π»ΠΎΡΠ½ΠΎ ΠΎΠΏΡΠ΅ΠΌΠ΅Π½ Java IDE Π½Π° Eclipse. Π ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Eclipse ΠΈ JDT ΡΠ΅ ΡΠΎΡΡΠΎΡΠ°Ρ ΠΎΠ΄ Π½Π΅ΠΊΠΎΠ»ΠΊΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ, ΠΎΠ΄ ΠΊΠΎΠΈ ΡΠ΅ΠΊΠΎΡΠ° ΠΏΡΠΈΠΏΠ°ΡΠ° ΠΈΠ»ΠΈ Π½Π° βΡΠ°Π΄ΡΠΎβ Π½Π΅Π·Π°Π²ΠΈΡΠ½ΠΎ ΠΎΠ΄ UI ΠΈΠ»ΠΈ Π½Π° ΡΠ»ΠΎΡ Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ (Π‘Π»ΠΈΠΊΠ° 1).
ΠΡΠΈΠ·. 1. Eclipse Platform ΠΈ JDT
ΠΡΠ΄Π΅ Π΄Π° Π³ΠΈ Π½Π°Π²Π΅Π΄Π΅ΠΌΠ΅ Π³Π»Π°Π²Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Eclipse:
- Π’ΡΠ°Π΅ΡΠ΅ β ΠΠ° Π΄Π΅ΡΠΈΠ½ΠΈΡΠ° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° ΠΏΡΠΈΠΊΠ»ΡΡΠΎΠΊΠΎΡ. ΠΠ°ΡΠ΅ΠΌΠ½ΡΠ²Π°ΡΠ΅ΡΠΎ ΡΠ΅ ΠΊΠ°ΡΠ°ΠΊΡΠ΅ΡΠΈΠ·ΠΈΡΠ° ΡΠΎ ΠΌΠΎΠ΄ΡΠ»Π°ΡΠ½Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°. ΠΠΎ ΡΡΡΡΠΈΠ½Π°, Eclipse Π΅ Π·Π±ΠΈΡΠΊΠ° Π½Π° βΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ½ΠΈ ΡΠΎΡΠΊΠΈβ ΠΈ βΠ΅ΠΊΡΡΠ΅Π½Π·ΠΈΠΈβ.
- Π Π°Π±ΠΎΡΠ΅Π½ ΠΏΡΠΎΡΡΠΎΡ β Π£ΠΏΡΠ°Π²ΡΠ²Π° ΡΠΎ Π΅Π΄Π΅Π½ ΠΈΠ»ΠΈ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈ. ΠΡΠΎΠ΅ΠΊΡΠΎΡ ΡΠ΅ ΡΠΎΡΡΠΎΠΈ ΠΎΠ΄ ΠΏΠ°ΠΏΠΊΠΈ ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΠΊΠΎΠΈ ΡΠ΅ ΠΌΠ°ΠΏΠΈΡΠ°Π½ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π²ΠΎ Π΄Π°ΡΠΎΡΠ΅ΡΠ½ΠΈΠΎΡ ΡΠΈΡΡΠ΅ΠΌ.
- Π‘ΡΠ°Π½Π΄Π°ΡΠ΄Π΅Π½ ΠΏΡΠΈΠ±ΠΎΡ ΡΠΎ Π°Π»Π°ΡΠΊΠΈ (SWT) - ΠΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ Π½Π° ΠΊΠΎΡΠΈΡΠ½ΠΈΡΠΊΠΈΠΎΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½ΠΈ ΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΈΠΎΡ ΡΠΈΡΡΠ΅ΠΌ.
- JFace β ΠΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° Π³ΠΎΠ»Π΅ΠΌ Π±ΡΠΎΡ ΡΠ°ΠΌΠΊΠΈ Π·Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½ΠΈ Π²ΡΠ· SWT.
- Π°Π»Π°ΡΠΊΠΈ β ΠΠ° Π΄Π΅ΡΠΈΠ½ΠΈΡΠ° ΠΏΠ°ΡΠ°Π΄ΠΈΠ³ΠΌΠ°ΡΠ° Π½Π° Eclipse UI: ΡΡΠ΅Π΄Π½ΠΈΡΠΈ, ΠΏΠΎΠ³Π»Π΅Π΄ΠΈ, ΠΏΠ΅ΡΡΠΏΠ΅ΠΊΡΠΈΠ²ΠΈ.
ΠΠΎΡΠ° Π΄Π° ΡΠ΅ ΠΊΠ°ΠΆΠ΅ Π΄Π΅ΠΊΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Eclipse ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° ΠΈ ΠΌΠ½ΠΎΠ³Ρ Π΄ΡΡΠ³ΠΈ ΠΊΠΎΡΠΈΡΠ½ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π·Π° Π³ΡΠ°Π΄Π΅ΡΠ΅ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½ΠΈ ΡΠ°Π·Π²ΠΎΡΠ½ΠΈ Π°Π»Π°ΡΠΊΠΈ, Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΡΠΈ Debug, Compare, Search ΠΈ Team. ΠΠΎΡΠ΅Π±Π½ΠΎ ΡΡΠ΅Π±Π° Π΄Π° ΡΠ΅ ΡΠΏΠΎΠΌΠ΅Π½Π΅ JFace Text - ΠΎΡΠ½ΠΎΠ²Π°ΡΠ° Π·Π° Π³ΡΠ°Π΄Π΅ΡΠ΅ βΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ ΡΡΠ΅Π΄Π½ΠΈΡΠΈβ Π½Π° ΠΈΠ·Π²ΠΎΡΠ½ΠΈΠΎΡ ΠΊΠΎΠ΄. ΠΠ° ΠΆΠ°Π», Π΄ΡΡΠΈ ΠΈ ΠΏΠΎΠ²ΡΡΠ½ΠΎ ΠΈΡΠΏΠΈΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΎΠ²ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ, ΠΊΠ°ΠΊΠΎ ΠΈ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅ Π½Π° ΡΠ»ΠΎΡΠΎΡ Π½Π° ΠΊΠΎΡΠΈΡΠ½ΠΈΡΠΊΠΈΠΎΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ, Π½Π΅ Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎ ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° ΠΎΠ²ΠΎΡ Π½Π°ΠΏΠΈΡ, ΡΠ°ΠΊΠ° ΡΡΠΎ Π²ΠΎ ΠΎΡΡΠ°ΡΠΎΠΊΠΎΡ ΠΎΠ΄ ΠΎΠ²ΠΎΡ Π΄Π΅Π» ΡΠ΅ ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠΌΠ΅ Π½Π° ΠΏΡΠ΅Π³Π»Π΅Π΄ Π½Π° Π³Π»Π°Π²Π½ΠΈΡΠ΅ βΡΠ°Π΄ΡΠ΅Π½ΠΈβ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Eclipse ΠΈ JDT.
ΠΡΠ½ΠΎΠ²Π½ΠΎ ΡΡΠ°Π΅ΡΠ΅
ΠΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° ΠΏΡΠΈΠΊΠ»ΡΡΠΎΠΊΠΎΡ Eclipse ΡΠ΅ Π·Π°ΡΠ½ΠΎΠ²Π° Π½Π°
ΠΡΠ½ΠΎΠ²Π΅Π½ ΡΠ°Π±ΠΎΡΠ΅Π½ ΠΏΡΠΎΡΡΠΎΡ
Π Π΅ΡΠΈΡΠΈ ΡΠ΅ΠΊΠΎΡΠ° ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½Π° ΡΠ°Π·Π²ΠΎΡΠ½Π° ΡΡΠ΅Π΄ΠΈΠ½Π° ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½Π° Π½Π° Π²ΡΠ²ΠΎΡ Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Eclipse ΡΠ°Π±ΠΎΡΠΈ ΡΠΎ ΡΠ°Π±ΠΎΡΠ½ΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ Π½Π° Eclipse. Π’ΠΎΠ° Π΅ ΡΠ°Π±ΠΎΡΠ½ΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ ΠΊΠΎΡ ΠΎΠ±ΠΈΡΠ½ΠΎ Π³ΠΎ ΡΠΎΠ΄ΡΠΆΠΈ ΠΈΠ·Π²ΠΎΡΠ½ΠΈΠΎΡ ΠΊΠΎΠ΄ Π½Π° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ° ΡΠ°Π·Π²ΠΈΠ΅Π½Π° Π²ΠΎ IDE. Π Π°Π±ΠΎΡΠ½ΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ ΡΠ΅ ΠΌΠ°ΠΏΠΈΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π½Π° Π΄Π°ΡΠΎΡΠ΅ΡΠ΅Π½ ΡΠΈΡΡΠ΅ΠΌ ΠΈ ΡΠ΅ ΡΠΎΡΡΠΎΠΈ ΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠΈ ΠΊΠΎΠΈ ΡΠΎΠ΄ΡΠΆΠ°Ρ ΠΏΠ°ΠΏΠΊΠΈ ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ. ΠΠ²ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈ, ΠΏΠ°ΠΏΠΊΠΈ ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΡΠ΅ Π½Π°ΡΠ΅ΠΊΡΠ²Π°Π°Ρ ΡΠ΅ΡΡΡΡΠΈ ΡΠ°Π±ΠΎΡΠ΅Π½ ΠΏΡΠΎΡΡΠΎΡ. ΠΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°ΡΠ° Π½Π° ΡΠ°Π±ΠΎΡΠ½ΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ Π²ΠΎ Eclipse ΡΠ»ΡΠΆΠΈ ΠΊΠ°ΠΊΠΎ ΠΊΠ΅Ρ Π²ΠΎ ΠΎΠ΄Π½ΠΎΡ Π½Π° Π΄Π°ΡΠΎΡΠ΅ΡΠ½ΠΈΠΎΡ ΡΠΈΡΡΠ΅ΠΌ, ΡΡΠΎ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π΄Π° ΡΠ΅ Π·Π°Π±ΡΠ·Π° ΠΏΡΠ΅ΠΌΠΈΠ½ΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° Π΄ΡΠ²ΠΎΡΠΎ Π½Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅. ΠΠΎΠΊΡΠ°Ρ ΡΠΎΠ°, ΡΠ°Π±ΠΎΡΠ½ΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° Π³ΠΎΠ»Π΅ΠΌ Π±ΡΠΎΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΡΡΠ»ΡΠ³ΠΈ, Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΡΠΈ
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΡΠ° Core Resources (ΠΏΡΠΈΠΊΠ»ΡΡΠΎΠΊ org.eclipse.core.resources) Π΅ ΠΎΠ΄Π³ΠΎΠ²ΠΎΡΠ½Π° Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ° Π½Π° ΡΠ°Π±ΠΎΡΠ½ΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ ΠΈ Π½Π΅Π³ΠΎΠ²ΠΈΡΠ΅ ΡΠ΅ΡΡΡΡΠΈ. ΠΡΠΎΠ±Π΅Π½ΠΎ, ΠΎΠ²Π°Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΡΠΊΠΈ ΠΏΡΠΈΡΡΠ°ΠΏ Π΄ΠΎ ΡΠ°Π±ΠΎΡΠ½ΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ Π²ΠΎ ΡΠΎΡΠΌΠ° ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° ΡΠ΅ΡΡΡΡΠΈ. ΠΠ° Π΄Π° ΡΠ°Π±ΠΎΡΠ°Ρ Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠΎ ΠΎΠ²ΠΎΡ ΠΌΠΎΠ΄Π΅Π», Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠΈΡΠ΅ ΠΈΠΌ ΡΡΠ΅Π±Π° Π΅Π΄Π½ΠΎΡΡΠ°Π²Π΅Π½ Π½Π°ΡΠΈΠ½ Π΄Π° ΠΏΡΠΈΠΊΠ°ΠΆΠ°Ρ Π²ΡΡΠΊΠ° Π΄ΠΎ ΡΠ΅ΡΡΡΡ. ΠΠΎ ΠΎΠ²ΠΎΡ ΡΠ»ΡΡΠ°Ρ, Π±ΠΈ Π±ΠΈΠ»ΠΎ ΠΏΠΎΠΆΠ΅Π»Π½ΠΎ Π΄Π° ΡΠ΅ ΡΠΊΡΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΡ ΡΡΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΡΠ° ΡΠΊΠ»Π°Π΄ΠΈΡΠ° ΡΠΎΡΡΠΎΡΠ±Π°ΡΠ° Π½Π° ΡΠ΅ΡΡΡΡΠΎΡ Π²ΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΎΡ ΠΎΠ΄ ΠΏΡΠΈΡΡΠ°ΠΏ Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΡ. ΠΠΎ ΡΠΏΡΠΎΡΠΈΠ²Π½ΠΎ, Π²ΠΎ ΡΠ»ΡΡΠ°Ρ Π½Π°, Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, Π±ΡΠΈΡΠ΅ΡΠ΅ Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°, ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΡ Π±ΠΈ ΠΌΠΎΠΆΠ΅Π» Π΄Π° ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈ Π΄Π° Π΄ΡΠΆΠΈ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΡΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ Π½Π΅ Π΅ Π²ΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΎΡ, ΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈΡΠ΅ ΡΡΠΎ ΡΠ»Π΅Π΄ΡΠ²Π°Π°Ρ. Eclipse Π³ΠΎ ΡΠ΅ΡΠ°Π²Π° ΠΎΠ²ΠΎΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ Π½Π΅ΡΡΠΎ Π½Π°ΡΠ΅ΡΠ΅Π½ΠΎ ΡΠ΅ ΡΠΏΡΠ°Π²ΠΈ ΡΠΎ ΡΠ΅ΡΡΡΡ. Π Π°ΡΠΊΠ°ΡΠ° Π΄Π΅Π»ΡΠ²Π° ΠΊΠ°ΠΊΠΎ ΠΊΠ»ΡΡ (ΡΠ° Π·Π½Π°Π΅ ΡΠ°ΠΌΠΎ ΠΏΠ°ΡΠ΅ΠΊΠ°ΡΠ° Π΄ΠΎ ΡΠ΅ΡΡΡΡΠΎΡ Π²ΠΎ ΡΠ°Π±ΠΎΡΠ½ΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ) ΠΈ ΡΠ΅Π»ΠΎΡΠ½ΠΎ Π³ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ° ΠΏΡΠΈΡΡΠ°ΠΏΠΎΡ Π΄ΠΎ Π²Π½Π°ΡΡΠ΅ΡΠ½ΠΈΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΎΡ, ΠΊΠΎΡ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΡΠΊΠ»Π°Π΄ΠΈΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΡΠΎΡΡΠΎΡΠ±Π°ΡΠ° Π½Π° ΡΠ΅ΡΡΡΡΠΎΡ. ΠΠ²ΠΎΡ Π΄ΠΈΠ·Π°ΡΠ½ Π΅ Π²Π°ΡΠΈΡΠ°ΡΠΈΡΠ° Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΎΡ
ΠΡΠΈΠ·. Π‘Π»ΠΈΠΊΠ° 2 Π³ΠΎ ΠΈΠ»ΡΡΡΡΠΈΡΠ° ΠΈΠ΄ΠΈΠΎΠΌΠΎΡ Π Π°ΡΠΊΠ°/ΡΠ΅Π»ΠΎ ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ²Π° Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΎΡ Π½Π° ΡΠ΅ΡΡΡΡΠΈ. ΠΠ½ΡΠ΅ΡΡΠ΅ΡΡΠΎΡ IResource ΡΠ° ΠΏΡΠ΅ΡΡΡΠ°Π²ΡΠ²Π° ΡΠ°ΡΠΊΠ°ΡΠ° Π½Π° ΡΠ΅ΡΡΡΡΠΎΡ ΠΈ Π΅ API, Π·Π° ΡΠ°Π·Π»ΠΈΠΊΠ° ΠΎΠ΄ ΠΊΠ»Π°ΡΠ°ΡΠ° Resource, ΠΊΠΎΡΠ° Π³ΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ° ΠΎΠ²ΠΎΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ, ΠΈ ΠΊΠ»Π°ΡΠ°ΡΠ° ResourceInfo, ΠΊΠΎΡΠ° Π³ΠΎ ΠΏΡΠ΅ΡΡΡΠ°Π²ΡΠ²Π° ΡΠ΅Π»ΠΎΡΠΎ, ΠΊΠΎΠΈ Π½Π΅ ΡΠ΅ API. ΠΠ°Π³Π»Π°ΡΡΠ²Π°ΠΌΠ΅ Π΄Π΅ΠΊΠ° ΡΠ°ΡΠΊΠ°ΡΠ° ΡΠ° Π·Π½Π°Π΅ ΡΠ°ΠΌΠΎ ΠΏΠ°ΡΠ΅ΠΊΠ°ΡΠ° Π΄ΠΎ ΡΠ΅ΡΡΡΡΠΎΡ Π²ΠΎ ΠΎΠ΄Π½ΠΎΡ Π½Π° ΠΊΠΎΡΠ΅Π½ΠΎΡ Π½Π° ΡΠ°Π±ΠΎΡΠ½ΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ ΠΈ Π½Π΅ ΡΠΎΠ΄ΡΠΆΠΈ Π²ΡΡΠΊΠ° Π΄ΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈΡΠ΅ Π·Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅. ΠΠ±ΡΠ΅ΠΊΡΠΈΡΠ΅ ΡΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅ ΡΠΎΡΠΌΠΈΡΠ°Π°Ρ ΡΠ°ΠΊΠ°Π½Π°ΡΠ΅ΡΠ΅Π½ΠΎ βΠ΅Π»Π΅ΠΌΠ΅Π½ΡΠ½ΠΎ Π΄ΡΠ²ΠΎβ. ΠΠ²Π°Π° ΡΡΡΡΠΊΡΡΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ Π΅ ΡΠ΅Π»ΠΎΡΠ½ΠΎ ΠΌΠ°ΡΠ΅ΡΠΈΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π²ΠΎ ΠΌΠ΅ΠΌΠΎΡΠΈΡΠ°ΡΠ°. ΠΠ° Π΄Π° ΡΠ΅ Π½Π°ΡΠ΄Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠΎΡ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅ ΡΡΠΎ ΠΎΠ΄Π³ΠΎΠ²Π°ΡΠ° Π½Π° ΡΠ°ΡΠΊΠ°ΡΠ°, Π΄ΡΠ²ΠΎΡΠΎ Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅ ΡΠ΅ ΠΏΠΎΠΌΠΈΠ½ΡΠ²Π° ΡΠΏΠΎΡΠ΅Π΄ ΠΏΠ°ΡΠ΅ΠΊΠ°ΡΠ° Π·Π°ΡΡΠ²Π°Π½Π° Π²ΠΎ ΡΠ°Π° ΡΠ°ΡΠΊΠ°.
ΠΡΠΈΠ·. 2. IRResource ΠΈ ResourceInfo
ΠΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅ Π²ΠΈΠ΄ΠΈΠΌΠ΅ ΠΏΠΎΠ΄ΠΎΡΠ½Π°, ΠΎΡΠ½ΠΎΠ²Π½ΠΈΠΎΡ Π΄ΠΈΠ·Π°ΡΠ½ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΎΡ Π½Π° ΡΠ΅ΡΡΡΡΠΈ (ΠΌΠΎΠΆΠ΅ΠΌΠ΅ Π΄Π° Π³ΠΎ Π½Π°ΡΠ΅ΡΠ΅ΠΌΠ΅ Π±Π°Π·ΠΈΡΠ°Π½ Π½Π° ΡΠ°ΡΠΊΠ°) ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ Π²ΠΎ Eclipse ΠΈ Π·Π° Π΄ΡΡΠ³ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ. ΠΠ°ΡΠ΅Π³Π°, Π΄Π° Π½Π°Π²Π΅Π΄Π΅ΠΌΠ΅ Π½Π΅ΠΊΠΎΠΈ ΠΎΠ΄ ΠΊΠ°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΡΠ½ΠΈΡΠ΅ ΡΠ²ΠΎΡΡΡΠ²Π° Π½Π° ΠΎΠ²ΠΎΡ Π΄ΠΈΠ·Π°ΡΠ½:
- Π Π°ΡΠΊΠ°ΡΠ° Π΅ ΠΏΡΠ΅Π΄ΠΌΠ΅Ρ Π½Π° Π²ΡΠ΅Π΄Π½ΠΎΡΡ. ΠΡΠ΅Π΄Π½ΠΎΡΠ½ΠΈΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΈ ΡΠ΅ Π½Π΅ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΈ ΡΠΈΡΠ° Π΅Π΄Π½Π°ΠΊΠ²ΠΎΡΡ Π½Π΅ ΡΠ΅ Π·Π°ΡΠ½ΠΎΠ²Π° Π½Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠ΅Ρ. Π’Π°ΠΊΠ²ΠΈΡΠ΅ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠΈ ΠΌΠΎΠΆΠ°Ρ Π±Π΅Π·Π±Π΅Π΄Π½ΠΎ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ°Ρ ΠΊΠ°ΠΊΠΎ ΠΊΠ»ΡΡ Π²ΠΎ Ρ Π°ΡΠΈΡΠ°Π½ΠΈ ΠΊΠΎΠ½ΡΠ΅ΡΠ½Π΅ΡΠΈ. ΠΠΎΠ²Π΅ΡΠ΅ΠΊΡΠ°ΡΠ½ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠΎΡΠΈ Π½Π° ΡΠ°ΡΠΊΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠΏΠ°ΡΡΠ²Π°Π°Ρ Π½Π° ΠΈΡΡΠΈΠΎΡ ΡΠ΅ΡΡΡΡ. ΠΠ° Π΄Π° Π³ΠΈ ΡΠΏΠΎΡΠ΅Π΄ΠΈΡΠ΅, ΡΡΠ΅Π±Π° Π΄Π° Π³ΠΎ ΠΊΠΎΡΠΈΡΡΠΈΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΡ equals(Object).
- Handle Π³ΠΎ Π΄Π΅ΡΠΈΠ½ΠΈΡΠ° ΠΎΠ΄Π½Π΅ΡΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° ΡΠ΅ΡΡΡΡΠΎΡ, Π½ΠΎ Π½Π΅ ΡΠΎΠ΄ΡΠΆΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΡΠΎΡΡΠΎΡΠ±Π°ΡΠ° Π½Π° ΡΠ΅ΡΡΡΡΠΎΡ (Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½ΠΈΠΎΡ ΠΏΠΎΠ΄Π°ΡΠΎΠΊ ΡΡΠΎ Π³ΠΎ ΡΠΊΠ»Π°Π΄ΠΈΡΠ° Π΅ βΠΊΠ»ΡΡΠΎΡβ, ΠΏΠ°ΡΠ΅ΠΊΠ°ΡΠ° Π΄ΠΎ ΡΠ΅ΡΡΡΡΠΎΡ).
- Π Π°ΡΠΊΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΎΠ΄Π½Π΅ΡΡΠ²Π° Π½Π° ΡΠ΅ΡΡΡΡ ΡΡΠΎ Π½Π΅ ΠΏΠΎΡΡΠΎΠΈ (ΠΈΠ»ΠΈ ΡΠ΅ΡΡΡΡ ΡΡΠΎ ΡΓ¨ ΡΡΡΠ΅ Π½Π΅ Π΅ ΡΠΎΠ·Π΄Π°Π΄Π΅Π½ ΠΈΠ»ΠΈ ΡΠ΅ΡΡΡΡ ΡΡΠΎ Π²Π΅ΡΠ΅ Π΅ ΠΈΠ·Π±ΡΠΈΡΠ°Π½). ΠΠΎΡΡΠΎΠ΅ΡΠ΅ΡΠΎ Π½Π° ΡΠ΅ΡΡΡΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈ ΡΠΎ ΠΏΠΎΠΌΠΎΡ Π½Π° ΠΌΠ΅ΡΠΎΠ΄ΠΎΡ IResource.exists().
- ΠΠ΅ΠΊΠΎΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°Π°Ρ ΡΠ°ΠΌΠΎ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈΡΠ΅ Π·Π°ΡΡΠ²Π°Π½ΠΈ Π²ΠΎ ΡΠ°ΠΌΠ°ΡΠ° ΡΠ°ΡΠΊΠ° (Ρ.Π½. ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠ°ΠΌΠΎ ΡΠΎ ΡΠ°ΡΠΊΠ°). ΠΡΠΈΠΌΠ΅ΡΠΈ ΡΠ΅ IResource.getParent(), getFullPath(), ΠΈΡΠ½. Π Π΅ΡΡΡΡΠΎΡ Π½Π΅ ΡΡΠ΅Π±Π° Π΄Π° ΠΏΠΎΡΡΠΎΠΈ Π·Π° Π΄Π° ΡΡΠΏΠ΅Π΅ ΡΠ°ΠΊΠ²Π°ΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠ°. ΠΠΏΠ΅ΡΠ°ΡΠΈΠΈΡΠ΅ Π·Π° ΠΊΠΎΠΈ Π΅ ΠΏΠΎΡΡΠ΅Π±Π΅Π½ ΡΠ΅ΡΡΡΡ Π΄Π° ΠΏΠΎΡΡΠΎΠΈ Π·Π° Π΄Π° ΡΡΠΏΠ΅Π°Ρ, ΡΡΠ»Π°Π°Ρ CoreException Π΄ΠΎΠΊΠΎΠ»ΠΊΡ ΡΠ΅ΡΡΡΡΠΎΡ Π½Π΅ ΠΏΠΎΡΡΠΎΠΈ.
Eclipse ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° Π΅ΡΠΈΠΊΠ°ΡΠ΅Π½ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·Π°ΠΌ Π·Π° ΠΈΠ·Π²Π΅ΡΡΡΠ²Π°ΡΠ΅ Π·Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π²ΠΎ ΡΠ΅ΡΡΡΡΠΈΡΠ΅ Π½Π° ΡΠ°Π±ΠΎΡΠ½ΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ (Π‘Π»ΠΈΠΊΠ° 3). Π Π΅ΡΡΡΡΠΈΡΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½Π°Ρ ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΎ ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° Π΄Π΅ΡΡΡΠ²Π° ΠΈΠ·Π²ΡΡΠ΅Π½ΠΈ Π²ΠΎ ΡΠ°ΠΌΠΈΠΎΡ Eclipse IDE ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΎ ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡΠ° ΡΠΎ Π΄Π°ΡΠΎΡΠ΅ΡΠ΅Π½ ΡΠΈΡΡΠ΅ΠΌ. ΠΠΎ Π΄Π²Π°ΡΠ° ΡΠ»ΡΡΠ°ΠΈ, Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠΈΡΠ΅ ΠΊΠΎΠΈ ΡΠ΅ ΠΏΡΠ΅ΡΠΏΠ»Π°ΡΠΈΠ»Π΅ Π½Π° ΠΈΠ·Π²Π΅ΡΡΡΠ²Π°ΡΠ° ΠΈΠΌ ΡΠ΅ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π°Π°Ρ Π΄Π΅ΡΠ°Π»Π½ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π²ΠΎ ΡΠΎΡΠΌΠ° Π½Π° βΠ΄Π΅Π»ΡΠ° Π½Π° ΡΠ΅ΡΡΡΡΠΈβ. ΠΠ΅Π»ΡΠ° Π³ΠΈ ΠΎΠΏΠΈΡΡΠ²Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ ΠΏΠΎΠΌΠ΅ΡΡ Π΄Π²Π΅ ΡΠΎΡΡΠΎΡΠ±ΠΈ Π½Π° (ΠΏΠΎΠ΄)Π΄ΡΠ²ΠΎΡΠΎ Π½Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅ Π½Π° ΡΠ°Π±ΠΎΡΠ½ΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ ΠΈ ΡΠ°ΠΌΠ°ΡΠ° Π΅ Π΄ΡΠ²ΠΎ, ΡΠΈΡΡΡΠΎ ΡΠ°Π·ΠΎΠ» ΠΎΠΏΠΈΡΡΠ²Π° ΠΏΡΠΎΠΌΠ΅Π½Π° Π½Π° ΡΠ΅ΡΡΡΡ ΠΈ ΡΠΎΠ΄ΡΠΆΠΈ Π»ΠΈΡΡΠ° Π½Π° Π΄Π΅Π»ΡΠΈ Π½Π° ΡΠ»Π΅Π΄Π½ΠΎΡΠΎ Π½ΠΈΠ²ΠΎ ΠΊΠΎΠΈ Π³ΠΈ ΠΎΠΏΠΈΡΡΠ²Π°Π°Ρ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π½Π° Π΄Π΅ΡΡΠΊΠΈΡΠ΅ ΡΠ΅ΡΡΡΡΠΈ.
ΠΡΠΈΠ·. 3. IResourceChangeEvent ΠΈ IResourceDelta
ΠΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΡ Π·Π° ΠΈΠ·Π²Π΅ΡΡΡΠ²Π°ΡΠ΅ Π±Π°Π·ΠΈΡΠ°Π½ Π½Π° Π΄Π΅Π»ΡΠ° Π½Π° ΡΠ΅ΡΡΡΡΠΈ Π³ΠΈ ΠΈΠΌΠ° ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΠΊΠ°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ:
- ΠΠ΄Π½Π° ΠΏΡΠΎΠΌΠ΅Π½Π° ΠΈ ΠΌΠ½ΠΎΠ³Ρ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΡΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈ ΡΠΎ ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π½Π° ΠΈΡΡΠ°ΡΠ° ΡΡΡΡΠΊΡΡΡΠ°, Π±ΠΈΠ΄Π΅ΡΡΠΈ Π΄Π΅Π»ΡΠ°ΡΠ° Π΅ ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½Π° ΡΠΏΠΎΡΠ΅Π΄ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΎΡ Π½Π° ΡΠ΅ΠΊΡΡΠ·ΠΈΠ²Π΅Π½ ΡΠΎΡΡΠ°Π². ΠΠ»ΠΈΠ΅Π½ΡΠΈΡΠ΅ Π½Π° ΠΏΡΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΈΡΠΈΡΠ΅ ΠΌΠΎΠΆΠ°Ρ Π΄Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠ²Π°Π°Ρ ΠΈΠ·Π²Π΅ΡΡΡΠ²Π°ΡΠ° Π·Π° ΠΏΡΠΎΠΌΠ΅Π½Π° Π½Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ ΡΠ΅ΠΊΡΡΠ·ΠΈΠ²Π½ΠΎ ΡΠΏΡΡΡΠ°ΡΠ΅ Π½ΠΈΠ· Π΄ΡΠ²ΠΎ Π½Π° Π΄Π΅Π»ΡΠΈ.
- ΠΠ΅Π»ΡΠ°ΡΠ° ΡΠΎΠ΄ΡΠΆΠΈ ΡΠ΅Π»ΠΎΡΠ½ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π½Π° ΡΠ΅ΡΡΡΡΠΎΡ, Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΡΠΈ Π³ΠΎ Π½Π΅Π³ΠΎΠ²ΠΎΡΠΎ Π΄Π²ΠΈΠΆΠ΅ΡΠ΅ ΠΈ/ΠΈΠ»ΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π²ΠΎ βΠΌΠ°ΡΠΊΠ΅ΡΠΈΡΠ΅β ΠΏΠΎΠ²ΡΠ·Π°Π½ΠΈ ΡΠΎ Π½Π΅Π³ΠΎ (Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, Π³ΡΠ΅ΡΠΊΠΈΡΠ΅ ΠΏΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΠ°ΡΠ° ΡΠ΅ ΠΏΡΠ΅ΡΡΡΠ°Π²Π΅Π½ΠΈ ΠΊΠ°ΠΊΠΎ ΠΌΠ°ΡΠΊΠ΅ΡΠΈ).
- ΠΠΈΠ΄Π΅ΡΡΠΈ ΡΠ΅ΡΠ΅ΡΠ΅Π½ΡΠΈΡΠ΅ Π·Π° ΡΠ΅ΡΡΡΡΠΈ ΡΠ΅ ΠΏΡΠ°Π²Π°Ρ ΠΏΡΠ΅ΠΊΡ ΡΠ°ΡΠΊΠ°ΡΠ°, Π΄Π΅Π»ΡΠ° ΠΏΡΠΈΡΠΎΠ΄Π½ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠΏΠ°ΡΡΠ²Π° Π½Π° Π΄Π°Π»Π΅ΡΠΈΠ½ΡΠΊΠΈ ΡΠ΅ΡΡΡΡ.
ΠΠ°ΠΊΠΎ ΡΡΠΎ Π½Π°ΡΠΊΠΎΡΠΎ ΡΠ΅ Π²ΠΈΠ΄ΠΈΠΌΠ΅, Π³Π»Π°Π²Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π½Π° Π΄ΠΈΠ·Π°ΡΠ½ΠΎΡ Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΡ Π·Π° ΠΈΠ·Π²Π΅ΡΡΡΠ²Π°ΡΠ΅ Π·Π° ΠΏΡΠΎΠΌΠ΅Π½Π° Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΎΡ Π½Π° ΡΠ΅ΡΡΡΡΠΈ ΡΠ΅ ΡΠ΅Π»Π΅Π²Π°Π½ΡΠ½ΠΈ ΠΈ Π·Π° Π΄ΡΡΠ³ΠΈΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΡΠ°ΡΠΊΠ°.
JDT Core
Π Π΅ΡΡΡΡΠ½ΠΈΠΎΡ ΠΌΠΎΠ΄Π΅Π» Π½Π° ΡΠ°Π±ΠΎΡΠ½ΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ Eclipse Π΅ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»Π΅Π½ ΡΠ°Π·ΠΈΡΠ½ΠΎ-Π°Π³Π½ΠΎΡΡΠΈΡΠΊΠΈ ΠΌΠΎΠ΄Π΅Π». JDT Core ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΡΠ° (ΠΏΡΠΈΠΊΠ»ΡΡΠΎΠΊ org.eclipse.jdt.core) ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° API Π·Π° Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡΠ° ΠΈ Π°Π½Π°Π»ΠΈΠ·Π° Π½Π° ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° ΡΠ°Π±ΠΎΡΠ½ΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ ΠΎΠ΄ Java ΠΏΠ΅ΡΡΠΏΠ΅ΠΊΡΠΈΠ²Π°, Ρ.Π½. βΠΠ°Π²Π° ΠΌΠΎΠ΄Π΅Π»β (ΠΠ°Π²Π° ΠΌΠΎΠ΄Π΅Π»). ΠΠ²ΠΎΡ API Π΅ Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°Π½ Π²ΠΎ ΠΎΠ΄Π½ΠΎΡ Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅ Π½Π° Java, Π·Π° ΡΠ°Π·Π»ΠΈΠΊΠ° ΠΎΠ΄ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΠΎΡ ΠΌΠΎΠ΄Π΅Π» Π½Π° ΡΠ΅ΡΡΡΡΠΈ API, ΠΊΠΎΡ Π΅ Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°Π½ Π²ΠΎ ΡΠΌΠΈΡΠ»Π° Π½Π° ΠΏΠ°ΠΏΠΊΠΈ ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ. ΠΠ»Π°Π²Π½ΠΈΡΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡΠΈ Π½Π° Π΄ΡΠ²ΠΎΡΠΎ Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅ Java ΡΠ΅ ΠΏΡΠΈΠΊΠ°ΠΆΠ°Π½ΠΈ Π½Π° ΡΠ». 4.
ΠΡΠΈΠ·. 4. Java Model Elements
ΠΠ°Π²Π° ΠΌΠΎΠ΄Π΅Π»ΠΎΡ ΡΠ° ΠΊΠΎΡΠΈΡΡΠΈ ΠΈΡΡΠ°ΡΠ° ΡΠ°ΡΠΊΠ°/ΡΠ΅Π»ΠΎ ΠΈΠ΄ΠΈΠΎΠΌ ΠΊΠ°ΠΊΠΎ ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΎΡ Π½Π° ΡΠ΅ΡΡΡΡΠΈ (Π‘Π»ΠΈΠΊΠ° 5). IJavaElement Π΅ ΡΠ°ΡΠΊΠ°ΡΠ°, Π° JavaElementInfo ΡΠ° ΠΈΠ³ΡΠ° ΡΠ»ΠΎΠ³Π°ΡΠ° Π½Π° ΡΠ΅Π»ΠΎΡΠΎ. ΠΠ½ΡΠ΅ΡΡΠ΅ΡΡΠΎΡ IJavaElement Π΄Π΅ΡΠΈΠ½ΠΈΡΠ° ΠΏΡΠΎΡΠΎΠΊΠΎΠ» Π·Π°Π΅Π΄Π½ΠΈΡΠΊΠΈ Π·Π° ΡΠΈΡΠ΅ Java Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ. ΠΠ΅ΠΊΠΎΠΈ ΠΎΠ΄ Π½Π΅Π³ΠΎΠ²ΠΈΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΈ ΡΠ΅ ΡΠ°ΠΌΠΎ Π·Π° ΡΠ°ΡΠΊΠΈ: getElementName(), getParent(), ΠΈΡΠ½. ΠΠ±ΡΠ΅ΠΊΡΠΎΡ JavaElementInfo ΡΠ° ΡΠΊΠ»Π°Π΄ΠΈΡΠ° ΡΠΎΡΡΠΎΡΠ±Π°ΡΠ° Π½Π° ΡΠΎΠΎΠ΄Π²Π΅ΡΠ½ΠΈΠΎΡ Π΅Π»Π΅ΠΌΠ΅Π½Ρ: Π½Π΅Π³ΠΎΠ²Π°ΡΠ° ΡΡΡΡΠΊΡΡΡΠ° ΠΈ Π°ΡΡΠΈΠ±ΡΡΠΈ.
ΠΡΠΈΠ·. 5. IJavaElement ΠΈ JavaElementInfo
ΠΠΎΠ΄Π΅Π»ΠΎΡ Java ΠΈΠΌΠ° Π½Π΅ΠΊΠΎΠΈ ΡΠ°Π·Π»ΠΈΠΊΠΈ Π²ΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°ΡΠ° Π½Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΈΠΎΡ Π΄ΠΈΠ·Π°ΡΠ½ Π½Π° ΡΠ°ΡΠΊΠ°ΡΠ°/ΡΠ΅Π»ΠΎΡΠΎ Π²ΠΎ ΡΠΏΠΎΡΠ΅Π΄Π±Π° ΡΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΎΡ Π½Π° ΡΠ΅ΡΡΡΡΠΈ. ΠΠ°ΠΊΠΎ ΡΡΠΎ Π΅ Π½Π°Π²Π΅Π΄Π΅Π½ΠΎ ΠΏΠΎΠ³ΠΎΡΠ΅, Π²ΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΎΡ Π½Π° ΡΠ΅ΡΡΡΡΠΈ, Π΄ΡΠ²ΠΎΡΠΎ Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅, ΡΠΈΠΈ ΡΠ°Π·Π»ΠΈ ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΈ ΡΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅, Π΅ ΡΠ΅Π»ΠΎΡΠ½ΠΎ ΡΠΎΠ΄ΡΠΆΠ°Π½ΠΎ Π²ΠΎ ΠΌΠ΅ΠΌΠΎΡΠΈΡΠ°ΡΠ°. ΠΠΎ, ΠΌΠΎΠ΄Π΅Π»ΠΎΡ ΠΠ°Π²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠΌΠ° Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌ Π±ΡΠΎΡ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ ΠΎΠ΄ Π΄ΡΠ²ΠΎΡΠΎ Π½Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅, Π±ΠΈΠ΄Π΅ΡΡΠΈ ΡΠ° ΠΏΡΠ΅ΡΡΡΠ°Π²ΡΠ²Π° ΠΈ Π²Π½Π°ΡΡΠ΅ΡΠ½Π°ΡΠ° ΡΡΡΡΠΊΡΡΡΠ° Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈΡΠ΅ .java ΠΈ .class: ΡΠΈΠΏΠΎΠ²ΠΈ, ΠΏΠΎΠ»ΠΈΡΠ° ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΈ.
ΠΠ° Π΄Π° ΡΠ΅ ΠΈΠ·Π±Π΅Π³Π½Π΅ ΡΠ΅Π»ΠΎΡΠ½ΠΎ ΠΌΠ°ΡΠ΅ΡΠΈΡΠ°Π»ΠΈΠ·ΠΈΡΠ°ΡΠ΅ Π½Π° ΡΠ΅Π»ΠΎΡΠΎ ΡΡΠ΅Π±Π»ΠΎ Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ Π²ΠΎ ΠΌΠ΅ΠΌΠΎΡΠΈΡΠ°ΡΠ°, ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°ΡΠ° Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΎΡ Java ΠΊΠΎΡΠΈΡΡΠΈ LRU ΠΊΠ΅Ρ ΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈΠ½Π° Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅, ΠΊΠ°Π΄Π΅ ΡΡΠΎ ΠΊΠ»ΡΡΠΎΡ Π΅ ΡΠ°ΡΠΊΠ°ΡΠ° IJavaElement. ΠΎΠ±ΡΠ΅ΠΊΡΠΈΡΠ΅ ΡΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅ ΡΠ΅ ΠΊΡΠ΅ΠΈΡΠ°Π°Ρ Π½Π° Π±Π°ΡΠ°ΡΠ΅ Π΄ΠΎΠ΄Π΅ΠΊΠ° ΡΠ΅ Π΄Π²ΠΈΠΆΠΈ Π΄ΡΠ²ΠΎΡΠΎ Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅. ΠΠΎ ΠΎΠ²ΠΎΡ ΡΠ»ΡΡΠ°Ρ, Π½Π°ΡΠΌΠ°Π»ΠΊΡ ΠΊΠΎΡΠΈΡΡΠ΅Π½ΠΈΡΠ΅ ΡΡΠ°Π²ΠΊΠΈ ΡΠ΅ ΠΈΡΡΡΠ»Π°Π°Ρ ΠΎΠ΄ ΠΊΠ΅ΡΠΎΡ, Π° ΠΏΠΎΡΡΠΎΡΡΠ²Π°ΡΠΊΠ°ΡΠ° Π½Π° ΠΌΠ΅ΠΌΠΎΡΠΈΡΠ° Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΎΡ ΠΎΡΡΠ°Π½ΡΠ²Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π° Π½Π° ΠΎΠ΄ΡΠ΅Π΄Π΅Π½Π°ΡΠ° Π³ΠΎΠ»Π΅ΠΌΠΈΠ½Π° Π½Π° ΠΊΠ΅ΡΠΎΡ. ΠΠ²Π° Π΅ ΡΡΡΠ΅ Π΅Π΄Π½Π° ΠΏΡΠ΅Π΄Π½ΠΎΡΡ Π½Π° Π΄ΠΈΠ·Π°ΡΠ½ΠΎΡ Π±Π°Π·ΠΈΡΠ°Π½ Π½Π° ΡΠ°ΡΠΊΠ°, ΠΊΠΎΡ ΡΠ΅Π»ΠΎΡΠ½ΠΎ Π³ΠΈ ΠΊΡΠΈΠ΅ ΡΠ°ΠΊΠ²ΠΈΡΠ΅ Π΄Π΅ΡΠ°Π»ΠΈ Π·Π° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°ΡΠ° ΠΎΠ΄ ΠΊΠΎΠ΄ΠΎΡ Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΡ.
ΠΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΡ Π·Π° ΠΈΠ·Π²Π΅ΡΡΡΠ²Π°ΡΠ΅ Π·Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅ Π½Π° Java Π΅ Π³Π΅Π½Π΅ΡΠ°Π»Π½ΠΎ ΡΠ»ΠΈΡΠ΅Π½ Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΡ Π·Π° ΡΠ»Π΅Π΄Π΅ΡΠ΅ Π½Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π²ΠΎ ΡΠ΅ΡΡΡΡΠΈΡΠ΅ Π½Π° ΡΠ°Π±ΠΎΡΠ½ΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ ΡΡΠΎ Π±Π΅ΡΠ΅ Π΄ΠΈΡΠΊΡΡΠΈΡΠ°Π½ ΠΏΠΎΠ³ΠΎΡΠ΅. ΠΠ»ΠΈΠ΅Π½ΡΠΎΡ ΠΊΠΎΡ ΡΠ°ΠΊΠ° Π΄Π° Π³ΠΈ ΡΠ»Π΅Π΄ΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π²ΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΎΡ Java ΡΠ΅ ΠΏΡΠ΅ΡΠΏΠ»Π°ΡΠΈ Π½Π° ΠΈΠ·Π²Π΅ΡΡΡΠ²Π°ΡΠ°, ΠΊΠΎΠΈ ΡΠ΅ ΠΏΡΠ΅ΡΡΡΠ°Π²Π΅Π½ΠΈ ΠΊΠ°ΠΊΠΎ ΠΎΠ±ΡΠ΅ΠΊΡ ElementChangedEvent ΠΊΠΎΡ ΡΠΎΠ΄ΡΠΆΠΈ IJavaElementDelta (Π‘Π»ΠΈΠΊΠ° 6).
ΠΡΠΈΠ·. 6. ElementChangedEvent ΠΈ IJavaElementDelta
ΠΠΎΠ΄Π΅Π»ΠΎΡ Java Π½Π΅ ΡΠΎΠ΄ΡΠΆΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΡΠ΅Π»Π°ΡΠ° Π½Π° ΠΌΠ΅ΡΠΎΠ΄ΠΎΡ ΠΈΠ»ΠΈ ΡΠ΅Π·ΠΎΠ»ΡΡΠΈΡΠ°ΡΠ° Π½Π° ΠΈΠΌΠΈΡΠ°ΡΠ°, ΡΠ°ΠΊΠ° ΡΡΠΎ Π·Π° Π΄Π΅ΡΠ°Π»Π½Π° Π°Π½Π°Π»ΠΈΠ·Π° Π½Π° ΠΊΠΎΠ΄ΠΎΡ Π½Π°ΠΏΠΈΡΠ°Π½ Π²ΠΎ ΠΠ°Π²Π°, JDT Core ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π΅Π½ (Π½Π΅ Π·Π°ΡΠ½ΠΎΠ²Π°Π½ Π½Π° ΡΠ°ΡΠΊΠ°) ΠΌΠΎΠ΄Π΅Π»:
ΠΠΈΠ΄Π΅ΡΡΠΈ ΡΠΈΠ½ΡΠ°ΠΊΡΠ½ΠΈΡΠ΅ Π΄ΡΠ²ΡΠ° ΠΌΠΎΠΆΠ°Ρ Π΄Π° ΡΡΠΎΡΠ°Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½Π° ΠΊΠΎΠ»ΠΈΡΠΈΠ½Π° Π½Π° ΠΌΠ΅ΠΌΠΎΡΠΈΡΠ°, JDT ΠΊΠ΅ΡΠΈΡΠ° ΡΠ°ΠΌΠΎ Π΅Π΄Π΅Π½ AST Π·Π° Π°ΠΊΡΠΈΠ²Π½ΠΈΠΎΡ ΡΡΠ΅Π΄ΡΠ²Π°Ρ. ΠΠ° ΡΠ°Π·Π»ΠΈΠΊΠ° ΠΎΠ΄ Java ΠΌΠΎΠ΄Π΅Π»ΠΎΡ, AST Π²ΠΎΠΎΠ±ΠΈΡΠ°Π΅Π½ΠΎ ΡΠ΅ Π³Π»Π΅Π΄Π° ΠΊΠ°ΠΊΠΎ βΡΡΠ΅Π΄Π΅Π½β, βΠΏΡΠΈΠ²ΡΠ΅ΠΌΠ΅Π½β ΠΌΠΎΠ΄Π΅Π» ΡΠΈΠΈ ΡΠ»Π΅Π½ΠΎΠ²ΠΈ Π½Π΅ ΡΡΠ΅Π±Π° Π΄Π° Π³ΠΈ ΠΏΠΎΠ²ΠΈΠΊΡΠ²Π°Π°Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈΡΠ΅ Π½Π°Π΄Π²ΠΎΡ ΠΎΠ΄ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΎΡ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠ°ΡΠ° ΡΡΠΎ Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΠ΅ Π½Π° AST.
ΠΠ°Π²Π΅Π΄Π΅Π½ΠΈΡΠ΅ ΡΡΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ (ΠΌΠΎΠ΄Π΅Π» Java, AST, Π²ΡΡΠΊΠΈ) Π·Π°Π΅Π΄Π½ΠΎ ΡΠ° ΡΠΎΡΠΌΠΈΡΠ°Π°Ρ ΠΎΡΠ½ΠΎΠ²Π°ΡΠ° Π·Π° ΠΈΠ·Π³ΡΠ°Π΄Π±Π° Π½Π° βΠΈΠ½ΡΠ΅Π»ΠΈΠ³Π΅Π½ΡΠ½ΠΈ ΡΠ°Π·Π²ΠΎΡΠ½ΠΈ Π°Π»Π°ΡΠΊΠΈβ Π²ΠΎ JDT, Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΡΠΈ ΠΌΠΎΡΠ΅Π½ Java ΡΡΠ΅Π΄Π½ΠΈΠΊ ΡΠΎ ΡΠ°Π·Π½ΠΈ βΠΏΠΎΠΌΠΎΡΠ½ΠΈΡΠΈβ, ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΈΠ·Π²ΠΎΡΠ½ΠΈΠΎΡ ΠΊΠΎΠ΄ (Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΡΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°ΡΠ΅ Π»ΠΈΡΡΠ° Π½Π° ΡΠ²ΠΎΠ· ΠΈΠΌΠΈΡΠ° ΠΈ ΡΠΎΡΠΌΠ°ΡΠΈΡΠ°ΡΠ΅ ΡΠΏΠΎΡΠ΅Π΄ ΠΏΡΠΈΡΠΏΠΎΡΠΎΠ±Π΅Π½ΠΈΠΎΡ ΡΡΠΈΠ»), Π°Π»Π°ΡΠΊΠΈ Π·Π° ΠΏΡΠ΅Π±Π°ΡΡΠ²Π°ΡΠ΅ ΠΈ ΡΠ΅ΡΠ°ΠΊΡΠΎΡΠΈΡΠ°ΡΠ΅. ΠΠΎ ΠΎΠ²ΠΎΡ ΡΠ»ΡΡΠ°Ρ, ΠΌΠΎΠ΄Π΅Π»ΠΎΡ Java ΠΈΠ³ΡΠ° ΠΏΠΎΡΠ΅Π±Π½Π° ΡΠ»ΠΎΠ³Π°, Π±ΠΈΠ΄Π΅ΡΡΠΈ ΡΠΎΠΊΠΌΡ ΡΠΎΡ ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ ΠΊΠ°ΠΊΠΎ ΠΎΡΠ½ΠΎΠ²Π° Π·Π° Π²ΠΈΠ·ΡΠ΅Π»Π½ΠΎ ΠΏΡΠ΅ΡΡΡΠ°Π²ΡΠ²Π°ΡΠ΅ Π½Π° ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ° ΡΡΠΎ ΡΠ΅ ΡΠ°Π·Π²ΠΈΠ²Π° (Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΎ Package Explorer, Outline, Search, Call Hierarchy ΠΈ Π’ΠΈΠΏ Ρ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΡΠ°).
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π½Π° Eclipse ΡΡΠΎ ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ°Ρ Π²ΠΎ 1C: Enterprise Developments Tools
ΠΠ° ΡΠ». Π‘Π»ΠΈΠΊΠ° 7 Π³ΠΈ ΠΏΡΠΈΠΊΠ°ΠΆΡΠ²Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅ Π½Π° Eclipse ΠΊΠΎΠΈ ΡΠ° ΡΠΎΡΠΌΠΈΡΠ°Π°Ρ ΠΎΡΠ½ΠΎΠ²Π°ΡΠ° Π½Π° ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΡΠΊΠ°ΡΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π·Π° 1C: Enterprise Development Tools.
ΠΡΠΈΠ·. 7. Eclipse ΠΊΠ°ΠΊΠΎ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π·Π° 1C: Enterprise Development Tools
ΠΠ»Π°ΡΡΠΎΡΠΌΠ° Π·Π° Π·Π°ΡΠ΅ΠΌΠ½ΡΠ²Π°ΡΠ΅ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° ΠΎΡΠ½ΠΎΠ²Π½Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°. Π Π°Π·Π³Π»Π΅Π΄Π°Π²ΠΌΠ΅ Π½Π΅ΠΊΠΎΠΈ Π°ΡΠΏΠ΅ΠΊΡΠΈ Π½Π° ΠΎΠ²Π°Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° Π²ΠΎ ΠΏΡΠ΅ΡΡ ΠΎΠ΄Π½ΠΈΠΎΡ Π΄Π΅Π».
ΠΠ°ΠΊΠΎ ΠΈ ΡΠ΅ΠΊΠΎΡΠ° Π°Π»Π°ΡΠΊΠ° Π·Π° Π²ΠΈΡΡΠΈΠ½ΡΠΊΠ° ΠΎΠΏΡΡΠ° Π½Π°ΠΌΠ΅Π½Π°, ΠΠΠ Π΅ ΠΏΠΎΠ³ΠΎΠ΄Π½Π° Π·Π° ΡΠ΅ΡΠ°Π²Π°ΡΠ΅ Π½Π° ΡΠΈΡΠΎΠΊ ΠΎΠΏΡΠ΅Π³ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΡΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠ°ΡΠ΅, Π½ΠΎ Π½Π΅ΠΊΠΎΠΈ ΠΊΠ»Π°ΡΠΈ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ (Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠ΅ Π·Π°ΡΠ½ΠΎΠ²Π°Π½ΠΈ Π½Π° ΡΠ°ΡΠΊΠ° Π΄ΠΈΡΠΊΡΡΠΈΡΠ°Π½ΠΈ ΠΏΠΎΠ³ΠΎΡΠ΅) ΠΌΠΎΠΆΠ΅ Π΄Π° Π±Π°ΡΠ°Π°Ρ ΠΏΠΎΠ²Π΅ΡΠ΅ ΡΠΏΠ΅ΡΠΈΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π°Π»Π°ΡΠΊΠΈ Π·Π° ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠ°ΡΠ΅. ΠΠ±ΠΎΡΡΠ²Π°ΡΠ΅ΡΠΎ Π·Π° ΠΠΠ Π΅ Π½Π΅Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ½Π° Π·Π°Π΄Π°ΡΠ°, ΠΎΡΠΎΠ±Π΅Π½ΠΎ Π²ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΠ΅ Π³ΡΠ°Π½ΠΈΡΠΈ Π½Π° Π΅Π΄Π½Π° ΡΡΠ°ΡΠΈΡΠ°, Π±ΠΈΠ΄Π΅ΡΡΠΈ ΠΎΠ²Π° Π΅ ΡΠ΅ΠΌΠ° Π½Π° ΠΏΠΎΡΠ΅Π±Π½Π° ΠΊΠ½ΠΈΠ³Π° ΠΈ ΠΏΡΠΈΠ»ΠΈΡΠ½ΠΎ Π³ΡΡΡΠ°. Π‘Π°ΠΌΠΎ Π΄Π° Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΠΌΠ΅ Π΄Π΅ΠΊΠ° Π²ΠΈΡΠΎΠΊΠΎΠΊΠ²Π°Π»ΠΈΡΠ΅ΡΠ½ΠΈΠΎΡ ΡΠΈΡΡΠ΅ΠΌ Π½Π° Π³Π΅Π½Π΅ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π²ΠΎ ΠΎΡΠ½ΠΎΠ²Π°ΡΠ° Π½Π° EMF ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠΈ ΡΠ°ΡΠ°ΡΠ΅ Π½Π° ΡΠ΅Π»Π° Π½ΠΈΠ·Π° ΠΏΡΠΎΠ΅ΠΊΡΠΈ ΠΏΠΎΡΠ²Π΅ΡΠ΅Π½ΠΈ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠ°ΡΠ΅, ΠΊΠΎΠΈ ΡΠ΅ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈ Π²ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΎΡ Π½Π° Π½Π°ΡΠ²ΠΈΡΠΎΠΊΠΎ Π½ΠΈΠ²ΠΎ
1C:Enterprise Development Tools Π°ΠΊΡΠΈΠ²Π½ΠΎ Π³ΠΈ ΠΊΠΎΡΠΈΡΡΠ°Ρ ΠΈ ΡΠ°ΠΌΠΈΠΎΡ EMF ΠΈ Π³ΠΎΠ»Π΅ΠΌ Π±ΡΠΎΡ Π΄ΡΡΠ³ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈ Π·Π° ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠ°ΡΠ΅ Π½Π° Eclipse. ΠΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎ, Xtext Π΅ Π΅Π΄Π½Π° ΠΎΠ΄ ΠΎΡΠ½ΠΎΠ²ΠΈΡΠ΅ Π½Π° ΡΠ°Π·Π²ΠΎΡΠ½ΠΈΡΠ΅ Π°Π»Π°ΡΠΊΠΈ Π·Π° ΡΠ°ΠΊΠ²ΠΈ ΡΠ°Π·ΠΈΡΠΈ 1C: Enterprise ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅ Π²Π³ΡΠ°Π΄Π΅Π½ΠΈΠΎΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΡΠΊΠΈ ΡΠ°Π·ΠΈΠΊ ΠΈ ΡΠ°Π·ΠΈΠΊΠΎΡ Π·Π° ΠΏΡΠ΅Π±Π°ΡΡΠ²Π°ΡΠ΅. ΠΡΡΠ³Π° ΠΎΡΠ½ΠΎΠ²Π° Π·Π° ΠΎΠ²ΠΈΠ΅ ΡΠ°Π·Π²ΠΎΡΠ½ΠΈ Π°Π»Π°ΡΠΊΠΈ Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠΎΡ Eclipse Handly, Π·Π° ΠΊΠΎΡ ΡΠ΅ ΡΠ°Π·Π³ΠΎΠ²Π°ΡΠ°ΠΌΠ΅ ΠΏΠΎΠ΄Π΅ΡΠ°Π»Π½ΠΎ (ΠΎΠ΄ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π½Π° Eclipse, ΡΓ¨ ΡΡΡΠ΅ Π΅ Π½Π°ΡΠΌΠ°Π»ΠΊΡ ΠΏΠΎΠ·Π½Π°Ρ).
ΠΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΠΎΠ½ΡΠΊΠΈ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΈ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠ΅ Π·Π°ΡΠ½ΠΎΠ²Π°Π½ΠΈ Π½Π° ΡΠ°ΡΠΊΠ°, ΠΊΠ°ΠΊΠΎ ΡΡΠΎ Π΅ ΠΈΠ΄ΠΈΠΎΠΌΠΎΡ Π½Π° ΡΠ°ΡΠΊΠ°/ΡΠ΅Π»ΠΎ, Π±Π΅Π° Π΄ΠΈΡΠΊΡΡΠΈΡΠ°Π½ΠΈ ΠΏΠΎΠ³ΠΎΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ Π³ΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΎΡ Π½Π° ΡΠ΅ΡΡΡΡΠΈ ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΎΡ ΠΠ°Π²Π° ΠΊΠ°ΠΊΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΈ. ΠΡΡΠΎ ΡΠ°ΠΊΠ°, Π·Π°Π±Π΅Π»Π΅ΠΆΠ° Π΄Π΅ΠΊΠ° ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΎΡ Π½Π° ΡΠ΅ΡΡΡΡΠΈ ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΎΡ ΠΠ°Π²Π° ΡΠ΅ Π²Π°ΠΆΠ½ΠΈ ΠΎΡΠ½ΠΎΠ²ΠΈ Π·Π° ΡΠ°Π·Π²ΠΎΡΠ½ΠΈΡΠ΅ Π°Π»Π°ΡΠΊΠΈ Π½Π° Eclipse Java (JDT). Π Π±ΠΈΠ΄Π΅ΡΡΠΈ ΡΠΊΠΎΡΠΎ ΡΠΈΡΠ΅ *DT Eclipse ΠΏΡΠΎΠ΅ΠΊΡΠΈ ΠΈΠΌΠ°Π°Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° ΡΠ»ΠΈΡΠ½Π° Π½Π° JDT, Π½Π΅ Π±ΠΈ Π±ΠΈΠ»ΠΎ Π³ΠΎΠ»Π΅ΠΌΠΎ ΠΏΡΠ΅ΡΠ΅ΡΡΠ²Π°ΡΠ΅ Π΄Π° ΡΠ΅ ΠΊΠ°ΠΆΠ΅ Π΄Π΅ΠΊΠ° ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠ΅ Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΡΠ°ΡΠΊΠ° ΡΠ΅ Π²ΠΎ ΠΎΡΠ½ΠΎΠ²Π°ΡΠ° Π½Π° ΠΌΠ½ΠΎΠ³Ρ, Π°ΠΊΠΎ Π½Π΅ ΠΈ ΡΠΈΡΠ΅ IDE ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½ΠΈ Π½Π° Π²ΡΠ²ΠΎΡ Π½Π° Eclipse ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ°. ΠΠ° ΠΏΡΠΈΠΌΠ΅Ρ, Eclipse C/C++ Development Tooling (CDT) ΠΈΠΌΠ° C/C++ ΠΌΠΎΠ΄Π΅Π» Π±Π°Π·ΠΈΡΠ°Π½ Π½Π° ΡΠ°ΡΠΊΠ° ΠΊΠΎΡ ΡΠ° ΠΈΠ³ΡΠ° ΠΈΡΡΠ°ΡΠ° ΡΠ»ΠΎΠ³Π° Π²ΠΎ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° CDT ΠΊΠ°ΠΊΠΎ ΠΈ Java ΠΌΠΎΠ΄Π΅Π»ΠΎΡ Π²ΠΎ JDT.
ΠΡΠ΅Π΄ Handly, Eclipse Π½Π΅ Π½ΡΠ΄Π΅ΡΠ΅ ΡΠΏΠ΅ΡΠΈΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π·Π° Π³ΡΠ°Π΄Π΅ΡΠ΅ ΡΠ°Π·ΠΈΡΠ½ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΡΠ°ΡΠΊΠΈ. ΠΠΎΠ΄Π΅Π»ΠΈΡΠ΅ ΠΊΠΎΠΈ ΠΌΠΎΠΌΠ΅Π½ΡΠ°Π»Π½ΠΎ ΠΏΠΎΡΡΠΎΡΠ°Ρ ΡΠ΅ ΡΠΎΠ·Π΄Π°Π΄Π΅Π½ΠΈ Π³Π»Π°Π²Π½ΠΎ ΡΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΠΏΡΠΈΠ»Π°Π³ΠΎΠ΄ΡΠ²Π°ΡΠ΅ Π½Π° ΠΊΠΎΠ΄ΠΎΡ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΎΡ Java (Π°ΠΊΠ° copy/paste), Π²ΠΎ ΡΠ»ΡΡΠ°ΠΈ ΠΊΠΎΠ³Π° Π΄ΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Eclipse Public License (EPL). (ΠΡΠΈΠ³Π»Π΅Π΄Π½ΠΎ, ΠΎΠ²Π° ΠΎΠ±ΠΈΡΠ½ΠΎ Π½Π΅ Π΅ ΠΏΡΠ°Π²Π½ΠΎ ΠΏΡΠ°ΡΠ°ΡΠ΅ Π·Π°, Π΄Π° ΡΠ΅ΡΠ΅ΠΌΠ΅, ΡΠ°ΠΌΠΈΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈ Π½Π° Eclipse, Π½ΠΎ Π½Π΅ ΠΈ Π·Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅ ΡΠΎ Π·Π°ΡΠ²ΠΎΡΠ΅Π½ ΠΈΠ·Π²ΠΎΡ.) ΠΠΎΠΊΡΠ°Ρ Π½Π΅ΡΠ·ΠΈΠ½Π°ΡΠ° Π²ΡΠΎΠ΄Π΅Π½Π° ΡΠ»ΡΡΠ°ΡΠ½ΠΎΡΡ, ΠΎΠ²Π°Π° ΡΠ΅Ρ Π½ΠΈΠΊΠ° Π²ΠΎΠ²Π΅Π΄ΡΠ²Π° Π΄ΠΎΠ±ΡΠΎ ΠΏΠΎΠ·Π½Π°ΡΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ: Π΄ΡΠΏΠ»ΠΈΡΠ°ΡΠ΅ Π½Π° ΠΊΠΎΠ΄ΠΎΡ Π²ΠΎΠ²Π΅Π΄Π΅Π½ ΠΏΡΠΈ ΠΏΡΠΈΠ»Π°Π³ΠΎΠ΄ΡΠ²Π°ΡΠ΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ, ΠΈΡΠ½. ΠΠ½Π° ΡΡΠΎ Π΅ ΠΏΠΎΠ»ΠΎΡΠΎ Π΅ ΡΡΠΎ Π΄ΠΎΠ±ΠΈΠ΅Π½ΠΈΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΎΡΡΠ°Π½ΡΠ²Π°Π°Ρ βΡΠ°Π±ΠΎΡΠΈ ΡΠ°ΠΌΠΈ ΠΏΠΎ ΡΠ΅Π±Π΅β ΠΈ Π½Π΅ Π³ΠΎ ΠΈΡΠΊΠΎΡΠΈΡΡΡΠ²Π°Π°Ρ ΠΏΠΎΡΠ΅Π½ΡΠΈΡΠ°Π»ΠΎΡ Π·Π° ΠΎΠ±Π΅Π΄ΠΈΠ½ΡΠ²Π°ΡΠ΅. ΠΠΎ, ΠΈΠ·ΠΎΠ»ΠΈΡΠ°ΡΠ΅ΡΠΎ Π½Π° Π·Π°Π΅Π΄Π½ΠΈΡΠΊΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈ ΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈ Π·Π° ΡΠ°Π·ΠΈΡΠ½ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π°ΡΠ½ΠΎΠ²Π°Π½ΠΈ Π½Π° ΡΠ°ΡΠΊΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π·Π° ΠΏΠΎΠ²Π΅ΡΠ΅ΠΊΡΠ°ΡΠ½Π° ΡΠΏΠΎΡΡΠ΅Π±Π° Π·Π° ΡΠ°Π±ΠΎΡΠ° ΡΠΎ Π½ΠΈΠ², ΡΠ»ΠΈΡΠ½ΠΎ Π½Π° ΠΎΠ½Π° ΡΡΠΎ ΡΠ΅ ΡΠ»ΡΡΠΈ Π²ΠΎ ΡΠ»ΡΡΠ°ΡΠΎΡ ΡΠΎ EMF.
ΠΠ΅ Π΅ Π΄Π΅ΠΊΠ° Eclipse Π½Π΅ Π³ΠΈ ΡΠ°Π·Π±ΡΠ° ΠΎΠ²ΠΈΠ΅ ΠΏΡΠ°ΡΠ°ΡΠ°. Π£ΡΡΠ΅ Π²ΠΎ 2005 Π³ΠΎΠ΄ΠΈΠ½Π°
ΠΠΎ ΠΎΠ΄ΡΠ΅Π΄Π΅Π½Π° ΡΠΌΠΈΡΠ»Π°, ΠΏΡΠΎΠ΅ΠΊΡΠΎΡ Handly Π΅ Π΄ΠΈΠ·Π°ΡΠ½ΠΈΡΠ°Π½ Π΄Π° Π³ΠΈ ΡΠ΅ΡΠΈ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ½ΠΎ ΠΈΡΡΠΈΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΠΊΠ°ΠΊΠΎ EMF, Π½ΠΎ Π·Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΡΠ°ΡΠΊΠΈ, ΠΈ ΠΏΡΠ²Π΅Π½ΡΡΠ²Π΅Π½ΠΎ ΡΠ°Π·ΠΈΡΠ½ΠΈ (Ρ.Π΅., ΠΊΠΎΠΈ ΠΏΡΠ΅ΡΡΡΠ°Π²ΡΠ²Π°Π°Ρ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ Π½Π° ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° Π½Π΅ΠΊΠΎΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΡΠΊΠΈ ΡΠ°Π·ΠΈΠΊ). ΠΠ»Π°Π²Π½ΠΈΡΠ΅ ΡΠ΅Π»ΠΈ ΠΏΠΎΡΡΠ°Π²Π΅Π½ΠΈ ΠΏΡΠΈ Π΄ΠΈΠ·Π°ΡΠ½ΠΈΡΠ°ΡΠ΅ Π½Π° Handly ΡΠ΅ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈ ΠΏΠΎΠ΄ΠΎΠ»Ρ:
- ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΡΠ²Π°ΡΠ΅ Π½Π° Π³Π»Π°Π²Π½ΠΈΡΠ΅ Π°ΠΏΡΡΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ½Π°ΡΠ° ΠΎΠ±Π»Π°ΡΡ.
- ΠΠ°ΠΌΠ°Π»ΡΠ²Π°ΡΠ΅ Π½Π° Π½Π°ΠΏΠΎΡ ΠΈ ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΊΠ²Π°Π»ΠΈΡΠ΅ΡΠΎΡ Π½Π° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° ΡΠ°Π·ΠΈΡΠ½ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΡΠ°ΡΠΊΠΈ ΠΏΡΠ΅ΠΊΡ ΠΏΠΎΠ²ΡΠΎΡΠ½Π° ΡΠΏΠΎΡΡΠ΅Π±Π° Π½Π° ΠΊΠΎΠ΄.
- ΠΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π°ΡΠ΅ ΡΠ½ΠΈΡΠΈΡΠΈΡΠ°Π½ API Π½Π° ΠΌΠ΅ΡΠ°-Π½ΠΈΠ²ΠΎ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠ΅ ΡΡΠΎ ΠΏΡΠΎΠΈΠ·Π»Π΅Π³ΡΠ²Π°Π°Ρ, ΡΡΠΎ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° ΡΠΎΠ·Π΄Π°Π²Π°ΡΠ΅ Π·Π°Π΅Π΄Π½ΠΈΡΠΊΠΈ IDE ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ ΠΊΠΎΠΈ ΡΠ°Π±ΠΎΡΠ°Ρ ΡΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΡΠ°Π·ΠΈΡΠ½ΠΈ ΡΠ°ΡΠΊΠΈ.
- Π€Π»Π΅ΠΊΡΠΈΠ±ΠΈΠ»Π½ΠΎΡΡ ΠΈ ΠΏΡΠΈΡΠΏΠΎΡΠΎΠ±Π»ΠΈΠ²ΠΎΡΡ.
- ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡΠ° ΡΠΎ Xtext (Π²ΠΎ ΠΏΠΎΡΠ΅Π±Π΅Π½ ΡΠ»ΠΎΡ).
ΠΠ° Π΄Π° ΡΠ΅ ΠΈΡΡΠ°ΠΊΠ½Π°Ρ Π·Π°Π΅Π΄Π½ΠΈΡΠΊΠΈΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈ ΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈ, Π±Π΅Π° Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΏΠΎΡΡΠΎΠ΅ΡΠΊΠΈΡΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΡΠ°Π·ΠΈΡΠ½ΠΈ ΡΠ°ΡΠΊΠΈ. ΠΠ»Π°Π²Π½ΠΈΡΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡΠΈ ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΎΠ±Π΅Π·Π±Π΅Π΄Π΅Π½ΠΈ ΠΎΠ΄ Handly ΡΠ΅ ΠΏΡΠΈΠΊΠ°ΠΆΠ°Π½ΠΈ Π½Π° ΡΠ». 8.
ΠΡΠΈΠ·. 8. ΠΠ°Π΅Π΄Π½ΠΈΡΠΊΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡΠΈ ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΠΈ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π½Π° Handly Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ
ΠΠ½ΡΠ΅ΡΡΠ΅ΡΡΠΎΡ IElement ΡΠ° ΠΏΡΠ΅ΡΡΡΠ°Π²ΡΠ²Π° ΡΠ°ΡΠΊΠ°ΡΠ° Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΎΡ ΠΈ Π΅ Π·Π°Π΅Π΄Π½ΠΈΡΠΊΠΈ Π·Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅ Π½Π° ΡΠΈΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° Handly. ΠΠΏΡΡΡΠ°ΠΊΡΠ½Π°ΡΠ° ΠΊΠ»Π°ΡΠ° Element Π³ΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ° Π³Π΅Π½Π΅ΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈΠΎΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·Π°ΠΌ Π·Π° ΡΠ°ΡΠΊΠ°/ΡΠ΅Π»ΠΎ (ΡΠ». 9).
ΠΡΠΈΠ·. 9. ΠΠΠ΅Π»Π΅ΠΌΠ΅Π½Ρ ΠΈ Π³Π΅Π½Π΅ΡΠΈΡΠΊΠ° ΡΠ°ΡΠΊΠ°/ΡΠ΅Π»ΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°
ΠΠΎΠΊΡΠ°Ρ ΡΠΎΠ°, Handly ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° Π³Π΅Π½Π΅ΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·Π°ΠΌ Π·Π° ΠΈΠ·Π²Π΅ΡΡΡΠ²Π°ΡΠ΅ Π·Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π²ΠΎ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΎΡ (ΡΠ». 10). ΠΠ°ΠΊΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅, ΡΠΎΡ Π΅ Π²ΠΎ Π³ΠΎΠ»Π΅ΠΌΠ° ΠΌΠ΅ΡΠ° ΡΠ»ΠΈΡΠ΅Π½ Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈΡΠ΅ Π·Π° ΠΈΠ·Π²Π΅ΡΡΡΠ²Π°ΡΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°Π½ΠΈ Π²ΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΎΡ Π½Π° ΡΠ΅ΡΡΡΡΠΈ ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΎΡ ΠΠ°Π²Π°, ΠΈ ΠΊΠΎΡΠΈΡΡΠΈ IElementDelta Π·Π° Π΄Π° ΠΎΠ±Π΅Π·Π±Π΅Π΄ΠΈ ΡΠ½ΠΈΡΠΈΡΠΈΡΠ°Π½Π° ΡΠ΅ΠΏΡΠ΅Π·Π΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΠΏΡΠΎΠΌΠ΅Π½Π° Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅.
ΠΡΠΈΠ·. 10. ΠΠΏΡΡΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡΠΈ ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΠΈ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π½Π° ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠΎΡ Π·Π° ΠΈΠ·Π²Π΅ΡΡΡΠ²Π°ΡΠ΅ Handly
ΠΠ΅Π»ΠΎΡ Handly Π΄ΠΈΡΠΊΡΡΠΈΡΠ°Π½ ΠΏΠΎΠ³ΠΎΡΠ΅ (ΡΠ»ΠΈΠΊΠ° 9 ΠΈ 10) ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ Π·Π° ΠΏΡΠ΅ΡΡΡΠ°Π²ΡΠ²Π°ΡΠ΅ Π½Π° ΡΠ΅ΡΠΈΡΠΈ ΡΠΈΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΡΠ°ΡΠΊΠ°. ΠΠ° ΡΠΎΠ·Π΄Π°Π²Π°ΡΠ΅ Π»ΠΈΠ½Π³Π²ΠΈΡΡΠΈΡΠΊΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΏΡΠΎΠ΅ΠΊΡΠΎΡ Π½ΡΠ΄ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ - ΠΎΡΠΎΠ±Π΅Π½ΠΎ, Π·Π°Π΅Π΄Π½ΠΈΡΠΊΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡΠΈ ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΠΈ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π·Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ΅ Π½Π° ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° ΠΈΠ·Π²ΠΎΡΠ½ΠΈΠΎΡ ΡΠ΅ΠΊΡΡ, Ρ.Π½. ΠΈΠ·Π²ΠΎΡΠ½ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ (Π‘Π». 8). ΠΠ½ΡΠ΅ΡΡΠ΅ΡΡΠΎΡ ISourceFile ΠΏΡΠ΅ΡΡΡΠ°Π²ΡΠ²Π° ΠΈΠ·Π²ΠΎΡΠ½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°, Π° ISourceConstruct ΠΏΡΠ΅ΡΡΡΠ°Π²ΡΠ²Π° Π΅Π»Π΅ΠΌΠ΅Π½Ρ Π²ΠΎ ΠΈΠ·Π²ΠΎΡΠ½Π°ΡΠ° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°. ΠΠΏΡΡΡΠ°ΠΊΡΠ½ΠΈΡΠ΅ ΠΊΠ»Π°ΡΠΈ SourceFile ΠΈ SourceConstruct ΡΠΏΡΠΎΠ²Π΅Π΄ΡΠ²Π°Π°Ρ Π³Π΅Π½Π΅ΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ° Π½Π° ΡΠ°Π±ΠΎΡΠ° ΡΠΎ ΠΈΠ·Π²ΠΎΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΠΈ Π½ΠΈΠ²Π½ΠΈΡΠ΅ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ, Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°Π±ΠΎΡΠ° ΡΠΎ ΡΠ΅ΠΊΡΡΡΠ°Π»Π½ΠΈ Π±Π°ΡΠ΅ΡΠΈ, Π²ΡΠ·ΡΠ²Π°ΡΠ΅ Π·Π° ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠΈΡΠ΅ Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΎΡ Π²ΠΎ ΠΈΠ·Π²ΠΎΡΠ½ΠΈΠΎΡ ΡΠ΅ΠΊΡΡ, ΡΡΠΎΠ³Π»Π°ΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠ΅ ΡΠΎ ΡΠ΅ΠΊΠΎΠ²Π½Π°ΡΠ° ΡΠΎΠ΄ΡΠΆΠΈΠ½Π° Π½Π° ΡΠ°Π±ΠΎΡΠ½ΠΈΠΎΡ Π±Π°ΡΠ΅Ρ Π·Π° ΠΊΠΎΠΏΠΈΡΠ°ΡΠ΅ , ΠΈΡΠ½. Π‘ΠΏΡΠΎΠ²Π΅Π΄ΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° ΠΎΠ²ΠΈΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ ΠΎΠ±ΠΈΡΠ½ΠΎ Π΅ Π³ΠΎΠ»Π΅ΠΌ ΠΏΡΠ΅Π΄ΠΈΠ·Π²ΠΈΠΊ, Π° Handly ΠΌΠΎΠΆΠ΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π΄Π° Π³ΠΎ Π½Π°ΠΌΠ°Π»ΠΈ Π½Π°ΠΏΠΎΡΠΎΡ Π·Π° ΡΠ°Π·Π²ΠΎΡ Π½Π° ΡΠ°Π·ΠΈΡΠ½ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΡΠ°ΡΠΊΠΈ ΠΏΡΠ΅ΠΊΡ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π°ΡΠ΅ Π½Π° Π²ΠΈΡΠΎΠΊΠΎΠΊΠ²Π°Π»ΠΈΡΠ΅ΡΠ½ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΠΈ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.
ΠΠΎΠΊΡΠ°Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈ ΠΏΠΎΠ³ΠΎΡΠ΅, Handly ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° Π·Π° ΡΠ΅ΠΊΡΡΡΠ°Π»Π½ΠΈ Π±Π°ΡΠ΅ΡΠΈ ΠΈ ΡΠ½ΠΈΠΌΠΊΠΈ, ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ° Π·Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡΠ° ΡΠΎ ΡΡΠ΅Π΄Π½ΠΈΡΠΈΡΠ΅ Π½Π° ΠΈΠ·Π²ΠΎΡΠ½ΠΈΠΎΡ ΠΊΠΎΠ΄ (Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΡΠΈ ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡΠ° Π½Π°Π΄Π²ΠΎΡ ΠΎΠ΄ ΠΊΡΡΠΈΡΠ°ΡΠ° ΡΠΎ Xtext ΡΡΠ΅Π΄Π½ΠΈΠΊΠΎΡ), ΠΊΠ°ΠΊΠΎ ΠΈ Π½Π΅ΠΊΠΎΠΈ Π²ΠΎΠΎΠ±ΠΈΡΠ°Π΅Π½ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡΠΎΡ ΠΊΠΎΠΈ ΡΠ°Π±ΠΎΡΠ° ΡΠΎ ΡΡΠ΅Π΄ΡΠ²Π°ΡΠΈ Π½Π° ΠΈΠ·Π²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄.Π Π°ΡΠ½ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅ ΡΠ°ΠΌΠΊΠ° Π·Π° ΠΏΡΠ΅Π³Π»Π΅Π΄. ΠΠ° Π΄Π° Π³ΠΈ ΠΈΠ»ΡΡΡΡΠΈΡΠ° ΡΠ²ΠΎΠΈΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ, ΠΏΡΠΎΠ΅ΠΊΡΠΎΡ Π΄Π°Π²Π° Π½Π΅ΠΊΠΎΠ»ΠΊΡ ΠΏΡΠΈΠΌΠ΅ΡΠΈ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΈ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° Java ΠΌΠΎΠ΄Π΅Π»ΠΎΡ Π²ΠΎ Handly. (ΠΠΎ ΡΠΏΠΎΡΠ΅Π΄Π±Π° ΡΠΎ ΡΠ΅Π»ΠΎΡΠ½Π°ΡΠ° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΎΡ Java Π²ΠΎ JDT, ΠΎΠ²ΠΎΡ ΠΌΠΎΠ΄Π΅Π» Π΅ Π½Π°ΠΌΠ΅ΡΠ½ΠΎ ΠΌΠ°Π»ΠΊΡ ΠΏΠΎΠ΅Π΄Π½ΠΎΡΡΠ°Π²Π΅Π½ Π·Π° ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌΠ° ΡΠ°ΡΠ½ΠΎΡΡ.)
ΠΠ°ΠΊΠΎ ΡΡΠΎ Π±Π΅ΡΠ΅ Π½Π°Π²Π΅Π΄Π΅Π½ΠΎ ΠΏΡΠ΅ΡΡ ΠΎΠ΄Π½ΠΎ, Π³Π»Π°Π²Π½ΠΈΠΎΡ ΡΠΎΠΊΡΡ Π·Π° Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΏΡΠ²ΠΈΡΠ½ΠΈΠΎΡ Π΄ΠΈΠ·Π°ΡΠ½ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΈΠΎΡ ΡΠ°Π·Π²ΠΎΡ Π½Π° Handly Π±Π΅ΡΠ΅ ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΡΠ²Π° Π΄Π° Π±ΠΈΠ΄Π΅ Π½Π° ΠΏΡΠΈΡΠΏΠΎΡΠΎΠ±Π»ΠΈΠ²ΠΎΡΡΠ° ΠΈ ΡΠ»Π΅ΠΊΡΠΈΠ±ΠΈΠ»Π½ΠΎΡΡΠ°.
ΠΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏ, ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠ΅ Π·Π°ΡΠ½ΠΎΠ²Π°Π½ΠΈ Π½Π° ΡΠ°ΡΠΊΠ° Π΄ΠΎΡΡΠ° Π΄ΠΎΠ±ΡΠΎ ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡΠ²Π°Π°Ρ βΠΏΠΎ Π΄ΠΈΠ·Π°ΡΠ½β. ΠΠ° ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ΄ΠΈΠΎΠΌΠΎΡ Π·Π° ΡΠ°ΡΠΊΠ°/ΡΠ΅Π»ΠΎ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π΄Π° ΡΠ° ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅ ΠΊΠΎΠ»ΠΈΡΠΈΠ½Π°ΡΠ° Π½Π° ΠΌΠ΅ΠΌΠΎΡΠΈΡΠ° ΡΡΠΎ ΡΠ° ΡΡΠΎΡΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΎΡ. ΠΠΎ, ΠΏΠΎΡΡΠΎΡΠ°Ρ ΠΈ Π½ΠΈΡΠ°Π½ΡΠΈ. Π’Π°ΠΊΠ°, ΠΏΡΠΈ ΡΠ΅ΡΡΠΈΡΠ°ΡΠ΅ΡΠΎ Π½Π° Handly Π·Π° ΠΏΡΠΈΡΠΏΠΎΡΠΎΠ±Π»ΠΈΠ²ΠΎΡΡ, Π±Π΅ΡΠ΅ ΠΎΡΠΊΡΠΈΠ΅Π½ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π²ΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°ΡΠ° Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΡ Π·Π° ΠΈΠ·Π²Π΅ΡΡΡΠ²Π°ΡΠ΅ - ΠΊΠΎΠ³Π° Π±Π΅Π° ΠΏΡΠΎΠΌΠ΅Π½Π΅ΡΠΈ Π³ΠΎΠ»Π΅ΠΌ Π±ΡΠΎΡ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ, ΠΊΠΎΠ½ΡΡΡΡΠΈΡΠ°ΡΠ΅ΡΠΎ Π½Π° Π΄Π΅Π»ΡΠ° ΡΡΠ°Π΅ΡΠ΅ ΠΏΡΠ΅ΠΌΠ½ΠΎΠ³Ρ Π²ΡΠ΅ΠΌΠ΅. Π‘Π΅ ΠΈΡΠΏΠΎΡΡΠ°Π²ΠΈ Π΄Π΅ΠΊΠ° ΠΈΡΡΠΈΠΎΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π±ΠΈΠ» ΠΏΡΠΈΡΡΡΠ΅Π½ ΠΈ Π²ΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΎΡ JDT Java, ΠΎΠ΄ ΠΊΠΎΡ Π΅Π΄Π½Π°Ρ Π±ΠΈΠ» Π°Π΄Π°ΠΏΡΠΈΡΠ°Π½ ΡΠΎΠΎΠ΄Π²Π΅ΡΠ½ΠΈΠΎΡ ΠΊΠΎΠ΄. ΠΠ° ΠΏΠΎΠΏΡΠ°Π²ΠΈΠ²ΠΌΠ΅ Π³ΡΠ΅ΡΠΊΠ°ΡΠ° Π²ΠΎ Handly ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠ²ΠΈΠ²ΠΌΠ΅ ΡΠ»ΠΈΡΠ½Π° Π»Π΅ΠΏΠ΅Π½ΠΊΠ° Π·Π° JDT, ΠΊΠΎΡΠ° Π±Π΅ΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π° ΡΠΎ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ½ΠΎΡΡ. ΠΠ²Π° Π΅ ΡΠ°ΠΌΠΎ Π΅Π΄Π΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠ°Π΄Π΅ ΡΡΠΎ Π²ΠΎΠ²Π΅Π΄ΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° Handly Π²ΠΎ ΠΏΠΎΡΡΠΎΠ΅ΡΠΊΠΈΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΡΠΊΠΈ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΠΈΠ΄Π΅ ΠΏΠΎΡΠ΅Π½ΡΠΈΡΠ°Π»Π½ΠΎ ΠΊΠΎΡΠΈΡΠ½ΠΎ, Π±ΠΈΠ΄Π΅ΡΡΠΈ Π²ΠΎ ΠΎΠ²ΠΎΡ ΡΠ»ΡΡΠ°Ρ ΡΠ°ΠΊΠ²Π°ΡΠ° Π³ΡΠ΅ΡΠΊΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΠΎΠΏΡΠ°Π²ΠΈ Π½Π° ΡΠ°ΠΌΠΎ Π΅Π΄Π½ΠΎ ΠΌΠ΅ΡΡΠΎ.
ΠΠ° Π΄Π° Π±ΠΈΠ΄Π΅ ΡΠ΅Ρ
Π½ΠΈΡΠΊΠΈ ΠΈΠ·Π²ΠΎΠ΄Π»ΠΈΠ²ΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°ΡΠ΅ΡΠΎ Π½Π° Handly Π²ΠΎ ΠΏΠΎΡΡΠΎΠ΅ΡΠΊΠΈΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° ΠΌΠΎΡΠ° Π΄Π° ΠΈΠΌΠ° Π·Π½Π°ΡΠΈΡΠ΅Π»Π½Π° ΡΠ»Π΅ΠΊΡΠΈΠ±ΠΈΠ»Π½ΠΎΡΡ. ΠΠ»Π°Π²Π½ΠΈΠΎΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π΅ Π΄Π° ΡΠ΅ ΠΎΠ΄ΡΠΆΠΈ Π½Π°Π½Π°Π·Π°Π΄ ΠΊΠΎΠΌΠΏΠ°ΡΠΈΠ±ΠΈΠ»Π½ΠΎΡΡΠ° Π½ΠΈΠ· ΠΌΠΎΠ΄Π΅Π»ΠΎΡ API. ΠΠ²ΠΎΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π±Π΅ΡΠ΅ ΡΠ΅ΡΠ΅Π½ Π²ΠΎ
Π€Π»Π΅ΠΊΡΠΈΠ±ΠΈΠ»Π½ΠΎΡΡΠ° ΠΈΠΌΠ° ΠΈ Π΄ΡΡΠ³ΠΈ Π°ΡΠΏΠ΅ΠΊΡΠΈ. ΠΠ° ΠΏΡΠΈΠΌΠ΅Ρ, Handly Π½Π΅ Π½Π°ΠΌΠ΅ΡΠ½ΡΠ²Π° ΡΠ΅ΡΠΈΡΠΈ Π½ΠΈΠΊΠ°ΠΊΠ²ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΡΠ²Π°ΡΠ° Π½Π° ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΎΡ ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ Π·Π° ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠ°ΡΠ΅ Π½Π° ΡΠ°Π·ΠΈΡΠΈ Π·Π° ΠΎΠΏΡΡΠ° Π½Π°ΠΌΠ΅Π½Π° ΠΈ Π·Π° ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ Π΄ΠΎΠΌΠ΅Π½. ΠΠΎΠ³Π° ΡΠ° ΠΊΠΎΠ½ΡΡΡΡΠΈΡΠ° ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° ΠΈΠ·Π²ΠΎΡΠ½Π°ΡΠ° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°, Handly Π½Π΅ ΠΏΡΠΎΠΏΠΈΡΡΠ²Π° Π½Π΅ΠΊΠΎΡΠ° ΠΏΠΎΡΠ΅Π±Π½Π° ΡΠΎΡΠΌΠ° Π½Π° AST ΠΏΡΠ΅ΡΡΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΠΈ, Π²ΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏ, Π½Π΅ Π±Π°ΡΠ° Π½ΠΈΡΡ ΠΏΡΠΈΡΡΡΡΠ²ΠΎ Π½Π° ΡΠ°ΠΌΠΈΠΎΡ AST, ΡΠΎ ΡΡΠΎ ΡΠ΅ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° ΠΊΠΎΠΌΠΏΠ°ΡΠΈΠ±ΠΈΠ»Π½ΠΎΡΡ ΡΠΎ ΡΠ΅ΡΠΈΡΠΈ ΡΠ΅ΠΊΠΎΡ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·Π°ΠΌ Π·Π° ΠΏΠ°ΡΡΠΈΡΠ°ΡΠ΅. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, Handly ΠΏΠΎΠ΄Π΄ΡΠΆΡΠ²Π° ΡΠ΅Π»ΠΎΡΠ½Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡΠ° ΡΠΎ ΡΠ°Π±ΠΎΡΠ½ΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ Π½Π° Eclipse, Π½ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ°Π±ΠΎΡΠΈ ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΡΠΎ Π΄Π°ΡΠΎΡΠ΅ΡΠ΅Π½ ΡΠΈΡΡΠ΅ΠΌ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π° Π½Π΅Π³ΠΎΠ²Π°ΡΠ° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡΠ° ΡΠΎ
Π‘Π΅Π³Π°ΡΠ½Π° Π²Π΅ΡΠ·ΠΈΡΠ°
ΠΠ°ΠΊΠΎ ΡΡΠΎ Π΅ Π½Π°Π²Π΅Π΄Π΅Π½ΠΎ ΠΏΠΎΠ³ΠΎΡΠ΅, Π΅Π΄Π΅Π½ ΠΎΠ΄ ΠΎΠ²ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈ Π΅ 1C: Enterprise Development Tools, ΠΊΠ°Π΄Π΅ ΡΡΠΎ Handly ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ ΠΎΠ΄ ΡΠ°ΠΌΠΈΠΎΡ ΠΏΠΎΡΠ΅ΡΠΎΠΊ Π·Π° ΠΌΠΎΠ΄Π΅Π»ΠΈΡΠ°ΡΠ΅ Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ Π½Π° ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° Π²ΠΈΡΠΎΠΊΠΎ Π½ΠΈΠ²ΠΎ Π½Π° ΡΠ°ΠΊΠ²ΠΈΡΠ΅ ΡΠ°Π·ΠΈΡΠΈ 1C: Enterprise ΠΊΠ°ΠΊΠΎ Π²Π³ΡΠ°Π΄Π΅Π½ ΠΏΡΠΎΠ³ΡΠ°ΠΌΡΠΊΠΈ ΡΠ°Π·ΠΈΠΊ ΠΈ ΡΠ°Π·ΠΈΠΊ Π·Π° ΠΏΡΠ΅Π±Π°ΡΡΠ²Π°ΡΠ΅. . ΠΡΡΠ³ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ Π΅ ΠΏΠΎΠΌΠ°Π»ΠΊΡ ΠΏΠΎΠ·Π½Π°Ρ Π½Π° ΠΏΠΎΡΠΈΡΠΎΠΊΠ°ΡΠ° ΡΠ°Π²Π½ΠΎΡΡ. ΠΠ²Π°
Π‘Π΅ Π½Π°Π΄Π΅Π²Π°ΠΌΠ΅ Π΄Π΅ΠΊΠ° ΠΏΠΎ ΠΎΠ±ΡΠ°Π²ΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° Π²Π΅ΡΠ·ΠΈΡΠ°ΡΠ° 1.0 ΡΠΎ Π³Π°ΡΠ°Π½ΡΠΈΡΠ° Π·Π° ΡΡΠ°Π±ΠΈΠ»Π½ΠΎΡΡ Π½Π° API ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΎΡ Π½Π°ΠΏΡΡΡΠ°ΡΠ΅ Π½Π° ΡΠΎΡΡΠΎΡΠ±Π°ΡΠ° Π½Π° ΠΈΠ½ΠΊΡΠ±Π°ΡΠΈΡΠ°, Handly ΡΠ΅ ΠΈΠΌΠ° Π½ΠΎΠ²ΠΈ ΡΡΠ²ΠΎΠΈΡΠ΅Π»ΠΈ. ΠΠΎ ΠΌΠ΅ΡΡΠ²ΡΠ΅ΠΌΠ΅, ΠΏΡΠΎΠ΅ΠΊΡΠΎΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΡΠ²Π° Π΄Π° Π³ΠΎ ΡΠ΅ΡΡΠΈΡΠ° ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ Π³ΠΎ ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π° API, ΠΎΠ±ΡΠ°Π²ΡΠ²Π°ΡΡΠΈ Π΄Π²Π΅ βΠ³Π»Π°Π²Π½ΠΈβ ΠΈΠ·Π΄Π°Π½ΠΈΡΠ° Π³ΠΎΠ΄ΠΈΡΠ½ΠΎ - Π²ΠΎ ΡΡΠ½ΠΈ (ΠΈΡΡ Π΄Π°ΡΡΠΌ ΠΊΠ°ΠΊΠΎ ΠΈ ΠΈΡΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½ΠΎΡΠΎ ΠΎΠ±ΡΠ°Π²ΡΠ²Π°ΡΠ΅ Π½Π° Eclipse) ΠΈ Π΄Π΅ΠΊΠ΅ΠΌΠ²ΡΠΈ, ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π°ΡΡΠΈ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄Π»ΠΈΠ² ΡΠ°ΡΠΏΠΎΡΠ΅Π΄ Π½Π° ΠΊΠΎΡ ΠΌΠΎΠΆΠ°Ρ Π΄Π° ΡΠ΅ ΠΏΠΎΡΠΏΡΠ°Ρ ΡΡΠ²ΠΎΠΈΡΠ΅Π»ΠΈΡΠ΅. ΠΠΎΠΆΠ΅ΠΌΠ΅ Π΄Π° Π΄ΠΎΠ΄Π°Π΄Π΅ΠΌΠ΅ ΠΈ Π΄Π΅ΠΊΠ° βΡΡΠ°ΠΏΠΊΠ°ΡΠ° Π½Π° Π³ΡΠ΅ΡΠΊΠΈβ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠΎΡ ΠΎΡΡΠ°Π½ΡΠ²Π° Π½Π° ΠΏΠΎΡΡΠΎΡΠ°Π½ΠΎ Π½ΠΈΡΠΊΠΎ Π½ΠΈΠ²ΠΎ ΠΈ Handly ΡΠ°Π±ΠΎΡΠΈ ΡΠΈΠ³ΡΡΠ½ΠΎ Π²ΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅ Π½Π° ΡΠ°Π½ΠΈΡΠ΅ ΡΡΠ²ΠΎΠ΅Π½ΠΈ ΡΡΡΠ΅ ΠΎΠ΄ ΠΏΡΠ²ΠΈΡΠ΅ Π²Π΅ΡΠ·ΠΈΠΈ. ΠΠ° ΠΏΠΎΠ½Π°ΡΠ°ΠΌΠΎΡΠ½ΠΎ ΠΈΡΡΡΠ°ΠΆΡΠ²Π°ΡΠ΅ Π½Π° Eclipse Handly, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΊΠΎΡΠΈΡΡΠΈΡΠ΅
ΠΠ·Π²ΠΎΡ: www.habr.com