这是篇很枯燥的概念分析性文章,重点在于分析mspa解决的问题,使用mspa应该满足的条件
Micro Single Page Application微型单页应用,一种仅仅包含几个页面的微微型应用系统。正如我们所看到的微信小程序的模式一样,我们在很多的应用场景中仅仅需要2到3个页面,甚至仅仅需要一个页面,我们所要传递的信息很少或者很单一。但是我们却希望我们的页面能快速的展现给用户,很好的体验性,良好的适配性。
然而现实中却没有一种现成的技术,能够很快给我我上述场景的解决方案。正如我仅仅需要用户通过扫码能够很快的看到我们想要输送的信息,并让用户简单的提交基本信息的功能,我们的开发工程师一般会在开发中使用jquery这样的类库或者像angular这样的框架。哇哦,用户通过浏览器打开的东西,远远的超过了我们想让用户看到的数据。如果工程师什么类包和框架都不使用,我靠,程序员会说什么年代了,至少也得用个jquery吧?即使攻城狮真的什么框架都不用,码出的质量也真的很难保证。最终只能是牺牲了客户体验,产品部很好的一次宣传策划,被研发一次次shit。
怎么办呢?我们想在页面中使用很多高级的特性,又不想让用户加载的过多的资源,这其实是一个矛盾。不过当我们仔细分析我们页面的功能时我们会发现我们只用了一小部分jquery的功能,只用了一小部分angular的功能,如果我们能只让用户加载我们用到的功能就好了。这种原始的想法便是mspa的思想。
我们需要有能力拆分框架和熟悉封装的人。我们只用到了jquery的部分功能,好,我们就把这部分功能抽出来用,我们只用到了angular部分功能我们就把这一部分抽来用。Anyway,我们需要从大的框架中抽出小的部分并且封装起来让我们的开发人员用。当然如果是大厂的话,也可以自己从零开始写。
我们需要遵循“Less is more”的设计理念。一个优秀的程序,绝不是花哨特技的,而是简洁而又不失典雅的。让每一个程序元素出现在它该出现的位置上,极简至繁。用人话来说,就是用最小的程序元素实现最大的用户需求。这样你才可能有用到mspa的机会。
不要担心,我们生活中的场景很多都是适合mspa的。一个产品的宣传页,一份创意的邀请函,一份问卷...我们不需要“很重”的框架,那样的话,框架就不会成为我们负担。
我觉得在可预见的未来中,mspa思想的程序一定会成为趋势。不管你信不信,反正我信了。
后面的文章我将从学术的角度,描述如何构建一个mspa的程序,以及遵循的规范。