发布时间:2024-07-25 18:03:44 浏览量:246次
在日常开发中,重复劳动降低了效率。去年ChatGPT推出后,为我们提供了比谷歌和Github更好的代码咨询小助手。但是使用它也需要准备“环境”,然后在浏览器中提问,复制粘贴至Xcode中。为了提高效率,提出了开发Xcode插件结合AIGC能力,于是诞生了iTaTools。
iTaTools是一款独立的Mac端App,旨在辅助团队成员学习Swift和SwiftUI,构建喜爱的功能。用户界面如下:
该App主要与AIGC结合,第一个Tab可向ChatGPT提问,第二个Tab可进行文生图操作,第三个Tab汇总了实用工具和技巧。
目前制作了四个小插件,包括直接生成代码、生成Json假数据对应的业务模型、添加官方风格注释、选中代码块的解释。
iTaTools还支持根据需求自动生成UI,团队使用Objective-C或Swift构建UI,使用SnapKit/Masonry生成自动布局代码,遵循统一的日夜间生成方式。
开发人员可以根据输入生成可直接使用的代码。以下是生成的代码案例。
根据您的描述,我将为您生成Objective-C的代码: // NTESNBLoginHeader.h #import <UIKit/UIKit.h> @interface NTESNBLoginHeader : UIView @property (nonatomic, strong) UILabel *username; @property (nonatomic, strong) UILabel *password; @property (nonatomic, strong) UIImageView *avatar; - (void)updateUsername:(NSString *)username; - (void)updatePassword:(NSString *)password; - (void)updateAvatar:(UIImage *)avatar; @end // NTESNBLoginHeader.m #import "NTESNBLoginHeader.h" #import <Masonry/Masonry.h> @implementation NTESNBLoginHeader - (instancetype)init { self = [super init]; if (self) { [self addSubview:self.username]; [self addSubview:self.password]; [self addSubview:self.avatar]; [self setupLayout]; } return self; } - (UILabel *)username { if (!_username) { _username = [[UILabel alloc] init]; _username.textAlignment = NSTextAlignmentCenter; _username.numberOfLines = 0; _username.textColor = [UIColor blackColor]; _username.font = [UIFont systemFontOfSize:14]; } return _username; } // 更多代码... @end
项目使用ChatGPT提供的API,开发者根据接口文档调整API请求,按照最新文档操作。以下是Swift生成的ChatGPT请求头:
// Swift代码示例 // 创建通用请求Header,授权每次的API请求 public func signedHeaders(appId: String, appKey: String) -> [String: String] { // 实现逻辑省略 }
// Swift代码示例 struct message: Decodable, Encodable { // 实现逻辑省略 }
// Swift代码示例 struct NTESNeteaseAIChatResponse: Decodable { // 实现逻辑省略 }
在iOS开发环境Xcode中,可以创建自己的插件,iTaTools旨在实现两个目标,第一个已完成,第二个正在进行中。
通过File->New->Target的方式,在macOS中找到Source Editor Extension并创建。
// 获取高亮部分代码的关键逻辑 // 实现部分代码省略
// Swift代码示例 func perform(with invocation: XCSourceEditorCommandInvocation, completionHandler: @escaping (Error?) -> Void ) -> Void { // 实现逻辑省略 }
配置Extension Info plist文件中的功能菜单栏,告知系统Command信息。
AIGC工具正在改变开发工作方式,简化重复代码编写。Xcode插件结合AIGC能力将提高开发效率,减少繁重工作,让开发者更专注于核心业务开发。
未来,Xcode插件还会进一步拓展功能,例如训练子模型、改进代码建议等。
作者: 刘瑞
来源-微信公众号: 网易传媒技术团队
出处: https://mp.weixin.qq.com/s/CHrSQYvyrsPIjyG0YCPLTA
想学习更多关于数字艺术的知识吗?点击咨询 火星时代教育,开设课程有游戏设计培训、动画培训、UI设计培训等。
热门资讯
想要了解iPhone6界面设计的尺寸规范吗?这里为您详细介绍iPhone6的UI设计尺寸规范,包括界面尺寸、图标尺寸、可点击高度规范、搜索栏高度规范以及界面元素之间的距离规范。
将为大家介绍12个绝佳的UI设计网站,这些网站不仅可以为你提供灵感,还可以帮助你学习新的技巧,助力你的创意之旅!dribbbleDribbble 是一个面向设计师的...
3. 移动端UI设计中常见的5种APP界面类型,你get到了吗?
通过介绍移动端UI设计中的闪屏页、引导页、浮层引导页、空白页和首页等5种APP界面类型,帮助大家更好地了解UI设计的基本知识
在移动端设计中,列表页和表单页是不可或缺的部分。一个好的列表页和表单页设计能够让用户轻松地获取信息并产生点击欲望,从而提高点击率。本文将为你...
怎样可以提升你的UI设计能力!第一个:站酷站酷想必是设计师都知道的一个网站,里面不止有UI设计的资源,还有其他设计的,不如:平面设计、网页设计、字体...
对于想要提高自己的设计能力和创造力的小白和UI设计师来说,这本书是一个很好的选择。4.《设计的觉醒》(IKKO TANAKA)推荐理由: 这本书是日本现代平面...
探索零基础UI设计培训的时长与薪资前景。了解数字艺术教育领域的专业课程,以及培训后的职业发展机会。
ui设计应该让用户一目了然,能够快速找到所需的信息和功能。在设计过程中,应尽量使用简洁的图标、文字和色彩,避免过多的视觉干扰。符合用户习惯:ui设...
9. 设计中的色彩心理学:浅析中西方色彩的历史演变与设计应用
摘要:本文探讨了色彩的历史演变和设计应用。通过对色彩在早期文明社会中的实用运用、不同文化背景下色彩观念的差异、色彩在设计中的重要性以及新兴技...
大家今天走运了,我就把自己总结出来的学习UI设计的一些经验与大家一起分享吧。想做一个好的UI设计师除了应该具有一定的审美能力,还要了解整个产品的...
最新文章
同学您好!