为什么语言需要库?

时间:2018-10-23 08:40:34

标签: libraries

语言是否只能在其中包含功能?

例如,要在Python中使用sqrt函数,您需要导入数学库

为什么语言还没有内置这些​​功能?

2 个答案:

答案 0 :(得分:1)

名称是一种稀缺资源。

是否需要避免使用成千上万的名称,包括maxsetreadcycle之类的名称?

答案 1 :(得分:0)

据我了解,您有两个截然不同的问题,而对每个问题都不可能给出非常准确的答案。

  
      
  1. 语言不能只在其中包含功能吗?
  2.   

如果这个问题是显式导入,则我对此部分感到困惑  源文件中的功能是程序员需要执行的操作,还是只是我已经尝试回答的问题2的副本。

显式导入的原因:具有相同逻辑的多个实现选项并减小应用程序可执行文件的大小。例如一种实现了功能的语言- sqrt 是这样一种方式,它的速度较慢,而其他一些聪明的程序员以更有效的方式编写了相同的方法,您是否不愿意使用第二个选项,而不要使用语言提供功能?仅当程序员指定他/她打算使用哪个sqrt时才能实现。

  
      
  1. 为什么语言无法内置这些功能?
  2.   

因为需要由一组人员维护和不断升级每个软件(根据计算机不断变化的趋势),并且每个人尤其是资源受到限制。在开源环境中。因此,我们要做的是-尽量减少基本语言软件的使用,以便核心组-X可以轻松维护和改进基本语言,而组-Y和-Z可以处理非必要/可选项目。这样一来,语言的范围就受到了限制。您还应该知道,语言包含许多很少使用的功能。 像Microsoft这样的有礼有礼的公司,可能会采用不同的思维方式,可能会将1000名敬业的人选为他们的语言,并尝试囊括除最流行的语言之外的所有内容,并且仍然生活在非公司环境中。

其他原因是给程序员以灵活性,如前所述。一种能够为您提供一切并要求您仅使用这些功能的语言将非常灵活。

如果您输入复杂的业务领域,例如航空航天专用的东西,医疗保健专用的东西等等,范围将非常容易得到无限的限制。

通常,软件分为两部分-核心部分和可选补丁(模块),以实现更好的可维护性,灵活性并根据需要减小软件大小。