ืืืื,
ืืืืืจ ืื, ืฉืืื ืกืงืืจื ืืืืขื, ื ื ืกื ืืืกืชืื ืขื ืืื ืืืืกืืืืช ืฉื ืืจืืืืงืืืจืช Eclipse ืืคืืืคืืจืื ืืื ืืืช ืืื ืคืืชืื ืืฉืืืืื ืืืชืช ืืืฉื ืจืืฉืื ื ืขื ืจืืืื Eclipse ืืืืืืื ืืช ืืืกืืก ืืืื ืืืืืื ืคืืืคืืจืื ืขืืืจ "ืืงืื ืคืืืืจืืืจ ืืืืฉ" 1C: Enterprise.
ืืืื ืืืจืืืืงืืืจืช Eclipse
ืืืื ื ืกืชืื ืชืืืื ืขื ืืื ืืืืืื ืืืืืื ืฉื ืืจืืืืงืืืจืช Eclipse ืืืืฆืขืืช ืืืืืื
ืงืืื ืื, ืืฉ ืืฆืืื ืื Eclipse ืืชืืคืืื ืืจืืืื ืืจืืืืงืืื ื ืืจืืจ ืืืื, ืขื ืืคืจืื ืฉื ืคืื ืงืฆืืื ืืืืช ืืืชื ืชืืืื ืืฉืคื ืืคืื ืงืฆืืื ืืืืช ืืืืืขืืช ืืชืืื ืืฉืคืืช ืชืื ืืช ืกืคืฆืืคืืืช, ืืืคืจืื ืฉื ืจืืืื "ืืืื" ืืืชื ืชืืืืื ืืืฉืง ืืฉืชืืฉ ืืจืืืืื ืืงืฉืืจืื ืขื ืืืฉืง ืืฉืชืืฉ ืชืืื.
ืืคืืื, ืคืืืคืืจืืช Eclipse ืืืืืจื ืชืฉืชืืช ืืฉืืชืคืช, ืืืชื ืชืืืื ืืฉืคื, ืืืื ืืคืืชืื ืฉื Java ืืืกืืคืื ื-Eclipse Java IDE ืืขื ืชืืื ืืช ืืืืืช. ืื ืคืืืคืืจืืช ื-Eclipse ืืื ื-JDT ืืืจืืืื ืืืื ืจืืืืื, ืฉืื ืืื ืืื ืฉืืื ื"ืืืื" ืขืฆืืืืช ืฉื ืืืฉืง ืืฉืชืืฉ ืื ืืฉืืืช ืืืฉืง ืืฉืชืืฉ (ืืืืจ 1).
ืืืจื. 1. Eclipse Platform ื-JDT
ืืืื ื ืจืฉืื ืืช ืืืจืืืืื ืืขืืงืจืืื ืฉื ืคืืืคืืจืืช Eclipse:
- ืืื ืจืืฆื - ืืืืืจ ืืช ืชืฉืชืืช ืืคืืืืื. Eclipse ืืืืคืืื ืืืจืืืืงืืืจื ืืืืืืจืืช. ืืขืืงืจื ืฉื ืืืจ, Eclipse ืืื ืืืกืฃ ืฉื "ื ืงืืืืช ืืจืืื" ื"ืืจืืืืช".
- ืืจืื ืขืืืื - ืื ืื ืคืจืืืงื ืืื ืื ืืืชืจ. ืคืจืืืงื ืืืจืื ืืชืืงืืืช ืืงืืฆืื ืืืืืคืื ืืฉืืจืืช ืืืขืจืืช ืืงืืฆืื.
- ืขืจืืช ืืื ืืืืื'ื ืจืืืื (SWT) - ืืกืคืง ืจืืืื ืืืฉืง ืืฉืชืืฉ ืืกืืกืืื ืืืฉืืืืื ืืืขืจืืช ืืืคืขืื.
- JFace - ืืกืคืง ืืกืคืจ ืืกืืจืืช ืืืฉืง ืืฉืชืืฉ ืฉื ืื ื ืขื ืืื SWT.
- ืฉืืืื ืขืืืื - ืืืืืจ ืืช ืคืจืืืืืช ืืืฉืง ืืืฉืชืืฉ ืฉื Eclipse: ืขืืจืืื, ืชืฆืืืืช, ื ืงืืืืช ืืื.
ืืฉ ืืืืจ ืฉืคืืืคืืจืืช Eclipse ืืกืคืงืช ืื ืจืืืืื ืฉืืืืฉืืื ืจืืื ืืืจืื ืืื ืืืช ืืื ืคืืชืื ืืฉืืืืื, ืืืื Debug, Compare, Search ื-Team. ืืฉ ืืฆืืื ืืืืืื ืืช JFace Text - ืืืกืืก ืืื ืืืช "ืขืืจืืื ืืืืื" ืฉื ืงืื ืืงืืจ. ืืืจืื ืืฆืขืจ, ืืคืืื ืืืื ื ืฉืืืืช ืฉื ืจืืืืื ืืื, ืืื ืื ืจืืืื ืฉืืืช ื-UI, ืืื ื ืืคืฉืจืืช ืืืกืืจืช ืืืืจ ืื, ืืืื ืืืืฉื ืืืง ืื ื ืฆืืฆื ืืช ืขืฆืื ื ืืกืงืืจื ืืืืืช ืฉื ืืจืืืื "ืืืืื" ืืขืืงืจืืื ืฉื ืคืืืคืืจืืช Eclipse ื-JDT.
ืืื ืจืืฆื ืืืื
ืชืฉืชืืช ืืคืืืืื Eclipse ืืืืกืกืช ืขื
ืกืืืืช ืขืืืื ืืืื
ืืืขื ืื ืกืืืืช ืคืืชืื ืืฉืืืืช ืืื ืืื ืขื ืืื ืคืืืคืืจืืช Eclipse ืคืืขืืช ืขื ืกืืืืช ืืขืืืื ืฉื Eclipse. ืืืื ืกืืืืช ืืขืืืื ืฉืืืืื ืืืจื ืืื ืืช ืงืื ืืืงืืจ ืฉื ืืืคืืืงืฆืื ืฉืคืืชืื ื-IDE. ืกืืืืช ืืขืืืื ืืืคื ืืฉืืจืืช ืืืขืจืืช ืืงืืฆืื ืืืืจืืืช ืืคืจืืืงืืื, ืืืืืืื ืชืืงืืืช ืืงืืฆืื. ืืคืจืืืงืืื, ืืชืืงืืืช ืืืงืืฆืื ืืืื ื ืงืจืืื ืึถืึฐืฆึธืขึดื ืกืืืืช ืขืืืื. ืืืืขืช ืกืืืืช ืืขืืืื ื-Eclipse ืืฉืืฉืช ืืืืืื ืืืืก ืืืขืจืืช ืืงืืฆืื, ืื ืฉืืืคืฉืจ ืืืืืฅ ืืฉืืขืืชืืช ืืช ืืืขืืจ ืฉื ืขืฅ ืืืฉืืืื. ืื ืืกืฃ, ืืจืื ืืขืืืื ืืกืคืง ืืกืคืจ ืฉืืจืืชืื ื ืืกืคืื, ืืจืืืช
ืืจืืื Core Resources (org.eclipse.core.resources plugin) ืืืจืื ืืชืืืื ืืกืืืืช ืืขืืืื ืืืืฉืืืื. ืืคืจื, ืจืืื ืื ืืกืคืง ืืืฉื ืคืจืืืจืืืืช ืืกืืืืช ืืขืืืื ืืืืคืก ืืืืืื ืฉื ืืฉืืืื. ืืื ืืขืืื ืืืขืืืืช ืขื ืืืื ืื, ืืงืืืืช ืฆืจืืืื ืืจื ืคืฉืืื ืืืฆืื ืงืืฉืืจ ืืืฉืื. ืืืงืจื ืื, ืจืฆืื ืืืกืชืืจ ืืช ืืืืืืืงื ืฉืืืืกื ืืฉืืจืืช ืืช ืืฆื ืืืฉืื ืืืืื ืืืืฉื ืืืงืื. ืืืจืช, ืืืงืจื ืฉื, ืืืฉื, ืืืืงืช ืงืืืฅ, ืืืงืื ืืืื ืืืืฉืื ืืืืืืง ืืืืืืงื ืฉืืืจ ืืื ื ืืืืื, ืขื ืืืขืืืช ืื ืืืขืืช ืืื. Eclipse ืคืืชืจ ืืช ืืืขืื ืืื ืืืืฆืขืืช ืืฉืื ืฉื ืงืจื ืืืคื ืึทืฉืืึธื. Handle ืคืืขื ืืืคืชื (ืืื ืืืืข ืจืง ืืช ืื ืชืื ืืืฉืื ืืกืืืืช ืืขืืืื) ืืฉืืื ืืืืืืื ืืืืฉื ืืืืืืืงื ืืืืื ืืคื ืืื, ืืืืืกื ืืฉืืจืืช ืืืืข ืขื ืืฆื ืืืฉืื. ืขืืฆืื ืื ืืื ืืจืืืฆืื ืฉื ืืืคืืก
ืืืจื. ืืืืจ 2 ืืืืืฉ ืืช ื ืื ืืืืืช/ืืืฃ ืืคื ืฉืืืื ืขื ืืืื ืืืฉืืืื. ืืืฉืง ื-IResource ืืืืฆื ืืช ืืืืืช ืฉื ืืฉืื ืืืื API, ืื ืืืื ืืืืืงืช Resource, ืืืืืฉืืช ืืืฉืง ืื, ืืืืืงื ResourceInfo, ืืืืืฆืืช ืืช ืืืืฃ, ืฉืืื ื ืืืฉืงื API. ื ืืืืฉ ืฉ-handle ืืืืจื ืจืง ืืช ืื ืชืื ืืืฉืื ืืืืก ืืฉืืจืฉ ืกืืืืช ืืขืืืื ืืืื ื ืืืืื ืงืืฉืืจ ืืืืืข ืขื ืืืฉืื. ืืืืืืงืื ืืืืข ืขื ืืฉืืืื ืืืฆืจืื ืื ืฉื ืงืจื "ืขืฅ ืืืื ืืื". ืืื ื ื ืชืื ืื ืื ืืชืืืฉ ืืืืืืื ืืืืืจืื. ืืื ืืืฆืื ืืช ืืืคืข ืืืืืข ืฉื ืืืฉืื ืืชืืื ืืืืคืื, ืขืืืจืื ืขื ืขืฅ ืืืืื ืืื ืืืชืื ืื ืชืื ืืืืืืกื ืื ืงืืืช ืืืืื ืื.
ืืืจื. 2. IResource ื-ResourceInfo
ืืคื ืฉื ืจืื ืืืืฉื, ืืขืืฆืื ืืืกืืกื ืฉื ืืืื ืืืฉืืืื (ืืคืฉืจ ืืงืจืื ืื ืืืืกืก ืืืืช) ืืฉืืฉ ื-Eclipse ืื ืขืืืจ ืืืืื ืืืจืื. ืืขืช ืขืชื, ืืืื ื ืจืฉืื ืืื ืืืืืคืืื ืื ืืืืืืืืื ืฉื ืขืืฆืื ืื:
- ืืืืช ืืื ืืืืืืงื ืขืจืื. ืืืืืืงืืื ืขืจืืืื ืื ืืืืืืงืืื ืืืชื ื ืืชื ืื ืืฉืื ืื ืฉืืฉืืืืื ืืื ืืื ืืื ื ืืืืกืก ืขื ืืืืช. ืืคืฆืื ืืืื ืืืืืื ืืฉืืฉ ืืืืื ืืืคืชื ืืืืืืืช ืืืืืืช. ืืืคืขืื ืืจืืืื ืฉื ืืืืช ืืืืืื ืืืคื ืืช ืืืืชื ืืฉืื. ืืื ืืืฉืืืช ืืื ืืื, ืขืืื ืืืฉืชืืฉ ืืฉืืืช equals(Object).
- Handle ืืืืืจ ืืช ืืืชื ืืืืช ืฉื ืืฉืื, ืื ืืื ื ืืืื ืืืืข ืขื ืืฆื ืืืฉืื (ืื ืชืื ืื ืืืืืืื ืฉืืื ืืืืกื ืช ืืื ื"ืืคืชื", ืื ืชืื ืืืฉืื).
- Handle ืขืฉืื ืืืชืืืืก ืืืฉืื ืฉืืื ื ืงืืื (ืื ืืืฉืื ืฉืืจื ื ืืฆืจ, ืื ืืืฉืื ืฉืืืจ ื ืืืง). ื ืืชื ืืืืืง ืืช ืงืืืื ืฉื ืืฉืื ืืืืฆืขืืช ืฉืืืช IResource.exists() .
- ื ืืชื ืืืืฉื ืคืขืืืืช ืืกืืืืืช ืจืง ืขื ืกืื ืืืืข ืืืืืืกื ื-handle ืขืฆืื (ืื ืฉื ืงืจื ืคืขืืืืช handle-only). ืืืืืืืช ืื IResource.getParent(), getFullPath() ืืื'. ืืืฉืื ืื ืฆืจืื ืืืชืงืืื ืืื ืฉืืืฆืข ืืื ืืฆืืื. ืคืขืืืืช ืืืืจืฉืืช ืงืืื ืืฉืื ืืื ืืืฆืืื ืืืจืงืืช CoreException ืื ืืืฉืื ืืื ื ืงืืื.
Eclipse ืืกืคืง ืื ืื ืื ืืขืื ืืืืืืข โโืขื ืฉืื ืืืื ืืืฉืืื ืกืืืืช ืืขืืืื (ืืืืจ 3). ืืฉืืืื ืืืืืื ืืืฉืชื ืืช ืื ืืชืืฆืื ืืคืขืืืืช ืฉืืืฆืขื ืืชืื Eclipse IDE ืขืฆืื ืื ืืชืืฆืื ืืกื ืืจืื ืขื ืืขืจืืช ืืงืืฆืื. ืืฉื ื ืืืงืจืื, ืืงืืืืช ืืื ืืืื ืืืชืจืืืช ืืงืืืื ืืืืข ืืคืืจื ืขื ืืฉืื ืืืื ืืฆืืจื ืฉื "ืืืชื ืืฉืืืื". ืืืชื ืืชืืจืช โโืฉืื ืืืื ืืื ืฉื ื ืืฆืืื ืฉื ืขืฅ ืืฉืื (ืืฉื ื) ืฉื ืกืืืืช ืขืืืื ืืืื ืขืฆืื ืขืฅ, ืฉืื ืฆืืืช ืฉืื ืืชืืจ ืฉืื ืื ืืืฉืื ืืืืื ืจืฉืืื ืฉื ืืืชืืช ืืจืื ืืืื ืืืชืืจืืช ืฉืื ืืืื ืืืฉืืื ืฆืืฆื.
ืืืจื. 3. IResourceChangeEvent ื-IResourceDelta
ืืื ืื ืื ืืืืืขืืช ืืืืืกืก ืขื ืืืชืืช ืืฉืืืื ืืฉ ืืช ืืืืคืืื ืื ืืืืื:
- ืฉืื ืื ืืืื ืืฉืื ืืืื ืจืืื ืืชืืืจืื ืชืื ืฉืืืืฉ ืืืืชื ืืื ื, ืฉืื ืืืืชื ื ืื ืืช ืืืืฆืขืืช ืขืงืจืื ืืืจืื ืืจืงืืจืกื. ืืงืืืืช ืื ืืืื ืืืืืื ืืขืื ืืชืจืืืช ืขื ืฉืื ืื ืืฉืืืื ืืืืฆืขืืช ืืจืืื ืจืงืืจืกืืืืช ืืจื ืขืฅ ืฉื ืืืชืืช.
- ืืืืชื ืืืืื ืืืืข ืืื ืขื ืฉืื ืืืื ืืืฉืื, ืืืื ืชื ืืขืชื ื/ืื ืฉืื ืืืื ื"ืกืื ืื" ืืืฉืืืืื ืืืื (ืืืืืื, ืฉืืืืืช ืงืืืคืืืฆืื ืืืืฆืืืช ืืกืื ืื).
- ืืืืืื ืฉืืคื ืืืช ืืืฉืื ื ืขืฉืืช ืืจื ืืืืืช, ืืืชื ืืืืื ืืืคื ืืช ืืืืคื ืืืขื ืืืฉืื ืืจืืืง.
ืืคื ืฉื ืจืื ืืงืจืื, ืืืจืืืืื ืืขืืงืจืืื ืฉื ืขืืฆืื ืื ืื ืื ืืืชืจืื ืขื ืฉืื ืื ืืืื ืืฉืืืื ืจืืืื ืืืื ืื ืืืืืืื ืืืจืื ืืืืกืกื ืืืืช.
JDT Core
ืืืื ืืืฉืืืื ืฉื ืกืืืืช ืืขืืืื ืฉื Eclipse ืืื ืืืื ืืกืืกื ืฉื ืฉืคื ืืื ืืกืืืช. ืจืืื JDT Core (plugin org.eclipse.jdt.core) ืืกืคืง API ืื ืืืื ืื ืืชืื ืืื ื ืกืืืืช ืืขืืืื ืื ืงืืืช ืืื ืฉื Java, ืื ืฉื ืงืจื "ืืืื Java" (ืืื Java). API ืื ืืืืืจ ืืืื ืืื ืฉื ืจืืืื Java, ืื ืืืื ื-API ืฉื ืืืื ืืืฉืืืื ืืืกืืกื, ืืืืืืจ ืืืื ืืื ืฉื ืชืืงืืืช ืืงืืฆืื. ืืืืฉืงืื ืืขืืงืจืืื ืฉื ืขืฅ ืืืืื ืืื ืฉื Java ืืืฆืืื ืืืืืจ. 4.
ืืืจื. 4. Java Model Elements
ืืืื Java ืืฉืชืืฉ ืืืืชื ื ืื ืืืืช/ืืืฃ ืืื ืืืื ืืืฉืืืื (ืืืืจ 5). IJavaElement ืืื ืืืืืช, ื-JavaElementInfo ืืืื ืืช ืชืคืงืื ืืืืฃ. ืืืฉืง IJavaElement ืืืืืจ ืคืจืืืืงืื ืืฉืืชืฃ ืืื ืจืืืื Java. ืืืง ืืืฉืืืืช ืฉืื ืื ืืืืคืื ืืืื: getElementName(), getParent() ืืื'. ืืืืืืืงื JavaElementInfo ืืืืกื ืืช ืืืฆื ืฉื ืืืืื ื ืืืชืืื: ืืืื ื ืืืชืืื ืืช ืฉืื.
ืืืจื. 5. IJavaElement ื-JavaElementInfo
ืืืืื Java ืืฉ ืืื ืืืืืื ืืืืฉืื ืฉื ืขืืฆืื ืืืืืช/ืืืฃ ืืืกืืกื ืืืฉืืืื ืืืืื ืืืฉืืืื. ืืคื ืฉืฆืืื ืืขืื, ืืืืื ืืืฉืืืื, ืขืฅ ืืืืื ืืื, ืฉืืฆืืชืื ืฉืื ืื ืืืืืืงืื ืืืืข ืขื ืืฉืืืื, ืืืื ืืืื ืืืืืจืื. ืืื ืืืืื Java ืืืื ืืืืืช ืืกืคืจ ืืืื ืืฉืืขืืชืืช ืฉื ืืืื ืืื ืืขืฅ ืืืฉืืืื, ืืืืืื ืฉืืื ืืืืฆื ืื ืืช ืืืื ื ืืคื ืืื ืฉื ืงืืฆื .java ื-.class: ืกืืืื, ืฉืืืช ืืฉืืืืช.
ืืื ืืืืื ืข ืืืชืืืฉืืช ืืืืืืช ืฉื ืื ืขืฅ ืืืืื ืืื ืืืืืจืื, ืืืฉืื ืืืื Java ืืฉืชืืฉ ืืืืืื LRU ืืืืื ืืืืื ืฉื ืืืืข ืขื ืจืืืืื, ืืืฉืจ ืืืคืชื ืืื handle IJavaElement. ืืืืืืงืื ืืืืข ืขื ืืืื ืืื ื ืืฆืจืื ืืคื ืืจืืฉื ืชืื ืืื ื ืืืื ืืขืฅ ืืืืื ืืื. ืืืงืจื ืื, ืืคืจืืืื ืืฉืืืืฉ ืืคืืืช ืชืืืคืื ืืกืืืงืื ืืืืืืื, ืืฆืจืืืช ืืืืืจืื ืฉื ืืืื ื ืฉืืจืช ืืืืืืช ืืืืื ืืืืืื ืฉืฆืืื. ืืื ืืชืจืื ื ืืกืฃ ืฉื ืขืืฆืื ืืืืกืก ืืืืช, ืืฉืจ ืืกืชืืจ ืืืืืืื ืคืจืื ืืืฉืื ืืืื ืืงืื ืืืงืื.
ืื ืื ืื ืืืืืขื ืขื ืฉืื ืืืื ืืจืืืื Java ืืืื ืืืืคื ืืืื ืืื ืื ืื ืืขืงื ืืืจ ืฉืื ืืืื ืืืฉืืื ืกืืืืช ืืขืืืื ืฉื ืืื ืืขืื. ืืงืื ืืืขืื ืืื ืืขืงืื ืืืจ ืฉืื ืืืื ืืืืื Java ื ืจืฉื ืืืืืขืืช, ืืฉืจ ืืืืฆืืืช ืืืืืืืงื ElementChangedEvent ืืืืื IJavaElementDelta (ืืืืจ 6).
ืืืจื. 6. ElementChangedEvent ื- IJavaElementDelta
ืืืื ื-Java ืืื ื ืืืื ืืืืข ืขื ืืืคื ืืฉืืื ืื ืจืืืืืฆืืืช ืืฉืืืช, ืืืื ืืฆืืจื ื ืืชืื ืืคืืจื ืฉื ืงืื ืฉื ืืชื ื-Java, JDT Core ืืกืคืง ืืืื ื ืืกืฃ (ืฉืืื ื ืืืืกืก ืขื ืืืืช):
ืืืืืื ืฉืขืฆื ืชืืืืจ ืืืืืื ืืฆืจืื ืืืืช ืืฉืืขืืชืืช ืฉื ืืืืจืื, JDT ืืืืกื AST ืืื ืืืื ืขืืืจ ืืขืืจื ืืคืขืื. ืฉืื ืืื ืืืื Java, ื-AST ื ืชืคืก ืืืจื ืืื ืืืืื "ืืื ืื ื", "ืืื ื", ืืฉืจ ืืื ืืืชืืืืก ืืืืจืื ืขื ืืื ืืงืืืืช ืืืืฅ ืืืงืฉืจ ืฉื ืืคืขืืื ืฉืืืืืื ืืืฆืืจืช ื-AST.
ืฉืืืฉืช ืืืืืื ืืืคืืจืืื (ืืืื Java, AST, bindings) ืืืืืื ืืื ืืช ืืืกืืก ืืื ืืืช "ืืื ืคืืชืื ืืืืื" ื-JDT, ืืืื ืขืืจื Java ืืืง ืขื "ืขืืืจืื" ืฉืื ืื, ืคืขืืืืช ืฉืื ืืช ืืขืืืื ืงืื ืืงืืจ (ืืืื ืืจืืื ืจืฉืืืช ืืืืื ืฉืืืช ืืขืืฆืื ืืคื ืืกืื ืื ืืืืชืื), ืืื ืืืคืืฉ ืืขืืืื ืืืืฉ. ืืืงืจื ืื, ืืืื ื-Java ืืืื ืชืคืงืื ืืืืื, ืฉืื ืืื ืืฉืืฉ ืืืกืืก ืืืืฆืื ืืืืชื ืฉื ืืื ื ืืืคืืืงืฆืื ืืืคืืชืืช (ืืืืืื, ืืกืืืจ ืืืืืืืช, Outline, ืืืคืืฉ, ืืืจืจืืืืช ืฉืืืืช ื ืืืจืจืืืืช ืืงืืื).
ืจืืืื Eclipse ืืืฉืืฉืื ืืืื 1C:Enterprise Developments
ืืืืืจ. ืืืืจ 7 ืืฆืื ืืช ืจืืืื Eclipse ืืืืืืื ืืช ืืืกืืก ืืคืืืคืืจืืช ืืืื ืืืืืื ืขืืืจ 1C:Enterprise Development Tools.
ืืืจื. 7. Eclipse ืืคืืืคืืจืื ืืืื ืคืืชืื 1C:Enterprise
ืคืืืคืืจืืช Eclipse ืืกืคืง ืชืฉืชืืช ืืกืืกืืช. ืืื ื ืืื ืืืืืื ืฉื ืชืฉืชืืช ืื ืืกืขืืฃ ืืงืืื.
ืืื ืื ืืื ืืืืจืืช ืืืืืืช ืืืืช, EMF ืืชืืื ืืคืชืจืื ืืืืื ืจืื ืฉื ืืขืืืช ืืืืื ืืช, ืื ืืืืงืืช ืืกืืืืืช ืฉื ืืืืื (ืืืืืื, ืืืืืื ืืืืกืกื ืืืืืช ืฉื ืืื ื ืืขืื) ืขืฉืืืื ืืืจืืฉ ืืื ืืืืื ืืช ืืืืืืื ืืืชืจ. ืืืืจ ืขื EMF ืืื ืืฉืืื ืืกืจืช ืชืืื, ืืืืืื ืืืืืืืช ืืืฆืืืฆืืื ืฉื ืืืืจ ืืื, ืฉืื ืืื ื ืืฉื ืฉื ืกืคืจ ื ืคืจื, ืืขืื ืืืื. ื ืฆืืื ืจืง ืฉืืขืจืืช ืืืืืืืช ืืืืืืชืืช ืืขืืืืช ืืืกืืก ื-EMF ืืคืฉืจื ืืช ืืืืื ืฉื ืืืืื ืฉืื ืฉื ืคืจืืืงืืื ืืืืงืืฉืื ืืืืืื, ืื ืืืืื ืืคืจืืืงื ืืจืื ืืขืืืื ื
1C:Enterprise Development Tools ืืฉืชืืฉืื ืืืืคื ืคืขืื ืื ื-EMF ืขืฆืื ืืื ืืืกืคืจ ืคืจืืืงืืื ืืืจืื ืฉื Eclipse Modeling. ืืืืืื, Xtext ืืื ืืื ืืืกืืืืช ืฉื ืืื ืคืืชืื ืขืืืจ ืฉืคืืช 1C: Enterprise ืืื ืฉืคืช ืืชืื ืืช ืืืืื ืืช ืืฉืคืช ืืฉืืืืชืืช. ืืกืืก ื ืืกืฃ ืืืื ืคืืชืื ืืื ืืื ืคืจืืืงื Eclipse Handly, ืื ื ืืื ืืืชืจ ืคืืจืื (ืืืื ืจืืืื ื-Eclipse ืืืคืืจืืื, ืืื ืขืืืื ืืคืืืช ืืืืจ).
ืืขืงืจืื ืืช ืืืจืืืืงืืื ืืื ืืืกืืกืืื ืฉื ืืืืืื ืืืืกืกื ืืืืช, ืืืื ื ืื ืืืืช/ืืืฃ, ื ืืื ื ืืขืื ืชืื ืฉืืืืฉ ืืืืื ืืืฉืืืื ืืืืืื Java ืืืืืืืืช. ืื ืื ืฆืืื ืื ืื ืืืื ืืืฉืืืื ืืื ืืืื Java ืื ืืกืืืืช ืืฉืืืื ืืืื ืืคืืชืื ืฉื Eclipse Java (JDT). ืืืืืืื ืฉืืืขื ืืื ืคืจืืืงืื *DT Eclipse ืืฉ ืืจืืืืงืืืจื ืืืื ื-JDT, ืื ืชืืื ืืืืื ืืืืื ืืืืจ ืฉืืืืืื ืืืืกืกื ืืืืืช ืขืืืืื ืืืกืืก ืจืืื, ืื ืื ืื ื-IDEs ืฉื ืื ื ืขื ืืื ืคืืืคืืจืืช Eclipse. ืืืืืื, ื-Eclipse C/C++ Development Tooling (CDT) ืืฉ ืืืื C/C++ ืืืืกืก ืืืืช ืืืืื ืืช ืืืชื ืชืคืงืื ืืืจืืืืงืืืจืช ื-CDT ืืื ืฉืืืื Java ืขืืฉื ื-JDT.
ืืคื ื Handly, Eclipse ืื ืืฆืืขื ืกืคืจืืืช ืืืืืืืช ืืื ืืืช ืืืืืื ืฉื ืฉืคื ืืืืกืกื ืืืืืช. ืืืืืืื ืืงืืืืื ืืืื ื ืืฆืจื ืืขืืงืจ ืขื ืืื ืืชืืื ืืฉืืจื ืฉื ืงืื ืืืืื ืฉื Java (ืืืืื ื ืืขืชืง/ืืืืง), ืืืงืจืื ืฉืื ืืืคืฉืจ Eclipse Public License (EPL). (ืืจืืจ ืฉืืืจื ืืื ืื ืื ืขื ืืื ืืฉืคืื ืขืืืจ, ื ื ืื, Eclipse ืืงืจืื ืืช ืขืฆืื, ืืื ืื ืขืืืจ ืืืฆืจื ืงืื ืกืืืจ.) ืื ืืกืฃ ืืืงืจืืืืช ืืืืื ืืช ืฉืื, ืืืื ืืงื ืืื ืืฆืืื ืืขืืืช ืืืืขืืช: ืฉืืคืื ืงืื ืฉืืืื ืก ืขื ืืื ืืขืช ืืชืืื ืืฉืืืืืช, ืืื ' ืื ืฉืืืชืจ ืืจืืข ืืื ืฉืืืืืืื ืืืชืงืืืื ื ืฉืืจืื "ืืืจืื ืืคื ื ืขืฆืื" ืืืื ื ืื ืฆืืื ืืช ืคืืื ืฆืืื ืืืืืื. ืืื ืืืืื ืืืฉืืื ืืคืจืืืืงืืืื ื ืคืืฆืื ืขืืืจ ืืืืืื ืฉื ืฉืคื ืืืืกืกื ืืืืช ืืืื ืืืืืื ืืืฆืืจืช ืจืืืืื ืืฉืืืืฉ ืืืืจ ืืขืืืื ืืืชื, ืืืืื ืืื ืฉืงืจื ืืืงืจื ืฉื EMF.
ืื ืื ืฉืืงืืืคืก ืื ืืืื ืืช ืืืขืืืช ืืืื. ืขืื ื-2005
ืืืืื ืืกืืื, ืคืจืืืงื Handly ื ืืขื ืืคืชืืจ ืืขืจื ืืช ืืืชื ืืขืืืช ืืื EMF, ืืื ืขืืืจ ืืืืืื ืืืืกืกื ืืืืืช, ืืืขืืงืจ ืฉืคื (ืืืืืจ, ืืืืฆื ืืืื ืืื ืฉื ืืืื ื ืฉื ืฉืคืช ืชืื ืืช ืืืฉืื). ืืืขืืื ืืขืืงืจืืื ืฉื ืงืืขื ืืขืช ืขืืฆืื Handly ืืคืืจืืื ืืืื:
- ืืืืื ืืืคืฉืืืช ืืขืืงืจืืืช ืฉื ืชืืื ืื ืืฉื.
- ืฆืืฆืื ืืืืืฅ ืืฉืืคืืจ ืืืืืช ืืืืืขื ืฉื ืืืืืื ืฉื ืฉืคื ืืืืกืกื ืืืืช ืืืืฆืขืืช ืฉืืืืฉ ืืืืจ ืืงืื.
- ืืชื API ืืืืื ืืจืืช ืืื ืืืืืืื ืืืชืงืืืื, ืื ืฉืืืคืฉืจ ืืืฆืืจ ืจืืืื IDE ื ืคืืฆืื ืฉืขืืืืื ืขื ืืืืืื ืืืืกืกื ืืืืช ืฉืคื.
- ืืืืฉืืช ืืืืจืืืืช.
- ืืื ืืืจืฆืื ืขื Xtext (ืืฉืืื ื ืคืจืืช).
ืืื ืืืืืืฉ ืืืฉืืื ืืคืจืืืืงืืืื ื ืคืืฆืื, ื ืืชืื ืืืฉืืืื ืงืืืืื ืฉื ืืืืืื ืืืืกืกื ืืืืช ืฉืคื. ืืืืฉืงืื ืืขืืงืจืืื ืืืืืฉืืืื ืืืกืืกืืื ืืืกืืคืงืื ืขื ืืื Handly ืืืฆืืื ืืืืืจ. 8.
ืืืจื. 8. ืืืฉืงืื ื ืคืืฆืื ืืืืืขืืช ืืกืืกืืืช ืฉื ืจืืืื Handly
ืืืฉืง IElement ืืืืฆื ืืช ืืืืืช ืฉื ืืืื ื ืืืฉืืชืฃ ืืืืื ืืื ืฉื ืื ืืืืืื ืืืืืกืกืื ืขื Handly. ืืืื ื ืืืืืงื ืืืืคืฉื ืืืืฉื ืืช ืื ืื ืื ืืืืืช/ืืืฃ ืืืืืื (ืืืืจ 9).
ืืืจื. 9. IElement ืืืืืขืช ืืืืช/ืืืฃ ืื ืจืืช
ืื ืืกืฃ, Handly ืืกืคืงืช ืื ืื ืื ืืืื ืืืืืขื ืขื ืฉืื ืืืื ืืจืืืื ืืืื (ืืืืจ 10). ืืคื ืฉื ืืชื ืืจืืืช, ืืื ืืืื ืืืืื ืจืื ืืื ืื ืื ื ืืืืืขืืช ืืืืืฉืืื ืืืืื ืืืฉืืืื ืืืืืื ื-Java, ืืืฉืชืืฉ ื-IElementDelta ืืื ืืกืคืง ืืืฆืื ืืืื ืฉื ืืืืข ืขื ืฉืื ืื ืืืื ืืื.
ืืืจื. 10. ืืืฉืงืื ืืืืืื ืืืืืขืืช ืืกืืกืืืช ืฉื ืื ืื ืื ืืืืืขืืช Handly
ื ืืชื ืืืฉืชืืฉ ืืืืง Handly ืฉื ืืื ืืขืื (ืืืืจ 9 ื-10) ืืื ืืืืฆื ืืืขื ืื ืืืื ืืืืกืก ืืืืช. ืืืฆืืจื ืืฉืื ื ืืืืืื, ืืคืจืืืงื ืืฆืืข ืคืื ืงืฆืืื ืืืืช ื ืืกืคืช - ืืคืจื, ืืืฉืงืื ื ืคืืฆืื ืืืืืขืืช ืืกืืกืืืช ืขืืืจ ืืืื ืืื ืฉื ืืื ื ืืงืกื ืืืงืืจ, ืื ืฉื ืงืจื ืืจืืืื ืืงืืจ (ืืืืจ 8). ืืืฉืง ISourceFile ืืืืฆื ืงืืืฅ ืืงืืจ, ื-ISourceConstruct ืืืืฆื ืืืื ื ืืชืื ืงืืืฅ ืืืงืืจ. ืืืืืงืืช ืืืืคืฉืืืช SourceFile ื-SourceConstruct ืืืืฉืืืช ืื ืื ืื ืื ืืืืืื ืืชืืืื ืืขืืืื ืขื ืงืืฆื ืืงืืจ ืืืืืื ืืื ืฉืืื, ืืืฉื ืขืืืื ืขื ืืืืจื ืืงืกื, ืืืืืจ ืืงืืืืจืืื ืืืช ืฉื ืืืื ื ืืืงืกื ืืืงืืจ, ืืชืืื ืฉื ืืืืืื ืขื ืืชืืื ืื ืืืื ืฉื ืืืืจ ืขืืชืง ืขืืืื , ืืื. ืืืืขืช ืื ืื ืื ืื ืืื ืืื ืืืจื ืืื ืืชืืจ ืื ืงืื, ืืื ืื ืืืืื ืืืคืืืช ืืฉืืขืืชืืช ืืช ืืืืืฅ ืืคืืชืื ืืืืืื ืฉื ืฉืคื ืืืืกืกื ืืืืืช ืขื ืืื ืืชื ืืืืขืืช ืืกืืกืืืช ืืืืืืช ืืืืื.
ืื ืืกืฃ ืืื ืื ืื ื ืืืืื ืืืคืืจืืื ืืขืื, Handly ืืกืคืงืช ืชืฉืชืืช ืืืืืจื ืืงืกื ืืชืฆืืืื ืืฆื, ืชืืืื ืืืื ืืืจืฆืื ืขื ืขืืจืื ืงืื ืืงืืจ (ืืืื ืืื ืืืจืฆืื ืืืืฅ ืืงืืคืกื ืขื ืขืืจื Xtext), ืืื ืื ืืื ืจืืืื ืืืฉืง ืืฉืชืืฉ ื ืคืืฆืื ืขืืืื ืขื ืขืืจืื ืงืื ืืงืืจ. ืืืืืื ืฉืืืืฉืืื ืืืื ืืกืืจืช ืืชืืจ. ืืื ืืืืืืฉ ืืช ืืืืืืชืื, ืืคืจืืืงื ืืกืคืง ืืกืคืจ ืืืืืืืช, ืืืื ืืืืขื ืฉื ืืืื Java ื-Handly. (ืืืฉืืืื ืืืืืืฉ ืืืื ืฉื ืืืื ื-Java ื-JDT, ืืืื ืื ืืคืืฉื ืืขื ืืืืื ื ืืฆืืจื ืืืืจืืช ืจืื ืืืชืจ.)
ืืคื ืฉืฆืืื ืงืืื ืืื, ืืืฉ ืืจืืื ืืืืื ืืชืื ืื ืืจืืฉืื ื ืฉื Handly ืืืคืืชืื ืฉืืืืจ ืืื ืืื ืืืืฉืื ืืืืืช ืืืจืืืืช ืืืืืฉืืช.
ืืืืคื ืขืงืจืื ื, ืืืืืื ืืืืกืกื ืืืืช ืืชืงืืืื ืื ืืื "ืืคื ืขืืฆืื". ืืืืืื, ื ืื ืืืืืช/ืืืฃ ืืืคืฉืจ ืื ืืืืืื ืืช ืืืืช ืืืืืจืื ืื ืฆืจืืช ืขื ืืื ืืื. ืืื ืืฉ ืื ื ืืืื ืกืื. ืืคืืื, ืืขืช ืืืืงืช Handly ืขืืืจ ืืืจืืืืช, ืืชืืืชื ืืขืื ืืืืฉืื ืื ืื ืื ืืืชืจืืืช - ืืืฉืจ ืฉืื ื ืืกืคืจ ืจื ืฉื ืืืื ืืื, ืื ืืืช deltas ืืงืื ืืืชืจ ืืื ืืื. ืืชืืจืจ ืฉืืืชื ืืขืื ืืืืชื ืงืืืืช ืืืืื 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 ืื-ืืื ืืช) ืืืืฆืืืจ, ืื ืฉืืกืคืง ืืื ืืื ืื ืฆืคืื ืฉืืืืืฆืื ืืืืืื ืืกืืื ืขืืื. ืื ื ืืืืืื ืื ืืืืกืืฃ ืฉ"ืฉืืขืืจ ืืืืืื" ืฉื ืืคืจืืืงื ื ืฉืืจ ืืจืื ื ืืืื ืืืืคื ืขืงืื, ืืืื ืืื ืขืืืืช ืืฆืืจื ืืืื ื ืืืืฆืจืื ืฉื ืืืืฆืื ืืืงืืืื ืืืจ ืืืืจืกืืืช ืืจืืฉืื ืืช. ืืื ืืืงืืจ ืขืื ืืืชืจ ืืช Eclipse Handly, ืืชื ืืืื ืืืฉืชืืฉ
ืืงืืจ: www.habr.com