原文链接:https://forum.laf.run/d/67

工欲善其事,必先利其器。在编写代码时,IDE 也是我们不可或缺的。它可以让我们更高效地完成代码编写,提高开发效率。因此,IDE 是我们编写代码中最亲密的伙伴之一。

虽然 Laf 云开发有简洁的 Web IDE,只要能打开浏览器就可以随处编辑云函数。

但很多人还是希望能在 IDE 中编写云函数代码。

得益于 laf-cli 的开发和 API 的开放,Laf 也对本地代码编辑器没有任何强制性的要求,也就意味着 Laf 可以直接使用 VS Code 或者任何编辑器去完成云函数的编写和调试,以及发布和更新。

laf-cli 是一个 npm 模块,可以通过命令行去完成 Laf 云开发的云函数管理、云存储管理等等。借助命令行,我编写了一个 VS Code 插件:laf assistant

Laf 直接使用 VS Code 的体验并不那么完美

VS Code 是一款免费、开源、跨平台的代码编辑器,由 Microsoft 开发和维护,插件丰富,功能强大。并且很重要的一个原因是,我自己习惯用 VS Code。也有相当多的开发者也跟我一样习惯使用 VS Code。

laf assistant 出来之前,我尝试用了一段时间的 Laf-cli 模块。每修改一段代码,需要调试的时候,需要输入比较复杂的命令。

比如的云函数名为 :BatchTestDB ,那么我需要在命令行输入:laf func exec BatchTestDB -l 9

切换云函数,需要手动改命令。当如果出现大量的 log,体验是这样的。

另外一个比较麻烦的问题是,在终端里面输出的内容是不能编辑、也不能折叠代码的。对于输出比较大的 JSON 数据时,查看日志也是非常痛苦的一件事。同时经过一段时间的调试,终端的内容也会越来越多,看得眼花缭乱。

到了发布云函数的时候,也是手动修改命令行才可以完成。

而 Laf 云开发的 Web IDE 在云函数的调试、发布和管理上明显会比这种方式更加的方便和简单。为了让优秀的 Web IDE 的优势完美的和本地开发相结合。我动了开发 VS Code 插件的想法。

Laf assistant 的代码编写体验

在云函数的编辑框内,点击右键,即可发布、下载或者运行云函数,结合 VS Code 自带的改键功能,比如我自己把运行云函数改键成了 ⌘+F1,每次修改完云函数,保存云函数后,按快捷键 ⌘+F1 即可运行云函数。

我把日志输出到了一个全新的文本中,可以随意的编辑和折叠,用起来更加方便了。如果需要保存也可以直接保存到一个文件中,当然也可以关闭这个编辑器丢掉这个日志内容。

代码版本管理和协同

Laf 云开发的 Web IDE 没有代码系统和版本管理。Web IDE 并不会保存所有的修改版本,只是存在了浏览器的本地缓存中,也就意味着如果不小心清理了缓存或者切换浏览器,Web IDE 编辑器内的草稿可能就消失了。同时如果开发的项目有多人协同的需求也会相当麻烦。

在我看来,Web IDE 适合简单的云函数的快速开发和上线发布,以及临时的代码修改。如果遇到复杂的代码情况,就很难跟 VS Code 的本地开发体验相提并论来了。

同时 laf assistant 还可以让前端代码和 Laf 云函数代码在一个项目中管理,实现一个项目管理前后端的全部代码。而且 Web IDE 也无法搜索代码,而如果前后端的代码都在一个项目中,就可以很方便的全局搜索前后端中的代码。

结合 Git 的使用,很方便的就可以实现代码的版本管理。

另外如果需要协同开发,laf assistant 也支持针对不同电脑的同一项目去单独配置 Laf API 地址和 Laf 应用 Appid,每个开发人员就可以在自己的 Laf 应用里面去调试开发,代码上线发布的时候,可以发布到正式应用。避免了测试数据的污染。

laf assistant 的后续升级计划

1、AI 加持

目前接口已经基本实现,通过一段文字描述即可写出直接可用或简单修改即可用的云函数代码,并且如果遇到某个 JS 不会写,某个数据库语法不会写,都可以通过一句话去完成

后续在 VS Code 中,仅需要点点鼠标或者快捷键即可通过 AI 去自动完成云函数代码。

2、增加云存储的管理

本地编译的前端代码,可以一键托管到 Laf 的云存储。

3、云函数会增加更多的调试模式

自定义调试的参数。后续还会加上实时日志监听,方便在前端调试时,去查看日志。

4、独立管理面板

点击侧边栏 Laf 的图标,Laf 云开发相关的内容都会集中显示在这里。

5、更多细节优化

所有的开发者也可以给我提优化意见,让 laf-assistant 更加好用,让云开发更加爽快!

