配置优雅的iOS开发环境

几个月前因为工作的关系,将主力开发方向由Android转到iOS,因为体会过Eclipse和0.x时代的Android Studio是如何的笨拙不稳定,如何的臃肿不便,以致初次打开Xcode,竟似牧羊少年初识大都会,随之泛起的是浓浓的幸福和新鲜感。足够优雅的ui,华丽的交互,与触摸板深度结合的便利操作,这一切的一切都直令眼角湿润。

感慨了不少,不过是想说明Xcode在Mac下的体验称的上是出类拔萃,能够将它作为最常使用的生产平台可以说是幸运的。但是原生的Xcode尚有很多不如人意的地方,所以将它打造的更加完美便是第一步。

Theme

github上有非常多的可选主题,xcode-themes是其中比较全面的主题集合。

我使用的是Solarized,一款多平台下的通用主题,它提供Dark和Light两种不同样式。

第一次见到,就已经无可救药的爱上她了

Font

系统字体Monaco,我的唯一选择。之前在Linux/Windows下一直使用YaHei Consolas Hybrid,Consolas + 微软雅黑的搭配曾经一度征服我的感官,但是Mac下的显示效果并不尽如人意。

顺滑的圆角,已然怦然心动

Snippets

Xcode从Version4开始引入Code Snippets,在整个界面的右下角,可以通过快捷键:cmd + ctrl + opt + 2 调出来。Code Snippets是一些代码的模版,对于一些常见的编程模式,Xcode都将这些代码抽象成模版放到Code Snippet中,使用的时候,只需要键入快捷键,就可以把模版的内容填到代码中。

输入<#xxx#>可以使圈中区域'xxx'变为待填充状态,在Snippets的填写中十分有用,这种用法在Xcode中到处可见。

推荐mattt大神的Xcode-Snippets项目, 包含了常用开发中绝大部分代码片段。

这比用Github的Gist或者Dash自带的代码片段收集工具要方便很大,因为其与Xcode的深度绑定,可以设置快捷键进行快速补全,无比畅快。

