`
whathappened
  • 浏览: 1264 次
  • 性别: Icon_minigender_1
  • 来自: 福建
最近访客 更多访客>>
社区版块
存档分类
最新评论

一不小心理解了两种模式。。。

 
阅读更多
理解,应该说只是暂时的理解。 对于模式,每个阶段都有每个阶段的感悟。
最近研究eclipse插件开发,做个XML的图形化编辑插件。做惯了J2EE项目,用惯了各种各样的框架。对于这种啃源代码,研究API,搜索些代码sinnpets来做个东西的方式还是感到了点阻力。
不过这过程也算学习了不少东西。言归正传,做的过程中有用到了两个模式,访问者模式和观察者模式。我想说的不是介绍这两种模式。这些资料啊,书籍啊都烂大街了。我是想说是我是如何去理解的。比如访问者模式,在XML解析的过程中有用到,写节点访问者时,突然地感觉到,如果把被访问者当成黑盒子,那么我只需想到我这段代码能拿到一个节点的对象。我对他进行处理就可以了。这样更符合思维的习惯。又比如观察者模式。在用一个多页的编辑器时,对UI界面的控件进行观察。那么把UI界面控件当做黑盒子。写观察者时,我只需专注于写将观察的结果更新到源代码编辑器去就可以了。结论:在写代码时,更专注,更符合思维的习惯。这就是暂时的理解吧。
分享到:
评论

相关推荐

    两秒让打开的电脑瘫痪(要小心)

    标题 "两秒让打开的电脑瘫痪(要小心)" 提到的情况可能涉及到恶意软件或病毒攻击,尤其是当描述重复强调“两秒让打开的电脑瘫痪”时,这通常意味着某种快速生效的有害程序。这里我们将深入探讨相关知识点: 1. **...

    java8stream源码-java8-design-patterns:练习java8并理解设计模式参考

    如果不小心做了。 根据以下: 技能:将目录添加到 .gitignore 后从远程存储库中删除目录 git rm -r --cached some-directory git commit -m '删除现在被忽略的目录“some-directory”' git push origin master ###...

    KUKA机器人-外部安全条件不满足时,如何操作机器人的具体方法.docx

    这两种模式允许更精细的手动控制和编程。 5. 在菜单中找到“投入运行”选项,然后选择“售后服务”下的“投入运行模式”。这会启动一个特殊的安全模式。 6. 当示教器上方的T1或T2模式显示为IBN闪烁时,表示投入运行...

    XPWin7键盘锁(新增全锁模式下的调出方式)

    1. 防止误操作:在执行关键任务或编程时,不小心按到键盘可能会导致程序错误或设备停机。 2. 安全保护:在无人看管的设备上,锁定键盘可以防止未经授权的人员进行操作。 3. 临时禁用:在进行设备维护或升级时,键盘...

    小米8SE 拆后盖进9008 短接示意图

    总之,小米8SE 拆后盖进9008 短接是一种应急解决方案,用于解决手机出现严重故障时无法正常启动的问题。通过理解9008模式的原理,以及正确执行短接和刷机步骤,用户可以自我尝试修复,但务必谨慎操作,避免造成更大...

    寒江独钓-Windows内核安全编程 光盘源代码 谭文

    1. **内核模式与用户模式**:理解这两种模式的区别是至关重要的。用户模式下的应用程序不能直接访问硬件资源,而是通过系统调用请求内核服务;内核模式则拥有更高的权限,可以直接操作硬件,但错误可能导致系统崩溃...

    Java设计模式笔记之抽象工厂代码示例

    "Java设计模式笔记之抽象...抽象工厂模式是一种非常有用的设计模式,它可以提供一种灵活的方式来创建对象,而不需要指定它们的具体类别。但是,我们需要小心地应用抽象工厂模式,以免使得系统变得更加复杂和难以理解。

    恢复误删除文件

    - 选择扫描选项:有快速扫描和深度扫描两种模式,快速扫描适用于最近删除的文件,深度扫描则适合更复杂的恢复场景。 - 扫描:启动扫描过程,软件会查找所有可能的已删除文件。 - 预览与恢复:扫描结束后,你可以...

    小心String的陷阱——深入剖析Java中String的处理机制

    在代码示例中,作者通过测量两种创建`String`对象方式的时间差异来比较它们的性能。结果显示,使用字面量的方式比使用`new`关键字快得多,这是因为前者的操作仅涉及引用查找或添加到`String Pool`,而后者的操作涉及...

    国际商务单证缮制与操作模式试题及答案(一)_1.docx

    - **解析**:对开信用证(Reciprocal L/C)是一种特殊的信用证形式,适用于双方互为对方提供货物或服务的情况,可以有效防止其中一方不履行合同。在这种情况下,对开信用证能较好地保障双方的利益。 - **答案**:A. ...

    ring3进入ring0跟踪调试

    在计算机系统中,Ring3和Ring0是操作系统中权限级别的两个关键术语,分别代表用户模式和内核模式。Ring3通常被用户程序所使用,而Ring0则属于操作系统核心,拥有最高的权限。本文将深入探讨如何从Ring3(用户模式)...

    摩托罗拉C++面试题

    (最好这个项目继承,多态,虚函数都有体现)这个问题大概会占面试时间的一半,并且会问很多问题,一不小心可能会被问住)。 。。。 12。基类的有1个虚函数,子类还需要申明为virtual吗?为什么。 不申明没有关系的...

    一不小心,间隙锁引发的报警现场

    在MySQL数据库中,间隙锁(Gap Locks)是InnoDB存储引擎的一种锁定机制,用于防止插入意向幻读(Phantom Read),它会在索引记录之间的间隙上设置锁,阻止其他事务在此间隙内插入新记录。然而,如果间隙锁的使用不当...

    加强版红绿灯.rar

    此外,系统支持按键切换和外部串口指令切换模式,提供了两种灵活的操作方式。按键切换适合现场操作员直接进行手动控制,而串口指令切换则可以通过远程控制中心发送命令,实现对交通灯的远程管理和调整,增加了系统的...

    DirectX游戏程序设计

    其中,320x240和640x480是游戏中最常用的两种模式。 **2.2 颜色理论** 每种可视颜色都可以通过不同强度的红(R)、绿(G)、蓝(B)三种基色组合而成。这种颜色系统称为RGB系统。红、绿、蓝的值范围通常为0至255。例如,...

    ARM寄存器介绍.doc

    - **处理器模式**:M4-M0位指示当前处理器处于哪种模式,例如用户模式(Usr)、系统模式(System)、管理模式(Supervisor)、中止模式(Abort)、未定义指令中止模式(Undefined)、IRQ模式(IRQ)和FIQ模式(FIQ)...

    javascript陷阱 一不小心你就中招了(字符运算)

    `\u00e9`实际上是指向一个单独的16位码位,但“é”在UTF-16中由两个码位表示。 **解决方案:** - 使用`u`标志启用Unicode模式。 - 或者使用ES6的`[\p{...}]`语法来更准确地匹配字符。 **示例:** ```javascript...

    全国青少年软件编程(scratch)等级考试试卷(一级a卷).docx

    28. 绘图编辑器中有两种编辑模式:位图和矢量图。 答案:对 29. Scratch中角色的旋转模式有左右翻转、上下翻转和任意旋转。 答案:对 30. 不小心连续删除了 2个角色,使用“编辑”里的“恢复”就可以重新恢复这2个...

    Linux&vim常见命令.zip

    学习vim的关键在于理解其两种模式:命令模式和插入模式。 - **启动和退出**:使用`vim 文件名`启动,按`:q`退出(未保存更改),`:wq`保存并退出,`:q!`强制退出不保存。 - **命令模式**:在此模式下,你可以移动...

    Rust高级编程.pdf

    Rust是一种系统级编程语言,它以内存安全和性能为主要目标,同时提供了安全(Safe Rust)和不安全(Unsafe Rust)两种编程模式。书中强调,虽然Rust设计初衷是为了提供一种更安全的替代C语言的方式,但仍然允许...

Global site tag (gtag.js) - Google Analytics