首页»职场»你不是一个前端

你不是一个前端

来源:花生PeA 发布时间:2018-06-05 阅读次数:
Mentor:“你不是一个前端”

我:"???"

Mentor:“你不要老想着自己是一个前端,你不是一个前端”

我:“可是把我招来不就是写前端的吗??”

Mentor:“你可以写前端,但是你不要限制自己只作为一个前端,不要把自己的眼光局限在前端。你应该从整个项目、从工程的角度blablablabla...”

我:(打断)“不,我就是一名前端,我特别喜欢前端,特别喜欢JS”

Mentor:“我靠,你不要老说......你说你自己是一名前端,作为你们Mentor,我就感觉很丢人”

  ——以上对话发生于我前往百度实习的第二个周,我与我的Mentor之间

PS: 新人入职百度后,通?;嵊幸晃籑enter(导师)来帮助新人

  大四拿到了百度Offer后不久,便开始了在百度的实习。

  热爱前端,热爱JS,有自己偏执的审美,认为整个宇宙其实是一个用JS编写的程序——这当然是不可能的。不过热爱JS确实是这样。

  随着前后端分离,前端变得可以只需要关注接口而不用管那该死的后台——鬼才想知道你数据表是怎么存的,我只想要我的JSON数据,然后完成酷炫的前端功能,让用户惊叹,让自己惊叹,然后让世界惊叹!

  这就是我,一个华丽丽的前端~~

  华丽丽的我接到了我的第一个Task——为页面开发导入功能,我负责前端,我的Mentor负责后端。

  前端改动比较小的,我三下五除二写完了界面与交互逻辑,一切非常顺利~~除了一开始想要把后台程序跑在我本地电脑上,用一个奇奇怪怪的Docker Compose时遇到了点麻烦。

  不过无所谓,我并不想知道那东西是什么,也不想知道为什么想跑Docker Compose需要改那么多的参数。

  总之,Docker Compose现在愉快的跑在我的电脑上了,除了吃掉我一半内存 导致我的WebStorm有些卡外,没什么不好的。只要能拿到约定好的数据,我就可以让前端界面就正常工作。

  前后端分离万岁~!

  然后Mentor告诉我说接口请求要用RESTful,这是什么?好像以前听说过。查了下资料——不就是用HTTP状态码来返回结果,顺便语义下请求的方法(GET、POST、PATCH、PUT、DELETE...)嘛,前端改下Ajax请求就好了。

  然后Mentor说,我们要用RESTful:

  • 第一次创建数据要POST,以后要用PUT。OK
  • 检测HTTP状态码来确定请求结果。OK
  • 把Token写在HTTP Header里。。。OK

  毕竟是工作嘛,只要项目要求,让我把数据放Header里我也没意见。

  但是Mentor向我解释了这些,告诉我后端的实现逻辑和一些细节,为什么这样更好,为什么会有这些行为。我觉得好麻烦,难道我不是只做好前端工作就好了吗?

  于是我向Mentor表示:

  1. 我不想了解那么多的后端实现,你说这种接口调用方式会很大的影响后端性能,我改成你期望的格式就好
  2. 我不想了解那么多的项目配置,我只要按住流程走下去,最终跑起来一个可以提供数据的服务器就好了
  3. 我只想知道,你期望什么格式的数据,又返回什么格式的数据
  4. 我只是一个前端

  然后Mentor非常生气,说出了“你不是一个前端”这句令我十分震惊的话。

  我不是一个前端?

  为什么我不是一个前端?我明明是一个前端!我就是凭着对前端的一腔热血支撑着我一路走到了这里,我热爱前端,热爱互联网,热爱JS。

  或许在别人眼里前端很Low,P技术含量没有。

  但是作为热爱前端的我知道,前端有多么深邃、多么灵活、多么优雅、有多么多的可能。每一种“外人看来毫无作用的新技术”解决了前端多么痛的问题,每一代“频繁升级的ECMAScript”更新带来了多么棒的特性。

  “你说你自己是一名前端,作为你们Mentor,我就感觉很丢人”。

  我感觉这句话简直否定了我对前端倾注的所有感情,被彻底瞧不起了,我要是一名负责火箭发射的工程师对方绝不会这么说。

  于是我很生气,觉得对方不可理喻。

  我就是一名前端,我还打算将来加入TC39为我心爱的JS添砖加瓦呢。


  完成的导入的Task后,随着时间的推移,我又陆续接到其他的Task。

  在一个新开坑的项目中,我和负责后台开发的 DG同学 在接口设计上发生了一些分歧。我主张在“返回应用的会话列表的接口”中,返回 会话数据 的同时返回 应用信息,而他表示这样不好。双方僵持了一段时间,于是我和DG决定去找隔壁的两位高T(我的Mentor是其中之一)裁决下。

  我阐述了下为什么我希望会话列表接口里面带着应用的信息:

  • 在查看调试会话列表接口时更方便
  • 这样前端少请求了一个接口,展现数据会更快
  • 分开接口的意义不大,应用信息非常少,没必要再加一个接口,直接附带在会话列表接口中就好了
  • 虽然分开后2个接口各司其职,但是前端要分开处理,很麻烦

  听了的我解释和,Mentor和我说:

