Questions tagged «scripting»

在计算机编程中,脚本是由另一个程序而不是由计算机处理器(如已编译的程序)解释或执行的程序或指令序列。




6
Java中的动态代码评估-聪明还是草率?
我正在尝试为我的应用程序在Java中创建一个灵活的ACL框架。 许多ACL框架都建立在规则白名单上,其中规则的形式为owner:action:resource。例如, “ JOHN可以查看资源FOOBAR-1” “ MARY可以查看资源FOOBAR-1” “ MARY可以编辑资源FOOBAR-1” 这很有吸引力,因为规则可以轻松地序列化/持久化到数据库。但是我的应用程序具有复杂的业务逻辑。例如, “部门1中具有5年以上资历的所有用户都可以查看资源FOOBAR-1,否则未经授权” “部门2中的所有用户,如果日期是2016年3月15日之后,则可以查看资源FOOBAR-2,否则未经授权” 乍一想,设计一个可以处理无限复杂规则的数据库模式将是一场噩梦。因此,似乎我需要将它们“烘焙”到编译的应用程序中,为每个用户评估它们,然后根据评估结果生成owner:action:resource规则。 我想避免将逻辑烘焙到已编译的应用程序中。 因此,我正在考虑以谓词:action:resource的形式表示规则,其中谓词是确定是否允许用户的布尔表达式。该谓词将是Java的Rhino引擎可以评估的JavaScript表达式的字符串。例如, return user.getDept() == 1 && user.seniority > 5; 这样,可以轻松地将谓词保存到数据库中。 这很聪明吗?这是草率的吗?这是花哨的吗?这是过度设计的吗?这样安全吗(显然,Java可以将Rhino引擎沙箱化)。

5
使用Python进行编程是否比使用C,C ++或Java更快?[关闭]
程序员之间普遍认为,语言越动态和松散地键入,它将使程序员的工作效率越高。Guido van Rossum于1998年撰写了有关使用python进行编程提高生产力的文章,并在网上搜索时,我仍然看到人们引用了这个确切的说法: 从语法上讲,Python代码看起来像可执行的伪代码。使用Python进行程序开发比使用C / C ++快5-10倍,比使用Java快3-5倍。在许多情况下,可以使用Python编写应用程序的原型,而无需编写任何C / C ++ / Java代码。通常,原型具有足够的功能,并且性能足以作为最终产品交付,从而节省了可观的开发时间。在其他时候,原型可以部分或全部转换为C ++或Java-Python的面向对象特性使转换成为一个简单的过程。 这个问题是否经过科学评估?如果不适合python,那么也许适合同级脚本语言(如ruby,perl或php)? 我不是在寻找合理化,类比或解释的理由,否则可能很难回答,除非研究人员或专家的意见花了一些时间来研究这个问题。 我最初是在skeptics.SE上提出这个问题的,有人建议我也在这里提出这个问题。

14
脚本语言对初级程序员有什么影响?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 前几天,我和一位老师进行了讨论。 我们讨论了更简单的脚本语言(如Python或Ruby)对初级程序员的影响。 他认为脚本语言会带来草率的编码技术,因为初学者不了解“引擎盖下”发生了什么。他还列举了脚本语言通常如何导致程序员忽略效率,内存管理,操作复杂性等问题的其他示例。 我认为低级语言对于某些人来说可能太多了,他们可能会在对编程产生浓厚兴趣之前就放弃了。当我开始学习我的第一门编程语言(C)时,我转向了指针并放弃了,因为概念太难了(以我的辩护,我才14岁)。如果不是Java,那么我可能还没有成为程序员!如果我从简单的语言开始,然后再深入研究,我会感到自己不会放弃,而且我会学到与C一样多的东西。 全班讨论之前,课程结束。 至此,我一直在鼓吹说,初学者应该从脚本语言开始,然后再深入研究。但是在讨论之后,我开始怀疑这是否是错误的想法。 那么,脚本语言对初级程序员有什么影响?

6
可以将JavaScript用作通用脚本语言吗?
我已经使用JavaScript和某些框架(jQuery,Prototype和一些node.js)进行客户端Web编程,但是从未在台式机上使用台式机,因为在台式机上,我大部分的脚本工作都是使用Python或Bash进行的。 但是恕我直言,如果在浏览器之外使用JavaScript,JavaScript将成为一种很棒的脚本语言。有人尝试过吗?JavaScript是否可以代替Python / Perl / Bash进行快速而肮脏的脚本编写任务?

3
什么是管理开发人员脚本的正确方法?
开发人员创建脚本来帮助他们的工作。例如,使用某些参数运行Maven,杀死在开发中突然出现的不需要的后台任务,或者连接到特定的服务器。这些脚本不是核心构建脚本,也不在我们的Continuous Integration服务器中使用。 最好的管理方式是什么?要将它们放入目录(也许是 /scripts)并将其检入Git?要将它们分别维护在某些文件服务器中? 将它们视为源代码的理由是它们是源代码并且可以更改。不这样做的理由是它们只是辅助工具,并非所有开发人员都需要任何给定脚本(例如,某些Windows上工作的Linux特定脚本)。



