例如:

如果我对构建Web应用程序感兴趣,应该知道哪些语言?

是的,我知道HTML和CSS并不是图灵完备的。是的,我知道它们是说明性语言,而不是命令性语言。但是,为什么人们在问有关这些语言的问题时总是总是被这个学问(显然是显而易见的)事实所吸引?

评论

当人们把它放在简历上时,它只会使我烦恼。唯一糟糕的是,当他们在“语言体验:”下将jQuery放到JavaScript旁边时。

对我来说似乎很明显:如果我需要弄清楚如何聘用谁,或将谁分配给特定任务,我需要知道他们拥有什么技能。如果作业涉及实现算法,那么我不会将其提供给仅具有HTML / CSS背景的人。我不会指派只有后台编写命令行C程序的人来编写一堆必须在多个浏览器上工作的复杂网页。我不知道您是否一直在聘用或管理人员,但是您确实遇到了很多宣誓可以互换这些任务的人。

数据只是愚蠢的代码,而代码只是智能数据:stackoverflow.com/questions/871833/…

人们无法理解OP的问题,用更直截了当的话来说就是:“为什么在讨论通用“语言”时某种花哨的人觉得有必要指出CSS不是一种编程语言?首先,du。谢谢。任何人甚至只知道少量的愚蠢的JavaScript技巧,都可以理解。对CSS的掌握对在那里并掌握了它的程序员来说意味着什么吗?哦,是的。是的,它确实。我不在乎我们是否要为下一个火星探测器编程,这肯定是一个决胜局。

在这种情况下,XSLT是一个值得考虑的有趣案例...

#1 楼

真的有什么区别?

编程语言和其他语言之间的真正重要区别是:


HTML和CSS描述表示,
尽管编程语言描述了函数




我打算说明为什么这种区别很重要,但是在这个问题上的学问有时会放错地方。 >一个真实的故事:

我曾经花了几个月的时间使用“适当”的编程语言开发一个复杂的绩效管理系统。它使从其他系统中收集数据的过程自动化,对这些数据执行各种操作,然后将结果显示在一个简单的表中。类似的业务,并问我们是否可以用他们的替代品代替我写的东西。此外,他为我花了数周的时间开发解决方案而感到沮丧,因为这个新应用程序是在几天之内编写的。 :有很多颜色,图标和图形,但它们背后绝对没有逻辑。所有数据必须手动收集和处理。尽管界面漂亮,但该应用程序实际上是没有用的。演示的重要性:

通常暗示HTML,CSS等方面的技能在某种程度上不如“真实”编程语言的技能。这是一个严重的错误。

在我的故事中,高级经理认为设计对他来说非常重要,以至于他最初准备忽略对其有利的功能。现在,如果这是一起孤立的事件,我可能建议经理只是愚蠢的。但事实并非如此。我一次又一次地遇到了那些对华丽的图形和微不足道的小部件印象深刻但对原始功能和我的技术成就印象深刻的用户。我认为这里有几个教训需要学习:


人们根据他们理解的标准评估软件。他们通常理解好看和丑陋之间的区别,但很少欣赏技术上的细微差别。
人们被外表所愚弄。这可能不是一件好事,但这是我们必须忍受的现实。
外观会影响人们对软件的感觉。人们对软件的感觉对他们而言很重要。确实,人们有时会比使功能更好的软件更喜欢使自己感觉良好的软件。确实,使用感觉良好的工具可能比使用技术上优越的工具更有效率。在这个程度上,我们的用户并没有被愚弄。他们实际上是在做出明智和深思熟虑的选择。
作为程序员,我们在专注于功能时经常忽略表示的作用。在某种程度上,这是正确的。但是,重要的是要认识到我们的工作还有另一个方面对客户很重要。

因此,面向演示的语言(HTML,CSS)很重要。那些能够有效使用这些工具的人所带来的价值不可低估。

真正的编程语言的重要性