Laf Assistant:云开发从未如此爽快!的更多相关文章

  1. 云开发中的战斗机 Laf,让你像写博客一样写代码

    各位云原生搬砖师 and PPT 架构师,你们有没有想过像写文章一样方便地写代码呢? 怎样才能像写文章一样写代码? 理想的需求应该是可以在线编写.调试函数,不用重启服务,随时随地在 Web 上查看函数 ...

  2. 用小程序·云开发两天搭建mini论坛丨实战

    笔者最近涉猎了小程序相关的知识,于是利用周末时间开发了一款类似于同事的小程序,深度体验了小程序云开发模式提供的云函数.数据库.存储三大能力.关于云开发,可参考文档:小程序·云开发. 个人感觉云开发带来 ...

  3. Web开发者的10个最好的云开发环境

    1. Cloud9 IDE cloud9 Cloud9是我最喜欢的一个最好的云开发环境,它可以让我在任何时间任何地点进行代码编写.运行和调试.Cloud9对Node.js 和 JavaScript代码 ...

  4. Cloudera Manager、CDH零基础入门、线路指导 http://www.aboutyun.com/thread-9219-1-1.html (出处: about云开发)

    Cloudera Manager.CDH零基础入门.线路指导http://www.aboutyun.com/thread-9219-1-1.html(出处: about云开发) 问题导读:1.什么是c ...

  5. Android高效率编码-第三方SDK详解系列(二)——Bmob后端云开发,实现登录注册,更改资料,修改密码,邮箱验证,上传,下载,推送消息,缩略图加载等功能

    Android高效率编码-第三方SDK详解系列(二)--Bmob后端云开发,实现登录注册,更改资料,修改密码,邮箱验证,上传,下载,推送消息,缩略图加载等功能 我的本意是第二篇写Mob的shareSD ...

  6. 聚焦“云开发圆桌论坛”,大前端Serverless大佬们释放了这些讯号!

    4月14日,由云加社区举办的TVP&腾讯云技术交流日云开发专场,暨"腾讯云-云开发圆桌论坛"在北京.深圳两地同步举行. 当天下午,一场主题为"基于大前端和node ...

  7. 【微信小程序云开发】从陌生到熟悉

    前言 微信小程序在9月10号正式上线了云开发的功能,弱化后端和运维概念,以前开发一个小程序需要申请一个小程序,准备一个https的域名,开发需要一个前端一个服务端,有了云开发只有申请一个小程序,一个前 ...

  8. 小程序云开发--云函数上传文件或图片 base64

    云函数开发遇到的问题 在微信云开发环境当中,普通的用户并没有往云存储内写入文件的权限 所以普通用户想要使用wx.cloud.uploadFile显然是不现实的 但是我们同时也知道,云函数是后台服务端, ...

  9. 微信小程序云开发更换云开发环境

    小程序云开发环境初始化默认是第一个环境,但是我们可以指定环境id //app.js App({ onLaunch: function () { if (!wx.cloud) { console.err ...

  10. 基于wepy和云开发的动漫资讯小程序----233次元

    233次元小程序 # 233次元小程序 项目描述- 基于微信小程序的动漫咨询小程序,采用`wepy`框架开发:- 后台数据采用小程序的云开发存储: 线上体验 部分截图                 ...

随机推荐

  1. tensorflow出现Failed to get convolution algorithm, cuDNN failed to initialize

    网上大多的教程是说tensorflow的版本过高,或者说cuda和cudnn的版本不对,需要降级,但这样会很麻烦!!! 以下值得推荐!!! 解决方法一:在代码前加上下面的代码 from tensorf ...

  2. vue打包记录

    这里的确是css以及js文件的路径问题,但解决时并不需要手动改路径或者加一段判断去修改,最方便的办法时在项目打包前的vue.config.js里面将publicPath属性添加或者修改为 public ...

  3. lc.59 螺旋矩阵 II

    题目描述 给你一个正整数 n ,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix . 示例 输入:n = 3 输出:[[1,2,3],[8,9, ...

  4. python 中倒是什么事可哈希的意思那?

    可哈希对象 python中的hashable(可哈希的)是什么意思 2018年12月29日 23:29:36 shangyj17 阅读数:511   不严谨但易懂的解释: 一个对象在其生命周期内,如果 ...

  5. 记一个jdbc创建数据库、用户操作时,创建新用户提示CREATE USER权限问题

    手写存储表数据库信息,访问链接动态数据源操作: mysql: 1.root登录服务器 进入数据库 mysql -u root -p2.创建数据库 create database shop; shop ...

  6. Java 面试手撕代码

    1. 判断括号有效性 public static boolean fun5(String str) { HashMap<Character, Character> hashMap = ne ...

  7. 漫谈Python魔术方法,见过的没见过的都在这里了

    漫谈Python魔术方法,见过的没见过的都在这里了 就说一下,不深入 假的一览 提到魔术方法,学过python都应该知道一些.至少你得会__init__吧. 在我之前写的博文中有很多都涉及魔术方法.比 ...

  8. BeautifulSoup模块的使用方法

    本篇文章主要讲bs4模块(BeautifulSoup),这个模块能做么呢?用一句话来概括的话:beautifulsoup4 从HTML或XML文件中提取数据的Python库,用它来解析爬取回来的xml ...

  9. Latex符号

    上标 $\hat{x}$ : \(\hat{x}\) $\widehat{x}$ : \(\widehat{x}\) $\tilde{x}$ : \(\tilde{x}\) $\widetilde{x ...

  10. 学习httprunner遇到的问题记录

    今天研究httprunner遇到了几个问题 1.问题1: 最新的版本4.3.0已经舍弃了locusts,har2case这两个东西 导致运行的时候,出现har2case不是内部命令 一开始以为是没有配 ...