乐趣区

关于segmentfault:思否有约-|-XboxYan学习-CSS-这件事纸上得来终觉浅

当初大部分工夫都在做更根底、更底层一些的工作。

明天咱们采访的嘉宾是 @XboxYan。他在大学时热衷于艺术,曾一度心愿找到与设计相干的工作,但却意外地成为了一名前端工程师。当被问及将来是持续从事技术还是转向治理时,他毫不犹豫地答复会持续从事技术。在他身上,咱们能够感触到一种简略、认真和坚持不懈的品质。本期咱们十分荣幸地邀请到了他,接下来,让咱们听听他的故事和心得分享。

Q:向大家简略的介绍一下本人吧~

大家好,我叫严文彬,大家对这个名字可能不太熟悉,因为我在社区下面用的名称都是 XboxYan。我是 2014 年毕业的,到当初工作快 9 年了,做的是偏视觉方面的一些前端工作。

工作以前有挺多的喜好,会打乒乓球,或者画画,下班当前如同都没什么了。当初的话,周末可能会一天的工夫都在家里写文章或什么的,或者就在左近的公园走一下这样。

Q:你是如何进入前端这个行业的?

我原本不是这个业余的,因为我学的其实跟这个不太沾边,叫光信息科学,就是搞激光,或者搞太阳能光纤的。其实这个业余也不是我本人选的,也是调剂的。我上大学的时候其实是比拟喜爱艺术的,就是画画或者美术什么的。我毕业当前始终想找一份和设计相干的工作,而后就找到培训机构去了。培训的话也是设计方面的,有一部分就是讲 Web 相干的,网站设计。起初入职的时候我认为我是做设计的,后果发现我是做前端的,有一部分工夫也做过设计,但次要还是做前端。就这样就到这个行业来了,有点偶尔。

Q:目前次要的工作内容是什么,对前端开发有什么认识?

我当初的工作其实没太大变动,有些人可能做着做着就走治理去了,我其实就是始终在做最底层的工作。从工作到当初,前端的区别次要就是用到的一些技术不太一样了。以前咱们那个时候都是 jQuery 什么的,起初就缓缓地变成了当初的 Vue、React,其实这整个过程我都是经验过的。

这些技术一进去的时候,我就连忙紧跟它的步调,进去什么就学什么。对于这些工具和框架,我当初曾经没有过于去谋求了,我可能还没有大部分人那么相熟,因为我当初大部分工夫都在做更根底、更底层一些的工作。比方 CSS 框架,我以前可能会有什么框架就连忙拿来用,用市面上的一些框架,然而当初的话,我基本上不必这些框架了,都是本人手写框架。因为用别的框架会有一些学习老本,再就是如果框架本身不满足需要的话,还要去看那个框架是怎么实现的。所以有时候综合下来还不如说我本人写吧,其实写起来也不比用那些框架慢,真的。

Q:CSS 目前的倒退情况如何?

CSS 不像 JS,照着 API 你马上就会用,CSS 的话可能你看着那个文档就那么一点,然而实际上其实还是有很多你想不到的中央。因为我本人原本是比拟喜爱视觉或设计那些方面的,工作几年当前,我感觉我对 CSS 会更有感觉、更有趣味。CSS 光看文档是不行的,还是要写很多 Demo。像我每次写文章都要先把 Demo 写好,而后再把一些思路什么的讲进去。

CSS 当初倒退得曾经比拟快了,绝对于以前的话,各种浏览器特地随便,规范不对立,很多个性没方法兼容。当初 IE 曾经彻底退出了,而 Chrome 每个版本号的更新,都会带来一些相干的 CSS 个性。每次它一更新,我马上就会去看它有哪些新的 CSS 个性,而后再去验证一下,验证当前就能够写文章了。总之,CSS 目前的倒退我感觉还是十分乐观的,以前只能用 JS,或者很多简单的办法能力做的事件,当初用 CSS 就能够实现了。就比方把一个色彩加深或者突变,像这样的工作以前只能通过 JS,或者通过预编译的形式,就是生成一堆色彩进去,然而当初曾经能够动静生成和它相干的一些加深的色彩或者简略的色彩,比方那种主题网站,就能够切换皮肤,只有改一个变量,其它的就都跟着变了。

Q:当初很多新人上手就是 TailwindCSS 这种原子化 CSS 框架,如何对待这种景象?

