iOS 开发全能工具箱:技术篇

简介: iOS 开发工具箱是一系列的非常好用的 iOS 开发工具的集合,里面包括了网站,在桌面/移动设备上的应用,还有些后端(Back-end)的服务。我会尽力把这些工具分好类,如果有新添加近来的工具,我会放在 NEW 类别下。

iOS 开发工具箱是一系列的非常好用的 iOS 开发工具的集合,里面包括了网站,在桌面/移动设备上的应用,还有些后端(Back-end)的服务。我会尽力把这些工具分好类,如果有新添加近来的工具,我会放在 NEW 类别下。


这个列表是不完整的,我希望会有更多更酷更好用的开发工具添加近来。如果你有任何的建议或者推荐,你可以通过这些方式告诉我:Email, Twitter, Facebook, Google+, 或者 App.net


(译者注:由于文章内容过长,所以按 技术篇 和 设计篇 分开介绍,这里是技术篇)


编辑器

1.Watchdog for Xcode

它是一个监控 Xcode 然后会自动清理无用缓存文件的 Mac 应用,可以帮助更好地编译项目。我经常发现我要为了更新索引或资源,要花费时间去删除那些衍生出来的数据,这个应用帮我省了很多时间。


2.CodeRunner

你能在这个轻量级编辑器中编辑并运行任何编程语言代码。当你想要测试一下代码片段又不想新建一个 Xcode 项目或者混乱你的实际程序的代码时,它恰到好处解决解决这个需求!


3.AppCode

Xcode 之外的最佳备选。AppCode 是一个完整的 Objective-C IDE,它包含了大量 Xcode 没有的功能,例如 代码质量跟踪、更好的代码补全、自动化的 #import 等等。


4.Chocolat

我首选的文字编辑器(text editor)。支持分片编辑(split editing)、代码补全、代码块编辑、代码折叠、文档等等。可以免费试用,但试用期过后,你只能在编辑器内使用漫画字体(Comic Sans)(我想不出更好的要升级的理由)


5.Mou

并不局限于 iOS 的开发,Mou 也是我编辑 Markdown 时的首选。它包括即时的预览和方便的 Markdown 说明文档。


6.Xcode Statistician

一个小型的 Mac 应用,可以帮你分析你的 Xcode 项目,告诉你里面你写了多少行,多少个声明,多少个字,多少个词,多少个类。拿来吹嘘时可能有用~或者也只是看看你的代码变得多么臃肿。


7.Alcatraz

一个开源的用于 Xcode 的包管理器,它可以帮你发现或者安装插件、模板、颜色主题等,而不需要你自己手动克隆复制文件。


文档

1.Docs for Xcode

在 Xcode 5 版本中,苹果公司很遗憾地移除对第三方文档的支持。文档浏览器依旧可以显示你已经安装了的文档集,但你不能更新或者添加新的文档集。Docs for Xcode 解决了这个问题。它可以安装新的文件集,订阅来源,保持文档的更新。这工具对使用 Xcode 5 的人会很有用。


2.CocoaDocs

这是一个 Objevtive-C 库文档查看站点,它是 CocoaPods 这个组织的人做的。这一系列库的数量绝对是巨大的,也支持多个版本。文档是由 appledoc 生出的,所以会和苹果官方的文档很相似。你也可以通过链接在 Xcode 和 Dash 中下载和安装。


3.Dash

一个为 Mac 设计的 API 文档浏览器和代码片段管理器。你可以在里面离线搜索包括 iOS 在内的 80 多种 API。你也可以创建你自己的文件集。它和大量的插件和资源整合在一起的。


代码

1.Binpress

一个商业开源软件的市集。Binpress 为开发者提供了一个可以用他们自己的开源项目去赚钱,把开源项目变成的专业商业行为的平台,这为完整应用的贩卖在 App Sotre 之外提供了一个候选,这和 MySQL、Redhat 是相同的模式。你也可以买一些软件放置在你的应用里面,也可以提议一个开源项目让其他开发者去开发。


