浅谈本人的经验。也算是与大家交流吧,本人眼下也是从事前端的工作,时间并不长,说的不好,请见谅。
首先,前端project师必须得掌握HTML、CSS和JavaScript。
仅仅懂当中一个或两个还不行,你必须对这三门语言都非常熟悉。
也不是说必须对这三门语言都非常精通,但你至少要可以运用它们完毕大多数任务,而无需频繁地寻求别人的帮助。
优秀的前端project师应该具备高速学习能力。推动Web发展的技术并非精巧不动的,没错吧?我甚至能够说这些技术差点儿每天都在变化。假设没有高速学习能力。你就跟不上Web发展的步伐。你必须不断提升自己,不断学习新技术、新模式;只依靠今天的知识无法适应未来。Web的明天与今天必将有天差地别。而你的工作就是要搞清楚怎样通过自己的Web应用程序来体现这样的翻天覆地的变化。
计算机科学这个大门类以下的很多分支在人们眼中实际上都不外乎科学。可是,我们所说的前端不是什么科学,而是艺术。艺术家不仅要掌握谋生的技术。还要懂得怎样运用。对同一个问题的解决方式在这样的情况适用。在还有一种情况下可能就不适用。对Web应用程序的前端而言,解决同一问题的方案常常会有非常多。
没有哪个方案是错的,但当中确实有一些是更合适的。优秀的前端project师应该知道在什么情况下使用哪种方案更合适,而在什么情况下应该又一次选择。
优秀的前端project师须要具备良好的沟通能力。由于你的工作与非常多人的工作息息相关。
在不论什么情况下。前端project师至少都要满足下列四类客户的需求。
产品经理——这些是负责策划应用程序的一群人。他们可以想象出如何通过应用程序来满足用户需求,以及如何通过他们设计的模式赚到钱(但愿如此)。
一般来说,这些人追求的是丰富的功能。
UI设计师——这些人负责应用程序的视觉设计和交互模拟。他们关心的是用户对什么敏感、交互的一贯性以及总体的好用性。他们热衷于流畅靓丽但并不easy实现的用户界面。
项目经理——这些人负责实际地执行和维护应用程序。项目管理的主要关注点,无外乎正常执行时间(uptime)——应用程序始终正常可用的时间、性能和截止日期。项目经理追求的目标往往是尽量保持事情的简单化,以及不在升级更新时引入新问题。
终于用户——当然是应用程序的主要消费者。
虽然我们不会常常与终于用户打交道。但他们的反馈意见至关重要。没人想用的应用程序毫无价值。终于用户要求最多的就是对个人实用的功能,以及竞争性产品所具备的功能。
那么。前端project师应该最关注哪些人的意见呢?答案是全部这四类人。优秀的前端project师必须知道怎样平衡这四类人的需求和预期,然后在此基础上拿出最佳解决方式。由于前端project师处于与这四类人沟通的交汇点上,因此其沟通能力的重要性不言而喻。假设一个很酷的新功能由于会影响前端性能,必须删繁就简,你怎么跟产品经理解释?再比方,假设某个设计假设不改回原方案可能会给应用程序造成负面影响,你怎么才干说服UI设计师?作为前端project师。你必须了解每一类人的想法从何而来,必须能拿出全部各方都能接受的解决方式。从某种意义上说。优秀的前端project师就像是一位大使,须要时刻抱着外交官的心态来应对每一天的工作。
我告诫新来的前端project师最多的一句话,就是不要在没有作出评估之前就随便接受某项任务。你必须始终记住。一定先搞清楚别人究竟想让你干什么,不能简单地接受“这个功能有问题”之类的大概其的说法。并且,你还要确切地知道这个功能或设计的真正意图何在。
“加一个button”之类的任务并不总意味着你最后会加一个button。还可能意味着你会找产品经理,问一问这个button有什么用处,然后再找UI设计师一块探讨button是不是最佳的交互手段。要成为优秀的前端project师,这样的沟通至关重要。
无论从哪个方面讲,我都认为前端project师是计算机科学职业领域中最复杂的一个工种。绝大多数传统的编程思想已经不适用了,为了在多种平台中使用,多种技术都借鉴了大量软科学的知识和理念。
成为优秀前端project师所要具备的专业技术。涉及到广阔而复杂的领域。这些领域又会由于你终于必须服务的各方的介入而变得更加复杂。
专业技术可能会引领你进入成为前端project师的大门,但仅仅有运用该技术创造的应用程序以及你跟他人并肩协同的能力,才会真正让你变得优秀。
-------------------------------------------------------
原文地址:https://neveryu.github.io/guestbook/
Github: https://github.com/Neveryu
很多其它学习资源请私信我的新浪微博...