正如OP所指出的,“真正的”编程语言是图灵完备的。作为一个适当的悲伤怪胎,我发现这令人着迷。这意味着,对于用T-C语言编写的任何程序,可以用任何其他T-C语言编写功能上等效的程序。当然,这并不是说所有语言都是相同的。他们每个人都有自己的长处和短处,这使他们或多或少地适合于某些任务。但是,除了I / O之外,这意味着所有程序都可以使用所有真正的编程语言编写。 ,例如,它是声明性的,但由于是TC,因此也是一种合适的编程语言。)实际上,这些语言根本无法解决全部问题。在这里,我可以用一种真正的编程语言(包括布局引擎)对任何我想编程的东西进行编程,但要用非TC的语言来实现相同的目的是不可能的。 HTML及其类似内容可用于生成演示文稿。真正的编程语言用于产生功能。

为什么程序员对这一切都学究呢?


程序员花费大量时间,精力和金钱来开发他们的程序技能。人们自然会珍惜他们投资的事物(“您的心就是您的金钱所在”)。
与UI设计师获得的快速结果相比,程序员经常感到需要证明产生结果所花费的时间是合理的。为此,他们需要区分两组的实际行为。
因为雇主需要将合适的人选用于合适的工作。除非我们弄清(通常是技术上的)差异,否则经理们很容易打错电话。书呆子总是合适吗?

面对现实吧,作为程序员,我们自然是书呆子。它与领土。当非程序员无法理解我们所做的事情时,我们当中的许多人被烧死无济于事。认为只要有人疏忽,我们就应该召集人们出去。


这里重要的是上下文
和观点。


有人告诉我,从生物学家的角度来看,西红柿是一种水果。但是,当我在超市购买它们时,我会在蔬菜中寻找它们。为什么?因为在特定情况下技术区别并不重要。而且,这种区别实际上会妨碍它们的用处:例如,如果我很愚蠢,可以在水果沙拉中加入西红柿。

计算机语言也是如此。有时候,编程语言和其他语言之间的差异确实很重要。但是,通常,将它们全部融合在一起,我们所有人都能很好地进行有效沟通。对于由OP链接的问题,实际上什么语言是真正的编程语言而哪些语言不是真正的语言并不重要。指出区别并没有以任何方式推动讨论。值得庆幸的是,除了增加一点噪音(并成为进行有趣讨论的刺激!)之外,由OP链接的学步车也没有什么意义。但是,在最糟糕的情况下,修脚术会激起消极的感觉并破坏人际关系……至少根据我的妻子所说。 :-)

如何处理程序员中的学徒方法这山值得死吗?


他指的是将军们对哪些战役值得进行战略评估的将军:这些收获值得付出代价吗?
我的学步法是出于傲慢还是过去的伤痛?需要区分的时间。我的目标是,当我做出贡献时,它将为我们的集体努力增加价值。

毕竟,这是每个真正的程序员的工作。

评论


我不认为SQL是图灵完备的,除非您在谈论T-SQL或PL / SQL。

– FrustratedWithFormsDesigner
2011-2-23在18:36

@FrustratedWithFormsDesigner:你是对的!感谢您接我。 (但是,我要说的是,声明性语言可以是T-C)

–克拉米
2011-3-3在10:41

很好的答案。作为一个Web开发人员,我一遍又一遍地看到,“浮华”的设计给客户留下的印象比提议的功能要深刻得多。尽管这可能会冒犯我们纯粹的程序员本能(功能应为王),但我们却忽略了这一风险。

– Dan Diplo
2011年8月12日在7:59

+1:Joel Spolsky有一篇有趣的博客文章,讨论了功能与浮华GUI的问题。特别是在没有适当功能时显示100%完成且非常浮华的GUI的危险。如果您还没有读过,那是一本不错的书。 joelonsoftware.com/articles/fog0000000356.html

–狮子座
13年1月25日在8:21

