您好!欢迎来到爱源码

爱源码

热门搜索: 抖音快手短视频下载   

要成为一名年薪20k的前台工程师,需要做些什么? {企业网站源码}

  • 时间:2022-08-20 00:52 编辑: 来源: 阅读:275
  • 扫一扫,手机访问
摘要:要成为一名年薪20k的前台工程师,需要做些什么? {企业网站源码}
我在web领域工作的时间越长,就越意识到区分人才和顶尖人才的不是他们的知识——而是他们的思维方式。 显然,知识在很多情况下是非常重要和关键的——但在一个快速发展的领域,你前进和获取知识的方式(至少在很长一段时间内)将比你已经掌握的知识更重要。 更重要的是,你如何利用这些知识来处理日常问题? 希望能给点不一样的建议。 在这篇文章里,我想谈谈一个前台工程师的心态,希望能帮助你找到卓越之路。 不要只处理问题,想想发生了什么。很多人埋头写CSS和JavaScript,直到程序运行,然后继续做其他的事情。 我通过代码评审发现这种事情经常发生。 我总是问大家“为什么在这里加float: left?”或者“溢出:隐藏在这里有必要吗?”他们经常回复“我不知道,但是我一删,页面就乱了。 “JavaScript也是如此。我总是在条件竞争的地方看到setTimeout,或者有些人无意中阻止了事件的传播,却不知道会影响页面中其他事件的解决。 我发现很多时候,当你遇到问题的时候,你只是在处理当前的问题。 但是如果你从来没有花时间去了解问题的根源,你将会一次又一次地面对同样的问题。 花点时间找出原因。看似费时费力,但我保证以后会为你节省时间。 在充分了解了整个系统之后,就不用一直猜测和论证了。 学会预见未来浏览器发展趋势。前端和后端开发的一个主要区别是,后端代码通常运行在完全由您控制的环境中。 前台相对不受你控制。 不同客户的平台或设施是前台永恒的话题,你的代码需要优雅地控制所有这些东西。 记得在2011年之前看过一个主流的JavaScript框架,看到下面的代码(简体):var isIE6 =!isIE7 & amp& amp!isIE8 & amp& amp!isIE9在此示例中,变量IE6用于确定IE浏览器版本是否可以是版本6或更低。 然后IE10发布的时候,我们的程序判断还是会有问题。 我明白,功能检测在现实世界中并不能100%发挥作用,有时你不得不依赖于有bug的功能,或者根据浏览器功能检测到的错误设计白名单。 但是你为此所做的一切都是至关重要的,因为你预见了没有bug的未来。 对于我们中的许多人来说,我们今天编写的代码将比我们的工作周期更长。 我写的一些代码已经在产品线上运行了8年多。 这是非常令人满意和不安的。 阅读标准文档的浏览器存在bug是必然的,但当同样的代码在两个浏览器中呈现不同时,人们总会不假思索地猜测“广受好评”的浏览器是对的,“卑微”的浏览器是错的。 但事实并非如此。当你的假设出了问题,你选择的所有变通方法在未来都会遇到问题。 最近的一个例子是flex元素的默认最小尺寸。 根据规范,由flex元素初始化的min-width和min-height的值是auto(不是0),这意味着默认情况下它们应该收缩到自己内容的最小大小。 但在过去的八个月里,只有火狐的实现是准确的。 如果你遇到这个浏览器兼容性问题,发现Chrome、IE、Opera和Safari的效果一样但Firefox和它们不一样,你很可能会认为Firefox搞错了。 其实这种情况我见多了。 我在我的Flexbugs项目中报告的很多问题都是这样的。 而这些解决方案的问题会在两周后Chrome 44修好后显露出来。 与标准的治疗方案相比,这些方案都伤害了正确规范的行为。 当同一个代码在两个或两个以上的浏览器中呈现结果不同时,你要花一些时间来确定哪个效果是正确的,并按照这个标准来编写代码。 你的治疗计划应该是面向未来的。 另外,所谓“优秀”的前台工程师总是能感受到变化,在某项技术成为主流之前适应它,甚至为这样的技术做出贡献。 如果你锻炼自己去看规范,并且能在浏览器支持它之前想象它是如何工作的,那么你将是谈论和影响其规范发展的那群人。 看别人的代码取乐看别人的代码可能不是你每个周六晚上想到的娱乐,但无疑是你成为一名优秀工程师的最佳途径。 自己处理问题肯定是个好办法,但不应该是你唯一的办法,因为很快会让你稳定在某个层面。 看别人的代码会打开你的思维,看懂别人的代码也是团队合作或者开源贡献的必要能力。 我真的觉得很多公司在招聘新员工的时候犯的最大错误就是只从大纲上评估应聘者编写新代码的能力。 我几乎没见过要求应聘者阅读现有代码,找出问题并修复的面试。 缺少这样的面试过程真的很糟糕,因为作为工程师你花了很多时间去添加或者改变现有的代码,而不是去构建新的东西。 和比你聪明的人一起工作我印象中很多前端开发者(相对于全职)都是自由职业者,没有那么多后端开发者有类似的想法。 可能是因为很多接待员都是自学的,而其他的大多是在学校学的。 无论是自学还是自学,我们都面临一个问题:你没有机会从比你聪明的家伙身上学到任何东西。 没人帮你审核代码,没人碰撞你的灵感。 我强烈建议,至少在你职业发展的早期,你应该在一个团队中工作,尤其是一个普遍比你更聪明、更有经验的团队。 如果你最终会在职业发展的某个阶段选择独立工作,一定要投身于开源社区。 保持对开源项目的积极贡献,这会给你带来和团队工作一样甚至更多的好处。 《造轮子》造轮子在商业上很烂,但从学习的角度来说很好。 您可能希望直接从npm使用那些库和小工具,但是您也可以想象通过独立构建它们您可以学到多少东西。 我知道有些读到这里的人特别不以为然。 不要误会,我不是说你不应该使用第三方代码。 那些经过充分测试的库,积累了多年的测试用例以及已知问题,使用它们绝对是明智的选择。 但是这里我想说的是如何从优秀走向优秀。 我认为这个领域的许多杰出人士都是我每天使用的非常流行的库的作者或维护者。 你可能没有建立自己的JavaScript库,也没有成功的职业发展,但如果你从来不弄脏自己的手,那几乎是不可能淘金的。 这个行业的一个普遍问题是:接下来我该怎么办?如果你没有尝试学习一个新的工具来创建一个新的应用程序,尝试重新创建你最喜欢的JavaScript库或CSS框架。 好消息是,当你遇到困难时,所有现成库的源代码都会帮助你。 写下你所学到的东西有很多原因,但也许最重要的原因是它迫使你更好地了解它。 如果你不能解释它是如何工作的,它会在整个过程中推动你去弄清楚你并不真正了解的东西。 在很多情况下,你并没有意识到你并不了解它们——直到你自己写下它们。 根据我的经验,写作、演讲、做demo是强迫自己完全理解一件事的最好方法。 即使没人看你写的东西,整个过程也会让你收获良多。 最后一个题外话,我平时有整理面试问题的习惯,随时准备跳出自己的舒适区。不知不觉整理了229页,放在这里供大家参考。如有需要,点击此处免费获取问题+解析PDF限长,仅部分内容限长,仅部分内容限长,仅部分内容展示【点击我】免费获取本面试问题+解析PDF。


  • 全部评论(0)
