目录

  • 1 搭建开发工具
  • 2 创建项目
  • 3 功能开发
  • 4 后端实现
  • 5 大龄人员想入门编程,年龄是个问题么
  • 总结

上周在交流群里和一位低码厂商的技术负责人交流,他认为低代码作为开发工具类的产品,需要有从0到1体系化的教程才可以,而且还得有教师进行辅助。否则,学习低代码是有难度的,入门很难。

对于技术负责人的见解,我也深有体会。因为大家习惯了用代码编程,一下子过度到可视化编程,有一个思路上的转变。我们使用代码编程的时候,前端是写标签,后端是写if/else、for循环来执行逻辑处理。

那低代码如何体系化的学习呢?这里我们按照代码方式学习做个对照。

1 搭建开发工具

一般如果我们使用微信开发者工具,开发小程序需要安装工具。低码工具不需要安装,是在线进行编程。但和开发者工具一样,低码也是需要绑定小程序的。我们在开发者工具里一般是需要配置自己小程序的appid,如果使用了云开发的,还需要开通云开发。

我们使用低码开发需要在小程序认证那块,绑定自己的小程序。

我这里一个绑定成功了,一个绑定失败了。失败的原因是小程序和我们的低码账号不是同主体,意思是必须以你自己的微信号申请,不能绑定别人的小程序。

2 创建项目

我们使用微信开发者工具,打开工具的时候就要求创建项目,所谓的创建项目是在你本地新建一个文件夹,然后按照小程序项目的要求生成对应的目录结构。比如有js、json、wxml、wxss等。

低码中我们讲的创建项目是指创建应用,一个应用就相当于一个项目。不同于小程序,低码的外延更广,可以创建PC端的项目,也可以创建移动端的项目。移动端的项目不仅可以创建小程序,也可以创建H5。

而且比小程序方便的是,低码是可以根据模板创建项目的。所谓的模板是指事先已经开发好的项目,就像我们从github上clone一样。当你clone完毕后整个工程的源代码就都下载到了本地。低码中依据模板新建是将做好的项目安装到你自己的空间里。这样你就有了一套成熟的模板,可以在此基础上进行修改。这样做无疑大大的提高了开发效率。


3 功能开发

微信小程序独创了一套语法,分别是wxjs、wxml、wxss。如果我们希望开发难免增加了不少难度,因为又得单独学习一套语法。低码的话组件是使用的react,低码编辑器里是用的javascript。后台方法是用的云函数,学习nodejs即可。总体你只要学会了Js开发低码应用是没啥问题的。

低码中也有页面的概念,但是是可视化创建的。

页面开发的时候完全是可视化的拖拽,并不需要学习啥语法知识

如果需要给组件设置事件的,可以使用平台方法,也可以使用自定义方法

自定义方法是按照Js语法进行编程