“与使用技术上优越的工具相比,使用舒适的工具可能会提高生产力” –正确,正确,正确!苹果公司以此为基础开展业务。不要误会我的意思,Mac也具有实质性,但是使某些人购买Mac机器的费用几乎是Linux或Windows机器的两倍,这是因为它看起来很酷,而且使用起来感觉很好。

– GlenPeterson
2013年6月6日14:20

#2 楼

告诉土木或机械工程师您学习过“软件工程”,他们会告诉您“软件工程”不是真正的工程。

告诉一名F-16飞行员,您驾驶Cessnas来取乐他会告诉你你不是真正的飞行员。

告诉医生你是脊医,他会告诉你...好吧,我们不要去那里:-)

我认为主要是人们不喜欢伪装者或不真正“有价值”的人渗透到他们的职业的想法。

现在,公平地说,很明显,HTML和CSS不是编程语言。它们不再是.docx格式是一种编程语言的编程语言,并且如果您只知道HTML和CSS肯定不准确,就声称您是一名程序员。但是,我认为回复中的某些热情可以归因于我上面所说的话。

此外,在您链接的问题中,发问者将HTML和CSS称为“语言”,而不是“编程”语言”。 HTML是一种标记语言,而CSS也是一种语言(不过,我不知道您将CSS称为哪种“语言”?),所以我认为将他称为“语言”有点不公平。 “ ...

评论


“但是,我不知道您将CSS称为哪种“语言”? -只需使用“样式描述语言”即可。

–ocodo
2010-12-20 0:00

@ acidzombie24:“ HTML”中的“ L”代表什么?

–迪恩·哈丁(Dean Harding)
2010-12-20在5:33

如果它具有语法和语义,那么很难断言它不是语言。按照这些标准,HTML和CSS都是语言(英语,世界语,克林贡语以及可以说是UML)。但是,它们都不是“编程”语言。

–扎克
2010-12-20 8:02

@Dean Harding-超文本标记乐高玩具?

– VirtuosiMedia
2011年8月12日在6:04



CSS是用于描述样式的DSL(领域特定语言)(即,其域是视觉美学)

– Paul
2011年8月12日在8:00

#3 楼

对我而言,这并不重要。

但是我想对于那些为它所做的人来说,HTML,CSS,XML等与Real Programming Languages™之间的区别有点像木材和油漆作为建筑材料之间的区别。您不能像使用木材那样用油漆来建造东西,同样,您也不能像使用RPL那样使用HTML进行编程。区分可能是无关紧要的,因此令人讨厌和讨厌。

评论


XML是一个不好的例子,因为它比HTML / CSS更通用-例如,XSLT既是XML又是图灵完备的。我认为XML实际上不只是语法,它还指定了标记的定义方式,而不是其含义。

– Tikhon Jelvis
2012年1月9日在9:38

@TikhonJelvis我想我们基本上是在说同样的话,但是这样做确实证明了我的意思。关于XML(可扩展标记语言)是“语言”还是“语法”,与我所提出的观点大体上无关紧要,因此...

–埃里克·金(Eric King)
2012年1月10日,下午3:18

#4 楼

这可能不是“重要的”区别,因为可以说某些网站的html / css部分和编程部分所做的工作一样多。不知道这意味着在进行Web开发的团队中没有任何地方。但是不要相信他会说些关于网络应用程序的事情。或者完成后可以“修饰”他的代码。

评论


@哈维尔:您对“编程语言”的定义是什么?

– ChristopherHammarström
2010-12-20 12:53

@ChristofferHammarström:如果要给出正式定义,我会选择图灵完备性;但非正式地,我只是说一个程序可以响应某些输入。通常,如果没有运行时if ... then构造和某种方式可以重复执行以前未知的次数,我倾向于说这不是一种编程语言。当然,有些边缘语言使定义变得复杂;但是HTML / CSS远非如此。

–哈维尔
2010-12-20 14:14

@哈维尔:您是否可以说规范的“ Hello World”是一个程序,因为它不需要任何输入?

