美文网首页
静态类型语言和动态类型语言

静态类型语言和动态类型语言

作者: 黄花菜先生 | 来源:发表于2017-07-19 09:23 被阅读27次

编程语言按照数据类型大体可以分为两类,一类是静态类型语言,另一类是动态类型语言。

静态类型语言在编译时便已确定变量的类型,而动态类型语言的变量类型要到程序运行的时候,待变量被赋予某个值之后,才会具有某种类型。

静态类型语言的优点首先是在编译时就能发现类型不匹配的错误,编辑器可以帮助我们提前避免程序在运行期间有可能发生的一些错误。其次,如果在程序中明确地规定了数据类型,编译器还可以针对这些信息对程序进行一些优化工作,提高程序执行速度。

静态类型语言的缺点首先是迫使程序员依照强契约来编写程序,为每个变量规定数据类型,归根结底只是辅助我们编写可靠性高程序的一种手段,而不是编写程序的目的,毕竟大部分人编写程序的目的是为了完成需求交付生产。其次,类型的声明也会增加更多的代码,在程序编写过程中,这些细节会让程序员的精力从思考业务逻辑上分散开来。

动态类型语言的优点是编写的代码数量更少,看起来也更加简洁,程序员可以把精力更多地放在业务逻辑上面。虽然不区分类型在某些情况下会让程序变得难以理解,但整体而言,代码量越少,越专注于逻辑表达,对阅读程序是越有帮助的。

动态类型语言的缺点是无法保证变量的类型,从而在程序的运行期有可能发生跟类型相关的错误。这好像在商店买了一包牛肉辣条,但是要真正吃到嘴里才知道是不是牛肉味。

动态类型语言对变量类型的宽容给实际编码带来了很大的灵活性。由于无需进行类型检测,我们可以尝试调用任何对象的任意方法,而无需去考虑它原本是否被设计为拥有该方法。

相关文章

  • 【扩展2】静态动态及强弱类型语言总结

    静态语言和动态语言 静态语言Statically typed language  在运行前编译时要检查数据类型的语...

  • IT男的基础之路

    静态语言和动态语言 基本概念 静态语言(强类型语言) 静态语言是在编译时变量的数据类型即可确定的语言,多数静态类型...

  • 01|JavaScript是一种动态的弱类型语言

    一、JavaScript与C++对比 javascript C++ 二、静态类型和动态类型对比 静态类型语言动态语...

  • 编程语言

    编程语言分为动态(类型)语言和静态(类型)语言。 动态类型语言是指在运行期间才去做数据类型检查的语言,也就是说,在...

  • 静态类型语言和动态类型语言

    编程语言按照数据类型大体可以分为两类,一类是静态类型语言,另一类是动态类型语言。 静态类型语言在编译时便已确定变量...

  • 浓缩解读《JavaScript设计模式与开发实践》①

    面向对象的JavaScript 1.1 动态类型语言和鸭子类型 按照数据类型,编程语言可以分为两大类:静态类型语言...

  • python简单介绍

    python介绍 python是一个什么样的语言? 编译型和解释型静态语言和动态语言强类型定义语言和弱类型定义语言...

  • 黑猴子的家:Python 是一门什么样的语言??

    编程语言主要从以下几个角度为进行分类,编译型和解释型、静态语言和动态语言、强类型定义语言和弱类型定义语言,每个分类...

  • Python-背景-认识python

    python是什么编程语言 编程语言主要从以下几个角度为进行分类,编译型和解释型、静态语言和动态语言、强类型定义语...

  • 《松本行弘的程序世界》总结(1)

    静态语言和动态语言的优缺点 静态类型 优点:编译时能够发现类型不匹配的错误制定了相应的数据类型,那么编译时用的信息...

网友评论

      本文标题:静态类型语言和动态类型语言

      本文链接:https://www.haomeiwen.com/subject/gunkkxtx.html