我是Go语言的新手,并且只有很少的C/C++背景,所以我很自然地想到何时使用指针以及什么时候不使用指针.虽然这个问题可能被认为是开放式的,但我想知道何时返回结构以及何时返回指针的一些指导原则(等同于何时接受结构/指针作为参数).
根据我的猜测,以下陈述成立:
我的假设是否正确?或者我错过了指针上的标记?
我正在发布一个开放的问题来寻找在R中创建新类的优点或缺点.据我所知,在R,S3,S4,R5(或RC)中创建类时,基本上有四种不同的范例. )和R6.
S3是R使用的大多数核心库,并且似乎有一些优点可以坚持使用泛型方法调度的简单,轻度结构化模式.我想避免使用这个对于不是很清楚,我其他的原因,如封装,方法的定义等.例如,它构建一个类时,显得相当麻烦,因为一般的方法定义的外阶级,以及那种性质的事物.
S4似乎没有任何好处,但它确实有一个穷人的类型安全概念,它可以使明显的错误更加明显.但是,我仍然认为S4类很难维护,因为我不确定封装等内容以及这些类涉及的内容.让我感到困惑的另一件事是,命名空间几乎没有概念.
R5似乎有点类似于我习惯的方法,其中方法的定义绑定到类,而不是调度函数.在这里,我会更多地考虑使用我将习惯的类来组织对象.一个可能的缺点是R5也是由S4构建的.
R6似乎是由个人重写的R5,它为混合添加了更多的OOP功能,例如私有和公共函数和属性,但是我很难找到对这些类的任何支持,因为有关它们的信息似乎很少谷歌搜索.
正如你所知,我正在努力研究R中的OO概念,我似乎无法弄清楚通常与OOP相关的以下方面:
我想知道是否有人可以提供一个答案,可以描述R社区中首选的类系统,以及如何最好地考虑何时使用类.
我在使用Rubymine方面遇到了麻烦,因为我无法转到我之前能够访问过的文件声明(这些不是动态类或方法).我不确定这是否与我有一些文件着色范围或其他原因有关,但这个功能似乎没有正常工作.
在Windows上,RubyMine的版本是5.4.3.2.1.有谁知道问题或解决方案?
我正在学习Cassandra,以及CQL和SQL的差异,但我注意到没有办法检查Cassandra是否存在记录.目前,我有最好的方法是使用
SELECT primary_keys FROM TABLE WHERE primary_keys = blah,
Run Code Online (Sandbox Code Playgroud)
并检查结果集是否为空.有没有更好的方法来做到这一点,或者我现在有正确的想法?
我似乎遇到了Rails中Lib文件夹的命名约定的问题,并且提供给我的错误消息没有用.[例如,我收到一条消息说XXX :: YYY :: TextBox应该被定义为xxx/yyy/text_box.rb,即使它明确定义在那里.]我认为我的约定是错误的.
假设我正在研究YourModule :: MyModule :: MyClass.我清楚地知道这个文件应该位于
LIB/your_module/my_module/my_class.rb
但是这里的实际文件应该是什么样的?哪一项(如果有的话)是正确的?
#your_module/my_module/my_class.rb
module YourModule
module MyModule
class MyClass
...
end
end
end
Run Code Online (Sandbox Code Playgroud)
要么
#your_module/my_module/my_class.rb
class MyClass
...
end
Run Code Online (Sandbox Code Playgroud)
换句话说,我是否需要将类嵌套在模块结构中?
我不是在寻找任何可以做任何花哨的查询的东西,使用最先进的C#搞笑业务来生成光滑的查询,自动将类映射到数据库表,或者任何必须由大量元数据工作的东西由开发人员配置.事实上,我希望ORM与我使用C#的事实无关.
相反,我希望能够执行简单的命令来执行基本的SQL任务,例如:
但是,这些中的每一个最好是提供字符串来提供表格:
connection = new ConnectionToSQLServer(connectionString);
database = connection.FindDatabase("MyDatabase");
foreach(Table table in database.Tables())
{
table.AddColumn("MyColumn", typeof(String), COLUMNS::NOT_NULL)
...
}
Run Code Online (Sandbox Code Playgroud)
在处理SQL和C#时,有什么类似的东西吗?我并不十分担心拥有一台表现最佳的设备.