课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
全栈开发程序员可以说大部分的程序员都非常羡慕这些人,除了他们掌握了多种编程开发语言以外,还有很重要的一方面就是全栈开发程序员的待遇非常高。下面我们就一起来了解一下,全栈开发程序员的迷思都有哪些。
作为一名Web设计师,在我的大部分职业生涯中,我都非常愉快地与程序员、工程师和拥有计算机科学学位的人共事。在这种共生关系中,每一方都有一个安全且明确的工作角色,并且能够从事他们擅长的事情,享受他们的工作。
计算机科学家们并不会把全部时间花在写代码上,他们做架构,我负责完成通信、表单和互动方面的事情。我们都需要写代码,因为我们是在做Web开发,但我们以不同的方式编写代码,以实现不同的和互补的东西。
但对于那些根本不写代码的人来说,事情就没有那么明显:他们很容易认为写代码的人会包揽所有的代码——因为对于代码门外汉来说,所有代码都是一样的。
这种误解造成了糟糕的后果,而非编码人员通常是招聘技术人员的人,这反过来加剧了这种后果。万恶的资本主义总是从少的资源中榨取多的价值,因为这是他们赚取利润的方式。如果他们能找到愿意包揽所有编码工作的人,那么就可以极大地减少重要的开销:人。
因此,市场上就出现了全栈开发者,就像从肮脏的胎盘中破茧而出的强兽人:更强大、更好,同时问题也更多。
为什么会有问题?HTML、CSS、JavaScript、Python、C#和SQL都是代码,但它们实际上是完全不同的代码,适合不同类型的人。以前端技术为例:HTML是一种元语言,与语言、叙事和意义密切相关,属于作家的领域。CSS属于印刷师和图形艺术家的范畴,而JavaScript(在这里通常指客户端,但它其实是计算机科学家使用的真正的编程语言)用于处理数据传输和事件。
也就是说,如果你让某人负责所有这些事情(包括API和关系数据库设计等等),那么他们在某些领域很可能会比在其他领域要薄弱得多。更糟糕的是,他们往往没有兴趣去改善他们没有意识到的领域或者他们没有获得成就感的领域。根据我的经验,男性更擅长于JavaScript或Python,并通常会从中获得更多的赞誉,但却很少能够从CSS技能中获得这些。CSS让页面看起来更“漂亮”,偏向于“女性化”一些。
一个全栈开发者(实际上是一位同时编写HTML和CSS的计算机科学家)需要对所有代码负责,尽管这些代码的语法和目的存在根本差异,并成为某些类型代码(一些人根本不关心写得好不好)的守门人。这有两个不利的影响:
糟糕的代码质量;
一群能够(并且喜欢)写出好代码的人却失业了,只能在一旁嘀咕“WTF”。
让人们成为这种守门人的明显的问题之一是糟糕的HTML输出质量。大多数全栈开发人员来自计算机科学背景,他们在学习程序控制结构同时并没有学习HTML的文档结构。他们并不擅长这些,但我们却他们也承担了这些工作。
对于计算机科学家来说,CSS可能非常难以捉摸。像级联这样的功能可能让他们摸不着头脑。为了让CSS更容易编写和管理,他们用他们更熟悉的东西把CSS“吃”掉了,于是出现了CSS-in-JS。
从技术角度讲,CSS-in-JS通常被定义为一种解决方案(从业者的定义)或者一种问题(反对者的定义)。我认为它不会让CSS变得更好或更糟——它只是一种不同的编码方式。但这并不是说它不造成严重的文化问题:
将CSS放入JS中,那么任何想要编写CSS的人都必须学习JavaScript。而且不仅仅是JavaScript,还很有可能是JavaScript的另一个特定的“风味”,比如React。更糟糕的是,JavaScript爱好者不希望在他们的地盘上使用CSS。
我近在一家公司工作,这家公司里有数十个全栈开发人员,却没有前端开发人员。我们要开发一个网站,但没有人懂Flexbox,除了我。当然,我很乐意提供帮助,但我必须学习React才能完成手头的工作。所运的是,我很快就学会了,但换了另一个CSS专家可能就没有那么幸运。CSS专家能给你带来的价值是他们的CSS技能,而不是他们的JavaScript技能,所以将JavaScript作为对他们的一项要求是荒谬的。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!