最前端|Locofy试用报告:设计稿直接转换为代码

news2024/9/28 5:23:51

目录

一、调研目的

二、调研报告设计

三、调研报告

(一)操作步骤

(二)结果初见

(三)初步结论

四、总结

五、补充


一、调研目的

初步调研的目标:

  • locofy 的 实操流程
  • locofy 涉及到的相关工作角色及其职责的变化
  • locofy 能干什么以及不能干什么
  • locofy 到底能带来多少效率提升

提示:
Frontend development accelerated with AI Turndesignsintofrontend codefor web & mobile. Buildfull apps,screens,components&design systems! Ship products 10x faster with your existing design tools, libraries, tech stack & CI/CD workflows
这段文字摘自 locofy 官网, 简单来讲 locofy 是一个设计器插件,它可以将设计文档直接转换成前端的代码, 从而提高交付效率

二、调研报告设计

首先我选一个经典的网页设计稿Easybank landing page

接下来我利用 locofy 将这个设计稿转换成代码

基于转换后的代码, 我会对比其与知名 IT 博主写的fem-easybank 源代码, 分析他们的区别在哪里

最后针对本次调研目标, 我会给出我的初步结论

三、调研报告

首先我强烈建议你先看看这个 locofy 官方视频, 这个视频会让你对 locofy 有一个大致的了解:

【Locofy.ai Recorded Demo】 Locofy.ai Recorded Demo_哔哩哔哩_bilibili

(一)操作步骤

//启动插件

这个步骤是将 locofy 插件安装到你的设计器里面, 这里我选择的是 figma

  • 在设计稿中使用 locofy 插件, 启动插件面板
  • 在 Easybank 案例里面有 3 个 Page, 我选择的是Page Set
  • 在 Easybank 案例里面有 3 个 Frame 我选择的是Desktop

//步骤一:优化设计 Optimise Design

这个步骤是代码转换前的预处理, 将 Figma 稿件中不必要的元数据去掉 例如group

这里 locofy 提供了 3 个子优化步骤, 这里我尽可能选择默认的选项, 减少人工的干预

  • 优化 设计结构Fix Design Structure
  • 自动布局Auto Layout
  • 适应不同屏幕大小handle different screen sizes

//步骤二:打标签 Tag interactive elements / Tag your layers

这个步骤是为了告诉 locofy 哪些元素是可以交互的, 例如buttoninput等等

  • 手动打标签
  • 自动打标签Auto Tag

同样的, 这里我选择自动, 但是实际上你依然需要针对每个标签进行手动确认

//步骤三:编辑样式与布局 Edit Style and Layout

这一步暂时省略

//步骤四:增加动作 Add Actions

这一步暂时省略

//步骤五:生成代码 Sync to Locofy Builder

这个步骤是生成代码并同步到 locofy 的代码编辑器里面

  • 这里用的是NextJS框架
  • 样式架构 是 CSS In Module
  • 识别组件

//步骤六:同步项目 Sync Project

这个步骤是把 locofy 的代码同步到你的项目里面 这里支持Github

  • 同步到 我的仓库locofy-demo在新窗口打开
  • clone 这个仓库到本地

◆安装依赖包

◆启动

◇解决了一个CSSProperties无法变异的问题

propWidth?: CSSProperties["width"]; // 修改前 
propWidth?: React.CSSProperties["width"]; // 修改后

(二)结果初见

令人期待的结果来了

(三)初步结论

1、locofy 的实操流程

  • 整个流程本质上就是在给人工智能打标签做转换
  • 打标签的过程目前还需要人工干预和确认

2、locofy 涉及到的相关工作角色及其职责的变化

  • 设计师的产出物需要更加规范化, 以便于 locofy 自动识别
  • 前端工程师需要熟悉 locofy 的代码生成规则, 才能充分发挥 locofy 的自动化能力

3、locofy 能干什么以及不能干什么

能:

  • 自动识别设计稿中的元素, 并生成对应的代码
  • 自动纠正设计稿中的元素, 使其符合 locofy 的代码生成规则
  • 自动识别源代码中的组件, 避免生产代码的重复

不能:

  • 它是效率工具, 不是代替人工的工具

