什么样的指标将用以确定专业知识水平的在一个特定的编程语言

StackOverflow https://stackoverflow.com/questions/539694

  •  22-08-2019
  •  | 
  •  

我是有趣的在原(或复合)指标用来处理在如何以及一个人可以在一个特定的语言。

方案:乔治知道一些编程语言,并希望了解"foobar",但他想知道当他有一个合理数量的经验"foobar".

我真的有趣的东西更广泛的不仅仅是LOC(代码行)的指标。

我希望这个问题是了解工程师们如何量化编程语言中的经验的其他人,如果这可能是机械地测定。

在此先感谢!

有帮助吗?

解决方案

在回答前一个两张海报,我猜没有 一个办法让一个处理关于如何以及一个人可以在一个特定的语言:你可以试验如何以及有人懂英语,或者数学或音乐、医学或艺术,因此有什么特别的一种编程语言?

在答复运,我猜测试必须评估:

  • 你能怎么计划
  • 你可以如何使用编程语言

因此,指标可以是:

  1. 什么是善良的人编程(和那里各种尺寸的善诸如错误的,容易维护,快速廉价的编写、快速运行,满足用户的要求,等等)?

  2. 没有人使用合适/习惯特征的编程语言中的问题,为了做到这一良好的编程?

这将是难以做测试'机械的',但:大多数学考试,我知道的是分等级由一个人考官。在这种情况下编程、测试的一部分,可以是分等级的机械(即"它不会跑吗?") 但是它的一部分("这是可以理解的习惯?") 旨在惠益,并为更好的判断,其他人的程序员。

其他提示

您在特定的语言专长的最佳指标,在我看来,是你是如何生产的。

生产力不只是你的工作有多快,但重要的是,臭虫自己创造了一些与重构/返工怎么一点需要以后。

例如,如果你把两种语言必须与经验类似的水平,分别为(在平行宇宙)建立与两个同样的系统,我会说的语言,你建立的系统,更快的速度和更少的缺陷/设计上的缺陷,是语言,你有更多的专业知识。

对不起这是不是对你的“硬”指标,这是一个更为实际的方法。

我不相信,这可能是“机械地测得的”。我想了解这个有很多虽然。

航上...

即使是一个程序的“LOC”是一个备受争议的话题! (我们是在谈论猫的输出* {H,C} |?????WC -l或其他一些mechnanism,比如怎么样的空白行评论正在评论重要的是记录良好的代码)

,直到你实现LOC比较毫无意义怎么是,你没有意识到毫无意义的其他指标是如何的希望。

这是一个很少有任何大的测量精度相当定性的东西。这就像问“有多聪明爱因斯坦”。认证是一个(并且相当彻底)定量指示,但即使它属于急剧短识别“良好程序员”尽可能多的招聘人员发现的。

什么是你最终要达到什么目的?一般编程天赋可以比在某些情况下,语言的专业知识更重要。

如果您是语言为重点,采取像项目欧拉挑战使用的语言可以是跟踪进展的方法。

他们在调试该语言的复杂问题如何精通。

问问他们,他们过去曾经参与的项目,他们遇到的疑难问题,以及如何解决这些它们。询问他们调试他们使用的技术 - 你会在你听到的感到惊讶,你甚至可能会学到新的东西; - )

很多地方有一个人或两个是谁在自己的领域的超级明星 - 人人其他人去当他们无法弄清楚什么是错的程序。我猜这就是你要找的人: - )

设施用一种编程语言是不够的。我们需要的是工厂用一种编程语言的背景下,partiular套图书馆在一个特定的平台

  • C++在winapi在Windows32位的
  • C++在KDE在Linux上
  • C++在塞班上一个诺基亚S60电话
  • C#在毫秒。网上窗户
  • C#在单在Linux上

在这种背景下,这些措施的能力使用目标语言上的目标的平台,如下:

  • 能够表达共同的 模式简洁地、有力地.
  • 能够"调试"共同但微妙的错误等竞争条件。

