问题标签 [language-agnostic]
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.
performance - 获取 π 值的最快方法是什么?
我正在寻找获得 π 值的最快方法,作为个人挑战。更具体地说,我使用的方法不涉及使用#define
常量,如M_PI
,或硬编码数字。
下面的程序测试了我所知道的各种方法。理论上,内联汇编版本是最快的选择,但显然不可移植。我已将其作为基线与其他版本进行比较。在我的测试中,使用内置插件,该4 * atan(1)
版本在 GCC 4.2 上是最快的,因为它会自动将 折叠atan(1)
成一个常量。-fno-builtin
指定后,版本atan2(0, -1)
最快。
这是主要的测试程序(pitimes.c
):
fldpi.c
以及仅适用于 x86 和 x64 系统的内联汇编内容 ( ):
还有一个构建脚本,它构建了我正在测试的所有配置(build.sh
):
除了在各种编译器标志之间进行测试(我也比较了 32 位和 64 位,因为优化不同),我还尝试过切换测试的顺序。但是,该atan2(0, -1)
版本仍然每次都名列前茅。
algorithm - 创建色轮的功能
这是我多次伪解决的问题,但从未完全找到解决方案。
问题是想出一种方法来生成N
颜色,尽可能区分N
参数在哪里。
language-agnostic - 何时使用无符号值而不是有符号值?
什么时候适合在有符号变量上使用无符号变量?for
循环呢?
我听到了很多关于这个的意见,我想看看是否有任何类似的共识。
我知道 Java 没有无符号值,这一定是Sun Microsystems的一个有意识的决定。
string - 生成字符串所有可能排列的列表
我将如何生成一个长度在 x 和 y 字符之间的字符串的所有可能排列的列表,其中包含一个可变的字符列表。
任何语言都可以,但它应该是可移植的。
forms - 基于表单的网站身份验证权威指南
版主备注:
这个问题不适合我们的问答格式以及当前适用于 Stack Overflow的话题性规则。对于内容仍然有价值的此类问题,我们通常使用“历史锁定”。但是,此问题的答案得到积极维护,历史锁定不允许编辑答案。因此,已应用“wiki 答案”锁定以允许编辑答案。您应该假设存在通常由历史锁定处理的话题性问题(即这个问题不是 Stack Overflow 的话题性问题的一个很好的例子)。
网站基于表单的身份验证
我们认为 Stack Overflow 不应该只是针对非常具体的技术问题的资源,还应该提供有关如何解决常见问题变体的一般指南。“基于表单的网站身份验证”应该是此类实验的一个很好的主题。
它应包括以下主题:
- 如何登录
- 如何退出
- 如何保持登录状态
- 管理 cookie(包括推荐设置)
- SSL/HTTPS 加密
- 如何存储密码
- 使用秘密问题
- 忘记用户名/密码功能
- 使用nonce防止跨站点请求伪造 (CSRF)
- 开放ID
- “记住我”复选框
- 浏览器自动完成用户名和密码
- 秘密 URL(受摘要保护的公共URL )
- 检查密码强度
- 电子邮件验证
- 以及更多关于 基于表单的身份验证...
它不应包括以下内容:
- 角色和授权
- HTTP 基本认证
请通过以下方式帮助我们:
- 建议子主题
- 提交关于这个主题的好文章
- 编辑官方答案
unit-testing - 如何使用集合的组合作为测试数据
我想用一组边缘案例和正常值的元组来测试一个函数。例如,在测试一个函数时,true
只要给定三个构成有效三角形的长度就返回,我会遇到特定情况,负数/小数/大数,接近溢出的值等;更重要的是,主要目的是生成这些值的组合,无论是否重复,以获得一组测试数据。
作为说明:我实际上知道这个问题的答案,但它可能对其他人有帮助,对这里的人来说是一个挑战!--稍后会发布我的答案。
string - 将字符串格式化为标题大小写
如何将字符串格式化为标题大小写?
algorithm - 有效地获得排序列表的排序总和
你有一个数字的升序列表,你能想到的最有效的算法是获取该列表中每两个数字之和的升序列表。结果列表中的重复项无关紧要,您可以删除它们或根据需要避免它们。
需要明确的是,我对算法感兴趣。随意以您喜欢的任何语言和范式发布代码。
language-agnostic - 项目国际化
您是如何在您从事的实际项目中实施国际化 (i18n) 的?
在阅读了 Joel 的著名文章后,我对制作跨文化软件产生了兴趣,每个软件开发人员绝对、肯定必须了解 Unicode 和字符集的绝对最低要求(没有借口!)。但是,除了确保尽可能使用 Unicode 字符串之外,我还没有能够在实际项目中利用这一点。但是,将所有字符串设为 Unicode 并确保您了解所使用的所有内容的编码方式只是 i18n 的冰山一角。
迄今为止,我所做的一切都是为一组受控的美国英语人士使用,或者 i18n 只是在推动项目上线之前我们没有时间进行工作。所以我正在寻找人们关于使软件在现实世界项目中更加本地化的任何技巧或战争故事。
math - 一点点转向浮点(im)精度,第 1 部分
大多数数学家都同意:
e πi + 1 = 0
但是,大多数浮点实现不同意。我们能在多大程度上解决这个争端?
我很想听听不同的语言和实现,以及使结果尽可能接近零的各种方法。要有创意!