有益处也有害处。我本人的话,其实是不太喜爱这种格调的,写了当前感觉整个 HTML 都像乱码一样,因为它把 CSS 那些简写全副写在 HTML 页面里了,这样导致要找一个货色会很麻烦。咱们以前写个 div,要想一个类名,比方它叫什么 header 啊 content 啊这些名称,用了这个框架当前,相当于不必再写类名了,全副写那种简写,这对有些初学者来说,写起来可能会更快一点,不必想什么名字,要什么款式间接写就行了。然而,比方像那种居中的属性,有些简写理论是好几个属性合起来的,换一个环境没方法用这种框架的时候,可能就不会写了,或者说基本不晓得这个居中它到底是怎么实现的。

对我而言,我可能不会去深入研究它,然而也要晓得这货色是做什么的,该怎么用,或者说怎么改它。对于新人,我其实不太举荐这种形式。

Q:能够介绍一下你开源的 UI 组件库 xy-ui 吗?

这个组件库是一个基于 Web Components 标准开发的,Web 原生的组件库。那个时候 Vue 和 React 刚刚起步,开发这个组件库就是想用原生的形式来实现,在任何框架外面它都能够运行,不论在什么我的项目中都能够用。这个框架没有用到任何内部的依赖,代码全副在外面,全是原生的。还有一个就是,那个时候我也想学一下 Web Components 相干的一些技术。过后我也是边做边学的一种态度,做完了当前,差不多对于 Web Component 的任何问题,基本上我都曾经晓得了。

做这个组件库曾经过来两三年了,还不是特地欠缺,当初 CSS 的一些原生的个性又更新了很多新个性,最近打算重构,把一些新的个性给用下来。其实过后做这个也并不是要做成一个业界十分通用的组件,这个也是有艰难的,当初 Star 也才 1.1 K,我感觉这个曾经很不容易了。
我以前在写 Demo 的时候会用这个组件库,拿它做一些布局,做一些演示,比方那种滑动条或者什么的,会间接用这个外面的 UI。我在另外一个公司工作的时候,公司的中后盾我的项目也是用的这个框架。

Q:工作至今有哪些变动和成长?有没有什么印象粗浅的事?

我来到阅文当前,做了很多技术分享,都是在组内和部门外面,这个应该算是一个比拟大的变动,因为我感觉这应该算是一种软技能。大部分做技术的人都是埋头写好代码就行了,然而我感觉不光要埋头写代码,而且还须要把本人的一些教训或者想法给分享进来,或者说进步一些本人的影响力,让更多的人晓得本人,还能够锤炼一下口头表达能力,或者说一些演讲沟通能力。

在分享的过程中也会有很多播种。因为要讲一个货色必定要把它给搞懂嘛,要不然本人都没搞懂怎么讲给他人听呢?有的时候为了筹备一个货色,又额定地去学到了一些货色,我感觉这个也是对各方面都有帮忙的。

我第一次下台去做分享,做了很多筹备,后期比拟缓和,还问了好多人,比方 PPT 做得怎么样,这里应该怎么讲啊?到哪个点了?PPT 的每一页我都标示了在什么时间段讲到什么中央。

Q:你是如何晋升本人的技术的?有哪些教训和心得?

首先必定要写 Demo 这个货色。我感觉学 CSS 最重要的是要写 Demo,很多货色光看文档基本不晓得它会有什么成果,或者说它由几个属性组合起来,看文档是看不出来的。文档里介绍的各个属性都是独立的,必须要写,本人写 Demo,本人尝试,不然的话可能就像后面提到的那种框架一样,只晓得用哪几个属性,然而不晓得这几个属性合起来会有什么成果。

而后就是看文档,看他人的一些博客,比方有很多 CSS 十分强的大佬,看他们的一些博客,还有国外的一些网站。基本上每天都会花个把小时去看一下,比方早上刚到公司的时候,可能状态不那么好,就去看一下文章什么的。

还有就是本人工作上的一些积攒。有时候会碰到一些很非凡的 UI 或什么的,可能有很多人会感觉这个 UI 太难了,就不做了,或者间接切张图,然而我的话,会尽量地想方法用代码来实现它。这也算是督促本人晋升 CSS 的一种形式。我大部分工夫不肯定齐全依赖于我的项目上有什么我才会做,有些货色也须要本人在别的中央积攒,因为当前可能会碰到这种状况。

Q:最近最大的感悟是什么?对将来有没有什么布局?

