网站降权怎么处理互联网营销推广服务商
学习javascript
马克·布朗 ( Mark Brown )对本文进行了同行评审。 感谢所有SitePoint的同行评审员使SitePoint内容达到最佳状态!
学习永无止境-特别是在Web开发中。 我们的行业正在不断更新和完善自己,我们也应该如此! 不幸的是,跟上工作可能会筋疲力尽,但这不是必须的。 在本文中,我将向您展示小型实验如何成为一种有趣且有效的学习新事物的方式,并确保学习和保持最新状态保持乐趣。
保持实验乐趣
你做副业吗? 如果您这样做,我敢肯定您曾经做过一个项目,一开始很有趣,但是很快就变成了混乱的局面。 陷入困境并不是一件有趣的事情,并且确实会破坏双方项目和工作的动力。 造成这种情况的主要原因通常是示波器蠕变或压力过大,而您应在业余时间放松身心。 通过执行一些规则,我们可以确保我们不会遇到不愉快的意外:
- 准备工作。 确保您确切知道实验的规模及其涵盖的范围。 如果太多,请将其拆分为可管理的块,每个块都有开始和结束,或者拔掉插头。
- 安排任务。 不要每天晚上熬夜。 只需安排一两个小时,每周一次或两次。
- 没有截止日期。 包括您在内的每个人都需要放松。 设置目标是可以的,丢失目标也应该如此。
- 给自己一些有趣的时间。 尽管您不应该拖延,但生活不只是待办事项清单上的一堆检查。 花一些时间享受劳动成果。
进行小型实验并不意味着它们不能成为更大项目的一部分。 以数据可视化项目为例。 这可能会花费一些时间,但是很容易分解成较小的任务:
- 设置构建工作流程
- 查找并获取有趣的数据(以下是一些很酷的API,可帮助您获得启发 )
- 利用ES2015功能通过Node.js提取和处理数据
- 比较并选择一种技术(画布,WebGL,DOM / SVG)或库(d3.js,p5.js,THREE.js)以可视化数据
- 使用您选择的工具可视化数据
我使用Trello板来跟踪我的所有实验。 在这里,我列出并计划它们,并添加相关信息,直到开始进行实验为止。 对于较大的项目,我倾向于为该项目专门创建一个新板,并为每个任务添加卡片。 任何替代方案就足够了。 记录下来的东西可以使我耳目一新!
审核实验
除了通过实际学习新知识来学习之外,实验还是提高自我的绝好机会。 回头看看您的实验,并问自己以下问题:
- 通过更好的准备,可以避免执行过程中的问题吗? 如果是,怎么办?
- 所执行工作的质量如何?我该如何改进?
- 我可以更有效地准备实验吗?
回顾和改进我们的工作可以给我们带来经验-这在我们的行业中非常有价值。 交流和记录也是如此。 许多实验评论都是很棒的博客文章。
尽管与JavaScript无关,但我的一个特别有趣的实验是在Sass中创建Vector Graphics ,我在其中将坐标图转换为路径并将其栅格化为单像素的盒子阴影。 我不仅学习了以前不太熟悉的Sass功能,还不得不研究一些算法。
寻找灵感
如果您不确定接下来要学什么,总是可以从中获得一些灵感的资源。
如果您喜欢视觉和艺术, CodePen是一个不错的起点。 拨片通常充满了惊人的笔,值得一看以了解它们的工作原理。 如果您喜欢冒险,请尝试Dribbble或Behance 。
SitePoint由来自不同背景的许多作者提供支持。 因此, JavaScript Channel充满了各种JavaScript优点。
运行环境
您可能已经知道JavaScript可在浏览器中使用,但是您知道也可以在浏览器之外运行JavaScript吗?
- 到目前为止, Node.js是最流行的非浏览器JavaScript运行时。 使用它,您可以编写脚本,命令行界面或桌面应用程序等。 它可以在Windows,OS X和Linux上运行。
- Electron允许您使用良好的旧HTML,CSS和JavaScript构建跨平台的桌面应用程序。
- Cordova允许您使用HTML,CSS和JavaScript构建移动应用程序。
- React Native允许您使用React框架构建移动应用程序。
浏览器API
在过去的几年中,浏览器引入了许多新的API,使您可以做各种有趣的事情。
- Service Worker API是一个大型API,允许我们执行各种操作,例如提供离线支持 。
- WebRTC是一种API,可让我们与另一台计算机建立实时连接并传递音频和视频数据。
一些API允许我们使用设备硬件,做一些事情,例如读出传感器或使设备做事(例如振动)。
- 环境光传感器提供有关环境光的亮度的信息,我们可以使用它来适应我们的站点或应用程序。
- 电池状态相当不言自明。 我们可以请求电池状态。 较重的应用程序可以使用它来启用节能模式 。
- 地理位置授予我们有关用户位置的信息。
- 我们可以利用网络信息将较小的文件提供给客户端。
- 通知对于许多应用程序(例如聊天应用程序)非常有用。
- 您是否正在构建使用鼠标进行输入的游戏? 指针锁是您的朋友。
- 邻近可让您找出用户与设备的距离。 也许这可以用来检测拥抱?
- 设备方向允许我们检测方向何时更改。
- 振动使我们能够振动设备,这对游戏非常有用。
库和框架
大多数库的目的是使事情轻松完成,因此拥有使用它们的经验永远不会受到伤害。 甚至可能需要更流行的库和框架(例如Angular和React)来完成工作。 一两个实验也是准备面试的好方法。
知道库和框架只能持续这么长时间。 尽管它们很有帮助,但您应该能够理解它们所解决的问题,并且能够在没有它们的情况下解决这些问题。
建筑
- Angular是仍被许多团队使用的MVC框架。
- React是用于渲染视图的库。
- Polymer是用于创建Web组件的库。
- Lodash.js , Underscore.js和Ramda.js都是函数式编程库。 有些团队喜欢使用它们,但很多都不喜欢。 无论哪种方式,对函数式编程的深入理解都是一种很受赞赏的技能,因此其中的任何一个都值得一试。
视觉效果
- D3.js是一个图形和DOM操作库,如果您要使用SVG或HTML渲染图形,则可以很好地工作。
- p5.js是一个受Processing启发的库(一种灵活的软件速写本和一种用于学习如何在视觉艺术环境中进行编码的语言)。 它具有丰富的功能,可以绘制形状和进行计算。
- Three.js是一种高级3D API,用于抽象化WebGL的困难之处。
物理世界
就个人而言,当我能够编写软件以在现实世界中做某事时,我会感到非常兴奋。 如果您也这样做,请考虑购买以下任何产品:
- Raspberry Pi是信用卡大小的单板计算机,非常适合教学。
- Arduino与Raspberry Pi类似,但更侧重于电子方面。
- LEGO®MINDSTORMS®是可以控制LEGO硬件的微型计算机。 不去爱的种种?
- Johhny-Five是一个用于机器人技术和物联网JavaScript框架,可以安装在Arduino或类似设备上。
以上所有内容都可以使用JavaScript进行编程,或者可以运行JavaScript。
结论

免费学习PHP!
全面介绍PHP和MySQL,从而实现服务器端编程的飞跃。
原价$ 11.95 您的完全免费
小型实验是学习新事物的绝佳动手方法。 另一个好处是它们可以帮助您改善工作方式,这在我们的行业中最有价值。 通过执行一些规则,我们可以使实验保持乐趣,激发自己学习更多知识并变得更好。
对于那些陷入困境的人们,我希望本文能为您提供一些动力,以启动一个新的有趣的实验。 对于那些不确定下一步该如何解决的人,希望本文为您提供了一些启发。 也许您对实验有一些好主意? 还是我错过了一些东西? 无论哪种方式,我都非常希望在下面的评论中收到您的来信。
翻译自: https://www.sitepoint.com/improve-javascript-learning-experiments/
学习javascript