18910140161

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

顺晟科技

2021-06-16 10:14:11

264

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

HTML CSS为什么不能被编程界认可?

作者|阿马杜易卜拉欣

翻译|月亮,编辑|郭蕊

以下是翻译:

很多时候,人们说我不是程序员,是因为我在用HTML CSS编程。我很难过,因为没有别人觉得我是开发商。我们讨论了几个小时,网上有很多关于这个话题的讨论。但还是有人否认,所以在这篇文章里讨论一下。

在深入研究之前,我们先来看看HTML CSS的基础知识。

根据维基百科:

超文本标记语言是创建网页的标准标记语言。

这意味着您需要使用HTML来构建显示在网页上的文档。下面是一个基本的网页示例:

除了HTML,还可以使用CSS来美化页面。这就是为什么我们把两者结合起来。

根据维基百科:

层叠样式表(英文:层叠样式表,缩写:CSS;也称为字符串样式表、层叠样式表、层叠样式表、层次样式表)是一种用于添加样式(字体、间距和颜色等)的计算机语言。)到结构化文档(如HTML文档或XML应用程序)。

以下是一个CSS文件的示例:

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

HTML CSS为什么不能被编程界认可?

编程语言的结构

首先我不止一次听到有人认为HTML CSS没有编程结构。那么编程结构是怎样的呢?经过一番搜索,我发现现代编程语言的编程结构几乎是一样的。控制结构和数据结构。别急,慢慢听我说。

控制结构

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

HTML CSS为什么不能被编程界认可?

控制结构是指根据给定的参数分析变量并选择程序执行顺序的程序。

控制结构包括顺序控制、条件控制和循环控制。下面我举个例子。我用Ruby语言写例子。别担心,Ruby很接近英语,也很好理解。

顺序控制:一个接一个执行的指令。在下面的例子中,我们将执行一系列指令。

条件控制:如果条件为真,在这里执行代码。根据条件的结果,程序决定要执行的代码块。

上面指定的代码块将重复执行,直到满足条件。示例中的条件是“计数器”等于5。因此,该消息被输出了五次。

那么,HTML CSS有这样的控制结构吗?你怎么想呢?

数据结构

什么是数据结构?维基百科说:

数据结构是计算机存储和组织数据的方式。

简而言之,数据结构表示如何组织数据、定义数据类型和操作数据。大多数编程语言都有不同类型的数据,包括字符串、整数、布尔值、数组和对象.

那么,HTML CSS也有这种数据结构吗?另外有人说HTML CSS不具备图灵完备性——。那么,什么是图灵完备性呢?

我的反应是失去理智。但是经过几个小时的寻找,我有了一个大概的了解。

简而言之,在计算理论中,如果可以用一系列数据操纵规则(如指令集、编程语言、元胞自动机)来模拟一个单带图灵机,那么它就是图灵完备。

图灵机是一种抽象人类计算行为的数学逻辑机,由英国数学家艾伦图灵于1936年提出。它更抽象的意义是一个计算模型,可以看作是等价于任何有限逻辑数学过程的强力逻辑机。

图灵机是一个规则、状态和转换的系统,不是真正的机器。

所以,HTML CSS不具备图灵完备性。因为HTML CSS无法改变系统状态。您不能根据输入做出决定或更改状态.

所以,我还能说HTML CSS是编程语言吗?

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

HTML CSS为什么不能被编程界认可?

CSS的控制结构

是的,你说得对。CSS有自己的控制结构。以下是一些例子。

顺序控制

像其他编程语言一样,我们可以在CSS中逐行执行指令。

在上面的代码中,条指令被覆盖,因此最终结果是:

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

HTML CSS为什么不能被编程界认可?

条件控制

在上面的代码中,如果设备屏幕的更大宽度是567px,则应用style 1;如果更大宽度为900px,则应用样式2。因此,这是一个条件控制。

对于上面的navbar样式代码,如果用户的设备支持,显示属性将设置为“flex”。你甚至可以用关键词“不是”来写虚假的陈述:

循环控制

你说真的吗?很严重。CSS也有类似循环的指令。虽然看起来和其他编程语言不太一样。CSS的循环指令没有“for”循环,也没有“while”循环。让我们看看这段代码:

段代码告诉浏览器遍历“li”元素中的所有“a”元素,然后应用给定的样式。第二个代码告诉浏览器回收它。如果“a”元素的类是“活动的”,则应用给定的样式。因此,我使用了循环和条件控制的组合。

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

HTML CSS为什么不能被编程界认可?

现在,你同意HTML CSS有编程语言结构吗?你同意吗?太棒了!我们已经达成协议,你可以去。

哦?你还在读书吗?你还有问题吗?那我来一个一个回答。

如果有人说CSS有图灵完备性,你会怎么说?你很无语,是不是?事实上,的伊莱福克斯-爱泼斯坦就证明了这一点。他进行了一个实验,证明HTML CSS具有图灵完备性,这个故事发生在2011年。点击此处(https://accing.com/blog/2015/css3-proven-to-turing-complete)了解更多信息。

那么,现在可以接受HTML CSS作为编程语言了吗?

HTML CSS是当代网页的“双英雄”(请参考电影《双侠》)。

对于全世界所有的网站,不管服务器的语言如何,前端都是用HTML CSS。

到目前为止,互联网上有17亿个网站,44亿用户使用。而且这个数字还在增长。

这些网站分为静态网站和动态网站。静态网站只用HTML CSS搭建。动态网站也使用其他语言。

其他语言是什么意思?

为了让HTML CSS光芒四射,你需要其他编程语言来打磨。常见的编程语言有PHP、Python、Ruby、Javascript等。脸书、推特、谷歌和Medium都是动态网站。他们的网站蓬勃发展,因为它结合了多种语言。

相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航