【问题标题】:which approach is better for implementing canvas in html5?哪种方法更适合在 html5 中实现画布?
【发布时间】:2012-12-02 12:27:56
【问题描述】:

我想从效率或任何其他角度了解以下两种方法之间的区别:(这些代码是使用HTML5 Canvas编写的)

  1. 第一个具有独立的函数,包括 drawScreen() 函数和事件处理函数,它们都调用 drawScreen()。

  2. 另一个有一个函数canvasApp(),它包含了所有的函数,包括drawScreen() 以及其他用于处理事件的函数。这些函数再次调用自己内部的drawScreen函数。

代码很长,如果解释不够清楚,我会放代码。

【问题讨论】:

  • 性能无关紧要。这是一个软件架构问题。更喜欢哪种建筑风格是一个相当宗教化的问题。

标签: javascript html canvas performance


【解决方案1】:

这是一个相当宗教的问题。

Javascript 是一种编程语言,它结合了过程、函数和面向对象编程的概念,因此它允许在许多不同的编程范式中工作。

选项一是过程方法,二是面向对象的方法。我们现在可以无休止地讨论哪种编程范式是最好的,但我们永远不会得出结果。

您必须自己了解哪种编程风格最适合您,最适合您的应用程序。

【讨论】:

    【解决方案2】:

    听起来您要么想要一个带有参数的函数,该参数指示要调用哪个函数,要么您只想直接调用每个函数。如果我错了,请纠正我。

    我个人会选择单独的选项。我看不出将它们封装在全局函数中会带来什么功能或简单性。只要功能明确定义并记录在案,我相信这可能是最好的方法。

    我很乐意为您提供更详细的答案,但您将不得不对您的整体架构提供更多启发(可能使用一些伪代码)。

    【讨论】:

    • 我有一个包含所有功能的通用功能(第二种方法)。没有参数,但有事件监听器决定应该调用哪个函数。
    • 那时我肯定会坚持我的答案。正如 Philipp 指出的那样,这在某种程度上是一个宗教问题,但我绝对更喜欢更简单的方法。而且我不太喜欢在这种情况下使用事件侦听器的想法。
    猜你喜欢
    • 1970-01-01
    • 2011-04-28
    • 1970-01-01
    • 2016-01-12
    • 1970-01-01
    • 1970-01-01
    • 2016-04-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多