你发现了吗?你的所有出发点都是为了前端更方便。

确实,你是一名前端,所以你肯定希望前端用的爽。但是,正是因为你只是一名前端,你不了解后台的实现、构架,不知道怎样的设计对于后台是合适的。也不了解这个项目本身,所以也没办法站在一个工程的角度考虑这个问题。

这就是所谓的屁股决定脑袋,因为你只是一名前端,而不是一名工程师。

  我突然愣住了。

  我确实不知道后台的实现,后台用的什么ES完全不知道是什么。我也不知道自己做的这个项目是干什么的,只知道从UI那里拿到了一份设计稿,然后将它还原了出来。

  我突然想到了学校中,老师反复强调过“一辈子的码农”和“工程师”的区别,那时的我听了不以为然。

  而现在,我真真切切的感受到了二者的区别?。?!

  意识到错误的我感觉超级尴尬,比较刚刚还神气十足头头是道来着。。。

  。。。小声承认了下自己的错误,然后赶紧转过头去假装写代码。

  内心OS:啊啊啊??!~??! 好尴尬?。?!不过很感谢,但是好尴尬??!或许应该好好谢下Mentor,但是好尴尬啊啊?。?!

  表情复杂的盯着屏幕上的 function 声明语句好长时间,嗯,橘红色的高亮挺好看。然后去找到了刚刚的DG同学讨论了下后台实现和构架,并对他的方案表示了肯定。。。


  现在,我终于明白了,“你不是一个前端”的含义。


  “教做人”的日?;乖诩绦?,前进的脚步也不会停止。

QQ群:WEB开发者官方群(515171538),验证消息:10000
微信群:加小编微信 849023636 邀请您加入,验证消息:10000
提示:更多精彩内容关注微信公众号:全栈开发者中心(fsder-com)
网友评论(共0条评论) 正在载入评论......
理智评论文明上网,拒绝恶意谩骂 发表评论 / 共0条评论
登录会员中心
大发国际网址 临武县| 蒙阴县| 清水县| 囊谦县| 濮阳县| 大名县| 巨鹿县| 周口市| 宜兴市| 九江市| 正阳县| 南充市| 永嘉县| 增城市| 会同县| 翁牛特旗| 西盟| 绥棱县| 囊谦县| 亳州市| 松潘县| 香河县| 民和| 罗城| 汨罗市| 体育| 临湘市| 朝阳县| 德昌县| 衡东县| 嘉善县| 县级市| 孝昌县| 凤冈县| 惠安县| 康保县| 茶陵县| 吕梁市| 保康县| 英山县| 南投市| 崇州市| 新晃| 霍林郭勒市| 察隅县| 嘉定区| 麻栗坡县| 浑源县| 淮南市| 宣恩县| 瑞安市| 丽江市| 从江县| 平泉县| 桂平市| 陆川县| 南川市| 石渠县| 孟州市| 西充县| 通化县| 额敏县| 本溪市| 扶绥县| 江达县| 渝中区| 灌南县| 浮梁县| 广元市| 隆尧县| 克什克腾旗| 姜堰市| 大冶市| 剑河县| 桂阳县| 玉溪市| 灯塔市| 城市| 舟山市| 龙江县| 馆陶县| 洛宁县| 惠安县| 古蔺县| 调兵山市| 通道| 丰原市| 东平县| 龙川县| 叙永县| 彰化市| 汕尾市| 奉节县| 红原县| 阜新| 石林| 东安县| 蒙山县| 曲水县| 潍坊市| 北辰区| 赣榆县| 奉化市| 合肥市| 彰化市| 巴里| 巴彦县| 泌阳县| 浑源县| 通化市| 昌吉市| 濉溪县| 石台县| 辉县市| 日照市| 横山县| 德化县| 乌审旗| 舒城县| 新乡县| 宁河县| 原平市| 锡林郭勒盟| 东海县| 延寿县| 江津市| 南乐县| 迁西县| 拜泉县| 塘沽区| 墨江| 丽水市| 调兵山市| 银川市| 莲花县| 竹山县| 新平|