– ChristopherHammarström
2010-12-20 14:25

@Javier:根据Wikipedia(en.wikipedia.org/wiki/…)上的讨论,Pixel Shader语言的早期版本不具备图灵完备性(没有“通用迭代功能”,即“以某种方式重复以前的内容-未知次数”)。这些仅是程序员在流行游戏中对图形处理单元进行编程时使用的语言。您还会说他们不是编程语言吗?

– ChristopherHammarström
2010-12-20 14:53



@Christoffer:Hello world需要输入:您必须启动其执行。但是,您对Pixel Shader的观察很有趣。

–罗伯特·哈维(Robert Harvey)
2010-12-20在16:15



#5 楼

当您说“声明性的,不是命令性的”时,您就把它打在了头上。标记(无论是HTML,CSS还是其他任何东西)都可以描述事物。编程的全部重点是做事。

使用标记所需的技能与编程所需的技能完全不同。

解决问题的类型编写标记与通过编程解决的问题类型完全不同。

评论


纯函数式编程语言本质上是声明性的。 Linq,Python的列表理解工具,XAML,XSLT,SQL和Prolog也是如此。所有这些都是真正的编程语言和/或概念。尽管大多数编程语言都是必须的,但这不是定义功能。完全没有

–康拉德·鲁道夫(Konrad Rudolph)
2010-12-20 11:13



@KonradRudolph-如果您认为纯函数式编程语言在任何意义上都是声明性的,那么您一定不能很好地理解它们。

–乔纳森·卡斯特(Jonathan Cast)
16年4月21日在15:19

@jcast我完全有可能误解了一些东西。但是显然地,该领域的专家也是如此。作为一般参考,Wikipedia将(完全)功能编程语言分类为声明性语言。举一个具体的例子,拥有纯声明式语言博士学位的Paul Bone也遵循此定义。我很想知道您是出于什么原因对这个定义发怒。

–康拉德·鲁道夫(Konrad Rudolph)
16年5月4日在13:11

#6 楼

这对某些人来说很重要,因为表面上都不是火箭科学,但是由于它们在您实际关心的通常5到数十种不同环境中以不同的方式实施,因此围绕它们存在大量奥秘。这种不可预测性和对工艺的关注使一定数量的技术专业人士感到恐惧,他们被无法量化的风险吓到了,甚至因学到更多东西而更加恐惧,那么在获得学位后,他们绝对必须这样做。

如果有人问我知道什么语言,然后就把CSS扔了出去,他们说:“那不是REAL语言。”我问他们如何处理div在IE 5,IE 6-8和IE9 +中居中居中。然后,我们可以继续讨论圆角,alpha透明度问题,所有这些荒谬的表即布局参数背后的REAL罪魁祸首,这些参数直到现在才真正变得无关紧要,还有许多关于所说的uber编码器的主题,他们可能知道一个语言并声称一两个他由于十年前被迫上大学而几乎没有功能素养。

它们肯定是“语言”。我不会称它们为“编程语言”。我很乐意描述用这些语言编写的“编码”过程。一个优秀的程序员,已经具有面向对象思维的背景,并且毫无疑问已经学会了思考他现在所写的内容将如何影响他在未来的25个项目中的工作。

评论


