什么是小(xiǎo)程序云开发
什么是小(xiǎo)程序云开发。
作為(wèi)开发人员,大家都知道微信小(xiǎo)程序开放了新(xīn)api:小(xiǎo)程序云开发,能(néng)帮助开发者快速完成微信小(xiǎo)程序的服務(wù)端搭建。作為(wèi)一名软件开发者,也在不断尝试了小(xiǎo)程序云开发,并把开发过程中的经验分(fēn)享出来。单单来说小(xiǎo)程序云开发是类似 Serverless 的服務(wù),可(kě)以為(wèi)开发者提供:云函数、云数据库、云存储,封装集成為(wèi)接口以 wx.cloud.xxx来调用(yòng)使用(yòng)。
小(xiǎo)程序云开发和我们所熟悉的 BAE并不完全相同,提供的云函数并非完整环境,严格来说它所提供的云函数其实是 FaaS (Function as a Service),同类的有(yǒu) LeanCloud 的云函数、 Bmob 的云函数等。大家可(kě)以对比他(tā)们的相似点和區(qū)别。
小(xiǎo)程序云开发将接口进行深度的封装,在小(xiǎo)程序、云函数中通过 wx.cloud 和 wx-server-sdk 使用(yòng)。小(xiǎo)程序云开发的所有(yǒu)业務(wù)逻辑都需要在小(xiǎo)程序端完成。
云开发究竟对我们有(yǒu)什么好处?做一个简单说明。云开发提供四种主要的能(néng)力,云函数,数据库,cdn储存、云调用(yòng)。开发者无需自建服務(wù)器和数据库,无需自建储存服務(wù)器,可(kě)以调用(yòng)原生微信api服務(wù),基于云函数使用(yòng)小(xiǎo)程序开放接口的能(néng)力。
常见的小(xiǎo)程序开发需要后台数据库和服務(wù)器支持,小(xiǎo)程序云开发同样需要服務(wù)器的支持,不同的是云开发把后台部署的公祖全部包揽了。以往的小(xiǎo)程序开发需要前端和服務(wù)端两个程序员,云开发则只需要前端即可(kě)完成。从经济效益上来说,节省了人工成本。在开发难度上,云开发和常规开发差不多(duō)。云开发省略了服務(wù)器,所以也不需要运维了。
微信云开发提供免费版的服務(wù)器。测试和开发过程中提供了一个可(kě)供测试的解决方案。同时云开发服務(wù)器的价格比自建服務(wù)器价格要低。节省了服務(wù)器成本,还有(yǒu)https的ssl证书预算。
云开发让前端程序员完成了后端部分(fēn)工作,服務(wù)器的琐碎与验证配置工作交给了微信完成。这是时间和金钱的双向优化。事物(wù)有(yǒu)两面性,云开发也有(yǒu)缺点。主要在于云开发没有(yǒu)足够的自主权和代码完全的操控能(néng)力。更多(duō)的受限于微信服務(wù)器。