最近 ChatGPT 比拟风行,咱们公司外部也在做对于这个的一些利用,这个货色比我开始设想中的要弱小很多,然而也不至于说齐全能够取代咱们这些开发者,可能有一部分工作能够让它代替,但不是所有的都能够让它代替,至多我感觉 CSS 它是代替不了的,因为 CSS 太灵便了。

我也试过用 ChatGPT 来写代码,CSS 不太好用,然而 JS 要好用得多,比方用 JS 写一些罕用的算法,或者函数,用 ChatGPT 写还是比拟不便的。然而这个货色必定要会用,会用必定比不会用的人要有劣势一些。至于他能做什么,都要看 AI 本人的倒退。

对于将来的布局,我应该是会始终做技术的。我领导之前问过我是做技术还是做治理,我说我应该还是会持续做技术。

Q:如果能够从新抉择,是否还会抉择前端开发?

我在做这个工作的时候,也没想到我会成为一名开发,然而我大概率会选和视觉设计相干的,成为一名 UI 设计师或者什么的。我当初写页面有时候基本都不须要出什么 UI 图,我本人间接写就行了。当然这个跟以前的公司环境有关系,因为以前人比拟少,工夫比拟缓和,产品出个交互稿就间接拿来做页面了。

Q:对于刚入行的前端开发,有什么工作和学习上的倡议?

我感觉最要害的还是根底,最根底的 HTML、CSS、JS,前端三大语言。我在社区下面也看到有很多问题,比方一个组件库它的一些款式怎么设置啊,为什么没有失效。像这样的问题其实都是比拟根底的,如果根底比拟好的话,这种问题会很好解决,大概率就是那些款式被笼罩了,其实就是优先级的问题。很多人可能一上来就间接用那些当初比拟成熟的框架,或者说一些 UI 组件库,很多人重置一下外面的款式都感觉十分吃力,或者说基本不起效。像这种问题,其实就是 CSS 根底不牢的起因导致的。

这些根底应该要从平时工作的每一点每一滴开始做。比方在 IDE 外面写一个款式,或者写一个办法啊什么的,很多人可能就间接快捷输出,按一下 Tab 键那个残缺的句子就进去了。这样的话写起来可能是略微快一点,然而在有些状况下,可能基本写不进去。

比方 CSS 有一个突变的个性,叫 gradient,这个单词我预计至多有一大半的人写不进去,因为大部分状况下就是间接写一个缩写,那个 IDE 里就曾经进去了。其实这个也算是一个根底,因为有时候能把它残缺地写进去,在很多中央调试起来更加不便。我碰到过一个场景,我之前在上家公司的时候,出了一个问题,代码只能在线上改,齐全要本人手写那种,相当于一个记事本一样。这种状况下如果不纯熟的话,会十分难改。或者说,如果都十分纯熟了,当前就算不必缩写,也基本影响不了代码的效率。

所以我的倡议就是不要太过于依赖那些工具。还有一个,业界有一个说法,就是很多人脱离了 Vue 或者 React 就齐全不会写页面了,其实我感觉这个是一个比拟可怕的事件。因为说到底那些只是框架,可能过两年又会更新迭代,然而那些根底的话,它齐全不会被取代,比方原生的一些款式或者办法,它是不会变的,只会一直地往上面加,然而以前的货色它不会减。

Q:在思否社区最大的播种是什么?

我最早晓得这个网站的时候,可能是以前在搜什么问题的时候发现了这个网站,起初就本人在下面发问,再起初就是在下面答复,再前面就是在下面写文章,大略就是这样的一个过程。

我每天基本上会花一部分工夫在下面,就是看那些问答题目,如果有一些问题我以前碰到过,或者本人很分明怎么解决,我就会马上答复一下,这也算是一种学习。

再一个可能就是很多人是通过思否才意识到我的,才晓得我,也相当于是晋升了一下本人的一些影响力。

小编有话说:

“我认为我是做设计的,后果发现我是做前端的”,听起来像是被骗了,但在这样的偶尔下,仍然能找到本人所酷爱的货色,并为之致力、保持。很多开发者都会面临未来是做技术还是做治理的困惑,能够说各有利弊难以抉择,但对 XboxYan 来说,这仿佛是一个不须要太纠结的问题,做本人喜爱的事就好。


《思否有约》记录你与编程的故事。欢送小伙伴们退出访谈,独特分享成长之路,扫描二维码报名吧~

退出移动版