2.Cocoa Cats

一个专为 Objective-C 的 categories 特性打造的站点,一个 iOS 开发时的工具。对于那些不知道的人来说,categories 是 Objective-C 的一个伟大的特性,它允许不需要继承(subclassing)就可以往一个类中增加功能,而 Cocao Cats 是一个奇妙的用户驱动的 Cocoa categories 集合。站点上列出的 categories 是用户产生的,所以在页面的底部,可以看到一个表格可以让你提交新的分类(catgory)。


网络和 API

1.Runscope

一个有用的 API 代理服务,能帮助你调试你的 API 调用。你只需要把你代码里的 API 路径和 Runscope 的交换一下,然后所有的流量(traffic)往来都可以在线上侦测到。你也可以创建一些 API 请求,保存着,然后稍后才运行。


2.Fetcher

一个 Mac 上的 HTTP 客户端,支持每个 HTTP 请求设置自定义参数、自定义的 body 和自定义的 header。当你要测试 API 和你的应用中用到的 feeds 时,这工具很有用。


地图和定位

1.Mapbox

虽然 Apple 的地图服务已经随着 iOS 6 的发布上线一年了,它仍然和它的竞争者们落后不少的距离。如果你需要在你的应用中用到地图的服务,而由不相信 Map Kit,那么 Mapbox 是一个好的候选。它们提供了一个置入式(drop-in)的 SDK。这个 SDK 是自底向上且开源的,它提供和 Map Kit 同样的功能,且支持离线地图缓存、大量的地图定制选项等等许多特性。Mapbox 已经被一些大公司采用了,例如 Foursquare 和 Pintrest。Mapbox 地图的数据是来自 OpenStreetMap 项目,所以能非常的精确和及时。在免费的套餐中,你可以每个月查看 3,000 次的地图;如果不够,也有有一些相当好的付费套餐供选择。


OpenGL 和图形

1.Glyph Designer

一个 Mac 上的位图字体(bitmap font)编辑器,能使在游戏中创造好看的字体纹理变得轻而易举。你可以根据你的 Mac 上的任何字体创建纹理,或者也可以导入任一字体文件,定制字体的颜色、阴影、斯托克斯(stokes)。它可以在命令行中使用,也支持很多包括 Cocos2D、Moai、Sparrow 和 Corona 等等的框架。


2.Particle Designer

一个 Mac 上的粒子效果编辑器,提供 48 中可配置的属性供你去在游戏中创造你想要的粒子效果。它支持很多流行的框架,包括 Cocos2D、Moai 和 Sparrow。你也可以在一个有大量粒子效果的在线库上分享你的粒子效果,或者也可以使用别人创造的粒子效果。


数据库

1.Core Data 编辑器

Core Data 编辑器能让你轻松地查看、编辑和分析应用里的数据。Core Data 编辑器兼容 Mac 和 iOS 的程序,支持 XML, SQLite 和二进制存储、可视化数据关系等等,还能编辑数据,自动为数据模型(data model)生成 Objective-C 代码。相比起直接读取 SQLite 数据库来说,方便和容易了很多。


2.SQLite 专业版

一个 Mac 上包含版本整合、过滤、导出等等功能的 SQLite 客户端。它也提供了一个只读版(read-only)的免费下载版本。

3.Base

又一个 Mac 上优秀的 SQLite 客户端,能让你创建、设计、编辑、浏览 SQLite 3 数据库文件。同时也支持数据过滤、数独导入导出和 SQL 自动补全。


调试

1.QuickRadar

一个在菜单栏上的应用,能让你更快更方便地提交 "Radar"( 苹果的 bug 提交系统),代替苹果公司自己的 Bug 提交软件。QuickRadar 会在你的 Mac 上的后台运行,提供一个快捷键让你即时打开一个窗口来输入 bug 报告。它的代码是在 BSD 协议下的,并在 GitHub 上开源了,欢迎开发者去参与开发!