+1。我不知道我听过多少次“程序员”将HTML / CSS视为简单而非真实​​的编​​程。然后,当他们无法弄清为什么项目符号列表为什么只能在Firefox中正确排列时,他们举起手来宣布整个Web不适合现代软件:(

–格雷厄姆
2011年8月12日13:59

#7 楼

HTML和CSS不是编程语言。克服它。

但是:
JavaScript是一种编程语言。机器是浏览器。
PHP是一种编程语言。该计算机是服务器中的虚拟计算机。

因此,如果仅使用HTML和CSS,则不会进行任何编程(尽管您可能正在做一些工程)。 br />但是,如果您使用的是JavaScript,PHP或其他脚本语言。您正在编程。

与REAL编程语言一样。如果您在一台机器上(真实的或虚拟的)运行。并且正在使用您自己的算法来告诉机器执行操作。然后,您正在使用REAL编程语言。

评论


因此,我想我们可以省去HTML,CSS和SQL,因为毕竟它们毕竟不是真正的编程语言。实际上,我们也可以省去IDE,因为任何值得他精打细算的程序员都可以使用命令行编辑器。

–罗伯特·哈维(Robert Harvey)
2010-12-20在0:04



我没有亲自对这个答案进行投票(我认为-6就足够了!),但我猜想这次投票的原因是,这实际上并未回答问题。问题不是“是HTML和CSS编程语言吗?”,而是“为什么重要?”的问题。

–迪恩·哈丁(Dean Harding)
2010-12-20在0:29

@Robert那完全是似是而非。里卡多关于“ X不是Y”的论点并不遵循“ X不值钱”的说法。

–马修·雷德(Matthew Read)
2010-12-20 at 1:32

@Lennart Regebro @Robert Harvey:@Matthew Read的立场是这里谈话的核心-您将优越感与否认虚假等同起来。 HTML / CSS异常困难,我雇用可以为我做的人,因为我还远远不够,我缺乏技能。这是一种技术设计技能,不是编程。

–Orbling
2010-12-20 at 1:37

使“编程”一词如此广泛意味着使其几乎毫无意义。含义比那窄,您可能会有不同的看法,但事实证明语言意味着大多数人用它来表示。

–马修·雷德(Matthew Read)
2010-12-20在5:25

#8 楼

编程语言是一个不太精确的术语,因为它是从业者和非专业人士都使用的通用术语。从业者对该词的含义具有细微的含义,而普通人通常不会。通常,他们的定义是,如果它有我不立即理解的有趣的单词/语法,而程序员使用它,那么它一定是一种编程语言。

诸如声明性,命令性和图灵完整之类的词是具有特定含义的更精确术语。当您问诸如HTML / CSS为什么不是编程语言之类的问题时,您是在要求更确切地定义什么是编程语言。我们不是在做书呆子,而是试图回答您的问题。当即使您谷歌搜索它们很难理解它们的含义时,它们也是最好的术语吗?依靠。您想要简短还是长久的答案。 :-)

编程语言通常被程序员认为是可以完全完成的,但这意味着什么呢?这意味着该语言可以描述行为或做事方式。我们正式称其为逻辑。 HTML / CSS可以描述在右上角有一个按钮,或者有一个包含4列5行的表,前两行是黄色,而下一行是绿色文本,表中的每个单元格都有5像素内容周围的空白。

HTML / CSS不能做的是表达单击按钮时发生的行为或逻辑。它不能说当我单击该按钮时从表中获取值并将其相加,然后将该值写入表底部的新行。描述行为大致等同于“翻车完成”,而不会过于学究。

更准确地说,图灵完备意味着您可以自己实现语言。那意味着我可以编写一个采用字符串的javascript的javascript程序,并且可以执行它(而不使用eval()函数)。实际上,我可以编写一个javascript程序,该程序可以采用用任何Turing完整语言编写的程序并对其进行评估。那就是图灵完成的意义。可以完成翻译的所有语言在可以表达哪些程序方面都是等效的。如果您考虑一下,这真是令人惊讶的启示。

评论


图灵完备意味着该语言可以用于模拟图灵机(或者可以计算任何可计算图灵的函数)。

– mipadi
2010-12-20 16:16

@pipadi-我会给您一个非常正确和精确的定义,但是有人问这样的问题时会说:“ WTF是图灵机吗?WTF是可计算图灵的功能?”如果他们不了解Turing Complete,他们是否会了解Turing Machine或Turing可计算的功能?这就像在词典中查找“修辞学”一词,并说“属于,有关或关心修辞学”。这个定义并不能告诉您修辞实际上意味着什么,而只是指向您一个您不理解的词。

