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

如果我在用html+css编程,那么,我能算是名开发人员吗?

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

文章插图
作者 | Amadou Ibrahim
译者 | 弯月,责编 | 郭芮
以下为译文:
有好多次,别人说我算不上程序员,因为我在用HTML + CSS编程 。我非常伤心,因为别人都不认为我是开发人员 。我们讨论了好几个小时,网上也有很多关于这个话题的讨论 。但仍然还有人否认这一点,那么就让我们在本文中好好探讨一番 。
在深入探讨之前,让我们先来了解一下HTML + CSS的基础知识 。
根据维基百科:
超文本标记语言(英语:HyperText Markup Language,简称:HTML)是一种用于创建网页的标准标记语言 。
这意味着你需要使用HTML来构造显示在网页上的文档 。下面是一个基本的HTML页面的例子:
<!DOCTYPE html><html><head><!-- Metadata goes here --></head><body><!-- Page content goes here --></body></html>除了HTML之外,你还可以利用CSS来美化页面 。这就是为什么我们会结合二者使用 。
根据维基百科:
层叠样式表(英语:Cascading Style Sheets,缩写:CSS;又称串样式列表、级联样式表、串接样式表、阶层式样式表)是一种用来为结构化文档(如HTML文档或XML应用)添加样式(字体、间距和颜色等)的计算机语言 。
下面是一个CSS文件的示例:
*{ box-sizing: border-box; max-width: 100%;}body{font-size: 1.25rem; padding-bottom: 70px;background: #fff;}1.编程语言的结构首先,我不止一次听说有人认为HTML + CSS没有编程结构 。那么编程结构是什么?经过一番搜索后,我发现,现代编程语言的编程结构几乎都如出一辙 。控制结构和数据结构 。别着急,且听我慢慢道来 。
控制结构
HTML + CSS 为何得不到编程界的认可?

文章插图
控制结构指的是,分析变量并根据给定的参数选择程序执行顺序的一块程序 。
控制结构包括顺序控制、条件控制和循环控制 。下面我来举例说明 。我使用Ruby语言来书写示例 。别担心,Ruby很接近英语,非常易于理解 。
顺序控制:逐条执行的指令 。在下面的示例中,我们将执行一系列指令 。
# Sequences control-structures## Set a new varibale age to 0.age = 0## Then another varibale required_age to 15.required_age = 15## Print this message "What is your age?" to the userputs "What is your age?"## Get the user input and store it in age. Type 14age = gets.chomp.to_i## Print this message "You are 14 year's old" to the userputs "You are #{age} year's old"条件控制:如果条件为true,则执行此处的代码 。程序根据条件的结果,决定要执行的代码块 。
# Condition Control Structure## Set a new varibale age to 15.age = 15## Then another varibale required_age to 16.required_age = 16## check if the user age is less than 16if age < 16## If the condition is checked, print the message "Sorry, you can't pass the driver license!" to the userputs "Sorry, you can't pass the driver license!"else## If the condition is not checked, print this message "Great! You can pass your driver license" to the userputs "Great! You can pass your driver license"end上述指定的代码块将循环执行多次,直到条件成立为止 。示例中的条件是“counter”等于5 。因此,这则消息输出了5次 。
# Loop Control Structure## Set a variable "counter" to zerocounter = 1## Iterate through the loop as long as "counter" is less than 5while counter <=5 do## Print "Get your driver license with LicenseGuru"puts "Get your driver license with LicenseGuru"## Add 1 to the current value of countercounter+=1end那么,HTML+ CSS有这样的控制结构吗?你怎么看?
数据结构
什么是数据结构?维基百科上说:
数据结构(英语:data structure)是计算机中存储、组织数据的方式 。
简单来说,数据结构表示组织数据、定义数据类型以及操作数据的方法 。大多数编程语言都有不同类型的数据,包括字符串、整数、布尔值、数组、对象...
那么,HTML + CSS也有这种数据结构吗?此外,还有人说HTML + CSS不具备图灵完备性——那么,图灵完备性又是什么?
我的第一反应也是发懵 。但经过几个小时的查阅后,我有了大致的了解 。
简而言之,在计算理论里,如果一系列操作数据的规则(如指令集、编程语言、细胞自动机)可以用来模拟单带图灵机,那么它是图灵完备的 。


推荐阅读