大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
对于大多数人来说,前端和UI设计两个职业都算是转行互联网行业相对可行性较高的方向。那究竟是选择前端,还是选择UI设计呢?今天就来跟大家简单分析一下,希望从以下内容中你可以更加了解这两个职业,从而根据自己意愿挑选适合自己的发展方向。
创新互联是一家专业提供麦积企业网站建设,专注与网站设计、成都网站设计、HTML5、小程序制作等业务。10年已为麦积众多企业、政府机构等服务。创新互联专业网络公司优惠进行中。
一、UI和前端简介
UI设计:全写User Interface,简称用户界面,是指对软件的人机交互、操作逻辑、界面美观的整体设计。
前端:是创建Web页面或app等前端界面呈现给用户的过程。通过HTML,CSS及JavaScript以及衍生出来的各种技术、框架、解决方案,来实现互联网产品的用户界面交互。通俗一点来讲,前端就是客服,主要跟顾客(用户)交流。
从以上可以看出,其实UI设计和前端的工作相辅相成的,按照项目流程,一般是UI设计师设计好产品界面,前端工程师通过编码实现界面。通俗来说,UI设计师好比服装设计师,而开发工程师好比裁缝,两者都是在一个完整的互联网项目中不可缺失的岗位。
前端主要是需要掌握前端语言、框架等,都是编码的工作。而UI设计是属于视觉设计,需要具备设计基础、设计思维、设计技能,两者不是一个类别。可以说前端比较偏向于软件工程、计算机科学等专业,而UI设计比较偏向于视觉设计、平面设计等。
二、UI和前端的前景
随着互联网行业的发展的同时也在带动行业内岗位的发展,所以UI设计和前端开发都有很不错的前景。那我们来看看UI设计和前端的市场需求曲线图,直观地感受两个岗位的需求变化。
说明:曲线越向上代表市场需求量越大,就业情况越好。反之,代表该类职位需求量较少。该数据由各地招聘网站统计而来,可能因抓取系统稳定性等因素而致使数据偏离客观实情,仅供参考。
从图片可以看出UI设计和前端的需求在前几年是基本持平的,近几年变化浮动较大,近两年前端需求高于UI,最近半年UI的需求高于前端设计。所以两次的需求量量都大,只是时段不同,需求量也在不停变化。
我们通过平均工资去对比一下UI和前端的薪资待遇有何区别。
图片可以得出,前端的平均薪资高于UI设计,其实主要原因有以下几点:
1、学历要求不同
从职友集数据可以看出,对于UI设计本科学历占49%,大专占48%。但是对于前端开发本科学历占71%,而大专学历仅占28%。虽然学历不能代表一切,但是不得不说学历对薪资待遇也有一定的影响。
2、工作经验要求不同
从职友集数据可以看出,对于UI设计有49%的公司要求有1-3年工作经验,而对于前端有41%的公司都要求必须有1-3年的工作经验。对于3年以上的工作经验的要求前端开发远远大于UI设计。工作年限前端的需求一定程度上也说明了工作经验以及技能熟练度,所以工作年限的不同对薪资待遇肯定也不同。
UI的市场招聘条件分析图片来源:职友集 前端的市场招聘条件分析
三、两者需具备的技能
了解了UI设计和前端的简要信息,如果想要转行,那我们还需要要知道转行的条件。也就是需要学习哪些技能才能达到入行的标准。
1、前端
前端开发零基础好入门,上手快可以立马看到学习效果,可以大大提高学习兴趣。但是并不是说前端没有技术含量,我们不仅需要学习前端基础,还需要学习vue.js、react.js、react-native和Flutter等主流框架,并扩展three.js、typescript等等技术,深挖、剖析框架原理。甚至了解后端的知识,在工作中才能减少沟通成本。
2、UI设计
现在的UI不仅要懂交互知识、平面设计,甚至还要会代码、AE制作动效、以及插画、手绘等等,UI设计也因此有了一个新名“全链路UI”。
从上面的分析我们可以得出,前端的工作比UI设计略高,但是企业的对于前端的学历要求、工作经验的要求也比UI设计严格。我们不能一味的因为薪资待遇而去选择方向,而是一个依据自己实际情况以及兴趣去选择。
前端属于技术岗位,技术随着时间的改变也在不断的进步、更新,而UI设计也需要根据市场的流行趋势、设计要求的变化去学习最新的设计知识。
其实不管选择什么方向,都要持续的对这个方向保持热爱,保持持续的学习,才能有顺应市场需求有更好的发展。
在Tree中从上往下高效传递数据的基类widget , 定义为:abstract class InheritedWidget extends ProxyWidget
Flutter的响应式开发与React类似,数据都是自顶向下的。
假设有祖先组点A,中间经过结点B, C,然后到结点D,D需要从A中获取数据f,那按照自顶向下数据流转,f需要依次传递给B及C,最后才到C。这样开发极为不灵活,成本也比较高。所有Flutter需要有跨结点(只能是祖先后代节点,不能跨兄弟节点)高效传递数据的方案。
大体意思如下:
InheritedWidget 是在树中高效向下传递信息的基类部件;
调用[BuildContext.inheritFromWidgetOfExactType]方法可以从 BuildContext 中获取到最近的 InheritedWidget 类型的实例;
在 InheritedWidget 类型的控件被引用,也就是调用过 inheritFromWidgetOfExactType 方法后,当 InheritedWidget 自身状态改变时,会导致引用了 InheritedWidget 类型的子控件重构(rebuild)。
这里随便定义一个人 Person 类。
创建一个类继承 InheritedWidget,并实现 updateShouldNotify 方法。
之前说到调用[BuildContext.inheritFromWidgetOfExactType]方法可以从 BuildContext 中获取到最近的 InheritedWidget 类型的实例,所以此处定义一个静态的 of 方法,通过传入的 context 获取到最近的 InheriedDataWidget 实例。
1.定义数据模型
这里随便定义一个 Person 类。
2.自定义 InheritedWidget 控件类
创建一个类继承 InheritedWidget,并实现 updateShouldNotify 方法。
之前说到调用[BuildContext.inheritFromWidgetOfExactType]方法可以从 BuildContext 中获取到最近的 InheritedWidget 类型的实例,所以此处定义一个静态的 of 方法,通过传入的 context 获取到最近的 InheriedDataWidget 实例。
3.InheriedDataWidget 的使用
InheriedDataWidget 使用起来也很简单,它本身也是一个控件,只要在任意一个页面的子控件调用其构造方法就行,这里我们定义一个形如的 Widget 树。
WidgetA 是一个 StatefulWidget 类型的控件,可以调用 setState 刷新,如果是继承人 Stateless 类型的控件,那我们也可以通过 Stream 或者其他方式刷新数据,感兴趣的请看[什么是 Stream? Dart
WidgetA1_1 类
WidgetA1_2 类
WidgetA1_3 类
当我们点击 floatingActionButton 的时候,WidgetA1, WidgetA1_1, WidgetA1_2 的控件都会更新 Person 的信息,而且每点 floatingActionButton 一次, 当我们点击 floatingActionButton 的时候,WidgetA1, WidgetA1_1, WidgetA1_2 的控件都会更新 Person 的信息,而且每点 floatingActionButton 一次,都会输出:
如果我们试图在和 WidgetA 的同一层级的兄弟节点去访问 InheriedDataWidget 的 Person 数据,是不行的,因为父节点中并没有插入 InheriedDataWidget。
把 WidgetB 和 WidgetA 保持同一节点
这也体现了 Inheried(遗传) 这一单词的特性,遗传只存在于父子。兄弟不存在遗传的关系。
这种数据共享的方式在某些场景还是很有用的,就比如说全局主题,字体大小,字体颜色的变更,只要在 App 根层级共享出这些配置数据,然后在触发数据改变之后,所有引用到这些共享数据的地方都会刷新,这换主题,字体是不是就很轻松,事实上 Theme.of(context).primaryColor 之流就是这么干的。
以上就是有关InheritedWidget的使用。
自己也是从事Android开发5年有余了;整理了一些Android开发技术核心笔记和面经题纲,有关更多Android开发进阶技术资料、面经题纲、核心技术笔记; 想要进阶自己、拿高薪的同学请私信我回复“核心笔记”或“面试”领取!
前些时候北京市政府做了一个关于 996 的调研,第一时间我参与了调研,同时发到所有读者群,让大家一起发声。
不少朋友开始热烈的讨论起来,有人很乐观认为这是改变的开始,也有人觉得这就是走一个形式。 不管怎么说,也算看到政府针对这个问题开始有行动了。
其实 996 最残酷的一点是:年纪大的人很容易被无情淘汰。中国互联网的 35 岁危机是和 996 盛行分不开的。
996 对于打工人来说,绝不可能常态化!
为什么不能常态化? 从生理规律上看,脑力劳动者如果不以进 ICU 为目标,那么每天能够认真投入的时间,八小时也就到极限了。 人毕竟不是机器,是血肉之躯!
但中国老板普遍希望程序们 996,别激动别骂,这是残酷的现实。
同时中国老板们偏爱年轻人,为什么?很简单,老了之后,你舔活速度显然没有年轻人来的卖力,来的凶猛!长年累月的辛苦劳作,已经让你这颗螺丝钉生锈甚至发霉了!如果你是老板,这个时候你还要支付比年轻人多 2 倍的薪资,你怎么选?
更别提,年纪这么大的你,还有各种猝死风险 ,拿最近的 pdd 猝死事件来说,在超级大小周(996+997)的压力下,这么年轻的女孩都猝死了,更何况 40 岁的一线码农?那猝死率该得多高了?企业的商誉还要不要了?
显然,资本家一定会作出最商业最正确的选择:年轻人,甚至是刚毕业的大学生,这些最新鲜的韭菜才是他们的最爱。
所以,对于打工人尤其程序员而言,996 本身反而不是最大问题,最大问题是我们如何跨越大龄危机。
相比等待环境发生改变,不如主动思考清楚这个问题。
想起去年写过的一篇旧文,再次分享给大家,讲的是我身边五个大龄程序员的故事,绝对真实的经历分享,有洋哥的同学、朋友、下属,他们都成功的跨越了 35 岁危机,希望他们的经历对大家有一点点启发:
1.沉迷是一种力量
第一次见 A 君是 10 年前参加人人网的面试,他是面试官,那个时候 A 君 35 岁,担任后端 leader。入职后,我发现,他用于做管理的时间不多,90% 时间在疯狂编码。
A 君基本没有社交,上班就是撸代码,下班就是回家带孩子。他对优秀的工程师容忍度极高,对差一点的完全没耐心。
偶尔能听见他训斥下属的吵闹声:“这个类写成这样,你没看代码规范吗?”、“这个线程池不能这么用,给你说多少次了!”、“是你没听清楚还是我没讲清楚?不能这么干!”。
一次下班,和他一起回家,一路上给我讲各种编程技巧和方法论,我听的津津有味。聊了差不多半小时,心想可以换个话题了,于是我问:“您周末 娱乐 都干些什么呢?”,他是这样回答的:“我会去看些开源代码,自己改着玩很有趣”。那一刻,空气都凝固了,这话我实在没法接下去了。
后来有一天,A 君上班拍桌子,暴怒之后冲了出去。大家一脸懵逼,后来才知道,原来是大 Boss 批评他不懂管理,只知道埋头写代码。
几年前,和他在微信聊了一次。他去了一家创业公司做技术负责人,我很好奇,很想知道这次他是怎么做管理的。
我问他:“您现在是怎么带团队的”,这一问不要紧,聊了半小时。从 Flutter 的优越性到微服务的落地,再到 Google 出了什么新技术,顺带鄙视了一些还在用落后技术的公司。一顿硬核技术科普下来,收获挺大,但是管理这两个字?嗯,不存在的。
我现在理解了,他压根就不关心管理,聚集一帮极客跟他一起成长战斗才是最开心的事情。
A 君今年快 50 了,前不久和其他人聊起他,大家都感叹,这老哥战斗力太强了,真是那种一顶十的程序员。
有时候,沉迷是一种力量,焦虑?不存在的.....
想起 A 君给我说的那句:“我要开心 coding 到 80!”。我真心相信他能做到。
2.不服就是干
这次说说我的好朋友 B 君,今年 40 岁,曾经鹅场的高级工程师,7 年前,晋升失败一怒之下开启了创业之路。
我们是在 CSDN 论坛上认识的,他帮我解决了一个底层操作系统级的防劫持问题。后来经常问他一些排查线上故障的方法论、微服务怎么拆分、如何做出能抗更高并发的架构,他都非常耐心的指导我,他还有句口头禅:不服就是干!
B 君出来创业没拿融资,自己投了 100 万。团队 5 个人,挤在一个很小的民房。创业期间找他喝酒,他告诉我:“我一定要改变世界,否则我会被世界改变”。
一年后,再次去找他喝酒,这次他脸色灰暗,人也非常低迷。原来前期 100 万烧完,又投入了 50 万积蓄,项目还是没有做成。酒过半巡,他突然抱着我哭了起来,我这才得知因为积蓄全部烧完,他女朋友已经和他分手了。
再后来,他回到大厂当程序员,级别薪资跟创业前相差无几。谈起创业经历,我为他惋惜,而他并不后悔。
两年前,他开始炒比特币,炒着炒着嫌这些交易平台做得都不够好,于是空余时间动手做了一个交易平台。
去年,B 君告诉我,他的交易平台融资 500 万,再次出来创业。第二次创业,他已平和很多,没有豪言壮语,让公司活下去是最大目标。
今年听说 B 君的公司已经快 30 人了,为他祝福,相信他一定能改变世界。
有时候,我们需要点不服就是干的精神!
3.反焦虑
这次上场的是 C 君,硕士师兄,40 岁。C 君是一名大厂总监,他花了四年时间跳了三次才来到当下的这家大厂扎根下来,带 100 人团队,每个月安安稳稳拿高薪,不用担心公司倒闭的风险。
以 C 君的专业技能和学历背景、工作经历,其实完全不需要担心没工作。可他总是莫名担忧,害怕自己没有创造更多价值。
100 人的团队不是那么好带,除了技术之外还需要精通业务产品、精通组织流程、掌握良好的沟通推动技巧、在大厂还需要明争暗斗。
一次和 C 君聊天,他感叹到:“还是写代码有安全感,做管理不仅心累还觉得自己没创造价值”,可不是,这种焦虑几年前我也感同深受。
大厂的高 P 看起来风光无比,其实要跳槽也不容易,毕竟中小公司能接得住大厂高 P 薪资期权总包的,并不多。
有时候,不是现在取得了成就就会开心,决定因素是你未来会不会更好,如果答案是否定的,不仅不会开心还有可能带来焦虑。
C 君就陷入这种焦虑当中,总是担心未来的上升空间和 40 岁以后的收入。特别是大厂还有年龄线的要求,到一定年龄不能晋升就有可能被淘汰。
有一段时间,公司领导层波动,他面临被连带的危险,甚至需要依靠抗抑郁的药物。但最终他依靠持续有规律的运动和学习新领域克服过来。
C 君给我提的最多的话: “反焦虑很重要”, 是啊,真的重要,从 C 君身上我真正学到了一点:无论你是否能成功,首先要反焦虑。
4.舍命狂奔
这次要说的是清华 MBA 同学 D 君,39 岁。他在通讯行业干了 10 多年,超级专家那种,带十人团队。
问起他读 MBA 的原因,他很坚定的说:“我对投资非常感兴趣,就是为了转行投资才这么大年纪了还选择读书”。
清华 MBA 课程安排的很紧张,我们都是六日班,也就周六半天周日全天,而他公司的工作非常忙,几乎 996,但从没见过他迟到过一次。
三年时光,D 君在跟时间赛跑,小组讨论、企业访谈、课程作业,他都完成的堪称完美。有一次我问他,你为什么这么拼?他说,当你笃定一件事,确定一个目标,那剩下的只有舍命狂奔。
毕业后,D 君如愿以偿加入一家投行,当上了投资人。有一次很好奇的问他投资人的收入,他告诉我刚入行薪资很低,只有之前做架构师带团队的 1/3。但他说这话的时候,一脸幸福感。
去年 D 君已经晋升为所在机构的合伙人级别,为他感到开心。
5.接受现实
最后上场的是老同事 E 君,41 岁。他是那种职场老黄牛。属于领导让做什么就做什么的人,任劳任怨勤勤恳恳,但个人成长一直比较缓慢。
前几年开始 E 君就不太顺了,因为编码能力一直没有达到高级或者架构师水平。他其实一直在跟年轻人拼体力,而随着年龄增大,是真拼不过了。我和他经常讨论的话题是颈椎病如何康复。
去年 E 君所在公司效益不太好,领导决定裁员,他进入了优化名单。被优化后,他休息整顿了好久,将原来 90kg 的体重减到现在的 75kg,颈椎病也恢复不少。再开始找工作,大概花了几个月时间,他终于找到了一个不那么满意的 Offer。
听到他找到下家的消息,我还挺为他开心的,因为这个过程我也帮他各种投简历,但大佬朋友们一听说 41 岁还是中级水平,都不太愿意给面试机会。
没想到过了半年,我和他吃饭,他对我说:“洋哥,我没有入职这家公司,我想明白了,继续做程序员对我来说没意义。我拿积蓄开了个小店”,刚听到消息,我非常惋惜,编码十多年最后却去做小生意,在我眼里就是逃兵。
直到最近去他小店玩,我才发现,这也是另一种好的生活。他开的是一个小型亲子游乐园,带上小孩,一边陪小孩一边工作,月收入也不差,养家完全没问题。这一瞬间,我产生了一种羡慕的情绪。
有时候,接受现实然后重新出发,未尝不是一个更好的选择。
最后的话
程序员不是一个「银发职业」,但也绝不是如某些贩卖焦虑的自媒体宣传的那样:35 岁危机,40 岁失业。
40 岁的程序员有的做了大厂中高管、有的成了小公司联创、有的成了连续创业者、还有的转行投资金融、也有人继续坚持写代码战斗在一线。
不可否认,有一部分人会被行业淘汰出局,但互联网的老年人在其他行业恐怕还是年轻人,接受现实,人生再起航完全没问题。
最重要的是,我们不能因为年纪的增长而焦虑,因为焦虑本身除了干扰我们成长,没有任何意义。
尽最大努力,做最好打算,但接受最坏的结果。在这个复杂多变的 社会 ,反焦虑、不断提升认知,不断充实自己的专业技能将永远重要。
一 学习前端这门技术有前途吗?
1、行业发展好。
就说我们目前中国所有行业,可以说任何一个行业都离不开互联网,现在的人们对于互联网的依赖很大,互联网行业在中国无疑是现在发展前景最好的没有之一。web前端现在虽然竞争大,刚开始工作并不是那么好找,但是它未来所需要的人才是可观的,只有你拥有这个技术,作为web互联网+时代,用户体验现在成为了企业的第一标准,web前端当然待遇是水涨船高的。
2、人才需求大。
现在的人们离不开手机,我们现在手机的各种应用都是用代码写成的,互联网对人们的影响越来越大,根据新闻报道未来中国20年,需要软件开发,美工设计,web前端开发人才2000W人才,各类职业也需求更多,前端的人才需求比以前也有了质的飞跃。
3、薪资待遇高。
web前端开发工程师的薪资待遇平均工资已经突破一万,因为其他行业确实工资涨幅不大,所以必然会吸引了大批想要月薪过万的人来转行学习。我想引用乔布斯的一句话:WEB就是人类的未来,我们身为前端开发工作者也是未来,相信WEB前端开发的明天会更好。
二 零基础小白应该怎么学习前端才能少走弯路?
关于前端这一块的学习,我不主张自学,因为前端的知识体系是很庞大的,如果你自学,遇到一些问题,你自己很难解决,至少需要有专业的前端人士指导你,站在高手的肩膀上,才能看的更高更远,当然很多小伙伴会说,我也知道学习前端有高手指点挺好啊,可是我怎么知道去哪里找高手,高手又为什么愿意指导我呢?
这个问题问的好,其实现在是互联网时代,网上有很多的相关视频和直播课,我平时就经常去上网听一些前端高手讲课。我可以给大家分享一下我在网上听课的地方,老师挺厉害的,每天晚上在网上免费讲两个小时的直播课,也很适合零基础小白,讲的很透彻通俗易懂,让人感觉,原来前端是这么回事,没有想象的那么难,想听前端直播课的同学,可以进入他的前端教程资料裙:首先位于开头的一组数字是:655,其次处于中间地带的一组数字是:567,最后位于尾部的一组数字是:613,把以上三组数字按照先后顺序组合起来即可。作为想从事前端这个行业的小伙伴,一定要有一个平常心,只要能学到知识,去学就是了,不要磨磨唧唧的的做什么事情,否则什么也做不好。
三 学习前端,你需要具备哪些素质?
(1)如果web的任何一个元素(web界面,灵活的编程风格等)有一点吸引了你,让你着实着迷,恭喜你,有了一个完美的开始。确认一下自己是否喜欢和合适前端,而不是为了一份看起来体面而且薪水不菲的工作。
(2)不断学习,每日的积累,关注前端动态,是你跟上前端潮流的主要途径。前端的体系过于庞大,技术框架争涌而出,如果你经常抱怨累死码农的节奏,那就审视一下自己对前端的态度。
(3)主抓基础,避免盲目。前端领域知识点很多,值得学的东西也很多,聪明的人懂得花时间学习成体系的知识并且研究得足够深入,而不是盲目的看到别人用什么框架就去学什么。只停留在实践运用的阶段,到头来框架们都一个一个被淘汰,你仍在原地踏步。
(4)整理总结,先模仿后创造。将每日的积累做好规整,记录到博客也好,笔记也好。多看看牛人的源代码,等你达到了一定的层次水准,自然会得心应手。
(5)持有一颗造福前端社区的心。写一些有意思的小工具、插件,推广出去, 始终坚信,在从事前端的道路上You are not alone。
(6)要有专业人士的指导,尤其是学习前端找工作的,不要妄想自己一个人自学前端能找到工作,现在非常难,如果没有一个明白人帮你解决一下问题,会有非常多的弯路,中间很容易放弃,学习的不专业不说,最重要是浪费时间。
(7)一个好的心态和一个坚持的心很重要,很多冲着高薪的人想学习前端,但是能学到最后的没有几个,遇到困难就放弃了,这种人到处都是,就是因为有的东西难,所以他的回报才很大,我们评判一个前端开发者是什么水平,就是他解决问题的能力有多强。
四 入门web前端开发需要学习什么?
第一,基础部分的学习。
主要就是html、css、Java。这个其实不用多讲,这些个基础不学扎实了什么也干不了,可以直接从html5、css3、ES5来学习。
第二,与美工相关、后端开发、设计相关的学习。
想做好Web前端开发,一定搞清楚自己的工作界面在什么地方,这对你有很大帮助。每个公司可能都不一样,所以了解边界相关的知识就很重要。
美工相关,主要是说ps、切图之类的东西,photoshop还是需要会用的,至于说你能不能搞出漂亮的图片来那倒不是重点,关键点是体会美工的工作过程。如果你在公司兼了这件事,那你就得深入的学习了,别不以为然,前端的美术有修养还是挺重要的。
后端开发,虽说一般情况下,前端开发和后端开发是分开的,不过二般情况也很多。这个时候就需要你在后端中选择一条主线,很多人都在比较PHP、Python、Node.js哪种好,其实都差不多,不过从市场上的热度来说视乎Node.js更热一些,当然Node.js对js熟悉的前端来说也更容易上手。
相关标准,标准这个东西很多人都很不屑。其实很重要,越大的团队越重要。还是熟悉熟悉养成好的习惯微妙。这在初期至少涉及到很多兼容性问题,所以W3C的标准是必须了解和掌握的。
第三,各种框架类库的学习。
jquery,bootstrap等,现在的框架比较多,但是jquery和bootstrap这样级别的必须得熟练掌握,要不很多公司都没法干活。一般类库和框架都有垂直的网站可以学习,如bootstrap中文网之类的都很不错。
第四,对于工具的学习。
如Git、webpack、Gulp、github、Nginx 等等。工具本身实际上不学也能干活,从学习的角度来说,这个时间的分配上可以少一点儿,但是从工作的角度来说,如果需要的话要尽快上手,逐步熟悉。工具类的东西都不是特别难上手,几天可能就差不多了,但是想玩的透,极大的提高效率这个还是需要投入不少时间的。