export default {async onAppLaunch(launchOpts) {//console.log('---------> LifeCycle onAppLaunch', launchOpts)const { OPENID, FROM_OPENID } = await app.utils.getWXContext()let userId = FROM_OPENID || OPENIDif (!userId) {const { wedaId } = await app.cloud.getUserInfo()userId = wedaId}app.dataset.state.openid = userIdconsole.log(app.dataset.state.openid)const result = await app.cloud.callModel({name: 'user_h4la7ee',methodName: 'wedaGetRecords',params: {"where": [{"key": "openid","rel": "eq","val": app.dataset.state.openid}]}, // 方法入参});console.log(result.total)if(result.total ===1){app.dataset.state.islogin = trueapp.dataset.state.imageUrl = result.records[0].imageUrlapp.dataset.state.nickName = result.records[0].nickName}console.log(app.dataset.state.islogin,app.dataset.state.imageUrl,app.dataset.state.nickName)const adminresult = await app.cloud.callModel({name: 'admin_qohkmr5',methodName: 'wedaGetRecords',params: {"where": [{"key": "openid","rel": "eq","val": app.dataset.state.openid}]}, // 方法入参});console.log(app.dataset.state.openid)console.log(adminresult)if(adminresult.total===1){app.dataset.state.isadmin = true}console.log("isadmin",app.dataset.state.isadmin)},onAppShow(appShowOpts) {//console.log('---------> LifeCycle onAppShow', appShowOpts)},onAppHide() {//console.log('---------> LifeCycle onAppHide')},onAppError(options) {//console.log('---------> LifeCycle onAppError', options)},onAppPageNotFound(options) {//console.log('---------> LifeCycle onAppPageNotFound', options)},onAppUnhandledRejection(options) {//console.log('---------> LifeCycle onAppUnhandledRejection', options)}
}

4 后端实现

小程序一般只能解决前端交互的功能,后端你必须自己开发功能,安装到服务器上还需要暴露接口。但是一般我们的后台服务都是需要鉴权的,不可能像网站一样公开使用。低代码提供了后端的云函数,直接使用就可以。如果官方提供的不满足要求,还可以自己编写代码

/**
* 使用 npm 包 request 发送http请求, 详细使用文档可以参考
*  https://github.com/request/request#readme
*/
const cloud = require('wx-server-sdk')
cloud.init({env: cloud.DYNAMIC_CURRENT_ENV,
})module.exports =async function (params, context) {// params 即为入参定义的结构, 可以在 request 的请求配置中使用 paramstry {console.log("cloud",params.templateid)const result = await cloud.openapi.subscribeMessage.send({"touser": params.openid,"page": 'my',"lang": 'zh_CN',"data": {"thing2": {"value": params.thing2},"date3": {"value": params.date3}},"templateId": params.templateId,"miniprogramState": 'trial'})console.log("result",result)return result} catch (err) {return err}
};

5 大龄人员想入门编程,年龄是个问题么

有些人可能随着年龄的增长,一个是希望学个技能,另外也是看到IT行业薪水比较高,希望学习编程。问年龄是学习编程的限制条件么?如果只是兴趣,我还是建议你学习低码,因为工具解决了编程的门槛问题,也可以快速开发出应用来。如果是希望就业,其实低码也是一个不错的入门方向,毕竟老板们只是提出需求,你提供给他一套可用的软件即可。至于你是用拖拽开发,还是手写代码,老板是不太关心的。将来自己在某个行业积淀够了,养活自己不是太大的问题。

总结

我们今天用了一定的篇幅概要的介绍了一下使用低码是如何从0到1构建应用的。当然就像我开篇讲的,如果想要熟练开发出应用,找一套体系化的教程,外加老师的辅助还是有必要的。那些想跨行业进入软件开发领域的,不防尝试一下低码的解决方案,希望能给你带来不一样的体验。

利用低代码从0到1开发一款小程序相关推荐

  1. 微信小程序从0到上线,程序员一个月开发一款小程序实录

    前言:本人从事游戏开发多年,是一名饱受折磨的游戏前端开发人员.游戏这个行业越来越难做,加班越来越严重.正值行业转变之际,听闻微信小程序热火之时,我想偿试一下小程序制作,因此,一个月之后有了这篇文章:微 ...

  2. 抢饭碗?这位 05 后开发三款小程序!

    整理 | 伍杏玲 出品 | CSDN(ID:CSDNnews) 2017 年 1 月 9 日,微信小程序横空出世.而后,支付宝小程序.百度小程序.12大厂商联盟的快应用等纷纷入局,在短短两年的时间里, ...

  3. 如果定制开发一款小程序

    定制开发一个微信小程序需要投入多少钱呢?定制开发一款小程序需要投入的人员包括项目经理.产品经理.UI设计师.前端开发工程师.后端开发工程师.测试人员等,一般需要1-2个月左右的开发周期.然而一般情况下 ...

  4. 【中国版Appsmith】小程序低代码 PagePlug 正式开源,一分钟制作小程序上线!

    XDM!支持快速开发小程序.Web应用的前端低代码产品 PagePlug 正式开源了!!! Github链接 Gitee链接 欢迎各位star.fork.pr三连!!! PagePlug 真的能一分钟 ...

  5. 只需5步,从0开始搭建你的第一款小程序

    从微信的诞生,到微信公众号.微信支付,再到小程序,腾讯生态在一次又一次影响用户行为习惯的同时,也为开发者提供了新的思路和技能发展方向.无可置疑,微信小程序开发浪潮已经来临,也将在 2018年成为各行业 ...

  6. 简单5步,从0开始搭建你的第一款小程序

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 从微信的诞生,到微信公众号.微信支付,再到小程序,腾讯生态在一次又一次影响用户行为习惯的同时,也为开发者提供了新的思路和技能发展方向.无可置 ...

  7. 「编程面试题库」,大佬开发的一款小程序~

    这是一款好朋友zone7公众号号主开发的小程序--「编程面试题库」.涉及不同语言,不同方向,总有一个适合你!值得体验!(以下为作者的原文) 介绍一下这款小程序 咱们这款小程序记录了当前主流语言的一些常 ...

  8. 【程序源代码】小程序最佳开发实践-租房小程序

    " 关键字:小程序开发 云开发 最佳实践"  正文:小程序  基于微信小程序云开发的一款租房小程序.主要用于租房信息发布.该项目的特点主要是基于小程序的云开发技术进行实现的,使用到 ...

  9. 基于云开发的微信小程序实战教程(一)

    基于云开发的微信小程序实战教程(一) 最近刚开发了款小程序,在开发过程中发现,基于云开发的教程资源不是很多,而且很不详细.所以边实战边总结了下云开发的简单教程,希望对你有所帮助. 本章主要内容:什么是 ...

  10. 微信小程序开发入门教程-小程序账号注册及开通

    17年小程序开始公测,经过5年的发展,无论从组件.开发工具.api.生态.社区,都已经发展的非常成熟了.如果17年年初你看小程序,觉得无需安装即用即走还是一个理念的话.站在今天看过去,往往是先提出一个 ...

最新文章

  1. Oracle 用数据泵导入导出数据
  2. [Objective-C]OC中字典基本概念和常用方法(NSDictionary和NSMutableDictionary)
  3. python subprocess 模块
  4. SAP为企业不同员工带来了什么?
  5. boost::contract模块实现name list名单的测试程序
  6. CF724E Goods transportation
  7. MyBatis Plus 批量数据插入功能,yyds!
  8. Jeecg-P3 1.0版本发布,JAVA插件开发框架
  9. winform button设计(一)
  10. JDK collections - 使用
  11. Django REST framework 的快速入门教程
  12. OBS Studio录屏软件安装和使用教程
  13. KEIL C51出现 runtime error R6002 floating point support not loaded解决办法
  14. Python大众点评店铺刷好评
  15. html 多选框取值,多选框取值
  16. 在线问卷调查系统分析与实现
  17. Web前端培训分享:Web前端三大主流框架对比
  18. Android webview调用本地文件选择失败解决
  19. iOS load和initialize方法详解
  20. 送学计算机男生什么礼物好,【十大男生喜欢的礼物】男生渴望收到什么礼物_主妇网...

热门文章

  1. 电商数据应用体系建设总结(二)—— 数据应用层架构介绍和规范总结
  2. MYSQL 用户及权限管理
  3. 如何快速分享CAD图纸?CAD图纸怎么加密?
  4. 【编译原理】词法分析(C/C++源代码+实验报告)
  5. MySQL—内连接和外连接区别
  6. iPad PPT演示录屏踩坑及后续ffmpeg处理
  7. 联想计算机wifi卸载,怎么卸载联想笔记本电源管理软件
  8. 项目管理 : 智能家居项目实施计划
  9. manjaro linux vmware,Manjaro Linux处理vmware的vmmon、vmnet8、Network configuration is missing一堆问题的记录...
  10. u-boot-2012.04.01 移植笔记