这将有可能开发一套基准练习一个程序员。一个可能还有,一旦显着的样本,确定钟形曲线的能力。准备这些东西会从字面上年来他们会迅速地被废弃的.这个(以及一般的紧密度)就是为什么组织不要打扰。

这也将是必要的级人在"工匠"和"工具用户"的模式。工具的制定者都是非常不同的人有一个更高的水平的能力,但他们往往不适合猴子工作,因为你真的想要一个工具的用户。

约翰

有几个方法可以解决你的问题:

1)如果您是需要特定语言的特定位置对候选人进行面试,然后比较考生唯一的衡量标准是“有多久这个人已经以这种语言编写。”这不是完美的 - 它甚至不是很好 - 但它是现实。除非你想给考生一个问题,一台电脑,一个编译器,以测试他们在现场没有其他措施。然后最程序员类型不“有人在看着你”的场景做得很好。

2)我理解你的问题更加的“我什么时候能称自己profecient的语言?”在此,我指的学习非母语的层次:第一层次是你需要查找词/短语在以说或不懂词典(书);第二个层次是,你能理解听到的语言(或阅读代码),只有在你的信任,现在陈腐的字典偶尔的查找;第三个层次,你现在可以说话(或编写代码),只有偶尔的查找;第四个层次是你在语言的梦想;而最终水平就是傻瓜母语去想什么你的母语也(在编程,其他专家会认为你可能有助于开发语言的语法)。

请注意,这并不能帮助确定如何好程序员,你是 - 就像不懂英语,而无需查找单词在字典中不显示“你是在创作的东西如何古德” - 这是主观的,没有任何与特定的语言,人是善于编程是在任何语言好,你给他们。

短语“的经验合理量”取决于所考虑的语言和什么语言可用于

一个度量是一个测量的结果。史蒂文斯(参见维基百科:水平的测定)提议测量使用四种不同的缩放类型:标称(分配标记),顺序(分配排名),间隔(订货测量)和比(具有非任意零起点) 。 LOC是一个比测量。虽然远非完美,我认为LOC是表示你有多少经验的语言,并且可以相比,在软件业量化值的相关性,目标数量。但是,这引出了一个问题:在哪里都来自这些行业的价值

就个人而言,我会说,“乔治”就知道他有经验,合理数量的时候,他已经设计,实施和他的家庭计算机上对他的个人时间进行测试的一个项目,也许他自己的选择,如果需要的话。例如:数据库,业务应用程序,网页,GUI测试工具等

从视招聘经理点,我会问程序员有多好,他/她是在语言开始,但这不是一个度量。我一直认为衡量写程序的人的能力的最好办法是给程序员,被认为,提前出局,解决有一定量的时间,比方说几个小的编程问题,每次5分钟。我从来没有反对这个正在面试对我做的。一些指标可供选择:当时的程序员能够解决的问题(是或否 - 标称)?它是如何花费的时间(分钟数 - 率)?如何有效的是他们解决问题的方法(好,一般,差 - 序)?你不仅要学会写代码的人的能力,但可以观察到一些主观的东西为好,比如他们的行为,因为他们去解决的问题,这些问题他/她问,而解决问题的能力,在压力下工作,等,从“质量”透视虽然,请记住,人们不喜欢被测量。

不过,我相信有一些很好的指标,如麦凯布圈公制了解圈复杂度或每个代码或甚至两个连续测试之间的写的代码的平均量块有用评注的量。

据我所知,没有这样的事情。我不相信有关于如何量化的经验或什么是“合理”的意思concensus。也许我会学习的东西太多,但如果我做这将是一个巨大的惊喜。

可能是恰当的。

我找到那个测试的能力来调试是更精确衡量的编程技术人员于任何测试旨在简单的编程问题,我遇到了。鉴于源于一种合理的尺寸类或功能的声明(或者未说明的,在某些情况下)的不当行为,可以对实验对象找到问题?

好了,他们试图在求职面试。有没有指标,但你可以通过提问和quizzing衡量一个人的能力。

WTF / S * LOC,更小最好。

有无;专业技术只能主观相对于其他判断,或对具体测试(其具有其自身的不准确的电平)

以获取更多信息是什么与代码度量迷恋

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top