2.Shake Report

一个让用户去报告 bug 的小工具。它提供的置入式(drop-in) SDK 允许用户摇一下他们的设备就可以发送一个 bug 报告了。你也可以下载一个后端的组件,然后把组件部署到服务器上,这样就可以收集很分类提交的 bug'了。


3.BuhSense

跨平台的软件崩溃报告服务(crash reporting service),支持 Android、Windows、Phone/Wdindows 8、HTML5、当然还有 iOS。它提供实时的崩溃分析(crash analytics)和应用的质量数据(quality data)以使你的客户欢心。


4.Crashlytics

轻量级移动端崩溃报告提交工具。包含一个 Mac 上的菜单栏应用,使得框架和崩溃监测变得十分简单。崩溃报告可以在网站上看到,完整的堆栈踪迹和设备数据也会呈现出来。


5.Crittercism

一个管理所有应用运行状态问题(app performance issues)的统一解决方案,包括崩溃报告、异常处理(exception handling)、响应时间(response times)、出错率(error rates)和网络/负载延迟(network/carrier latencies)。


6.Spark Inspector

其实很难描述 Spark Inspector 是什么。它仿佛是带有魔力。它是一个实时运行时的调试器,能以 3D 的形式展示应用的视图架构(view hierarchy),并允许你在运行时改变视图的属性(view properties)。它还会检测所用发出的 NSNotifications。'


7.Reveal

另一个魔法般的运行时检测器。能以 2D 或者 3D 可视化你的视图架构,允许你在运行时修改视图属性以立即得到修改后的效果。现在有免费的 beta 版。


后端服务

Objective-Cloud

不仅仅是一个 iOS 部署工具,它还有足够引起我们关注的疯狂想法。就如名字所说,Objective-Cloud 允许你在云上面运行 Objective-C。你可以在 Xcode 中开发你的 Web 应用,然后直接部署到云上。云会处理程序运行的伸缩性(scaling)。它们也提供了一个 SDK,包含一个供创建 RESTFUL Web 服务的定制 HTTP handler。价格也很实惠。


StackMob

一个非常复杂的「后端即服务」(backend-as-a-service)提供商。就如大多数提供商一样,StackMob 提供存储数据的 API, 社交网站登录,通知推送,文件存储,定制的商业逻辑代码;此外,它也提供例如地理位置 API,分析和部署管理等独有的特性。他们在一定限度内是免费的,如果你需要更多需要付费。


Kinvey

一个和 Parse 很像的后端即服务」(backend-as-a-service)提供商.就像 Parse 一样,他提供云存储、通知推送、商业逻辑定制,此外也为那些没有网站的应用提供一个别具一格的 Facebook Open Graph 实现。


Parse

Parse 使得你的应用的后端搭建变得简单。他们「后端即服务」(backend-as-a-service)提供的 SDKs 可以让你通过编写少许代码就能保存对象到云上。你可以使用他们的"Cloud Code"去添加定制商业逻辑。他们被 Facebook 收购了,所以其伸缩性也不错。

