iOS 独立开发记录

580 查看

半个月前,完成了个人App的2.0版本,也在普天同庆的六一儿童节这天上架了。因为是个人开发,很多实现都是边探索边做。现在完成之后再回顾,发现自己走了些弯路。所以写了这篇总结,概览了从想法、设计、开发到最终发布的过程。希望读者参考本文,可以少走一些弯路;另外,本文也给列出了开发中具体思路和资源列表。

知识从何而来?

Apple的知识又是从何而来?是哪些人在创造这些机制,又是哪些人在传播这些机制?为什么要这样设计呢?为什么要这样编码呢?

iOS开发是在询问什么问题?技术的实现,究竟是在问什么?为什么要这样做?那样做?评价的标准为何?

资源

我在开发过程中常使用的资源:

  • 相关书籍寻找大致实现方向,我有庞大的电子书库,在此感谢学校提供的优质资源。很多书,都会先检视阅读一遍,这样心中有地图,开发时就可快速定位。书本是理论的简单系统化表示。
  • Apple 官方文档 视频 示例代码系统化的概览,具体可使用内容的查找。
  • StackOverflow主要是查找一些细节问题。
  • Github上的相关项目看具体的代码实现,分析不同实现的优缺点,取其精华去其糟粕。
  • Raywenderlich可以很快上手入门新知识点。
  • 博客
  • 论文
    对于想深入理解的知识,会参考相关论文。

搜索时使用google或者bing,绝对可以节约你的时间。时间即是生命。
我选择的简单是易用SS,我的推介链接

想法

  • 目标:简洁优雅易用节拍器
  • 用户:学习乐器演奏的群体
  • 使用场景:乐器演奏
  • 做什么:小而美。好看,好用,占内存小。
  • 不做什么:不做专业程度极高,功能十分完备的节拍器。

设计

我一般使用Sketch进行快速原型设计。
同时思考,是否可实现?

开发

我使用的是coding的仓库,git进行版本管理。

主要介绍2.0版本中的一些开发过程。
你可以免费下载,看看有哪些基本功能。

多主题设计

配色

参考网站:

扁平化颜色库:

Chameleon is a lightweight, yet powerful, color framework for iOS (Objective-C & Swift). It is built on the idea that software applications should function effortlessly while simultaneously maintaining their beautiful interfaces.

https://github.com/ViccAlexander/Chameleon

多主题实现

OC版:
https://github.com/Draveness/DKNightVersion

Swift版:
http://www.jianshu.com/p/a5cd0176bcf5
https://github.com/zhangbozhb/ChameleonSwift

  1. theme
  2. view

部分配色表:

Name defaultColor SeaColor GreenColor CoffeeColor
backgroundColor
BlockColor rgba(184, 184, 184, 1) #D5EBE9 #F4ADA2 #D4C38F
BlockColorFill rgba(251, 251, 251, 1) #F5FAF9 #F07973 #EFDFAF
BlockBdrColor rgba(57, 57, 57, 1) #38465F #38465F #272727
shadowColor rgba(41, 44, 48, 1) #38465F #A0785C #5D4531
Sliderstart rgba(184, 184, 184, 1) #F5FAF9 #F2F2F2 #88DEF2
Sliderend rgba(185, 200, 245, 1) #B0D5C2 #F4ADA2 #FAD199
SliderBackground Black #364960 #3A4C39 #2B2B2B
nameIncDecTextColor Black White Black Black
labelColor Black white Black Black

根据图片配色举例:

48181-150efd7653a26c16
Color_Sail___Design_Seeds.png

48181-a50f7e9e0a154633
Color1.png

代码实现:

  1. Struct方式

  1. class 方式