`
daojin
  • 浏览: 690027 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

开发最前沿:项目案例实战之桥模式

阅读更多

欢迎拍砖:

 

最近做了一个项目,要求java和android平台之间的代码尽量独立。把与平台有关的部分分离出来。

其中canvas和bitmap之间就绑定得很死。如何解耦。桥模式就用上了。

 

 

ICanvas 引用一个 IBitmap

 

ICanvas有一个Draw方法。 IBitmap提供getWidth 和getHeight接口 供调用。还有IPaint也要抽象出来,放进去。

 

这样就形成了一个上层的桥。

 

 

ICanvas -------->IBitmap ICanvas ------>IPaint

 

 

下层是

 

AndroidCanvas ------>AndroidBitmap ---------------->AndroidPaint

 

这就达到了抽象ICanvas和实现 IBtimap和IPaint分离的目的。

 

桥模式就是一个万能的解耦密码。如果一个东西和另外一个东西耦合性特别紧,那么怎么办呢。最近在做一个游戏地图

 

Map -------------------------》Layer

 

这样的关系

经过修改后,是这样的关系

 

IMap --------------------》ILayer

 

下层是

Map ---------------------》Layer

 

这就是桥模式啊。

Map与他的实现 Layer相分离,都可以独立的变换,互不影响。

 

以前以为桥模式没什么用,威力现在看来威力不小。

 

 

1
5
分享到:
评论

相关推荐

    ASP.NET3.5 前沿技术与实战案例精粹(ISBN 978-7-113-11180-9)随书附赠光盘

    通过学习《ASP.NET3.5 前沿技术与实战案例精粹》,读者不仅可以掌握ASP.NET 3.5的关键技术,还能通过实例提升解决问题的能力,为今后的Web开发工作打下坚实基础。这本书附带的光盘可能包含案例代码、演示视频或其他...

    iPhone与iPad开发实战—iOS经典应用剖析

    - **最新技术**:课程基于最新的iOS 5 SDK和Xcode工具,确保学员学到的是最前沿的技术。 - **资源共享**:提供所有课程材料和案例代码,方便学员复习和积累。 - **真机演示**:课程中的所有案例都将在真实的iOS设备...

    基于项目驱动的教学模式在Android课程中的应用

    4. 在具体实施过程中,教师需要精心设计项目案例,确保案例覆盖课程大纲中的所有知识点,并能激发学生的创新思维。同时,教师还需要扮演指导者的角色,引导学生在遇到问题时自主寻找解决方案,培养他们的分析问题和...

    Stanford斯坦福大学公开课:ios10应用开发 中英文字幕()

    该校提供的iOS应用开发课程,不仅面向在校学生,也向全球开放,旨在让更多对iOS开发感兴趣的人士能够学习到最前沿的技术知识。 #### 1.2 课程特点 - **免费开放**:课程视频资源完全免费,任何人都可以通过网络访问...

    高职计算机信息管理专业网站开发项目的教学改革与实践.docx

    项目教学模式是一种基于实际案例的教学方法,它强调以具体项目为核心,让学生参与到整个项目开发的过程中去。这种方式不仅可以帮助学生深入理解网站开发中的关键技术点,还能有效提升学生的实践能力和解决问题的能力...

    JAVA--3G-高级软件工程师包就业实战班『脱产』.doc

    1. **专业深度**:课程内容紧密结合行业需求,确保学员掌握最前沿的技术和理论知识。 2. **实战经验**:采用真实工程项目作为教学案例,让学员在实践中积累经验。 3. **持续更新**:课程内容定期更新,确保与业界...

    “1 X”证书制度下Web前端开发的人才培养模式改革与探索——以三门峡职业技术学院软件技术专业为例.pdf

    同时,创新教学模式,采用项目驱动、案例教学等方法,提高学生的实践能力和问题解决能力。最后,改革评价模式,除了传统的考试评估,还引入实战项目评估和职业技能等级证书的考核,促进理论与实践的结合。 【职业...

    基于Android的移动应用开发课程标准.docx

    - **教材与参考书目**:课程推荐使用最新的Android官方文档作为主要参考资料,并结合权威的Android开发指南书籍,确保学生获取最前沿的技术知识。 - **实验实训条件**:提供完善的软件项目开发实训室,配备必要的...

    《大道PHP:LAMP+Zend+开源框架整合开发与实践》源码

    书中的源码提供了丰富的实践案例,帮助读者更好地理解和应用所学概念。这里我们将围绕LAMP架构、Zend框架以及开源框架整合开发进行详尽的探讨。 LAMP,即Linux、Apache、MySQL和PHP,是Web开发领域最常用的技术栈。...

    祝成科技,软件架构设计培训

    1. **汇聚全球顶级技术专家**:由具有丰富实战经验的资深架构师授课,确保学员能够学到最前沿的技术和方法论。 2. **全面覆盖多个技术领域**:除了软件架构设计外,还包括.NET平台、C++开发、Java开发等多个方向的...

    jRuby On Rails WEB2.0

    4. **前沿技术**:本书覆盖了当时最新的jRuby版本和Rails框架特性,让读者了解并掌握最前沿的开发技术。 ### 结语 《jRuby on Rails WEB2.0》不仅是对于希望将Ruby on Rails技术引入Java平台的开发者来说是一本...

    iOS2019最新整理面试题+企业招聘的需求(附赠GMTC2018 全球大前端技术大会部分演讲ppt)

    根据给定文件的信息,我们可以提炼出以下几个主要的知识点: ...此外,参加如GMTC这样的大型技术会议,不仅能够了解到最前沿的技术信息,还能够拓宽视野,结识同行,为个人职业发展带来更多的机会。

    研发管理沙龙系列:构建市场导向的研发培训体系

    - 国际视野: 与国际咨询机构合作,跟踪国际研发管理最前沿动态。 ### 三、华成的务实性 1. **核心理念**: “只有适合的,没有最好的”,强调解决方案的实用性而非追求表面上的最佳。 2. **实施路径**: 从理念出发...

    如何上好电子商务这门课.pptx

    【电子商务课程教学策略】 在当前快速发展的电子商务领域,教学内容的更新与教师的社会实践经验对于...这样,才能确保学生能够学习到最实用、最前沿的电子商务知识,更好地适应市场需求,实现理论与实践的深度融合。

    混沌学园-AIGC业务能力实战14讲.pdf

    ### 混沌学园-AIGC业务能力实战14讲 #### 一、AIGC概述 **AIGC**(Artificial Intelligence Generated Content),即人工智能生成内容,是指利用AI技术自动生成的文字、图像、音频或视频等内容。随着自然语言处理...

    极客学院安卓Android全套最新视频教程【17G全套视频+独家源码】

    最新的视频教程能够确保学习者掌握最前沿的技术知识。 ### 四、学习建议 1. **循序渐进**:从基础开始逐步深入,避免跳跃式学习。 2. **动手实践**:理论与实践相结合,通过自己编写代码来加深理解。 3. **社区...

    安卓实习报告总结体会 .pdf

    实习单位——西安软件服务外包学院,以其独特的OJT-S(面向就业的培训)教学模式,结合企业实战经验丰富的教师团队,提供了多样化的专业方向,如对日软件开发、对欧美软件开发、嵌入式技术等。学院与国际知名IT企业...

    基于J2EE的B2C电子商务系统开发(lw+系统+开题报告+文献综述+任务书+答辩PPT+中期报表+外文文献+说明书).zip

    在这个项目中,可能会涉及J2EE在电商领域的应用案例、B2C模式的优缺点,以及现有系统的不足之处,为新系统的设计提供参考。 任务书明确了项目的目标、任务分配、进度安排和评估标准,是项目管理的重要文档。它确保...

Global site tag (gtag.js) - Google Analytics