- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我听到一群 Rails 开发人员说 RJS 是邪恶的。我从来没有使用过它,因为我总是设法使用经典的 javascript 或 jquery 来做我想做的事情,所以我没有注意。现在我正在研究一些遗留代码,到处都是 RJS。
那么……这是真的吗?使用 RJS 有哪些缺点/优点?
最佳答案
在讨论它是否是邪恶的之前,让我们先谈谈什么是 RJS。
RJS 将相同级别的抽象应用于 ActiveRecord 为 SQL 提供的高功能 Javascript 库。然而,RJS 对 Javascript 库的覆盖远不及 ActiveRecord 对 SQL 适配器的覆盖。
Rails 附带了仅对 Prototype/Script.aculo.us 的 RJS 支持。但是,有可用或正在开发的插件来支持其他 Javascript 库。例如,JRails 重写了基于原型(prototype)的帮助程序以与 jQuery 一起工作。 mootools 和 Dojo 也有类似的插件。
认为 RJS 是邪恶的人,通常是那些不习惯用它生成原型(prototype)代码的人,或者是那些认为使用原始 Javascript 可以更轻松地完成事情的人。
RJS 并不完美,就像 ActiveRecord 不完美一样,您有时不得不下笔编写原始 Javascript 或 SQL 来完成您的工作。再次像 ActiveRecord,您对高级选项越熟悉,您无需编写原始代码就可以完成更多的工作。
RJS 的一个美妙之处在于它们本质上是 View ,可以生成 Javascript。将 RJS 提取到可以根据需要包含的部分非常容易,既可以作为对 Controller 的响应,也可以作为页面中包含的自定义 Javascript 函数的一部分。这使代码更加 DRY,从而允许更简单的维护。
我个人经常使用 RJS。我发现它是一次接触大量 DOM 元素的完美方式。它带来了双重好处,让我无需编写太多 Javascript 即可创建 AJAX 丰富的网站。然后我又讨厌写 Javascript。
关于javascript - RJS 是邪恶的吗?为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1750485/
对于线程和计时器之类的东西,我无法忍受拖放控件。这些控件只是感觉与它们存在的实际本质相去甚远。拖放一个线程?我希望拖拽者在他们这样做之前了解幕后发生的事情。 这些抽象是否离金属太远了?他们是在帮助还是
有些人似乎认为 C 的 strcpy() 函数不好或邪恶。虽然我承认通常最好使用 strncpy() 来避免缓冲区溢出,但以下(strdup() 函数的实现对于那些不幸的人来说拥有它)安全地使用 st
我一直在用 matrix = *((fxMatrix*)&d3dMatrix); 好久不见。它工作正常,直到我的屏幕变黑并在我的办公 table 上收到一桶挫败感。 fxMatrix 包含 4 个 f
这是我应该问的问题,而不是这个: Emacs evil: space as a prefix key in motion state 我想定义一堆用于移动、移动、打开和关闭窗口和缓冲区的命令,这些命令
作为 Vim 用户,我在将近二十年后尝试 Emacs+Evil。我正在将我的大部分 Vim 配置移至 Evil,但我遇到很多问题的一件事是像我在 Vim 中使用的那样设置搜索和突出显示。我想要得到的是
很难说出这里问的是什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或言辞激烈,无法以目前的形式合理回答。如需帮助澄清此问题以便可以重新打开,visit the help center . 9年前关闭
我是一名优秀的程序员,十分优秀!