2011-02-23 63 views
7

除了了解Java之外,在开始研究Android SDK之前应该学习哪些设计模式?开始Android开发之前我应该​​学习哪些设计模式

编辑:为什么我问这个问题,因为在看SDK后,我认为,不知道这一点,它大量使用适配器模式,我想知道如果我能知道原因是什么其他正在使用的模式,它可以帮助我学习过程。

谢谢。

回答

4

从Java到桌面编程到android编程的最大跳跃之一是使用XML来设计和控制界面布局。如果你想研究Android系统的编程,我肯定会花时间去熟悉XML。我对精确的设计实践不太熟悉,但iOS开发中非常强调模型 - 视图 - 控制器系统,如果Android程序也一样,我不会感到惊讶。

当然,开发者网站将显得太为任何资源的好地方:http://developer.android.com/index.html

这篇文章,我发现在周末,而在编码竞赛也可以帮助你在正确的道路 去http://answers.oreilly.com/topic/1133-how-to-start-programming-in-android/

4

没有必要学习任何设计模式来开始使用Android SDK(可能知道Observer/Listener模式将帮助您熟悉Android中的事件处理)。

很明显知道它们会帮助你理解Api某些部分背后的意图。

0

意见?刚开始黑客攻击。 Developers Guide可以帮助您一路引导。

1

Android等高级框架往往会遵循一组设计模式。这几乎就像你在学习工作中的模式。一个很好的例子是OnXXXListener接口的发布者/订阅者模型。如果你按照框架提出的方向发展,那么它真的只是来找你(当然,在我看来)。例如,我创建了一个颜色选择器视图。我希望View(活动)的消费者能够接收“选择颜色”等通知。我只是看看SDK类如何做到这一点,并遵循他们的领先(使用onColorSelected方法创建OnColorSelectedListener接口,并通过我的颜色选择器视图中的setOnColorSelectedListener公开此功能)。

从.Net背景到Android/Java,我真的看到了差异。 .Net有很多不同的设计模式,为您的自定义类提供非常好的指导。好消息是,.Net BCL和Android SDK背后的工程师在实现一些非常常见的设计模式方面做得很好,因此有很好的例子可以遵循。

1

在我看来,您可以先开始编写代码,并且当您发现自己的代码很糟糕或发现自己编写冗余代码时,可以查找设计模式以使您的设计更好。

0

我不明白如何从事件处理代码(ActivityClass)和表示代码(XML)中分离出您的应用程序算法(模型)。关键的想法是分离关注点和松散耦合。

JAL

相关问题