4、locofy 到底能带来多少效率提升

  • 从默认的实现效果来看如果不给予足够的人工干预, locofy 生成的代码是无法直接投入生产

    ◇ 目前看, 主要问题是响应式, 定位的问题,这些问题都需要人工干预, 但是我相信如果工程师熟悉掌握后, 带来的效率提升是非常可观的

  • 从生成的代码来看, locofy 生成的代码是规范和直观的, 方便工程师理解和维护

    ◇ 代码风格肯定和纯人工编写的代码有差异, 简洁直观死板而有失优雅, 但是方便维护

    ◇ AI 提供了组件识别 这样可以避免重复代码

    ◇ 数据处理代码部分还没有看到官方的方案, 目前来看要人工完成

四、总结

传统开发, 低代码, 人工智能,他们三者都会在未来的应用研发领域各自占据一部分市场。

  • 低代码面向的是非专业开发人员, 他们可以通过低代码平台快速的搭建出一个应用,但是一旦涉及到定制化的需求, 低代码平台就会显得力不从心;
  • 人工智能面向的是专业开发人员, 它是效率工具, 但是效率的高低取决于工程师的熟练程度;
  • 传统开发我认为在未来的一段时间内, 仍然是主流, 但是随着人工智能的发展, 传统开发的效率会被人工智能逐渐超越, 这是必然的趋势

    ◇ 这就好比发生在飞机驾驶舱中的变化, 过去我们看到飞机驾驶舱里面有很多的仪表, 需要飞行员去操作, 但是现在的飞机驾驶舱里面的仪表越来越少, 因为飞行员的工作已经被自动驾驶系统取代了。

五、补充

在本周的调研最后, 我浏览了文档所有章节, 其中UI Libraries & Design System吸引了我的注意, 尤其是Bring your own storybook components这一节

简单来说在 figma 中, 你可以导入你的组件库, 设计师可以直接把组件库里面的组件拖拽到设计稿中, locofy 会自动识别组件库中的组件, 并生成对应的代码

这可以说是杀手锏, 现在我最想探索的就剩下如何处理数据状态了

作者:范轶洁| 资深前端开发工程师

版权声明:本文由神州数码云基地团队整理撰写,若转载请注明出处。

公众号搜索神州数码云基地,了解更多技术干货。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1309951.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

TOUGH系列软件实践技术应用