资讯详情页最新发布上方横幅
最新发布的资讯信息
【技术支持|常见问题】1556原创ng8文章搜索页面不齐(2024-05-01 14:43)
【技术支持|常见问题】1502企业站群-多域名跳转-多模板切换(2024-04-09 12:19)
【技术支持|常见问题】1126完美滑屏版视频只能显示10个(2024-03-29 13:37)
【技术支持|常见问题】响应式自适应代码(2024-03-24 14:23)
【技术支持|常见问题】1126完美滑屏版百度未授权使用地图api怎么办(2024-03-15 07:21)
【技术支持|常见问题】如何集成阿里通信短信接口(2024-02-19 21:48)
【技术支持|常见问题】算命网微信支付宝产品名称年份在哪修改?风水姻缘合婚配对_公司起名占卜八字算命算财运查吉凶源码(2024-01-07 12:27)
【域名/主机/服务器|】帝国CMS安装(2023-08-20 11:31)
【技术支持|常见问题】通过HTTPs测试Mozilla DNS {免费源码}(2022-11-04 10:37)
【技术支持|常见问题】别告诉我你没看过邰方这两则有思想的创意广告! (2022-11-04 10:37)

联系我们
Q Q:375457086
Q Q:526665408
电话:0755-84666665
微信:15999668636
联系客服
企业客服1 企业客服2 联系客服
86-755-84666665
手机版
手机版
扫一扫进手机版
返回顶部