–chubbsondubs
2010-12-20 18:27

#9 楼

这是我的两分钱。 HTML和CSS显然不是编程语言。因此,当我在“编程语言”下的某人的履历上看到HTML或CSS时,这只是告诉我这个人不知道他在说什么。

除此之外,不,它并不重要。

顺便说一句,程序员通常倾向于学究。这只是工作本身。

评论


因此,在您的脑海中,没有人可以仅仅因为对此有所了解,因为他们不想浪费其他标记语言部分的空间?对我来说,这超出了实用性。

–乔恩·霍普金斯(Jon Hopkins)
2010-12-20在12:08

当我在“编程”下看到带有HTML / CSS的CV时,就+1了,我没有再读了。或者他不知道区别(所以他对我没有用),或者希望我不知道区别(所以我不想和他一起工作)

–哈维尔
2010-12-20 14:22

@乔恩·霍普金斯(Jon Hopkins):注重细节是程序员的必备素质。将HTML放在编程语言下并不是一种近似,而是草率的。如果您申请程序员的工作,那将给人留下非常不好的第一印象。

–迪马
2010-12-20 17:03

@Dima:绝对。非正式是可以的,有时甚至是书面形式,对贸易的基本概念的不精确也是不可接受的。

–哈维尔
2010-12-20 18:09

这是荒唐的。简历和面试是目前我们行业中最棘手的部分之一。您永远不会知道是否知道差异的人是否仍将“ HTML”放在“编程语言”下,因为他们害怕某些HR无人机不会在“标记/设计/等”下注意到它并踢出简历。您至少应该调用它们或将它们引入。如果它们告诉您它们在“ HTML编程”,那么……这确实是一个危险信号。但是再想一想,您现在仅凭HTML 5就能完成什么工作!真的那么舒展吗?

–格雷厄姆
11年8月12日在14:04

#10 楼

没关系这也是定义的问题。什么是编程语言?有些意味着它必须是图灵完备的。其他人则具有其他定义,这些定义使HTML成为一种编程语言。 (在您的示例中,它们甚至都没有被称为编程语言,只是它们显然是被称为语言)。甚至错误的主张。这只是语法纳粹主义的一种变体。从任何有意义的意义上讲,将HTML称为编程语言都是正确的。

评论


-1这很有意义,因为HTML不是一种编程语言,它没有这种东西的基本元素-它仅描述页面的布局,同样,关于技术制图的书也是编程语言。

–Orbling
2010-12-20 1:22

@Orbling:根据最常见的定义,它们是特定于领域的声明性编程语言。例如,请参阅:en.wikipedia.org/wiki/…因此,对不起,您失败了。根据完全通用和合理的定义,它们是编程语言。并且根据完全不同但同样合理且通用的定义,它们不是编程语言。两种观点都是正确的。但是那些在别人的头上大打出手的人是不安全的,需要比HTML的人更优越。

– Lennart Regebro
2010-12-20 1:28

单词“程序”具有通常被同意的定义含义。您无法使用HTML编写程序,因此使用HTML编写内容不是“编程”。持不同观点的人争辩说,他们在论证中使用的词语可以任意改变其含义,在这种情况下,我会随意将其词语赋予任何含义。

–马修·雷德(Matthew Read)
2010-12-20 1:29

