代码之家  ›  专栏  ›  技术社区  ›  Ali Tarhini

区分大小写与不区分大小写的语言?[关闭]

  •  0
  • Ali Tarhini  · 技术社区  · 14 年前

    VisualBasic.NET不区分大小写,因此它允许编码人员编写代码,而不必关心或记住变量的大小写。如果您在声明中使用的变量以外的其他情况下使用该变量,它还可以从“未声明的变量”错误中解脱出来。事实上,它的行终止是一个直线进给,使得它更像C语言或C++,在外壳和连续战争中需要很好的可读性,与{}跟踪,匹配它们并找出哪个是哪个。

    我的问题是,如果知道C和VB都编译为MSIL,那么这两种语言几乎没有性能差异,那么C和VB有什么优势呢?

    4 回复  |  直到 14 年前
        1
  •  3
  •   Marc Gravell    14 年前

    外壳不会让我兴奋,特别是有了合适的IDE,你会有智能感知、自动完成、自动更正等等。最坏的情况是:编译器会为你找到它。而我 真的? 不要相信被强迫进入特定的线空间模式是一件好事(是的,我用了很多年的vb)。

    确实,C和vb.net有很多收敛性,尤其是现在的动态(这有助于 真实的 c bs vb.net中的间隙)。

    对于功能强大的C功能: 迭代器块 (又名收益率回报)。另外,lambda语法更加完整/通用。

    但有一个不那么具体的论点:在广泛使用这两种语言之后,我发现C语言更具表现力,更易于阅读/维护,更清晰。简而言之:我非常喜欢它;)

    还有一个例子,从Java/C/C++/JavaScript中熟悉的语法开始,传输变得更容易。

        2
  •  2
  •   Pieter van Ginkel    14 年前

    首先,C的社区要大得多。

    绝大多数的代码示例,例如 http://www.codeproject.com/ 在C中。

    我的建议当然是去C,如果只是因为这个原因。

        3
  •  2
  •   CodesInChaos    14 年前

    我来自德尔福大学,几年前我觉得你对案件敏感。但是,当我和C(学习套管惯例)一起工作了几天之后,我注意到这是一个比预期小得多的错误源。

    静态类型语言的区分大小写并不重要。

    在区分大小写的语言中,即使在没有IDE的情况下编程,也不会经常出错,因为您知道大小写不是任意的,而是遵循约定(某些语言,如COBRA甚至强迫您遵循约定)。而对于一个IDE来说,它更不重要,因为IntelliSense正在为您修复它。

    IMO强迫你在任何地方都遵循惯例,这会导致更好的代码可读性。当我用Delphi(不区分大小写)编程时,我的外壳非常不一致。但是,不区分大小写语言的现代IDES应该有一个格式文档特性,使标识符上的大小写使用与声明标识符相同的格式文档特性。因此,这再次被现代的IDE技术所淘汰。

    对于某些动态类型语言,区分大小写是必需的

    虽然这不适用于vb和c,但一些动态类型语言(lua、javascript)只适用于区分大小写。这是因为在它们里面 string 字典中的键和成员名称几乎相同。而且区分大小写的字典比不区分大小写的字典更强大。

        4
  •  1
  •   Pavel Urbančík    14 年前

    基本上没有。
    VB.NET是为了吸引现有的Visual Basic/Office程序员而创建的,它吸引了那些喜欢Java/C++的人。