返回

大屏踩坑,火花启蒙

前端

踩坑经历

坑一:对大屏一无所知

刚开始做大屏的时候,我对大屏一无所知。什么是大屏?大屏有什么用?大屏怎么开发?这些问题我统统不知道。

为了搞清楚这些问题,我开始上网查资料,看博客,看视频。但是,这些资料大多都是一些理论性的东西,对实际开发帮助不大。

后来,我终于找到了一篇比较实用的文章。这篇文章介绍了如何使用 Apache ECharts 开发大屏。这篇文章写的非常好,我按照文章中的步骤一步一步地操作,终于做出了我的第一个大屏。

坑二:数据不一致

做完第一个大屏后,我信心大增。觉得自己已经掌握了大屏开发的窍门。于是,我开始着手开发第二个大屏。

这次,我选择了一个更复杂的数据源。数据源中的数据量很大,而且数据结构也很复杂。

在开发过程中,我遇到了一个问题。数据不一致。

我用 Python 从数据源中提取数据,然后用 ECharts 将数据可视化。但是,当我在 ECharts 中查看数据时,发现数据与我在 Python 中看到的數據不一致。

这个问题困扰了我很久。我反复检查代码,但还是没有找到问题所在。

最后,我终于发现了问题。原来,问题出在数据清洗上。

我在 Python 中对数据进行了清洗,但是我没有把清洗后的数据保存下来。当我在 ECharts 中查看数据时,ECharts 使用的是未清洗的数据。

这个问题解决后,我的大屏终于能够正常显示数据了。

坑三:性能太差

我的第二个大屏做好了,但是性能太差了。

大屏的数据量很大,而且数据结构也很复杂。在加载数据时,ECharts 需要花费很长时间。

为了解决这个问题,我做了两件事。

第一,我优化了数据清洗代码。我将数据清洗代码从 Python 移植到了 Spark SQL。Spark SQL 是一个分布式计算框架,它可以并行处理数据。使用 Spark SQL 可以大大提高数据清洗的速度。

第二,我优化了 ECharts 代码。我在 ECharts 代码中启用了 lazy load 功能。Lazy load 功能可以让 ECharts 在加载数据时只加载一部分数据。当用户滚动大屏时,ECharts 再加载剩下的数据。

这两件事做完后,我的大屏性能有了很大的提升。

坑四:用户体验差

我的第三个大屏做好了,但是用户体验很差。

大屏的数据量很大,而且数据结构也很复杂。用户在查看大屏时,需要花费很长时间来理解数据。

为了解决这个问题,我做了两件事。

第一,我简化了大屏的数据。我删除了不必要的数据,只保留了重要的数据。

第二,我重新设计了大屏的布局。我将数据分组,并使用不同的颜色来区分不同组的数据。这样,用户就可以更轻松地理解数据。

这两件事做完后,我的大屏用户体验有了很大的提升。

收获

在自服务大屏的开发过程中,我遇到了很多坑。但是,这些坑也让我学到了很多东西。从最初的对大屏一无所知,到最后能够独立完成一个大屏的开发,这其中的经历让我成长了很多。

我把这些坑记录下来,希望能够帮助到其他人,少走一些弯路。

除了这些坑之外,我还有一些收获。

收获一:掌握了大屏开发技术

我已经掌握了大屏开发技术。我知道如何使用 Apache ECharts 开发大屏,我知道如何优化 ECharts 代码,我知道如何简化数据,我知道如何重新设计大屏的布局。

收获二:学会了数据清洗

我学会了数据清洗。我知道如何使用 Spark SQL 清洗数据,我知道如何优化 Spark SQL 代码。

收获三:学会了数据分析

我学会了数据分析。我知道如何从数据中提取有价值的信息,我知道如何将数据可视化。

收获四:提升了我的沟通能力

在自服务大屏的开发过程中,我与产品经理、设计师、开发人员进行了多次沟通。我学会了如何与不同的人沟通,如何说服别人。

收获五:提升了我的抗压能力

在自服务大屏的开发过程中,我遇到了很多困难。但是,我没有放弃。我一次又一次地尝试,最终克服了困难。这让我提升了我的抗压能力。

总结

自服务大屏的开发是一个充满挑战的过程。但是,这也是一个很有趣的过程。在自服务大屏的开发过程中,我学到了很多东西。我掌握了大屏开发技术,学会了数据清洗,学会了数据分析,提升了我的沟通能力,提升了我的抗压能力。

我非常感谢自服务大屏项目给我这个机会,让我能够学习到这么多东西。我相信,这些东西将在我的职业生涯中发挥重要的作用。