Plugins

  • 猫神onevcat的[VVDocumenter-Xcode](<https://github.com/onevcat/VVDocumenter-Xcode),star数直逼2000+,可以自动生成方法头部文档说明的格式范本,触发方式为///

  • ColorSense-for-Xcode,将颜色配置可视化

  • HOStringSense-for-Xcode,常规模式下辅助显示字符串长度,并可以自动对特殊字符进行自动转义

  • SCXodeMiniMap,可以加入类似SublimeText的minimap,非常Cool

  • Lin-Xcode5,可以直接索引和编辑本地化操作

  • KSImageNamed-Xcode,可以自动索引并预览归档在Images.xcassets下地图片文件,非常实用

  • AutoresizeMask-for-Xcode,将autoresizeMask配置可视化

  • XVim,将vim mode完美移植,并加入:build, :run来满足命令控的需求,但个人更喜欢使用mac下完全通用的emacs文本编辑模式,再加上键位合理的快捷键,足以让开发变得异常便捷。

插件安装路径位于~/Library/Application Support/Developer/Shared/Xcode/Plug-ins,各位看官可以根据个人喜欢自由增删。

Debugger

chisel是Facebook的开源工具,对Xcode的调试器LLDB进行增强。

安装

$ ~/.lldbinit
...
command script import /path/to/fblldb.py

建议把所有配置文件都放在云盘里,在用户根目录下建立软连接,这样就算重新装机也不会丢失配置文件,省去麻烦。

添加的自定义命令

命令描述
pviews递归打印keyWindow包含的View的描述信息
pvc递归打印keyWindow包含的ViewControoler的描述信息
visualize使用Mac上的Preview.app查看UIImage,UIView或者CALayer
fv在View层级表中查找类名符合正则表达式的视图
fvc在ViewController层级表中查找类d名符合正则表达式的视图
show/hide显示后隐藏给出的View或Layer。甚至不需要继续处理就能查看变化
mask/unmask使用透明矩形标示出View或者Layer
border/unborder使用可见矩形标示出View或者Layer
caflush刷新渲染器(如果没有动画实际效果等于“repaint”)
bmessage在类方法或实例方法上放置象征断点,不用担心类的继承
wivar在实例对象上设置观察点
presponder打印出给出对象的responder链
...... 还有更多

More:

  • NSHipter最新一期的文章Xcode Plugins介绍了更多更炫的插件(NSHipter越来越无聊了,估计Mattt大神真的是没东西可写了)
  • 唐巧在他的开源项目Xcode-tool中提供了Snippets的自动化安装脚本

转自: http://bayonetta.github.io/ios/%E9%85%8D%E7%BD%AE%E4%BC%98%E9%9B%85%E7%9A%84iOS%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83/

源码来自:https://pan.quark.cn/s/a3a3fbe70177 AppBrowser(Application属性查看器,不需要越狱! ! ! ) 不需要越狱,调用私有方法 --- 获取完整的已安装应用列表、打开和删除应用操作、应用运行时相关信息的查看。 支持iOS10.X 注意 目前AppBrowser不支持iOS11应用查看, 由于iOS11目前还处在Beta版, 系统API还没有稳定下来。 等到Private Header更新了iOS11版本,我也会进行更新。 功能 [x] 已安装的应用列表 [x] 应用的详情界面 (打开应用,删除应用,应用的相关信息展示) [x] 应用运行时信息展示(LSApplicationProxy) [ ] 定制喜欢的字段,展示在应用详情界面 介绍 所有已安装应用列表(应用icon+应用名) 为了提供思路,这里只用伪代码,具体的私有代码调用请查看: 获取应用实例: 获取应用名和应用的icon: 应用列表界面展示: 应用列表 应用运行时详情 打开应用: 卸载应用: 获取info.plist文件: 应用运行时详情界面展示: 应用运行时详情 右上角,从左往右第一个按钮用来打开应用;第二个按钮用来卸载这个应用 INFO按钮用来解析并显示出对应的LSApplicationProxy类 树形展示LSApplicationProxy类 通过算法,将LSApplicationProxy类,转换成了字典。 转换规则是:属性名为key,属性值为value,如果value是一个可解析的类(除了NSString,NSNumber...等等)或者是个数组或字典,则继续递归解析。 并且会找到superClass的属性并解析,superClass如...
基于遗传算法辅助异构改进的动态多群粒子群优化算法(GA-HIDMSPSO)的LSTM分类预测研究(Matlab代码实现)内容概要:本文研究了一种基于遗传算法辅助异构改进的动态多群粒子群优化算法(GA-HIDMSPSO),并将其应用于LSTM神经网络的分类预测中,通过Matlab代码实现。该方法结合遗传算法的全局搜索能力与改进的多群粒子群算法的局部优化特性,提升LSTM模型在分类任务中的性能表现,尤其适用于复杂非线性系统的预测问题。文中详细阐述了算法的设计思路、优化机制及在LSTM参数优化中的具体应用,并提供了可复现的Matlab代码,属于SCI级别研究成果的复现与拓展。; 适合人群:具备一定机器学习和优化算法基础,熟悉Matlab编程,从事智能算法、时间序列预测或分类模型研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①提升LSTM在分类任务中的准确性与收敛速度;②研究混合智能优化算法(如GA与PSO结合)在神经网络超参数优化中的应用;③实现高精度分类预测模型,适用于电力系统故障诊断、电池健康状态识别等领域; 阅读建议:建议读者结合Matlab代码逐步调试运行,理解GA-HIDMSPSO算法的实现细节,重点关注种群划分、异构策略设计及与LSTM的集成方式,同时可扩展至其他深度学习模型的参数优化任务中进行对比实验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值