2
扩展脚本是否应该在沙箱中运行?
特别是,这是关于用lua(luajit-2.0)编写的游戏扩展的。我正在考虑是否应该限制这些脚本可以做什么,并得出一个结论,我可能不应该这样做: 很难正确。听起来很傻,但是我的沙箱很有可能最终还是漏水。 我唯一想到的好处就是在运行第三方脚本时为用户提供某种安全感。 不利之处在于,它对于扩展编写者来说是非常令人讨厌的。也就是说,就目前而言,我本人(游戏内容将主要编写脚本)。 我现在问这个问题的原因是,在我真正拥有任何可展示的东西之前,尽早添加沙箱很容易,但是也会对我自己施加恼人的限制。但是,如果我先继续使用它,然后再决定我确实需要沙箱,那我会遇到问题(我要么不得不重写已经存在的脚本,要么引入某种形式的信任管理系统这似乎比它的价值还要麻烦)。

2
对于服务器端沙盒脚本,我有哪些选择?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 4年前关闭。 我正在建立一个公共网站,用户可以在其中共享数据和脚本以运行某些数据。该脚本在某种沙箱中在服务器端运行,而在此周期中没有其他交互:我的Perl程序从数据库中读取用户制作的脚本,将要处理的数据添加到脚本中(即JSON文档),然后调用解释器,返回响应(JSON文档或纯文本),我使用perl脚本将其保存到数据库。该脚本应该可以自己访问添加到脚本语言中的内置函数,但是仅此而已。 因此,我偶然发现了node.js作为一个JavaScript解释器,大约一个小时前就使用了Google的V8(v8对这种事情有意义吗?)。我也想到了CoffeeScript,因为它看起来不错并且仍然是Javascript。 我认为javascript足够广泛并且更易于“沙盒化”,因为它没有操作系统调用或任何远程不安全的东西(我认为)。 顺便说一句,我在Perl和Php上为前端编写系统。 为了改善这个问题:我之所以选择Javascript,是因为我认为可以使用node.js来实现它既安全又简单,但是实现这种任务还有哪些其他选择呢??蟒蛇?我只是找不到有关如何以适当方式运行沙盒解释器的信息。

3
我可以使用Ruby来自动化一切吗?
我在各种平台(Windows,Linux等)上面对每天运行的各种类型的应用程序(基于Web,基于GUI,命令行等)。我有很大的机会通过脚本来自动化任务。但是几乎每种类型的应用程序和平台都有其本机脚本语言或工具(例如Windows的VBScript和PowerShell,Linux的Bash脚本,Web应用程序的Selenium和GUI应用程序的AutoIt等)。学习和维护如此多的脚本语言使我丧命。 我觉得Ruby可以轻松地与各种平台进行互操作,并且表达能力很强。所以我的问题是: 可以使用Ruby编写所有脚本吗? 如果是的话,与每个平台的本机脚本语言相比,主要缺点是什么?

4
node.js是否适合进行后台处理?
我正在慢慢学习,node.js并且有一个小项目要开始。该项目将有很多后台流程(从外部站点下载数据,解析CSV文件等)。 对我和节点而言,一个巨大的“胜利”是它在客户端和服务器上都使用了JavaScript。我在日常工作中使用Java和JavaScript进行编码,但在Ruby方面也相当出色。 但是,就像我说的那样,在任何地方都使用一种语言似乎很有吸引力,而JS似乎符合该要求。 但是,我在使用JS运行后台作业方面经验不足。Ruby在这方面似乎很出色。而且我不反对使用它。那么您对此打算100%JS的想法是什么?我意识到很大的项目需要自定义解决方案。我只是想知道是否值得付出努力。或者,我应该只坚持使用Ruby做那些琐事吗? 意见表示赞赏。 谢谢

2
从ASP.NET背景出发,什么是使自己熟悉PHP的好方法?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,以使它成为软件工程堆栈交换的主题。 4年前关闭。 目前,我对在ASP.NET环境中构建工具/ Web应用程序非常满意。我并不是真的想离开tbh,因为我真的很喜欢C#,ASP.NET,MVC 3,Visual Studio等。 但是,现在我对PHP几乎一无所知,这似乎是我想纠正的缺陷。 是否有任何书籍(或其他学习方法)将是学习PHP的好资源?显然,有很多入门的PHP书籍,但我已经对构建网页所涉及的许多内容感到满意,并且对关注PHP本身(可能与某些入门的PHP书籍的范围不兼容)感兴趣。 我仔细阅读了《 PHP手册》,但看起来似乎不太顺利。有没有适合的PHP入门书?当翻阅这些样本时,我想念大多数书籍所包含的凝聚力。还有很多信息,但是与初级学习工具相比,它更像是编码时的参考。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.