大家好,今天来为大家分享汉语是动态还是静态的的一些知识点,和对比英语静态和汉语动态的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!
本文目录
一、动静的意思
“动静”是一个汉语词汇,有两个主要的含义:
1.动静:指代动作或声音。在这种情况下,“动”指的是运动、活动或变化,而“静”指的是静止、平静或静止的状态。例如:“屋子里突然传来一阵动静”,这里表示屋子里出现了一些动作或声音。
2.动静:指代事物的变化和发展。在这种情况下,“动”和“静”可以分别表示积极和消极的态势。例如:“市场行情有动静”,这里表示市场行情有所波动或变化。
了解“动静”的意思,可以帮助我们更好地理解和使用汉语,以及在日常交流中表达各种情境和现象。
二、grow是动态动词还是静态动词
groW译成中文是成长意思,可以是名词,也可以是动词
三、动态语言和静态语言的区别
动态语言是为编写KB级项目而设计的,从技术上讲非常过时。绝大多数动态语言,都诞生在windows95之前。
那个年代的计算机使用软盘储存数据,最大容量才1.4MB,程序都特别简单,一个操作系统才几百kb。由于动态语言的语法简洁,不仅节省空间,而且利于初学者学习,因此在那个储存空间非常紧张,计算机还十分“脑残”的年代,很有优势。
但从windows95诞生,计算机全面进入图形化时代,程序开始变得越来越庞大,商业软件从平均几KB,增大到几MB,几十MB,甚至几百MB。
从此,动态语言越来越难以编写出合格的程序,静态语言才开始逐渐流行起来,逐渐取代了动态语言的统治地位。
动态语言和静态语言最大的区别,在于可维护性的不同。
小学生刚刚学习写作文的时候,总有很多字不会写。有的老师会让学生,把不会写的字,画成一个圈儿,即O。
一个句子,原本应该写成写成“今天下雨了”。而有些小学生不会写“雨”字。就可以写成“今天下O了”。这个“O”可以代表任何东西,当然也可以代表雨。
对于判作业的老师来说,这个“O”就是动态的。直到老师猜出这个“O”是雨之后,才能确定这个句子是不是病句。
这种画圈儿的规则,是一把双刃剑,整体讲是弊大于利的。好处是它可以让学生只掌握很少的汉字,就能写出作文。但缺点是圈儿一旦变多,就会失控。常常连作者自己都分不清,每个圈儿分别代表啥?
可是对于高年级的学生,就不允许使用“O”了。遇到不会写的字,就要去查字典,只有写出所有的字,才能把作文写完。对于判作业的老师来说,这就是静态的,这个句子是不是病句,一眼就能看出来。
编程语言比我们的例子要复杂,但道理是一样的,区别就是它不能只画“O”,而是不同的东西,需要用不同的“名字”表示,为了便于说明,下面的“名字”都使用一个字母来命名。
比如一个句子是“板凳宽,扁担长,板凳不让扁担绑在板凳上”。
用动态语言表示,则写成“A宽,B长,A不让B绑在A上”。
写起来很省事,但维护起来就费劲了。因为A和B可以代表任何东西,凭什么一定就是“板凳宽,扁担长”,而不是“肥皂宽,牙刷长”?
而用静态语言表示,则是“板凳A宽,扁担B长,A不让B绑在A上”。
通过对比发现,静态语言比动态语言,多了一开始的“板凳”和“扁担”这两个词语。相当于从一开始,就标明了A是板凳,B是扁担。
只要用脑子记住“A是板凳,B是扁担”,岂不就能达到同样的效果?仅仅一个句子当然是可以的,人人都能记得住。而商业程序的代码量,一般平均在十万行左右。你不仅需要记住什么代表板凳和扁担,你还得记住水桶,暖壶,扫帚,簸萁,锅,碗,瓢,盆,油,盐,酱,醋,烟,酒,茶,糖。。。
所以,为了解决这个问题,动态语言就需要靠加注释,来弥补自身可维护性的不足。可这样做也是不靠谱的。因为如果对代码进行封装,所需要注释的文字量,就会超过代码量本身,到时候你根本不是“写代码加注释”,而是“写注释加代码”。
总之,动态语言只适合写非常非常小的程序,中型以上的程序,通常要使用静态语言编写,才会比较容易维护。我个人只在编写1000行以内的小工具时,才会使用动态语言,如Python、Lua等。但即便如此,也还是多次陷入过“第二天看不懂”的困境。
当然“不适合”不代表“不能”,就像“徒手搬砖只适用于小型建筑,大中型建筑要使用工程机械”,这说法我一般认为是正确的。但总有一些人会举极端的例子来反驳,说万里长城和金字塔是用手磊出来的,这就实在没意思了。。。。
动态语言存在的的第二个问题,就是很难发现错误。
假如我们遇到一个游戏,它是用静态语言编写的,其中有一段代码是这样的(伪代码):
然后我们编写了一段代码:“A装备着D,发动了C,击败了B”
这段代码很容易翻译,就是“李逍遥装备着钢剑,发动了御剑术,击败了树妖”。
假如我们一时不小心,把代码写成“李逍遥装备着树妖,发动了钢剑,击败了御剑术”的话,会怎么样?
这时候IDE会立刻报错,并提示你出现了三个错误。
2,钢剑是武器,不能当做技能使用
如果不排除这些错误,你的程序就无法继续顺利编写下去。所以你只好先排除这三个问题之后,才能继续写代码,套用前面的例子,也就是高年级学生“查字典”了。
由于绝大多数的问题,都必须在写代码的过程中,通过“查字典”排除掉,所以只要你的程序可以顺利写完,运行起来也基本不会有太大的问题了。
但如果这个程序是使用动态语言编写的,则不会报错。因为B可以是任何东西,它可以是钢剑,也可以是树妖。直到你的程序写完,无数BUG一下子冒出来,IDE却依然显示“一切正常”。
所以使用动态语言,你就要在每一个可能疏忽的地方,加上注释,提醒自己A是啥东西,B又是啥东西。。。。。最后你会发现,若要保证你自己写的程序不出BUG,而且日后还可以正常维护的话,那么你需要写的注释,远比代码本身还要多。
OK,关于汉语是动态还是静态的和对比英语静态和汉语动态的内容到此结束了,希望对大家有所帮助。