具体描述
基于iOS平台开发App是一个复杂的工程,如何从众多的知识点中理顺思路,把握iOS开发的核心是iOS初学者面对的难题。
本书是一本初学者都看得懂的图书,作者从iOS开发的三个主线——Storyboard、Delegate和TableView入手,以自己开发过的App为基础,循序渐进地讲述了在iOS开发过程中面对的技术问题。
作者简介
和凌志,拥有十多年线通信开发经验,先后在Siemens Mobile、Flextronic 等欧美公司担任手机软件架构师,具有丰富的手机硬件设计、软件平台和智能手机应用开发经验。Apple Appstore代表作品“悠悠电台”。
目录信息
第1章 iOS开发环境的搭建
1.1 硬件环境
1.2 软件环境
1.2.1 注册Apple ID
1.2.2 XCode下载与安装
1.2.3 iOS开发语言: ObjectiveC
1.3 分享一个小故事
1.4 总结与启发
第2章 ObjectiveC编程语言特性
2.1 ObjectiveC有什么奇特的地方
2.2 如何声明实例变量(浅谈@property的使用)
2.3 NSString的应用
2.4 如果判断两个字符串是否相等
2.5 对象类型与基本数据类型的混合使用
2.6 对象类型与基本数据类型的转换(NSNumber与NSInteger)
2.7 不可变数组(NSArray)与可变数组(NSMutableArray)
2.7.1 不可变数组(NSArray)的特征
2.7.2 可变数组(NSMutableArray)的特征
2.7.3 如何遍历数组中的对象
2.8 不可变字典(NSDictionary)与可变字典(NSMutableDictionary)的应用
2.8.1 不可变字典(NSDictionary)
2.8.2 可变字典(NSMutableDictionary)
2.8.3 如何遍历字典中的对象
2.9 一种最简单的永久数据存储方式(NSUserDefaults的应用)
2.10 创建类的对象的两种方法
2.11 一种最简单的调试方法(NSLog的使用)
2.12 忍不住也来说说iOS的设计模式(MVC的使用)
2.13 总结与启发
第2篇 Storyboard技术篇
第3章 iOS常用开发控件
3.1 XIB App与Storyboard App之争
3.2 Storyboard开发环境
3.3 创建一个新的工程
3.4 熟悉XCode开发环境
3.5 运行HelloWorld
3.6 按钮(UIButton)与标签(UILabel)
3.6.1 创建UIButton的IBAction
3.6.2 创建UILabel的IBOutlet
3.6.3 实现Button被触发后的方法
3.7 如何删除对象的IBOutlet或IBAction
3.8 让键盘消失的四种方法
3.8.1 键盘消失方法一: Delegate应用三步法
3.8.2 键盘消失方法二: 事件响应的调用
3.8.3 键盘消失方法三: 将UIView改为UIControl
3.8.4 键盘消失方法四: 巧用UIButton
3.9 UITextField更多用法
3.10 getter与setter的应用场景
3.11 总结与启发
第4章 视图(UIView)与视图控制器(UIViewController)
4.1 如何创建一个基本的视图
4.2 透过UIAlterView看Delegate的应用
4.3 视图与视图控制器的生命周期
4.4 滚动视图(UIScrollView)的应用
4.5 总结与启发
第5章 Storyboard知多少
5.1 Storyboard编辑页面
5.2 Storyboard利器: Segue(连线)
5.3 创建和触发Segue的两种方法
5.4 Segue对象的属性设置
5.5 触发Segue的两种方法
5.6 Segue触发瞬间都要做些什么
5.7 巧用Segue
5.8 Segue的创建
5.9 嵌入Navigation Controller
5.10 活用prepareForSegue:sender:
5.11 重写对象的setter和getter
5.12 UIScrollView应用三步法
5.13 如何实现图片的缩放
5.14 通过异步加载获取网络图片
5.15 如何实现一个等待提示
5.16 总结与启发
第3篇 Delegate应用篇
第6章 Storyboard场景跳转方法
6.1 场景之间的正向跳转
6.1.1 直接跳转法(控件直接拖拽)
6.1.2 条件跳转法(performSegueWithIdentifier)
6.1.3 手动代码跳转法
6.1.4 三种方法的比较
6.2 场景之间的逆向跳转
6.2.1 Unwind Segue连线法
6.2.2 关于Unwind Segue的更多用法
6.2.3 通过编码方式实现逆向跳转
6.3 总结与启发
第7章 Delegate应用五步曲
7.1 学习Delegate的困惑
7.2 从一道经典的面试题说起
7.3 学习Delegate常出现的几个误区
7.4 Delegate技术难点在哪里
7.5 数据逆向传送一定要通过Delegate吗
7.6 Delegate应用五步曲
7.7 总结与启发
第4篇 表视图(TableView)应用篇
第8章 创建一个简单的表视图
8.1 表视图与表视图单元格(TableView与TableViewCell)
8.2 UITableView的代理机制(Data Source和Delegate)
8.2.1 UITableViewDataSource的应用
8.2.2 UITableViewDelegate的应用
8.3 创建一个表视图工程
8.4 视图控制器添加三步法
8.5 为表视图填充数据
8.6 如何确定列表的行数
8.7 如何显示列表每一行对应的内容
8.8 如何在表视图中添加缩略图
8.9 总结与启发
第9章 如何实现表视图的定制化单元格
9.1 如何让每一行显示特定的缩略图
9.2 如何定制化单元格(UITableViewCell)
9.3 为定制化单元格创建一个类
9.4 总结与启发
第10章 如何判断TableView选择了哪一行
10.1 如何理解UITableViewDelegate
10.2 UITableViewDelegate知多少
10.3 当某行被选中时, 弹出一个提示框
10.4 如何获取行的内容
10.5 如何对被选中的行做标记
10.6 总结与启发
第11章 如何管理表视图的数据
11.1 如何让数据更便于维护
11.2 如何理解Property List
11.3 将表数据存储为Property List格式
11.4 如何读取Property List文件的内容
11.5 如何从UITableView中删除一行
11.6 如何重载表视图的数据
11.7 如何永久性删除表视图的行数据
11.8 如何实现TableView的上拉或下拉刷新
11.9 基于UIViewController创建表视图
11.10 关于UITableViewCell重用的理解与应用
11.11 总结与启发
后记 关于iOS下一代编程语言——Swift
· · · · · · (收起)
读后感
作为初学者,还是很喜欢这类简单有条理的书,不想市面都是一本本厚书,不分主次。建议有代理、storyboard、和UITableView等的知识基础的朋友,可以借此书复习梳理这些重要知识点,一天就能过一遍。吐槽书名,建议改为iOS初级开发之美~~
作为初学者,还是很喜欢这类简单有条理的书,不想市面都是一本本厚书,不分主次。建议有代理、storyboard、和UITableView等的知识基础的朋友,可以借此书复习梳理这些重要知识点,一天就能过一遍。吐槽书名,建议改为iOS初级开发之美~~
作为初学者,还是很喜欢这类简单有条理的书,不想市面都是一本本厚书,不分主次。建议有代理、storyboard、和UITableView等的知识基础的朋友,可以借此书复习梳理这些重要知识点,一天就能过一遍。吐槽书名,建议改为iOS初级开发之美~~
作为初学者,还是很喜欢这类简单有条理的书,不想市面都是一本本厚书,不分主次。建议有代理、storyboard、和UITableView等的知识基础的朋友,可以借此书复习梳理这些重要知识点,一天就能过一遍。吐槽书名,建议改为iOS初级开发之美~~
作为初学者,还是很喜欢这类简单有条理的书,不想市面都是一本本厚书,不分主次。建议有代理、storyboard、和UITableView等的知识基础的朋友,可以借此书复习梳理这些重要知识点,一天就能过一遍。吐槽书名,建议改为iOS初级开发之美~~
用户评价
这本书的语言魅力,想必是其核心竞争力之一。我设想它不会充斥着大量枯燥的API引用和版本号的堆砌,而是充满了类比和富有画面感的描述。例如,当讨论到依赖注入(DI)时,作者可能不会直接抛出Factory模式的定义,而是会用一个生动的比喻,比如“为你的组件提供一个定制的‘工具箱’,而不是让它们自己去拥挤的五金店里翻找”。这种将复杂抽象概念具象化的能力,是区分平庸技术书籍和经典之作的关键。我特别希望看到书中对性能优化部分的描述,它不应该是枯燥的CPU占用率图表,而应该是对“流畅性”的直观感受的精准量化——比如,如何通过一帧的延迟减少,来“解放”用户的注意力。如果书中能将这些硬核的性能指标,转化为读者眼中“丝滑体验”的生动故事,那么它就成功地架起了技术细节与最终用户感知之间的桥梁。这种叙事上的高超技巧,往往是需要多年实践才能凝练出来的宝贵经验。
我听闻这本书的结构组织堪称匠心独运,据说它并非采用那种线性叙事——“学完这个再学那个”的传统技术手册模式。相反,我推测它更像是一部探索性的散文集,或者说,是一份精心策划的“开发者日记”。想象一下,每一章可能都以一个具体的、引人入胜的实际案例为引子,比如一个复杂的实时数据同步场景,或者一个挑战性能极限的图形渲染任务。然后,作者会像侦探一样,层层剥开这个问题的技术内核,但重点永远放在“优雅的解决方案”上。我尤其期待书中能包含那些“反模式”的讨论,那些我们自以为正确,但实际上会埋下技术债务的陷阱。如果书中真的能提供一套行之有效的“代码重构美学”工具箱,比如如何判断一个函数何时开始变得“丑陋”,以及如何用最小的改动实现最大的可读性提升,那这本书就不仅仅是一本技术参考书,它简直是软件艺术的鉴赏指南。它的深度,也许在于它敢于质疑行业内那些被奉为圭臬的“最佳实践”,鼓励读者建立自己的判断体系。
这本关于移动应用开发的著作,虽然我没有亲身阅读,但从其散发出的某种“气场”来看,它无疑触及了技术书籍中一个非常核心的议题:**“美学”与“工程”的交汇点**。我猜想,作者在书中一定花了大量的篇幅来探讨,优秀的软件设计,不仅仅是功能的堆砌和代码的严谨,更应该是一种直抵人心的体验设计。例如,他们会不会深入剖析了苹果UI/UX设计指南背后的哲学思想?那种对留白、对动效细腻程度的执着,究竟是如何转化为用户对整个应用的忠诚度的?我脑海中浮现出对书页上可能出现的那些精美插图的想象——也许是通过对比展示“糟糕的导航”与“优雅的过渡动画”,用视觉语言来阐释抽象的架构概念。如果这本书真的成功地将那些晦涩难懂的面向对象设计原则,转化成如同建筑学原理般清晰的结构图示,那么它对初学者和资深工程师的价值都是不可估量的。它应该提供了一种超越纯粹“如何做”的层面,去思考“为什么这样做才是对的”的更高层次的认知。我相信,这本书的真正价值不在于教你最新的API调用,而在于塑造你的“移动开发者审美观”。
这本书给人的感觉,似乎有一种强烈的“人文关怀”色彩,这在冰冷的技术书籍中是相当罕见的。我猜想,作者可能深知,开发过程中的挫败感往往源于工具的僵硬和反馈的滞后。因此,这本书的论述风格可能极其鼓励实验和迭代。它也许会有一整章专门讨论“调试的艺术”——如何通过观察和提问,而不是蛮力地插入断点,来理解程序在特定时刻的“意图”。此外,我希望书中能探讨构建一个真正具有“弹性”和“韧性”的应用所需要的心理准备。这可能涉及到如何优雅地处理网络中断、低电量模式下的行为降级,甚至是如何设计那些用户不会察觉到错误的“隐藏的恢复机制”。如果这本书真的能教会我们如何与系统的不完美共处,并将其转化为用户体验的亮点,那么它无疑超越了编程语言本身,触及了产品生命周期的哲学层面。这是一种成熟的、饱经风霜的工程师才会有的洞察力。
如果这本书真的如我所想的那样出色,那么它可能已经建立了一套属于自己的方法论,一套可以适用于任何新框架、任何新平台的方法论。我推测,在书的最后部分,作者并没有急于推荐下一个流行的库,而是回归到了开发者自身的“心法”上。这可能是一段关于如何保持好奇心和终身学习的深刻反思。或许,书中会讨论“技术债务的道德成本”——即我们为了快速交付而牺牲的清晰度,对未来团队士气的潜在损害。我特别期待看到作者对“代码可读性”的终极定义。它可能不再仅仅是关于命名规范,而是关于代码的“意图表达力”——你的代码能否在你不解释的情况下,向后来的维护者清楚地传达你当时的思考路径?如果这本书最终提供的,是一个可以指导开发者在技术选型、架构决策乃至团队沟通中保持清醒和远见的“指南针”,那么它就实现了从“工具书”到“思想启迪录”的飞跃。这样的作品,值得被反复阅读和珍藏。
太入门了,各种凑字数写够200页,而且有不少deprecated和错误的地方
简洁,清晰
短小的書,關注點很不錯,唯一遺憾是用Objective-C的代碼,沒有更新到Swift
短小的書,關注點很不錯,唯一遺憾是用Objective-C的代碼,沒有更新到Swift
最初级的入门书,浅显易懂。