值得前端开发者在2017学习的东西



由于前端技术更新步伐太快,我们花了大量时间尝试各种新技术然后在网上撕逼。不是说这样不对,只是我觉得咱们应该慢下步伐,然后看看那些一直保持稳定的经典内容:它们可能会大幅提升我们的工作效率,也能让我们更好的理解不断涌现的各种新的工具。

这篇文章是我的经验与对新年期望的一篇杂糅。我乐于分享自己的想法也热切希望大家能提出各种意见。

学习如何写可读的代码

读者中可能有些人和我一样,大部分时间用在修改已有代码而不是写新的代码上。这意味着比起写代码你需要花费更多时间在读并理解已有代码上,然后你需要优化你代码,不是面向解释器优化,而是为了下位需要维护该代码的程序员。

我推荐下面这几本书——按书的厚度排序(译注:有中译版的替换成中文的了):

深入学习 JavaScript

每周都能看见一些比上周更好的框架,我们很容易就将大部分时间耗费在学习这些框剪而不是语言本身上。如果你在使用某个框剪却对其工作原理一知半解甚至全然不知,是时候停下来学习语言本身,然后去深挖一下日常使用的那些工具的原理。

学习函数式编程

曾几何时我们一直期待 JavaScript 中有类,突然之间大家又把注意力移开——我们只想要函数!我们甚至用函数写 HTML 了(JSX)。

学习设计相关知识

作为前端开发者,我们比团队中任何人甚至设计师都更贴近用户。如果需要设计师一点点检查你实现出的产品,这肯定是你的锅。

学习如何与人协作

我们中一些人从事编程是因为倾向于与计算机而不是人打交道——很不幸,这个行业并不全然这样。

我们很少自做自事:我们需要与其他开发者、设计师、项目经理甚至用户交流。这很难但是必要的,因为我们需要搞清楚自己在做什么以及为何需要做它,它是我们做的事情价值的基石。


学习写作

我们与同事及其他人的很大一部分交流是书面的:任务描述,代码注释,Git提交信息,即时通讯、邮件、博客等等。

想一下人们要花多少时间阅读和理解这些信息。如果你能精炼清晰的表达,会给他人节省多少时间。

学习计算机经典理论

前端开发已经不仅是做带动画的下拉菜单这种事的时代了。它变得越来越复杂,一方面是由于臭名昭著的 “JavaScript fatigue” 增加了我们处理复杂任务的难度。

JavaScript Fatigue

Saul:“最近过得咋样”

我:“精疲力尽”

Saul:“家庭?”

我:“不是,JavaScript”

然而,这意味着我们得学习非前端开发者的前辈们几十年积累下来的经验和智慧。下面是我强烈推荐的两本书:

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的移动操作系统,主要应用于移动设备,如智能手机和平板电脑。该系统最初由安迪·鲁宾开发,后被Google公司收购并注资,随后与多家硬件制造商、软件开发商及电信营运商共同研发改良。 Android操作系统的特点包括: 开放源代码:Android系统采用开放源代码模式,允许开发者自由访问、修改和定制操作系统,这促进了技术的创新和发展,使得Android系统具有高度的灵活性和可定制性。 多任务处理:Android允许用户同时运行多个应用程序,并且可以轻松地在不同应用程序之间切换,提高了效率和便利性。 丰富的应用生态系统:Android系统拥有庞大的应用程序生态系统,用户可以从Google Play商店或其他第三方应用市场下载和安装各种各样的应用程序,满足各种需求。 可定制性:Android操作系统可以根据用户的个人喜好进行定制,用户可以更改主题、小部件和图标等,以使其界面更符合个人风格和偏好。 多种设备支持:Android操作系统可以运行在多种不同类型的设备上,包括手机、平板电脑、智能电视、汽车导航系统等。 此外,Android系统还有一些常见的问题,如应用崩溃、电池耗电过快、Wi-Fi连接问题、存储空间不足、更新问题等。针对这些问题,用户可以尝试一些基本的解决方法,如清除应用缓存和数据、降低屏幕亮度、关闭没有使用的连接和传感器、限制后台运行的应用、删除不需要的文件和应用等。 随着Android系统的不断发展,其功能和性能也在不断提升。例如,最新的Android版本引入了更多的安全性和隐私保护功能,以及更流畅的用户界面和更强大的性能。此外,Android系统也在不断探索新的应用场景,如智能家居、虚拟现实、人工智能等领域。 总之,Android系统是一种功能强大、灵活可定制、拥有丰富应用生态系统的移动操作系统,在全球范围内拥有广泛的用户基础。
Web3.0 是指下一代互联网的发展阶段,它主要以分布式应用程序(DApp)和区块链技术为基础。与 Web2.0 相比,Web3.0 的一个重要特点是去中心化,数据不再集中存储在中心服务器上,而是存储在分布式的区块链网络中,从而实现数据的安全性和不可篡改性。 对于前端开发者而言,Web3.0 带来的影响主要体现在以下方面: 1. 区块链技术的学习前端开发者需要了解区块链技术的基础知识,包括去中心化、智能合约、区块链网络、加密算法等。同时,需要学会使用一些区块链相关的工具和库,如以太坊、IPFS、Web3.js 等。 2. 加强安全意识:由于 Web3.0 应用程序的数据存储和处理方式不同于传统的 Web 应用程序,因此前端开发者需要更加关注安全性问题。比如,需要保护用户的私钥、避免 XSS 攻击、防范恶意代码注入等。 3. DApp 的开发:Web3.0 的应用程序主要是 DApp,前端开发者需要了解 DApp 的开发流程和技术栈,包括智能合约编写、区块链交互、Web3.js API 等。 4. 新的数据结构和算法:Web3.0 应用程序的数据存储方式和处理方式不同于传统 Web 应用程序,因此前端开发者需要学习一些新的数据结构和算法,如 Merkle 树、哈希函数、拜占庭容错算法等。 总之,Web3.0 对于前端开发者来说是一次很好的学习机会,前端开发者需要学习新的技术和工具,加强安全意识,了解区块链技术和 DApp 的开发流程,以适应 Web3.0 的发展趋势。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值