长话短说:去年教过我的老师最近才离开,并被一位新老师取代。这位新老师给了我一个涉及我们以前从未教过的东西(像这样)的作业。所以这个任务已经出现在作业中,我不知道该怎么做。我联系不上老师,因为他身体不好,接下来几天不来。甚至当我要求他进一步解释时,他的心情也很好,让我觉得我完全智障了。
描述硬件平台如何影响编程语言的选择
看看我在 SO 上的活动,你可以看出我正在编程,我正在开发东西,我正在学习,所以我不只是想让你们中的一个人做我的功课我。
有人可以在这里解释一下我将如何回答这样的问题。
长话短说:去年教过我的老师最近才离开,并被一位新老师取代。这位新老师给了我一个涉及我们以前从未教过的东西(像这样)的作业。所以这个任务已经出现在作业中,我不知道该怎么做。我联系不上老师,因为他身体不好,接下来几天不来。甚至当我要求他进一步解释时,他的心情也很好,让我觉得我完全智障了。
描述硬件平台如何影响编程语言的选择
看看我在 SO 上的活动,你可以看出我正在编程,我正在开发东西,我正在学习,所以我不只是想让你们中的一个人做我的功课我。
有人可以在这里解释一下我将如何回答这样的问题。
以下是一些考虑因素,但无论如何都不是完整的答案。
如果您的硬件平台是某种小型嵌入式设备,那么您选择的编程语言将指向较低级别的非托管语言 - 您可能无法(或不想)加载托管语言运行时,例如Java JVM 或 .NET CLR。这取决于内存和存储要求。同样,解释性语言也不可能,因为您没有解释器的空间。
如果您使用的是更大的机器,则更多的是兼容性问题。托管语言必须在支持其运行时的平台上运行。对于 .NET,即 Windows 或其他平台(如果您将 Microsoft CLR 替换为 Mono 运行时)。就 Java 而言,这是一个更广泛的平台。
这绝不是一个明确的答案,但我首先想到的是嵌入式系统。我在嵌入式系统或其他低功耗电池供电的计算机上执行的任务需要与在可以访问主电源的计算机上执行的任务完全不同。
一个简单的影响......将是电池寿命。
如果我在嵌入式系统上使用浪费的算法,电池寿命会受到影响。
希望这有助于搅动脑汁!
显然,设备的速度和内存量将影响选择。平台越原始和薄弱,运行使用非常高级语言开发的代码就越困难。用它们编写的代码可能根本不起作用(例如,当内存不足时)或太慢,或者需要认真优化(即需要更多工作),可能会对功能集或质量产生负面影响。
此外,某些语言和软件可能严重依赖 CPU 中的页面翻译可用性或从中受益。如果 CPU 没有,某些检查必须在软件中完成,而不是在硬件中自动完成,这将影响性能或语言/软件选择。