相关文章
|
27天前
|
安全 Android开发 iOS开发
安卓与iOS的较量:技术深度对比
【10月更文挑战第18天】 在智能手机操作系统领域,安卓和iOS无疑是两大巨头。本文将深入探讨这两种系统的技术特点、优势以及它们之间的主要差异,帮助读者更好地理解这两个平台的独特之处。
43 0
|
8天前
|
安全 数据处理 Swift
深入探索iOS开发中的Swift语言特性
本文旨在为开发者提供对Swift语言在iOS平台开发的深度理解,涵盖从基础语法到高级特性的全面分析。通过具体案例和代码示例,揭示Swift如何简化编程过程、提高代码效率,并促进iOS应用的创新。文章不仅适合初学者作为入门指南,也适合有经验的开发者深化对Swift语言的认识。
26 9
|
8天前
|
Android开发 Swift iOS开发
探索安卓与iOS开发的差异和挑战
【10月更文挑战第37天】在移动应用开发的广阔舞台上,安卓和iOS这两大操作系统扮演着主角。它们各自拥有独特的特性、优势以及面临的开发挑战。本文将深入探讨这两个平台在开发过程中的主要差异,从编程语言到用户界面设计,再到市场分布的不同影响,旨在为开发者提供一个全面的视角,帮助他们更好地理解并应对在不同平台上进行应用开发时可能遇到的难题和机遇。
|
6天前
|
iOS开发 开发者
探索iOS开发中的SwiftUI框架
【10月更文挑战第39天】在苹果的生态系统中,SwiftUI框架以其声明式语法和易用性成为开发者的新宠。本文将深入SwiftUI的核心概念,通过实际案例展示如何利用这一框架快速构建用户界面,并探讨其对iOS应用开发流程的影响。
|
9天前
|
JSON 前端开发 API
探索iOS开发之旅:打造你的第一个天气应用
【10月更文挑战第36天】在这篇文章中,我们将踏上一段激动人心的旅程,一起构建属于我们自己的iOS天气应用。通过这个实战项目,你将学习到如何从零开始搭建一个iOS应用,掌握基本的用户界面设计、网络请求处理以及数据解析等核心技能。无论你是编程新手还是希望扩展你的iOS开发技能,这个项目都将为你提供宝贵的实践经验。准备好了吗?让我们开始吧!
|
12天前
|
监控 iOS开发 开发者
iOS性能优化:深入函数调用栈与符号化技术
在iOS开发中,函数调用栈是理解程序执行流程和优化性能的关键。当应用出现性能问题或崩溃时,能够准确地读取和解析调用栈信息对于快速定位问题至关重要。本文将探讨iOS中的函数调用栈,以及如何通过符号化技术进行有效的性能调优。
24 3
|
13天前
|
设计模式 前端开发 Swift
探索iOS开发:从初级到高级的旅程
【10月更文挑战第31天】在这篇文章中,我们将一起踏上iOS开发的旅程。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的信息和技巧。我们将从基础开始,逐步深入到更高级的技术和概念。让我们一起探索iOS开发的世界吧!
|
16天前
|
设计模式 前端开发 Swift
探索iOS开发:从初级到高级的旅程
【10月更文挑战第28天】在这篇技术性文章中,我们将一起踏上一段探索iOS开发的旅程。无论你是刚入门的新手,还是希望提升技能的开发者,这篇文章都将为你提供宝贵的指导和灵感。我们将从基础概念开始,逐步深入到高级主题,如设计模式、性能优化等。通过阅读这篇文章,你将获得一个清晰的学习路径,帮助你在iOS开发领域不断成长。
47 2
|
17天前
|
安全 搜索推荐 Android开发
揭秘安卓与iOS系统的差异:技术深度对比
【10月更文挑战第27天】 本文深入探讨了安卓(Android)与iOS两大移动操作系统的技术特点和用户体验差异。通过对比两者的系统架构、应用生态、用户界面、安全性等方面,揭示了为何这两种系统能够在市场中各占一席之地,并为用户提供不同的选择。文章旨在为读者提供一个全面的视角,理解两种系统的优势与局限,从而更好地根据自己的需求做出选择。
42 2
|
18天前
|
安全 搜索推荐 Android开发
揭秘iOS与安卓系统的差异:一场技术与哲学的较量
在智能手机的世界里,iOS和Android无疑是两大巨头,它们不仅定义了操作系统的标准,也深刻影响了全球数亿用户的日常生活。本文旨在探讨这两个平台在设计理念、用户体验、生态系统及安全性等方面的本质区别,揭示它们背后的技术哲学和市场策略。通过对比分析,我们将发现,选择iOS或Android,不仅仅是选择一个操作系统,更是选择了一种生活方式和技术信仰。