Programming languages 有没有鼓励良好编码实践的语言?

Programming languages 有没有鼓励良好编码实践的语言?,programming-languages,Programming Languages,虽然我喜欢PHP,但我发现它最大的弱点是它允许甚至几乎鼓励程序员编写糟糕的代码 有没有鼓励良好编程实践的语言?或者,更具体地说,是一种鼓励良好实践的网络相关语言 我对那些有明确目标鼓励优秀编程的语言很感兴趣,或者是那些旨在鼓励优秀编程的语言。你可以在任何语言中遵循良好实践 然而,您也可以在任何语言中执行错误的实践。我认为您对良好的编码实践有一些想法。至少程序是被迫以同样的方式运行的 但别忘了拉里·沃尔说过: 真正的程序员可以用任何语言编写汇编代码 您最好考虑创建一个编码风格约定。PASCAL是鼓

虽然我喜欢PHP,但我发现它最大的弱点是它允许甚至几乎鼓励程序员编写糟糕的代码

有没有鼓励良好编程实践的语言?或者,更具体地说,是一种鼓励良好实践的网络相关语言


我对那些有明确目标鼓励优秀编程的语言很感兴趣,或者是那些旨在鼓励优秀编程的语言。

你可以在任何语言中遵循良好实践

然而,您也可以在任何语言中执行错误的实践。

我认为您对良好的编码实践有一些想法。至少程序是被迫以同样的方式运行的

但别忘了拉里·沃尔说过:

真正的程序员可以用任何语言编写汇编代码


您最好考虑创建一个编码风格约定。

PASCAL是鼓励良好编程实践的编程语言之一

这是非常主观的,但我不得不说Python。可读性很重要,只有一种方法可以使语言非常易于使用

框架还可以强化良好做法。Python的Django框架以“MTV”模式为基础,并适合编写非常友好的代码。

至于编写“糟糕”的代码……你必须学会不要这样做;)

至于编写“风格良好”的代码,请获取VisualStudio、ReSharper插件和StyleCop的副本。Intellisense和autoformatting(Visual Studio)将帮助您很好地布局,ReSharper插件将您的代码重新构造为“首选”结构,StyleCop将帮助您遵循标准。

我会将C抛出。它鼓励使用好的技术、可读的代码,并提供工具来确保您的评论有用且有针对性


它们还提供了现成的静态分析工具,以确保代码是好的。

要清楚您可以用任何语言编写糟糕的代码。


无论如何,C#对于遵循良好的编码实践来说确实很好

C#毫无疑问。。。良好的基础并不断改进。

是的,Python。它的许多设计目标都是为了鼓励良好的编码实践。阅读Python教程和Python的禅(在Python提示符中键入这一点)。< / P> < P>,这取决于你认为什么是网络语言。Smalltalk肯定鼓励最佳实践,甚至还编写了一个疯狂的web框架()。这是非常不同的,你仍然可以做坏事。你只是被鼓励去做别的事情

公司的大事是按合同设计。这是一个很好的组织需求,鼓励在任何地方进行测试和断言

Python很好,但它实际上并不鼓励良好的实践。好吧,如果缩进是一种最佳实践,那么Python肯定会执行它


其他语言并不真正鼓励您像PHP那样做坏事。您还可以用PHP编写优秀(正确)的代码。人们常常忘记,您可以禁用解释器中的许多不好的东西(全局、斜杠等)。你不必因为PHP仅仅把你引诱到黑暗面就跳槽。

Boo语言与Python的原因相同


也许我有点偏见…?

编码实践是语言的外部实践。任何语言的源代码都可能被弄糟,而好的实践是主观的

例如,在C#中,在函数级别,您可以使用var声明任何变量,编译器将强制执行类型安全性,但是许多人不喜欢var,认为它使代码更难破译。我个人喜欢var,尤其是右边提到的类型:

例如

var firstName=新字符串()

对我来说比

string firstName=新字符串()

。。。因为当我知道它是一个基于右手实例化的字符串时,为什么我需要说string firstName呢?当然,这也是主观的

不过,标准和使用代码分析工具,再加上代码审查,确实可以带来不同

下面列出了一些好的分析工具:
简短的回答?没有。但是这个问题使用的是不适合计算机编程的英语思想。“鼓励”是什么意思?什么是“良好编程实践”?语法高亮显示和自动缩进?当然,任何语言都可以做到这一点。皮棉式警告?不太难。风格警务?如果这是标准的话,我们不得不承认C


良好的编程实践自然产生于良好的设计。如果设计简洁明了,聪明的程序员很难用任何语言编写糟糕的代码。相反,糟糕的设计会导致糟糕的实践。棘手的部分是找出一个设计在哪里停止好,在哪里开始坏。这是软件设计中的第一个问题,可悲的是没有银弹。这些可爱的设计模式一旦在你的应用程序中实现了其中的几个模式,就会变得非常丑陋

如果我没有看错问题,那么你要找的是一种“容易”的语言和“最佳实践”的语言

如果是这样的话,“最佳实践”是什么

作为一个有点奇怪的建议,我可以建议LISP还是Scheme?

Haskell

  • 它使您可以单独编写纯代码
  • 它使用制表符语法,强制使用空格
  • 模块系统允许轻松组织代码

    • 你为什么要问?在我处理了一些讨厌的代码后,这个问题似乎出现了很多。我花了好几个小时来挑选意大利面条逻辑,这些逻辑经过大约6个子程序级别。终于找到了那个微不足道的错误。我的第一个想法是为什么这不能更容易些

      代码是为计算机编写的,而不是为人类编写的。它针对机器进行了优化。机器需要精确的i