一只快速生成代码的Xcode插件FastStub

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
查看查看252 回复回复2 收藏收藏 分享淘帖 转播转播 分享分享 微信
查看: 252|回复: 2
收起左侧

一只快速生成代码的Xcode插件FastStub

[复制链接]
cocoaswift 发表于 2016-6-24 13:55:19 | 显示全部楼层 |阅读模式
快来登录
获取最新的苹果动态资讯
收藏热门的iOS等技术干货
拷贝下载Swift Demo源代码

这款插件的灵感来源于Android Studio,在AS当中按 cmd+N 可以呼出generate code菜单,快速生成一系列模板代码。比如自动解析出super class当中还没有被override的方法,比如自动生成Constructor,并选择要传入的参数等。插件github地址




1、插件原型

在Android Studio中可以这样重载父类的方法。

一只快速生成代码的Xcode插件FastStub 1 fs_as

一只快速生成代码的Xcode插件FastStub - 敏捷大拇指 - 一只快速生成代码的Xcode插件FastStub 1 fs_as


支持多选,按回车一键插入多个方法的实现。




2、Xcode版插件FastStub



2.1、自动插入方法实现

FastStub实现了类似的功能,能自动解析出某个类 头文件、父类、所有protocol里面还没有被实现的方法,生成完整的列表,并提供类似Android Studio的操作,一键插入多个方法的实现代码。类似这样:

一只快速生成代码的Xcode插件FastStub 2 fs_header

一只快速生成代码的Xcode插件FastStub - 敏捷大拇指 - 一只快速生成代码的Xcode插件FastStub 2 fs_header


这样可以避免在头文件写好方法声明之后,再去.m文件将方法的实现敲一遍。



2.2、支持原生protocol

对于经常写UITableView delegate,datasource回调方法的同学应该有这样的经历,需要经常切换到UITableViewDelegate的protocol声明文件中去查看某个实现的方法,FastStub可以留着当前文件快速的查看,并插入相关代码。类似这样:

一只快速生成代码的Xcode插件FastStub 3 fs_delegate

一只快速生成代码的Xcode插件FastStub - 敏捷大拇指 - 一只快速生成代码的Xcode插件FastStub 3 fs_delegate




2.3、最快速的单例实现方式

FastStub能自动解析出当前类名,并在.h .m文件中插入相关的单例代码,类似这样:

一只快速生成代码的Xcode插件FastStub 4 fs_singleton

一只快速生成代码的Xcode插件FastStub - 敏捷大拇指 - 一只快速生成代码的Xcode插件FastStub 4 fs_singleton




2.4、类的拓展也很方便

对于经常写interface extension的同学,FastStub也可以帮你节省一些时间,一键生成:

一只快速生成代码的Xcode插件FastStub 5 fs_extension

一只快速生成代码的Xcode插件FastStub - 敏捷大拇指 - 一只快速生成代码的Xcode插件FastStub 5 fs_extension





3、后续工作

现在是采取regex来提取类名及相关的方法,虽然经过一段时间的使用,能正确支持绝大部分的场景,但无法保证绝对的准确性,后续可能会通过其他类似AST的方式来做语法分析。

现阶段能生成singleton,interface extension的代码,后续可以支持更多,类似property的getter,setter,model的constructor等。




作者:MrPeak

都看到这里了,就把这篇资料推荐给您的好朋友吧,让他们也感受一下。

回帖是一种美德,也是对楼主发帖的尊重和支持。

*声明:敏捷大拇指是全球最大的Swift开发者社区、苹果粉丝家园、智能移动门户,所载内容仅限于传递更多最新信息,并不意味赞同其观点或证实其描述;内容仅供参考,并非绝对正确的建议。本站不对上述信息的真实性、合法性、完整性做出保证;转载请注明来源并加上本站链接,敏捷大拇指将保留所有法律权益。如有疑问或建议,邮件至marketing@swifthumb.com

*联系:微信公众平台:“swifthumb” / 腾讯微博:@swifthumb / 新浪微博:@swifthumb / 官方QQ一群:343549891(满) / 官方QQ二群:245285613 ,需要报上用户名才会被同意进群,请先注册敏捷大拇指

嗯,不错!期待更多好内容,支持一把:
支持敏捷大拇指,用支付宝支付10.24元 支持敏捷大拇指,用微信支付10.24元

评分

参与人数 1金钱 +10 贡献 +10 专家分 +10 收起 理由
Anewczs + 10 + 10 + 10 32个赞!专家给力!

查看全部评分

Caesar 发表于 2016-6-28 02:12:55 | 显示全部楼层
Nice~~~~~~~
攻城狮 发表于 2016-9-1 20:31:55 | 显示全部楼层
不错,Mark
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

做任务,领红包。
我要发帖

分享扩散

都看到这里了,就把这资料推荐给您的好朋友吧,让他们也感受一下。
您的每一位朋友访问此永久链接后,您都将获得相应的金钱积分奖励
热门推荐

合作伙伴

Swift小苹果

  • 北京治世天下科技有限公司
  • ©2014-2016 敏捷大拇指
  • 京ICP备14029482号
  • Powered by Discuz! X3.1 Licensed
  • swifthumb Wechat Code
  •   
快速回复 返回顶部 返回列表