锘??xml version="1.0" encoding="utf-8" standalone="yes"?>
涓庡叾浠栧浘褰㈡鏋剁被浼鹼紝GEF浣跨敤MVC鏉ユ秷闄I涔嬮棿鐨勮﹀悎銆?br />
錛?錛塎odel:鍙互鐢ㄤ換浣旿ava瀵硅薄鏉ヨ〃紺?model蹇呴』鎷ユ湁鏌愮notification鏈哄埗銆?br />
錛?錛塚iews: Figure/TreeItems, 鍦ㄥ吀鍨嬬殑GraphicalEditor涓紝Figure鏄敤浜庡湪GraphicalViewer涓樉紺虹殑Draw2D Figure錛岃孴reeItems鐢ㄤ簬鍦∣utline涓殑TreeViewer涓樉紺轟俊鎭?br />
錛?錛塁ontroller(EditPart):閫氬父瀵逛簬姣忎釜Figure瀵瑰簲涓涓狤ditPart錛孍ditPart鐢ㄤ簬淇敼錛屽緢澶氫慨鏀逛換鍔¢兘鏄氳繃EditPolicy鏉ュ疄鐜扮殑銆?br />
2錛嶤ommand
Command灝佽浜哅odel鐨勪慨鏀癸紝鍙互閫氳繃緇ф壙GEF涓殑鎶借薄綾籆ommand錛屾彁渚涘彲Redo/Undo鍔熻兘錛屾垜浠富瑕佹槸鍦╡xecute()/redo()/undo()涓畬鎴愪笟鍔″姛鑳界殑瀹炵幇銆?br />
3. Chain of Responsibility
Chain of Responsibility閫氳繃灝哛equest浼犻掔粰澶氫釜瀵硅薄錛屽茍緇欒繖浜涘璞℃満浼氬鐞嗚姹傦紝浠庤屽皢璇鋒眰鐨勫彂閫佽呭拰鎺ュ彈鑰呰В闄よ﹀悎銆傚湪GEF涓紝澶氫釜EditPolicy鍙互鏀跺埌璇鋒眰錛岃繑鍥濩ommands錛岃繖浜汣ommands浠ラ摼鐨勬柟寮忕粍緇囧湪涓璧楓?br />
4. State
鍏佽Graphical Editor鍦ㄥ唴閮ㄧ姸鎬佸彂鐢熸敼鍙樼殑鏃跺欙紝淇敼緙栬緫鍣ㄧ殑琛屼負銆傚浜嶨EF Editor錛岀敤鎴峰垏鎹㈠伐鍏峰彲浠ユ敼鍙樼紪杈戝櫒鐨勭姸鎬併備緥濡傦紝瀵逛簬榧犳爣鎸変笅浜嬩歡錛岀紪杈戝櫒鍦ㄦ縺媧婚夊尯宸ュ叿鍜屾縺媧誨垱寤哄伐鍏蜂笅鐨勮涓烘槸鎴劧涓嶅悓鐨勩傝緇嗚瑙乷rg.eclipse.gef.Tool鎺ュ彛錛孉bstractTool瀹氫箟浜嗗嚑涓猻tate錛孲TATE_xxx.
5. Abstract Factory
鎻愪緵Interface鍒涘緩涓緋誨垪鐩稿叧鎴栫浉渚濊禆鐨勫璞°傝繖涓ā寮忓湪鏍規嵁妯″瀷閮ㄤ歡鍒涘緩緙栬緫閮ㄤ歡鏃惰浣跨敤銆?br />
6. Factory Method
瀹氫箟浜嗘柟娉曞垱寤哄璞★紝浣嗘槸鍏佽瀛愮被鍐沖畾瀹炰緥鍖栫殑綾匯傝繖涓ā寮忔病鏈夎鍗曠嫭璁ㄨ錛屼絾鏄畠鏄垱寤虹紪杈戦儴浠剁殑鍙︿竴縐嶅彲閫夌殑鏂規硶銆俢reateChild鏂規硶鍏佽浣犱笉浣跨敤宸ュ巶灝卞垱寤哄瓙緙栬緫閮ㄤ歡銆?br />