Open source a'的角色/职责是什么;壳牌公司;?
Open source a'的角色/职责是什么;壳牌公司;?,open-source,shell,naming-conventions,dynamic-language-runtime,orchardcms,Open Source,Shell,Naming Conventions,Dynamic Language Runtime,Orchardcms,我一直在看项目和项目的源代码。IronPython使用一个名为Microsoft.Scripting.Hosting.Shell的命名空间运行(是的一部分)。Orchard项目还通过各种接口(IShellContainerFactory、IShellSettings)间接使用“shell”概念进行操作
上面提到的所有项目都没有详细的文档,因此,如果您试图通过阅读源代码了解整个应用程序结构/体系结构,那么从类型(类等)的名称中提取其含义是非常有价值的
现在我想知道:当这些源代码的作者提到一个“sh
我一直在看项目和项目的源代码。IronPython使用一个名为Microsoft.Scripting.Hosting.Shell的命名空间运行(是的一部分)。Orchard项目还通过各种接口(IShellContainerFactory、IShellSettings)间接使用“shell”概念进行操作
上面提到的所有项目都没有详细的文档,因此,如果您试图通过阅读源代码了解整个应用程序结构/体系结构,那么从类型(类等)的名称中提取其含义是非常有价值的
现在我想知道:当这些源代码的作者提到一个“shell”时,他们在想什么?当我听到“shell”这个词时,我想到了类似于命令行解释器的东西。这对于IronPython是有意义的,因为它有一个交互式解释器。但对我来说,这对于网络CMS来说没有多大意义
当我遇到一种叫做“壳”的东西时,我该怎么想?一般来说,“壳”的角色和责任是什么?这个问题能回答吗?“外壳”的含义是主观的吗(使术语变得无用)
谢谢。我认为shell的一般含义是“解释和执行命令的用户进程”
“用户进程”:与操作系统内核中内置的进程不同。IBM大型机世界中的JCL很难算作外壳
“解释并执行”:在某种形状或形式下,shell从文件或终端读取命令,并对所呈现的内容作出反应,而不是严格编程以执行特定的命令序列
'命令:命令的内容取决于上下文。在标准unixshell中,执行的命令主要是其他程序,shell将它们适当地链接在一起。显然,有内置的命令,并且通常有流控制语法来允许对执行命令的结果做出适当的反应
在其他上下文中,可以考虑执行其他类型的命令。例如,可以设想一个“SQL Shell”,它允许用户在连接到数据库时执行SQL语句
pythonshell将支持Pythonic符号,并将执行类似于Python的语句,其语法与Python的语法密切相关。Perl外壳将支持类似Perl的符号,并将执行类似Perl的语句。。。这一清单还在继续。(例如,Tcl有tclsh-tclshell。)我认为Shell的一般含义是“解释和执行命令的用户进程”
“用户进程”:与操作系统内核中内置的进程不同。IBM大型机世界中的JCL很难算作外壳
“解释并执行”:在某种形状或形式下,shell从文件或终端读取命令,并对所呈现的内容作出反应,而不是严格编程以执行特定的命令序列
'命令:命令的内容取决于上下文。在标准unixshell中,执行的命令主要是其他程序,shell将它们适当地链接在一起。显然,有内置的命令,并且通常有流控制语法来允许对执行命令的结果做出适当的反应
在其他上下文中,可以考虑执行其他类型的命令。例如,可以设想一个“SQL Shell”,它允许用户在连接到数据库时执行SQL语句
pythonshell将支持Pythonic符号,并将执行类似于Python的语句,其语法与Python的语法密切相关。Perl外壳将支持类似Perl的符号,并将执行类似Perl的语句。。。这一清单还在继续。(例如,Tcl有tclsh-Tcl Shell。)在Orchard中,“Shell”一词实际上更像是范围的隐喻。有三个嵌套作用域:主机、shell和工作
主机是在web应用程序域期间存在的单个容器
shell是主机根据当前配置生成的子容器。如果更改了配置,将构建一个新的shell,并放弃现有的shell
工作是由shell创建的另一个容器,它保存在单个请求期间有效的组件
使用shell容器的一个好处是,它有助于避免使用静态变量以及在配置更改时循环应用程序域。另一件好事是,它使Orchard应用程序域能够同时为多个“站点”提供服务,而主机拥有多个shell,并为每个请求使用相应的shell。在Orchard中,“shell”一词实际上更像是范围的隐喻。有三个嵌套作用域:主机、shell和工作
主机是在web应用程序域期间存在的单个容器
shell是主机根据当前配置生成的子容器。如果更改了配置,将构建一个新的shell,并放弃现有的shell
工作是由shell创建的另一个容器,它保存在单个请求期间有效的组件
使用shell容器的一个好处是,它有助于避免使用静态变量以及在配置更改时循环应用程序域。另一件好事是,当主机持有多个shell并为每个请求使用适当的shell时,它使Orchard应用程序域能够同时为多个“站点”提供服务