【问题标题】:Should web developers still learn JavaScript? [closed]Web 开发人员还应该学习 JavaScript 吗? [关闭]
【发布时间】:2010-11-08 05:10:37
【问题描述】:

现在已经存在像 GWT、Morfik 等将 Java 客户端代码编译成主要 JavaScript 方言的框架,是否还值得学习 JavaScript?

【问题讨论】:

    标签: java javascript gwt morfik


    【解决方案1】:

    在我的书中,是的

    我坚信了解您使用的任何工具包的底层技术。

    抽象是有漏洞的——如果你试图逃避只了解高级工具包而不是底层技术,你会遇到麻烦。迟早您需要在 JavaScript(或其他)级别调试您的项目。

    【讨论】:

    • 不值得自己回答,所以放在这里。如果您使用 Java->Javascript 转换器之一,您将失去许多 javascript 功能,例如动态类型,以及将函数用作适当对象的能力。我真的不明白为什么人们将 javascript 视为一种低级语言。结合 jQuery 等框架(用 javascript 编写),它是一种易于使用且功能强大的语言。
    • @Macha:说得好。 JS 本身就非常强大(并且与 Java 非常不同)。为什么要用抽象来掩盖它?
    • 同意。在不了解 JS 的情况下使用 Gwt 之类的东西就像在不了解 SQL 的情况下使用某些数据库工具一样。虽然这可能会奏效,但如果你真的知道发生了什么,你会得到更好的结果。
    【解决方案2】:

    了解框架背后的技术可以减少调试框架所花费的时间。所以在我看来,了解幕后发生的事情总是好的。

    【讨论】:

      【解决方案3】:

      是的,

      ...我以经验说话:我从来没有学过 javascript,只使用了它的一部分,当我在谷歌搜索问题时遇到它。

      现在我正在构建一个 Web 应用程序,我注意到并非所有脱离 javascript 的抽象都具有所需的功能,我需要进入 javascript 来解决它。

      我注意到我怀念其他语言的基础知识,就像我怀念“javascript 编程语言”一书一样(我不确定它是否存在,但我有类似的 C、C++ 和 Java 副本)。所以今天我点了Javascript:The good parts,我会学习的...

      【讨论】:

      • Crockford 的 The Good Parts 并不是一本真正的初学者读物。我建议您首先从 Flanagan 的 Javascript The Definitive 指南开始,然后继续阅读 The Good Parts。 amazon.com/JavaScript-Definitive-Guide-David-Flanagan/dp/…
      • 我建议交叉引用两者;对于 Crockford 从 The Good Parts 中遗漏的语言功能,我不会在阅读 The Definitive Guide 时花太多时间研究它们。您最终可能需要了解这些功能,但 Crockford 的部分观点是 Javascript 语言中的许多东西设计不佳,实际上不应该存在。我发现,在大多数情况下,我同意他的看法。 (我也从他那里学到了很多。)
      • Dreas:谢谢你的提示,我很快就会拿到这本书,所以我会看看我是否仍然错过了一些基础知识。请注意,我已经学习了很多不同的语言,所以我可能会比一个完整的初学者了解更多。
      【解决方案4】:

      绝对。在我看来,抽象很重要,但了解抽象的工作原理同样重要。

      我见过一些开发人员因他们的框架而生死攸关(javascript:jquery、yui 等...或 php:zend、cake 等...),但不知道如何在没有它们的情况下做任何有成效的事情.

      您希望成为(或雇用)谁?知道一切如何运作,但通过使用框架和库来提高工作效率的人......还是使用这些资源却不知道它们实际上是如何工作的人?

      【讨论】:

        【解决方案5】:

        进一步扩展...

        你现在应该学习汇编语言吗?有这么多高级语言吗?
        现在我们有计算器和计算机可以为您做这些,您是否应该学习如何手动做减法和加法等基本算术?

        好吧,我想说,如果你没有任何理由深入内心,也许你不需要这样做,但有人仍然必须这样做。

        与所有事物一样,存在平衡。要知道,如果您不了解较低级别的内容,这将对您不利,但有时有必要跳过它,以便您可以深入了解其他内容。你必须承认有这么多的技术,你将无法成为所有事情的专家。在这种情况下,了解其他人是一件好事。

        所以选择你的选择,然后选择你感兴趣的东西。如果你认为你有兴趣学习 JavaScript,那就去吧。如果没有,您可以坚持自己的抽象级别,并在遇到困难时找一个 JavaScript 伙伴来帮助您。

        【讨论】:

          【解决方案6】:

          我认为浏览器错误的现实将使诊断和理解生成的 JavaScript 成为必要的很长时间。我与一家电子表格公司合作开发 OS/2,他们不得不从 C++ 代码中读取生成的汇编程序,因为 IBM 编译器有时会生成错误的机器代码。因此,虽然他们可能没有足够的汇编程序来编写整个项目,但他们当然必须知道足够的知识才能找到问题。

          话虽如此,也有许多 Web 框架需要您编写自己的 javascript 代码,如果不直接编写一些 javascript,给定的工具包不一定能完成您需要做的所有事情。如果您愿意,您可以选择避免它的框架,但与应用程序开发的 Assembler 不同,Web 开发社区已决定抽象出与它的任何参与,这一点并不明显。您很可能最终会完成需要它的项目。

          【讨论】:

            【解决方案7】:

            实际上,将其与汇编语言相提并论有点不合时宜。汇编是特定于平台的,向 C 的迁移启用了一定程度的平台不可知论,使开发人员能够在多个平台上提高工作效率。因此,产生了真正的生产力效应。

            在诸如 GWT 之类的东西上学习所有丰富的网络知识会受到更多限制。毕竟,它是基于 Java 的,而且 Web 的范围比 Java 大得多。如果您只知道 GWT 而不是生成的 Javascript 的内部工作原理,那么您将严重限制自己(因为我不知道,所以无法评论 Morfik)。

            但是,在编写 Javascript 代码时,使用 JQuery 之类的东西来提高工作效率要好得多。 JQuery 可以在任何操作系统上运行的任何浏览器上使用,因此它不会限制您。

            【讨论】:

              【解决方案8】:

              我会说是的。我遇到过声称​​知道 javascript 的人,但他们所能做的只是调用几个 jquery 函数。 Javascript (ECMAscript) 是一种漂亮的小(好吧,不是那么小)语言。

              从 javascript 中抽象一点——定义“值得学习”。这种想法对我来说一直是个难题。您是否害怕学习新事物?

              我想,这种思维方式才是程序员和程序员的真正区别。

              【讨论】:

                【解决方案9】:

                不懂 Javascript 的网络开发人员就像不知道如何更换轮胎的汽车修理工。

                【讨论】:

                  【解决方案10】:

                  JavaScript 是交互式客户端开发的核心。这是绝对必要的。在您了解 JavaScript 之后,如果您发现它们更容易编译,您可能会决定尝试其他可以编译为 JavaScript 的东西。

                  此外,如果您想在某家公司从事 Web 开发方面的专业工作,那么您将必须了解 JavaScript。此外,随着该语言在浏览器中的执行速度越来越快,并且在服务器端开发中也越来越流行,JavaScript 也越来越受欢迎。

                  【讨论】:

                    猜你喜欢
                    • 2011-02-08
                    • 1970-01-01
                    • 1970-01-01
                    • 2010-11-08
                    • 1970-01-01
                    • 2018-03-19
                    • 1970-01-01
                    • 2010-10-13
                    • 1970-01-01
                    相关资源
                    最近更新 更多