TOUGH系列软件是由美国劳伦斯伯克利实验室开发的,旨在解决非饱和带中地下水、热运移的通用模拟软件。和传统地下水模拟软件Feflow和Modflow不同,TOUGH系列软件采用模块化设计和有限积分差网格剖分方法,通过配合不同状态方程(EOS模…

el-tree搜索的使用

2023.12.11今天我学习了如何对el-tree进行搜索的功能,效果如下: 代码如下: 重点部分:给el-tree设置ref,通过监听roleName的变化过滤数据。 default-expand-all可以设置默认展开全部子节点。 check可以拿到当前节点的…

程序员必读:Python 中如何完美处理日志记录?

日志记录在软件开发中扮演着至关重要的角色。它不仅可以帮助开发人员跟踪应用程序的状态和行为,还能提供有价值的诊断信息。Python 提供了内置的 logging 模块,为开发者提供了一个强大且灵活的日志记录工具。 日志的重要性 在软件开发中,对…

数字孪生的开发平台

数字孪生在国内得到了越来越多的关注,一些公司和平台提供了数字孪生的开发服务。以下是一些国内数字孪生的开发平台或服务提供商,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 1.华为数字…

低功耗全极霍尔开关国产芯片D02,适用于手机或笔记本电脑等产品中,数字输出 2.4V~5.5V的电池供电

D02 是一款低功耗全极霍尔开关,用于检测施加的磁通量密度,并提供一个数字输出,该输出指示所感测磁通量幅度的当前状态。这些应用的一个例子是翻盖手机中的 ON/OFF 开关。 微功耗设计特别适合电池供电系统,如手机或笔记本电脑&…

短视频自媒体创作者都在用的去水印小程序

如今可以发短视频的平台越来越多,我们经常看到喜欢的视频想下载下来,或者当做手机壁纸,由于直接下载下来视频都会带有平台的水印,让我们用着看起来非常不美观,所以我们就要想办法去掉这个水印,下载没有水印…

HarmonyOS4.0从零开始的开发教程15HTTP数据请求

HarmonyOS(十三)HTTP数据请求 1 概述 日常生活中我们使用应用程序看新闻、发送消息等,都需要连接到互联网,从服务端获取数据。例如,新闻应用可以从新闻服务器中获取最新的热点新闻,从而给用户打造更加丰富…

ubuntu解决问题:E: Unable to locate package manpages-posix-dev

sudo apt-get install manpages-posix-dev 想要在ubuntu里面安装manpages-posix-dev这个包,发现弹出错误 E: Unable to locate package manpages-posix-dev 解决方法如下: 1 查看当前ubuntu的版本 abhishekitsfoss:~$ lsb_release -a No LSB module…

基于ssm神马物流系统论文

摘 要 本神马物流管理系统设计目标是实现神马物流的信息化管理,提高管理效率,使得神马物流管理作规范化、科学化、高效化。 本文重点阐述了神马物流管理系统的开发过程,以实际运用为开发背景,基于SSMVue框架,运用了Ja…

mybatis动态SQL-sql片段

1、建库建表 create database mybatis-example; use mybatis-example; create table emp (empNo varchar(40),empName varchar(100),sal int,deptno varchar(10) ); insert into emp values(e001,张三,8000,d001); insert into emp values(e002,李四,9000,d001); insert into…

用CHAT分析问题的作用

问CHAT:电网数据中心的数据生命周期管理的管理平台是数据资产目录管理平台,简述一下它的作用。 CHAT回复:数据资产目录管理平台 (Data Catalog Management Platform) 是电网数据中心对于数据生命周期管理的重要工具。 1. 提供统一视图&#…

量子计算挑战赛启动!空中客车公司和宝马集团联手发起

(图片来源:网络) 空中客车公司(Airbus)和宝马集团(BMW)共同发起了一项名为“探索量子迁移率”的全球量子计算挑战赛,旨在解决航空和汽车领域仍未克服的紧迫难题。 此次挑战赛汇聚了…

map|二分查找|离线查询|LeetCode:2736最大和查询

本文涉及的基础知识点 二分查找算法合集 题目 给你两个长度为 n 、下标从 0 开始的整数数组 nums1 和 nums2 ,另给你一个下标从 1 开始的二维数组 queries ,其中 queries[i] [xi, yi] 。 对于第 i 个查询,在所有满足 nums1[j] > xi 且…

css3 clip-path剪切图片

大致看了一下,反正以后用到就慢慢调吧 剪切四个角 clip-path: polygon(14px 0, calc(100% - 14px) 0, 100% 14px, 100% calc(100% - 14px), calc(100% - 14px) 100%, 14px 100%, 0 calc(100% - 14px), 0 14px); 三角形 clip-path: polygon(50% 0,0 100%, 100% 100…

工业级以太网交换机的功能介绍

随着互联网技术的迅猛发展,工业以太网在工业通信领域中发挥着重要作用。在整个工业通信行业中,工业以太网交换机作为关键的通信设备,具有非常重要的功能。那么,什么是工业以太网交换机呢,它有哪些功能呢? …

山西电力市场日前价格预测【2023-12-15】

1.日前价格预测 预测说明: 如上图所示,预测明日(2023-12-15)山西电力市场全天平均日前电价为279.14元/MWh。其中,最高日前电价为380.47元/MWh,预计出现在00:45。最低日前电价为181.13元/MWh,预…

Linux----1、初始Linux

# 初识Linux # 一、计算机资源介绍 计算机资源分为2 部分:硬件资源、软件资源 硬件: 一般硬件是指计算机的物理组成,由真实(看得见,摸得着)的设备组成的 软件: 软件一般是指应用程序&#x…

运筹学经典问题(六):设施选址问题

问题描述 设施选址问题(Facility Location Problem, FLP)也成选址-分配问题,是企业面临的一类重要问题:在哪里建造设施?建造多少?以及将哪些客户分配给哪些设施去服务? 以物流业的航空站点选…

被带偏的中国云计算,重归正途

文 | 智能相对论 作者 | 叶远风 阿里云战略聚焦公共云,对整个云计算市场而言都是一场自我审视。 从市场背景、行业发展、中外对比等多个方面,业界舆论给出了大量详实的数据分析,已经对阿里云为什么要聚焦公共云有了结论,这里不…

【学习笔记】V8垃圾回收策略

V8 V8是一款主流的JavaScript执行引擎V8采用即时编译,速度比较快V8内存设限,64位操作系统中上限为1.5G,32位系统中不超过800M V8垃圾回收策略 采用分代回收的思想内存分为新生代\老生代针对不同对象采用不同算法 v8常用的GC算法: 分代回收、空间复制、标记清除、标记整理、…