别让双手闲下来,来做一些练手项目吧

作者:Weston,原文链接,原文日期:2016-01-27
译者:saitjr;校对:Cee;定稿:千叶知风

自从我昨天发了,收到的最多的评论就是:

我应该选择哪些 App 来练手呢?

这个问题很有趣。理想情况下,如果做一款 App 又不是为了练手,那么你可能会选择你熟悉的技术。先找到自己感兴趣的、有能力解决的问题,然后再尝试用最佳实践去解决它。但我完全能想象,作为新开发者,他可能还没准备好去应对从头开发一款 App 所要解决的问题。怎么办呢,我条件反射就是「学做一款 Twitter App」。Twitter 客户端是一个有趣的项目,它涵盖了开发绝大多数 App 所要用到的技术点。我将会列出 Twitter(或其他高质量的 App)作为练手项目所用到的技术点。

用到了 UITableView...

我开发的绝大多数 iOS App 都直接或间接的用到了 UITableView,它可能是最常见的 UI 元素了,如果在面试时展示你对他的掌握情况,往往会有奇效。使用 UITableView 来做 Twitter 动态展示页面正好合适。尝试实现滑动给单元行添加事件,并确保 cell 的正确重用。查找如何实现上拉加载更多推文(即,当列表页滚动到底部时,能有更多的推文加载进来)。

用到了 HTTP API...

很多 iOS App 都需要已某种形式访问网络资源。首先建立连接、验证,最后要做的就是使用网络数据了。你当然也可以不用接入 Twitter 的 SDK,但尝试访问他们的 REST 服务器能让你真正了解网络连接与 HTTP 的使用。

用到了炫酷的 UI 界面...

开发者们都希望能通过自己的 App 火一把。正好,Twitter 的 App 能帮助你展示出很多的 UI 技能,并且在这其中,还可以写出很多有趣的东西。炫酷的 UI 可以以自定义的图形按钮的形式展示,也可以以生动形象的动画效果来展示。对于我来说,我喜欢在 AppStore 上看其他受欢迎的 App 都用了哪些动画和 UI 元素,然后自己动手实现出来。

用到了持久化和数据安全...

除了存储证书外,在 Twitter App 中没太大必要做其他数据的持久化。你需要掌握如何安全的存储用户证书(就像 token 之类的东西)。虽然 Keychain API 的学习曲线比较陡,但在这里使用 Keychain API 确实很合适。而且和暴露用户信息相比,这点困难又算得了什么呢。千万别把“安全”当儿戏。

相对易于开发...

仿一个 Twitter App 并不需要花上一年时间,如果你有时间静下心来写代码,也就一两周的事。没必要把练手项目做得像个复杂的大型软件,其实 iOS 更适合做一些简洁的 App 。所以完全可以做一些简单的 App 来练手。

Twitter 只是我推荐的其中一款,毕竟它能用到很多常见的技术。如果这还不够,那看看我接下来推荐的 App,毕竟熟能生巧:

  • Notes app(可以锻炼文本处理,而且还有 iCloud 数据同步)。
  • Where Did I Park?(一款能对标记位置进行存储的应用,可以锻炼定位 API)。
  • Painting App(可以锻炼 Touch 事件和图像 API)。
  • Alarm Clock(可以锻炼本地通知和音频播放)。

无论你选择做哪一款,尽量遵循一种编码规范,让你的代码更整洁,可读性更高。如果有需要,你还可以将它打印在简历上。

做一款 App 不难,所以尽可能多的去使用那些常用的 iOS 特性。不停的打磨它,尽可能的让它变得完美。反复的练习,直到你积累了很多项目经验。

祝你好运!

本文由 SwiftGG 翻译组翻译,已经获得作者翻译授权,最新文章请访问 http://swift.gg

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,015评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,262评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,727评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,986评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,363评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,610评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,871评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,582评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,297评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,551评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,053评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,385评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,035评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,079评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,841评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,648评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,550评论 2 270

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 170,569评论 25 707
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 11,614评论 4 59
  • 三 进入vim 1.使用vim命令进入vim界面 vim后面加上你要打开的已存在的文件名或者不存在(则作为新建文件...
    11010tianyi阅读 211评论 0 0
  • 七月这个闷热的天气,仰望天空阳光刺痛了眼,让我模糊了一切。 可以想象每所城市都可见忙碌的人们。 人们所追求的一切都...
    彩云朵月阅读 259评论 0 0
  • 高考成绩揭晓,娱乐圈学霸们也第一时间晒出高考成绩。因刚刚收官的热播剧《好先生》被誉为“国民闺女”的关晓彤考了552...
    舒天阅读 185评论 0 1