问题标签 [strong-typing]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 这可能使用泛型吗?C#
我知道我可以通过创建自定义类来解决以下问题,但是可以将以下内容强类型化为List
(或任何其他类型)吗?
上面代码中的对象类型只是举例。
一天结束了,我的大脑有点软了。
编辑:元组?
objective-c - 覆盖方法时严格与松散类型
我在“Objective C 编程”中的一个示例中有一个名为 AddressCard 的类,并且我正在实现一个 isEqual: 方法。
NSObject 中此方法的签名使用松散类型的参数:
OTOH,书中的示例代码使用严格类型:
我不确定我是否完全理解编译器在这种情况下的作用。我尝试将 AddressCard 与 NSString ( [aCard isEqual: @"Foo"]
) 进行比较,期望出现运行时错误(如果系统使用我的方法)或系统将调用 NSObject 的 IsEqual 版本。
相反,我的方法被调用(即使参数是 NSString 而不是 AddressCard)并在我的 IsEqual: 尝试调用特定于 AddressCard 的方法时引发异常:
这是怎么回事?到底如何将 NSString 传递给期望其他方法的方法?覆盖时更改方法的签名可以吗?
vb.net - Strongly-typed generic method invokes its argument's base class method, instead of a shadowed method in T?
Consider a MyForm
class that contains a shadowed implementation of Show()
. It also contains a CreateForm()
method, which accepts an instance of the form and calls the shadowed sub:
When called with CreateForm(New MyForm())
, the shadowed implementation of Show()
is correctly called. Now consider the following generic implementation:
Called with CreateForm(Of MyForm)(New MyForm())
, this strongly-typed generic method never invokes the shadowed method.
Is this a bug, or am I missing something?
strong-typing - 为什么紧耦合不好但强类型好?
我很难看到松散耦合代码在现实世界中的好处。为什么要花这么多精力让一些东西灵活地与各种其他对象一起工作?如果你知道你需要实现什么,为什么不专门为此目的编写代码呢?
对我来说,这类似于创建无类型变量:它使其非常灵活,但可能会遇到问题,因为可能传入了一个意外的值。这也使得它更难阅读,因为你不明确知道传入的是什么.
然而,我觉得鼓励强类型化,但松散耦合是不好的。
编辑:我觉得要么我对松散耦合的解释不正确,要么其他人读错了。对我来说,强耦合是当一个类引用另一个类的具体实例时。松耦合是指一个类引用另一个类可以实现的接口。
那么我的问题是为什么不专门调用一个类的具体实例/定义?我将其类比为专门定义您需要的变量类型。我一直在阅读有关 Dependency Injection 的文章,他们似乎认为松耦合更好的设计是事实。
flash - 如何用一组值初始化向量?
如何用一组值初始化向量?
我试过了,它符合要求,但不起作用!
我还需要将任意数组加载到向量中,如下所示:
有没有办法做到这一点?
编辑:如何用二维值数组初始化二维向量?
我试过这个,但它给了我错误:
TypeError:错误 #1034:类型强制失败
c# - 购物车会话状态在 ASP.NET MVC 中正确完成
我正在为 ASP.NET MVC 中的未经身份验证的用户实现一个简单的会话购物车,我想把它做对。
在过去,我总是将购物车 ID 存储在持久Session["CartID"]
存储中并作为 cookie。Carts
每当我需要显示购物车时,我都会从我的和CartItems
表格中查找用户的购物车项目。但是在里面我知道一个更强类型的方法会更干净。
在谷歌搜索最新的会话 MVC 内容后,我找到了术语HttpSessionStateWrapper
,这似乎是一种可测试的处理会话的方式。但是我还没有找到任何好的教程或标准化的实现。也许这只是一个流行词,我应该坚持下去Session["..."]
。
在最新版本的 ASP.NET MVC 中使用会话实现购物车的正确方法是什么?
c# - 强类型属性声明——这段代码安全吗?
我想知道以下代码是否“安全”。“安全”是指我不依赖于某些特定的编译器版本或未记录的功能。我想获取带有属性/字段名称的字符串,但我想使用强类型声明它(我希望编译器检查特定字段/属性是否存在)。我的方法如下所示:
这就是我想使用它的方式:
提前感谢您的帮助。
.net - JSON 反序列化为继承的类型
我的数据库中有一个数据表,用于存储各种设置。由于它们是任何类型的(甚至是复杂的对象图),我决定将它们的值存储为序列化的 JSON 字符串。
假设我序列化了一个List<ItemBase>
. 序列化的字符串看起来很好。但问题是列表项具有继承自的各种类型ItemBase
(对于我所关心的而言,这也可能是抽象的)。
问题
我应该使用哪个(反)序列化类/库,这样我的 JSON 字符串将被正确反序列化以正确的对象实例。
asp.net-mvc-2 - ASP.NET MVC 动态列表绑定
我有一个强类型的 mvc 页面,我不会将无序列表绑定到对象列表。所以在 mvc 视图中它可能看起来像
我的视图模型可能看起来像
我的列表包含对象
如果我将 WhatYouDoL[0].Reference 与索引 ([0]) 一起使用,则可以绑定,在加载时我可以使用索引进行设置。问题是我想在客户端的这个列表中添加和删除。所以我可能有一些 js 添加和额外的列表项并删除当前的。这意味着我必须以某种方式管理名称中的索引,并使它们在客户端保持有序且不重复。有谁知道是否有办法绕过使用名称中的索引。
提前致谢。
types - “弱打字”语言的优势
为什么编程语言要使用弱类型而不是强类型?