@Orbling:“我与HTML专家一起工作”是新的“我的一个朋友是{在这里插入少数群体吗?”?

– Anon。
2010-12-20在2:32

@Lennart Regebro,每种编程语言的标准定义(即使在Wikipeida上也如此)都表示,一种编程语言可以描述一种算法。您如何用HTML和CSS描述算法?

–Charles E. Grant
2010-12-20在5:29



#11 楼

我认为可以归结为这一点-HTML和CSS虽然很复杂,需要一些技巧,但它们是表示语言,最适合作为生成报告的格式。因此,只能执行这些操作的人员不被视为编码人员。请记住,一些编码器的计算时间已经足够长,可以记住什么时候普通的文字处理器比HTML使用更多的命令语法来设置文本样式。将以某种方式处理数据以生成报告。或者可以用来编写游戏的东西。内外都知道HTML和CSS是一项宝贵的技能,但要与前端的JS知识和后端的Java,PHP,Perl,Ruby,Python,C / C ++或C#知识相结合就可以了。

相反,只知道一种“真实”语言却没有任何Web前端技术的人在很大程度上限制了自己作为编码器的灵活性。

评论


我建议一种完全由计算机执行并运行的语言。我已经调试了C代码,并调试了CSS样式。我可以肯定地说,后者可能花费比前者更长的时间(如果不长)(取决于某人用指针做了什么可怕的事情,以及您试图使之工作的规范的哪一部分晦涩难懂和*&^ %$ @浏览器似乎错误)。仅HTML本身并不能说太多,但是再加上CSS的完整表达,可能会很有趣。

–丹尼·史泰普(Danny Staple)
2010-12-20 20:48

没有比研究CSS和标记的开发人员更糟糕的了,他们认为这将是孩子们的游戏。

–埃里克·雷彭(Erik Reppen)
11年8月12日在6:33

#12 楼

逻辑上的“左脑”或创造性的“右脑”信鸽/刻板印象准确地描述了许多人的技能。以我的经验,“ HTML / CSS是一种编程语言”更多地是关于精通HTML / CSS的人是否也可以胜任其他编程任务。

我与之合作的大多数Web设计师在过去的13年中,我从事Web开发的工作已经能够创建有效的HTML和CSS,但是却无法应对更为苛刻的编程挑战(除了最简单的剪切粘贴JavaScript之外,什么也无法解决)。大多数热衷于编程的程序员和数据库设计人员对可视化表示的关注都不够,无法很好地使用HTML / CSS或一般的表示。大多数人实际上拒绝尝试。

HTML和CSS需要一些编程技能:实验,解决问题,仔细测试,对继承的理解...但是它们至少需要同等数量的设计技能:对颜色,线条,间距,平衡的敏感度-构成一幅好照片的大多数视觉组合技巧。数据流程图。没有其他代码位于其下游。 HTML和CSS并未使用某人为设计良好的API,服务或数据库架构所需的更高级别的设计技能。通常不需要模块化任何与HTML或CSS相关的东西,或者,如果有的话,图形设计者不可以这样做。很少有功能是使用HTML / CSS进行的。下拉菜单可能是最常见的例外,但是可以通过在网上剪切和粘贴配方而不是通过设计代码来完成。

对于程序员来说,具有一些视觉设计或布局技能,或者使设计师具有一些编程技能,这是不寻常的,但并非不可能。这些人在Web团队中特别有价值,因为他们帮助弥合了我们大多数人之间的鸿沟。但是它们通常受制于成见,对于“真正的程序员”来说,不可能做HTML / CSS,反之亦然。但是,与其他程序员成为像样的水手,画家,厨师或业余时间实践其他技能一样,这种技能组合并不是没有可能。 ,这种区别在招聘时最受关注。由于具有交叉人才的人很少,因此大多数工作职位必须针对一种或另一种技能。如果程序员在“ Programming Languages”(编程语言)下列出HTML / CSS,它会发出一个红旗,表明他们无法完成一般的编程任务,或者他们的编程定义非常狭窄。也许他们可以,这只是一个问题。如果设计人员列出了HTML / CSS,则您肯定希望查看他们的作品集,以确保他们具有创造所需视觉效果的艺术能力。语言,因为它比丢弃无法代表他们所代表的半球鸿沟的人更安全,更能为社会所接受。当然,有些人可能没有这种抑制作用。我实际上与一位经理经常一起工作,他经常说:“他在[在这里插入了部门骨干功能编写了代码??我以为他只是在做HTML?”

很好的问题!