首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏花叔的专栏

    在这里,UI工程师在做什么

    前阵子有个学生要投简历,他在“UI工程师”和“前端工程师”这两个岗位中权衡,最后选择了“前端工程师”,我问他为什么,他跟我说:“我的视觉设计能力不大好,所以UI工程师我就不考虑了”。 但我看他的简历,不管从兴趣爱好还是技术能力都比较适合从事UI工程师,于是我跟他说:“国外的UI工程师也许真需要设计能力,但在国内,据我所知,起码在腾讯,UI工程师是不一定需要具备很强的视觉设计能力的,你得考虑考虑国情啊 今天给大家科普一下花叔眼里“UI工程师”是怎样的。 首先明确一下,BAT中,其实仅有腾讯是有“UI工程师”这个岗位,那它是怎么来的呢? 大概在三年前,腾讯并没有UI工程师这个岗位,却有“网页重构设计师”这么一个岗位,其实“网页重构”就是“UI工程师”的前身,那么问题来了,“网页重构”又是什么? 而据我所知,参与该书撰写的20多位大侠就是“UI工程师”(或从“UI工程师”刚转“web前端工程师”的)。 所以,要更具体的了解UI工程师们到底在做什么,也许看完该书就不用看本文了。

    1.6K110发布于 2018-04-18
  • 仓颉声明式UI:从范式革新到工程实践的深度解析

    本文将从技术原理、工程实践和架构思考三个维度,探讨仓颉声明式UI的技术价值。 声明式UI的本质:数据驱动的视图映射 传统命令式UI开发要求开发者精确控制每一步UI更新操作,这种方式在复杂交互场景下容易产生状态不一致问题。 在工程实践中,这种组件化思想支持自底向上的开发流程:先构建原子级UI组件(按钮、输入框),再组合为分子级组件(表单项、卡片),最终聚合为页面级组件。 性能优化的技术考量 声明式UI的性能优化是一个系统工程。仓颉提供了多种优化手段:条件渲染可以避免不必要的组件创建,懒加载机制支持大列表的虚拟滚动,memorization缓存可以防止重复计算。 从工程角度看,声明式范式降低了UI开发的心智负担,但也对开发者的函数式编程思维提出了更高要求。理解闭包、纯函数、不可变数据等概念,是掌握声明式UI的前提。

    36310编辑于 2025-12-21
  • 鸿蒙声明式 UI 开发:从范式革新到工程实践全指南

    ​一、声明式 UI 的核心概念与范式革命1.1 声明式 VS 命令式 UI 的本质差异在软件界面开发领域,存在两种截然不同的编程范式:命令式 UI 如同精密的机械操作手册,开发者需逐行指令控制 UI 元素的创建 则遵循 "描述即实现" 的理念,开发者仅需声明 UI 的最终状态与交互意图,具体实现交由框架处理。 的底层驱动原理声明式 UI 的核心在于 "状态驱动视图" 的响应式模型:开发者通过 @State 等装饰器定义 UI 状态变量(如文本内容、按钮显隐)框架自动建立状态与 UI 元素的绑定关系当状态变更时 ,框架通过高效 Diff 算法计算差异,仅更新变化的 UI 部分 这种机制将开发者从繁琐的 UI 更新操作中解放出来,专注于业务逻辑实现。 (2)硬件加速渲染利用鸿蒙图形引擎的 GPU 加速能力支持图层级合成优化动画帧速率稳定在 60fps四、工程实践案例解析4.1 基础计数器应用@Entry@Componentstruct CounterApp

    73910编辑于 2025-06-14
  • 来自专栏微信终端开发团队的专栏

    企业微信超大型工程-跨全平台UI框架最佳实践

    但是UI还是各平台独自处理,从开发的角度来看,移动端的android、ios,电脑端的mac、pc,同样的界面布局,却需要写两套逻辑代码,因此,ui的跨平台诉求是我们的一大痛点。 企业微信Flutter工程架构 flutter 多模块架构 flutter为我们提供了四种不同的工程模块 Appcalition(独立app)Module(add2app)plugin(包含android /ios dart代码)package(dart) 在四种模式中,由于我们是已有的项目工程,因此使用Flutter Module的形式依赖flutter的工程,另外对于flutter module里面的模块划分 导航栏动画跟原生差距较大  flutter体验上的一些优化 在flutter上我们实现了一套自己的ui控件库,实现了一些仿原生ui和动画:  3. 设计侧:基于flutter ui的一致性,设计侧可以把主要精力放到ios平台,ui走查效率提升40% 3.

    5.7K53发布于 2021-09-23
  • 来自专栏Dissecting Unreal

    UE4UE5 UI的绘制与优化——PPT和工程分享

    我之前的工作是Gameplay程序,主要做项目框架,游戏角色/战斗相关开发以及项目性能优化等工作,自己基本没有亲手做过UI,但是之前做性能优化时研究过UMG底层的原理,也积累了不少心得,所以分享的内容自我感觉也有不少干货吧 为了准备这次演讲也专门做了一个小工程来实现相关的效果。 我确实对色彩的感觉没有美术或TA那么强烈,请原谅我工程中材质的死亡配色,如果TA或美术能够用好我分享的这些经验技巧,相信会让项目的UI品质有非常巨大的提升。 这是UOD的演讲视频: https://www.bilibili.com/video/BV1Wt4y1N7qg 下面是PPT和工程的链接,有需要可以自取: PPT: 虚幻引擎UI的制作与优化.pptx 提取码2A27 工程: quabqi/UITest (github.com) 还有一点需要补充说明,我的工程和PPT只是为了方便讲解原理而实现,而且内容准备的非常仓促或许有不少瑕疵,可能质量离能够在实际项目中去使用的水平还有不小的差距

    1.8K21编辑于 2022-11-22
  • 来自专栏Niuery的技术日记

    UI自动化 --- 微软UI Automation

    它满足了辅助技术产品和自动化测试框架的需求,通过提供对用户界面(UI)信息的编程访问来实现。此外,UI Automation还使控件和应用程序开发人员能够使其产品具有辅助功能。 里边提到了,使用编程访问可以通过代码模仿由传统鼠标和键盘输入展开的任何交互和体验,UIAutomation 通过五个组件实现编程访问: UI Automation tree(UI自动化树) UI Automation elements(UI自动化元素) UI Automation properties(UI自动化属性) Control patterns(控件模式) UI Automation events(UI自动化事件 UI 自动化信息,它包含在 Windows SDK 中。 现在我想搭建一个基于 UI Automation 的桌面应用的UI自动化测试平台,现在只是有一个大体思路: UI Automation 提供桌面应用自动化测试的基本能力。

    3.7K31编辑于 2023-10-22
  • 来自专栏游戏开发之旅

    UI绘制

    blog.csdn.net/CJB_King/article/details/78690250 Unity中的UGUI对外还是很开放的,查看了MaskableGraphic类,发现UI 的绘制都是继承自此类,然后在OnPopulateMesh方法中进行UI的绘制,要做自己的UI需要继承此类,然后重写OnPopulateMesh方法(这个方法有两个重载);这里就重写OnPopulateMesh (VertexHelper vh),运用VertexHelper 对象的AddUIVertexQuad方法绘制UI; 主要看下面的方法: private UIVertex[] GetQuad(Vector2 return vertexs; } 直接上完整代码看案例: using UnityEngine; using System.Collections; using UnityEngine.UI

    2.1K20发布于 2019-12-02
  • 来自专栏藏经阁

    框架、组件库、UI框架、UI

    这不就意味着react、vue、uni-app这样的才是框架,而我们在项目中引入的涉及UI的都是组件库中的部分组件,涉及函数功能的都是js库。 antd、element官网都是介绍自己为组件库,而uview称自己为UI框架,细想一下也是没问题的,因为他们还封装了功能相关的组件,比如表单、选择器、文件上传/下载,从某种意义上说,他们称自己为组件库 、UI库、UI框架都是没问题的。 框架原本就是对js的封装,浏览器最终执行的也是js代码,相当于就是在运行框架,而框架中又可以加入一些组件库(封装了UI),和js库(封装了函数)来减少我们的工作量。

    1.3K20编辑于 2023-03-04
  • Element UI 多级菜单缩进的动态控制:从原理到工程化实践

    缩进)支持用户自定义主题/布局密度在Vue3环境下通过兼容层使用ElementUI(如element3)因此,如何在不侵入ElementUI源码的前提下,实现灵活、可维护、高性能的动态缩进机制,成为前端工程中的一个典型挑战 本文将从底层结构分析→样式覆盖策略→动态响应方案→工程化封装四个维度,系统性地解决该问题,并提供适用于Vue2与Vue3(兼容模式)的完整实现。 menu-indent变量动态计算高(连续值)极低需任意数值缩进JS动态注入样式通过document.createElement('style')注入极高高极端定制(不推荐)本文重点推荐前两种方案,兼顾性能、可读性与工程化 仅需一个响应式变量indent支持任意数值(如18.5、33)无须预定义CSS类性能优于JS动态插入样式注意事项:确保浏览器支持CSS变量(现代浏览器均支持)若菜单层级过深(>4级),需扩展选择器五、工程化建议与最佳实践 七、总结维度本文贡献原理深度揭示ElementUI菜单缩进的CSS实现机制方案完备性提供Vue2/Vue3双兼容方案动态能力支持离散档位&连续数值两种模式工程价值给出可封装、可配置、可维护的最佳实践前瞻建议引导向

    38110编辑于 2025-12-01
  • 来自专栏Java项目实战

    Swagger UI

    pom引入依赖,https://mvnrepository.com/,maven仓库搜索 Springfox ,找到Springfox Swagger2,以及Springfox Swagger UI。 -- https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> users->"123456".equals(users.getPassword())); return list; } http://localhost:8080/swagger-ui.html

    1.8K10发布于 2020-07-07
  • 来自专栏图像处理与模式识别研究所

    UI学习

    3命令“ON”-“REC”-“0,0”-“420,297”-“REC”-“25,5”-“415,292”-“ZOOM”或“Z”-“ALL”或“A”

    1.3K30编辑于 2022-05-29
  • 来自专栏Niuery的技术日记

    UI自动化 --- UI Automation 基础详解

    ,想要借助UI Automation做一个UI自动化测试平台。 UI Automation 基础 上一篇文章中提到 UIAutomation 通过五个组件实现编程访问: UI Automation tree(UI自动化树) UI Automation elements (UI自动化元素) UI Automation properties(UI自动化属性) Control patterns(控件模式) UI Automation events(UI自动化事件) 接下来一一学习 它包括原始视图中的所有UI项,这些项被用户理解为可交互,或对UI中的控件的逻辑结构起作用。 对UI逻辑结构有贡献但本身不可交互的UI项例如有列表视图的标题、工具栏、菜单和状态栏。 这些UI自动化客户端跟踪由UI自动化提供程序触发的事件,当UI中发生某些情况时,它们使用这些信息通知终端用户。

    9.3K20编辑于 2023-10-22
  • 来自专栏Android 进阶

    UI 刷新

    Layout,onDraw,那么此时调用10次requestLayout,会进行10次重绘吗 答案是当然不会,因为如果调用10次requestLayout,那么在下次vsync信号来的时候并不会触发10次ui 主要是因为一方面通知应用进行绘制UI,另一个方面通知SurfaceFlinger对图像进行合成与渲染操作。 分开分发避免同时抢占CPU资源 总结 学习完以上内容,我们对整个UI刷新流程,及刷新涉及的相关知识点,有了一定的了解,以上内容只是大致给出了结论,我们再通过阅读相关源码,将会对整个UI刷新有了更深的认识

    2.7K30发布于 2020-04-25
  • 来自专栏Cellinlab's Blog

    Refactoring UI

    3.3K30编辑于 2023-09-17
  • 来自专栏AI掘金志

    华人企业医学影像 AI 产品获 FDA 认证,可将 PET 成像速度提高 4-10

    据了解,深透医疗目前可以做到用AI技术加速MRI和PET成像过程4-10倍,并保证诊断级别的精确度。 这项技术解决的另一个痛点是安全性。PET这种分子影像的扫描需要注射放射试剂,对于人体会有较高辐射。 深透医疗的技术可以提高影响质量,从而降低临床PET影像4-10倍放射性试剂计量,对病人、操作人员以及医院都有好处。 深透医疗的创始人兼CEO宫恩浩博士拥有医学与工程双重背景,是一名来自斯坦福的连续创业者。2017年,宫恩浩博士在硅谷创立了渗透医疗。 公司成立至今,深透医疗已经获得了两轮融资。

    74850发布于 2019-08-29
  • 来自专栏全栈程序员必看

    ui ue设计是什么_ui设计师

    UI、UE、UID、UED相信很多人都弄不清楚这些名字是什么意思,到底有什么区别。其实,在它们神似的外表下,潜藏着巨大的差异。 本文,就来详细说说UI设计和UE设计这是两种概念,以及如何将它们区分开来。 一、UI、UE的定义 1、UI:User Interface用户界面 指人和机器互动过程中的界面,以车为例,方向盘、仪表盘等都属于用户界面。 UI如果不想成为产品设计的“原型生成器”,就得像UE一样,多参与到产品设计工作中,为自己争取更多的参与权和发言权。 3、知识差异 UI和UE的知识体系有所关联,会有重叠的部分,但还是存在很大的区别。 其实,UI和UE是两个互有交集的概念。UI是专注于细节的单页面交互设计,而UE则专注于需求、任务和目标三者的有效实现。

    2K50编辑于 2022-08-03
  • A2UI对接后端工程化最佳实践:从协议到落地的完整指南

    看了十篇A2UI介绍文章,九篇在讲"声明式UI好厉害"。嗯,我知道它厉害,但我的Spring Boot项目到底怎么接?JSON往哪发?状态怎么同步?安全怎么搞?——这才是后端工程师真正关心的问题。 这不是一篇"A2UI是什么"的科普文。这是一篇工程化落地指南——从协议消息格式,到Spring Boot / Python的代码实现,到生产环境的安全和性能优化。 目标读者:已经知道A2UI是什么、正在考虑或已经开始对接的后端工程师。 一、先搞清楚:后端在A2UI中的角色 很多人第一次看A2UI协议,容易搞混后端到底负责什么。 三、Spring Boot工程化落地 Java后端接A2UI,目前最成熟的方案是a2ajava框架 + Spring Boot。 3.1 核心依赖和项目结构 <! 这是后端工程化中最容易纠结的选择。

    23310编辑于 2026-07-07
  • 来自专栏林德熙的博客

    win10 uwp 非ui线程访问 ui

    大家都知道,不可以在 其他线程访问 UI 线程,访问 UI 线程包括给 依赖属性设置值、读取依赖属性、调用方法(如果方法里面修改了依赖属性)等。 一旦访问UI线程,那么就会报错,为了解决这个问题,需要使用本文的方法,让后台线程访问 UI 线程。 本文提供三个方法可以让其他线程访问 UI 线程 第一个方法是比较不推荐使用的,可能出现 win10 uwp Window.Current.Dispatcher中Current为null ,一般都是使用比较低的优先 为何不设置为 High ,参见 CoreDispatcherPriority 那么比较推荐的一个方法是在一个用户控件或者Page之类的,如果在里面使用了异步线程需要访问 ui 的属性,那么可以使用下面代码 await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => {

    1.4K10发布于 2018-09-18
  • 来自专栏TopFE

    kiali-ui的自定义UI开发

    kiali-ui仓库地址 正常开发这个项目需要某系统,至于那个系统我也不知道,因为windows,ubuntu系统我都试了,都不好使,只有苹果电脑还没测试过,可能他们的开发人员都是用苹果,也是,搞云原生的都是有钱人 具体步骤 git clone https://github.com/kiali/kiali-ui.git cd kiali-ui yarn yarn start # open http://localhost

    85710编辑于 2022-01-24
  • 来自专栏HUMAN3.0

    我用 AI Codex 复刻视觉稿翻车后,imgGen + Loop 循环工程精准复刻了 UI

    Loop Engineering 从入门到进阶手册 · UI 复刻实战篇 前面几篇讲了 Loop 的基本用法:目标要清楚,反馈要能检查,停止规则要提前写好。 这篇不继续堆概念,直接讲一个我自己踩过的坑:用 Codex 复刻 UI 视觉稿。 先交代这篇的主角:loop-builder。 普通提示词卡在哪里 UI 复刻最麻烦的地方,是“像不像”很难只靠文字说清楚。 你可以写: 请高保真复刻这张 UI 视觉稿,注意布局、字体、颜色、间距、圆角和阴影。 一开始设计UI就遇到问题,codex实现的UI界面实在是看不下去(据说claude不错但是最近被封了。。。欲哭无泪)。 这次文章里的 UI 复刻案例,也已经放进仓库里,作为代表案例:ui-visual-match-replicator。

    24810编辑于 2026-07-11
领券