HTML + CSS 为何得不到编程界的认可?( 二 )


图灵机是英国数学家艾伦·图灵于1936年提出的一种将人的计算行为进行抽象的数学逻辑机,其更抽象的意义为一种计算模型,可以看作等价于任何有限逻辑数学过程的终极强大逻辑机器 。
图灵机是一个规则、状态和转换的系统,并不是指真正的机器 。
如此说来,HTML + CSS确实不具备图灵完备性 。因为HTML + CSS无法更改系统状态 。也无法做出决策或根据输入更改状态……
那么,我还能说HTML + CSS是编程语言吗?
2.CSS的控制结构是的,你没看错,CSS有自己的控制结构方式 。下面是一些例子 。
顺序控制
与其他编程语言一样,我们可以在CSS中逐行执行指令 。
body{// Set the background to white colorbackground:#fff;// Set the font size to 20pxfont-size: 20px;// Set the background to yellowbackground:yellow;// Set the font size to 14pxfont-size:14px}在上述代码中,第一条指令被覆盖,所以最后的结果是:

HTML + CSS 为何得不到编程界的认可?

文章插图
条件控制
@media screen and (max-width: 567px) {// Style 1}@media screen and (max-width: 900px) {// style 2}在上述代码中,如果设备屏幕的最大宽度为567px,则应用样式1;如果最大宽度为900px,则应用样式2 。因此,这就是一个条件控制 。
@supports (display: flex) {navbar{display:flex;}}对于上述navbar的样式代码,如果用户的设备支持,则显示属性将设置为“flex” 。你甚至可以使用关键字“not”书写false语句:
@supports not (display: flex) {div { float: left; } /* alternative styles */}循环控制
你是认真的吗?是认真的 。CSS也有类似循环的指令 。尽管看上去与其他编程语言的循环有所不同 。CSS的循环指令没有“for”循环或“while”循环 。让我们看一下这段代码:
li a{font-weight:700;display: block;padding: 15px;margin-bottom:10px;background:#333;color:white;text-align: center;text-decoration: none;}li a.active{background:red;color:white;}【HTML + CSS 为何得不到编程界的认可?】第一段代码告诉浏览器循环遍历“li”元素内所有的“a”元素,然后应用给定的样式 。第二段代码告诉浏览器再循环一遍 。如果“a”元素的类为“active”,则应用给定的样式 。因此,我结合使用了循环和条件控制 。
HTML + CSS 为何得不到编程界的认可?

文章插图
现在你是否同意HTML + CSS具有编程语言结构?你同意?那太好了!我们之间达成了共识,你可以走了 。
哦?你还在继续阅读?你还有疑问?那么就让我来一一解答吧 。
如果有人说CSS具备图灵完备性,你会说什么?你无言以对,是吗?事实上,有一位名叫Eli Fox-Epstein的名人证明了这一点 。他进行了一项实验,并证明HTML + CSS具备图灵完备性,而这个故事发生在2011年 。有关的详细信息,请点击这里(https://accodeing.com/blog/2015/css3-proven-to-be-turing-complete) 。
所以,你现在可以接受HTML + CSS是一种编程语言了吗?
HTML + CSS就是当代网页的“双侠”(请参照电影《双侠》) 。
对于全世界所有的网站而言,无论其服务器端的语言是什么,前端都使用了HTML + CSS 。
当目前为止,互联网上的网站数目高达17亿,供44亿用户使用 。而且这个数字还在不断增长 。
这些网站又分为静态网站和动态网站 。静态网站仅使用HTML + CSS构建 。而动态网站还用到了其他语言 。
其他语言是什么意思?
为了让HTML + CSS大放异彩,你还需要其他的编程语言来润色 。常见的编程语言包括php、Python、Ruby、JAVAscript等等 。Facebook、Twitter、google和Medium都是动态网站 。他们的网站因结合了多种语言而得以蓬勃发展 。
感谢您的阅读 。如果你有不同的观点,请在下方留言 。
原文:https://medium.com/swlh/the-most-used-and-unrecognized-programming-languages-b0882e8c8c6f?
本文为 CSDN 翻译,转载请注明来源出处 。
【End】




推荐阅读