问题标签 [type-safety]

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.

0 投票
3 回答
494 浏览

asp.net - 类型安全编码

当我开始开发 Web 应用程序时,我将用户的身份验证详细信息存储在两个会话变量中

但是有人向我提出了一个想法,即创建一个包含 UserName 和 Password 属性的类,并且在成功的身份验证后,我被要求创建该类的一个实例并设置 UserName 和 Password 属性并将该实例存储在会话中。

我被告知会话对象是 TypeSafe。有人可以解释什么是类型安全编码以及将对象存储在会话中的优点。

0 投票
4 回答
8968 浏览

java - Java 泛型:为什么 someObject.getClass() 不返回 Class

.getClass()我希望从编译时间和运行时的角度来看,提供正确类型的返回值不会是问题。

但我一定是错的。

编辑:它也不适用于Class<T>and Class<? super T>

0 投票
2 回答
36 浏览

object - 关于铸件和对象

很简单,我只想解释一下:

在其他课程中,我写道:

为什么???我们假设所有类都继承自“对象”

0 投票
3 回答
1142 浏览

c# - 在 C# 中创建通用对象字典的最佳实践?这很糟糕吗?

为清楚起见,我使用 C# 3.5/Asp.Net MVC 2

这是我所做的:我希望能够在运行时向对象添加/删除功能。所以我只是像这样在我的类中添加了一个通用对象字典:

然后我可以在运行时将任何类型的 .Net 对象添加/删除到这个字典中。要插入一个对象,我会这样做:

然后检索我只是这样做:

不知何故,我觉得这样做很偷偷摸摸。它工作正常,但我想知道你们如何看待它作为最佳实践。

感谢您的意见,丹尼尔

0 投票
3 回答
280 浏览

c# - c# 类型安全如何影响垃圾回收?

我正在处理处理大型缓冲区(> 100MB)的代码,并且这些操作是在unsafe块中完成的。我想重构这些以避免unsafe代码。在开始之前,我想知道可能的内存性能提升(正/负/中性)。

我断言如果编译器可以验证类型,它可能会生成更好的代码,这也可能意味着良好的 GC 性能。这是一个有效的断言吗?你的经验是什么?谢谢。

0 投票
3 回答
1904 浏览

c++ - c++:使用类型安全来区分两个 int 参数的类型

我有各种带有两个 int 参数的函数(我自己编写函数和调用代码)。我害怕在某些调用中混淆参数的顺序。

如果我调用具有错误参数序列的函数(所有参数都是 int),如何使用类型安全让编译器警告我或出错?

我试过 typedefs: Typedef 不会触发任何编译器警告或错误:

0 投票
7 回答
2231 浏览

c++ - 比较不同大小的数组

我正在实现自己boost::array的娱乐和教育变体,我只是想知道:比较两个不同大小的数组是否会产生错误,还是应该是类型错误?

0 投票
1 回答
801 浏览

c++ - static_cast 被滥用了吗?

我对 的感觉很复杂static_cast,因为它是可用的最安全的 C++ 转换,但同时允许安全和不安全的转换,所以你必须知道上下文来说明它是否真的安全或可能导致 UB(例如,在转换时到一个子类)。

那么为什么没有更安全的显式转换呢?这是一个示例,它可能有用。在 COM 中,它们必须将接口指针返回为void** ppv,因此“必须”显式转换

然后建议将其替换为更安全的 C++ 演员表

static_cast但是,即使在这里也有意义吗?this是一个派生自 的类IInterface,因此可以简单地写

或使用像

那么,static_cast有时会被误用并且可以(应该?)在某些情况下被这个取代implicit_cast,还是我错过了什么?

编辑:我知道在 COM 中需要强制转换,但不一定是static_cast,隐式强制转换就足够了。

0 投票
2 回答
163 浏览

eclipse - 对 Groovy 类型的公共成员强制执行类型规范

在 Groovy 中,指定类型是可选的。但是在方法和属性等公共类成员上指定它们有好处。它是一种很好的文档形式,它使 IDE 能够更可靠地执行自动完成、重构代码、查找引用和其他静态分析任务,如这篇Groovy Coding Style文章中所述。

有没有办法在 Eclipse 中强制执行此策略,以便在公共成员缺少显式类型时出现警告?类似于用于 Groovy的CheckstyleFindBugs工具的东西会很棒。

0 投票
4 回答
2234 浏览

java - Type safety : Unchecked cast and Generics

I have a very simple map

I would like to define the following method

And obviously, I'm ending up with an unchecked cast problem... My issue is I can't invoke toArray(new T[size]).

What should I do to avoid this warning (wihtout using @SuppressedWarning)

Thanks