{{sellerTotalView > 1 ? __("sellers", {number: sellerTotalView}) : __("seller", {number: sellerTotalView}) }}, {{numTotalView > 1 ? __("items", {number: numTotalView}) : __("item", {number: numTotalView}) }}
free FREE

Change Your Zip Code

Inventory information and delivery speeds may vary for different locations.

Location History

{{email ? __('Got it!') : __('Restock Alert')}}

We will notify you by email when the item back in stock.

Cancel
Yami

Jingdong book

好学的Objective-C

{{buttonTypePin == 3 ? __("Scan to view more PinGo") : __("Scan to start")}}

好学的Objective-C

{{__(":people-members", {'people': item.limit_people_count})}} {{ itemCurrency }}{{ item.valid_price }} {{ itemCurrency }}{{ item.invalid_price }} {{ itemDiscount }}
Ends in
{{ itemCurrency }}{{ item.valid_price }}
{{ itemCurrency }}{{ priceFormat(item.valid_price / item.bundle_specification) }}/{{ item.unit }}
{{ itemDiscount }}
{{ itemCurrency }}{{ item.valid_price }} {{ itemCurrency }}{{ priceFormat(item.valid_price / item.bundle_specification) }}/{{ item.unit }} {{ itemCurrency }}{{ item.invalid_price }} {{itemDiscount}}
{{ itemCurrency }}{{ item.valid_price }}
Sale ends in
Sale will starts after Sale ends in
{{ getSeckillDesc(item.seckill_data) }}
{{ __( "Pay with Gift Card to get sale price: :itemCurrency:price", { 'itemCurrency' : itemCurrency, 'price' : (item.giftcard_price ? priceFormat(item.giftcard_price) : '0.00') } ) }} ({{ itemCurrency }}{{ priceFormat(item.giftcard_price / item.bundle_specification) }}/{{ item.unit }}) Details
Best before

Currently unavailable.

We don't know when or if this item will be back in stock.

Unavailable in your area.
Sold Out

Details

Full product details
Content Description

要为市面上最热门的Mac、iPhone和iPad等设备创建应用,就必须掌握Objective-C和面向对象编程。《好学的Objective-C》作者是顶尖的Mac开发人员和专业作家。通过本书的详尽指引,即使是编程新手也可以迅速学会Objective-C。本书全方位地介绍了Objective-C,从基础知识到资深程序员所使用的高级技术等众多主题,其中包括内存管理、多个框架的结合使用、线程安全的技巧,以及Xcode的详细用法等。通过阅读本书,读者将能够:掌握Objective-C语法、运行时和Xcode,编写出第一个移动应用程序创建类,使用属性,了解对象使用代码块、线程、KVO和协议定义和编写宏,处理错误并在项目中使用框架清理线程,学会使用设计模式,掌握高级技术利用NSCoder读写数据为Windows、Linux和其他平台编写代码本书既能引导Mac、iPhone和iPad开发新手入门,又可帮助高级程序员提高技能,是Objective-C开发人员的案头必备书籍。
Author Description

Jiva DeVoe,拥有25年的软件开发经验,是专门开发iPhone和Mac OS X 应用的Random Ideas软件公司的创始人,已有多个iPhone应用成为苹果广告中的推荐应用。此外,他还是Cocoa Touch for iPhone OS 3 Developer Reference的作者。
Catalogue

第一部分 Objective-C 简介
第1 章 Objective-C 简介
1.1 使用Xcode 进行开发
1.1.1 新建项目
1.1.2 项目文件
1.1.3 添加源码文件
1.1.4 主Xcode 窗口
1.2 理解编译过程
1.2.1 编码
1.2.2 源码、编译代码和可执行文件
1.2.3 查看应用包
1.2.4 编译设置
1.3 使用Xcode 静态分析器
1.4 Objective-C 运行时
1.5 小结
第2 章 基本语法
2.1 使用语句和表达式
2.1.1 声明变量
2.1.2 使用注释
2.1.3 标量类型
2.1.4 使用特殊变量修饰符
2.1.5 结构体
2.1.6 使用类型定义
2.1.7 使用enum
2.1.8 指针
2.1.9 使用运算符
2.1.10 三目运算符
2.2 使用函数
2.2.1 函数
2.2.2 定义函数
2.2.3 实现与接口
2.2.4 链接实现文件
2.3 控制程序流43
2.3.1 使用条件语句
2.3.2 使用循环语句
2.4 活学活用
2.5 小结
第3 章 添加对象
3.1 对象
3.1.1 创建类
3.1.2 声明对象
3.1.3 调用对象方法
3.2 使用属性
3.2.1 状态和行为的区别
3.2.2 使用点标记
3.3 应用对象
3.3.1 创建员工对象
3.3.2 创建经理类
3.3.3 在HR 主函数中关联不同的类
3.4 小结
第4 章 Objective-C 内存管理
4.1 使用引用计数
4.1.1 内存管理规则
4.1.2 使用自动释放
4.1.3 对象内部的内存
4.2 使用垃圾回收
4.2.1 垃圾回收器
4.2.2 为项目配置垃圾回收
4.2.3 在垃圾回收项目中使用框架
4.3 关键的垃圾回收模式
4.3.1 管理有限的资源
4.3.2 编写支持垃圾回收的基础应用
4.3.3 处理nib 文件中的对象
4.3.4 强制垃圾回收
4.3.5 处理空指针和垃圾回收
4.3.6 使用垃圾回收的面向对象接口
4.4 项目使用的内存管理模型
4.5 小结
第二部分 更多特性
第5 章 代码块
5.1 了解代码块
5.1.1 声明代码块
5.1.2 使用代码块
5.2 了解重要的代码块作用域
5.2.1 管理代码块内存
5.2.2 通过typedef 提高代码块的可读性
5.3 在线程中使用代码块
5.3.1 使用GCD
5.3.2 使用GCD 在线程中调度代码块
5.4 通用的代码块设计模式
5.4.1 将代码块作为映射
5.4.2 在标准API 中使用代码块
5.5 在易并行任务中应用代码块
5.5.1 创建项目
5.5.2 在数组中使用代码块过滤素数
5.5.3 使用GCD
5.6 小结
第6 章 键值编码和键值观察
6.1 通过键值编码访问对象属性
6.1.1 键路径
6.1.2 编写符合KVC 标准的存取器方法
6.1.3 在数组中使用KVC 123
6.1.4 在结构体和标量中使用KVC
6.1.5 查找对象特性
6.2 观察对符合KVC 标准的值的修改
6.2.1 使用KVO
6.2.2 注册成为观察者
6.2.3 定义KVO 的回调
6.2.4 移除观察者
6.2.5 实现手动通知
6.2.6 使用KVO 的风险
6.3 应用键值观察
6.4 小结
第7 章 使用协议
7.1 优先使用组合而不是继承
7.1.1 了解为什么不需要(或不想要)多继承
7.1.2 理解协议如何解决问题
7.1.3 记录期望别人实现的接口
7.2 在对象中实现协议
7.2.1 声明协议
7.2.2 声明一个类实现了协议
7.2.3 声明一个必须实现协议的对象
7.2.4 正式协议和非正式协议
7.2.5 确定一个对象是否实现了可选方法
7.2.6 避免协议循环依赖
7.3 协议使用示例
7.4 小结
第8 章 扩展现有类
8.1 使用第三方框架和类
8.2 使用类别
8.2.1 声明类别
8.2.2 实现类别方法
8.2.3 在头文件中声明类别
8.2.4 使用类别
8.2.5 通过类别拆分功能
8.2.6 扩展类方法
8.2.7 分析类别的局限性
8.2.8 通过类别实现协议
8.2.9 了解在NSObject 上创建类别的风险
8.3 通过匿名类别扩展类
8.4 在现有类中关联变量
8.5 小结
第9 章 编写宏
9.1 回顾编译过程
9.2 定义宏
9.2.1 定义常量
9.2.2 通过编译传递常量
9.2.3 在宏中使用变量
9.2.4 字符串化
9.2.5 使用条件判断
9.2.6 使用内置宏
9.3 小结
第10 章 错误处理
10.1 错误分类
10.2 使用错误处理的不同机制
10.2.1 使用返回码
10.2.2 使用异常
10.2.3 使用NSError
10.3 小结
第三部分 使用 Foundation 框架
第11 章 了解框架之间如何配合工作
11.1 了解Foundation 框架
11.2 在项目中使用框架
11.2.1 添加框架
11.2.2 包含头文件
11.2.3 考虑垃圾回收
11.3 小结
第12 章 使用字符串
12.1 了解字符串声明语法
12.1.1 使用格式化字符串
12.1.2 使用其他NSString 方法
12.1.3 使用NSString 类别
12.2 小结
第13 章 使用集合
13.1 使用数组
13.1.1 使用字典
13.1.2 使用Set 集合
13.1.3 认识可变性
13.2 了解集合和内存管理
13.3 遍历
13.4 向元素发送消息
13.5 排序和过滤
13.6 在集合中使用代码块
13.7 小结
第14 章 使用NSValue、NSNumber和NSData
14.1 使用NSValue 和NSNumber
14.1.1 通过NSValue 包装任意数据类型
14.1.2 通过NSNumber 包装数字
14.1.3 通过NSDecimalNumber进行算术运算
14.2 使用NSData 和NSMutableData
14.2.1 创建NSData 对象
14.2.2 访问NSData 对象中的生数据
14.3 小结
第15 章 处理时间和日期
构建日期
使用时间间隔
日期比较
使用NSCalender
使用时区
15.1 使用NSDateFormatter
15.2 小结
第四部分 高级主题
第16 章 通过多个线程实现多处理
16.1 同步代码
16.1.1 使用锁
16.1.2 使用@synchronize 关键字
16.1.3 理解原子性
16.2 创建NSTread
16.2.1 创建线程
16.2.2 控制运行的线程
16.2.3 访问主线程
16.2.4 通过执行选择器跨线程
16.3 使用NSOperation 和NSOperationQueue
16.3.1 创建操作
16.3.2 将操作加入到队列
16.3.3 控制队列参数
16.3.4 使用不同的操作
16.4 小结
第17 章 Objective-C 设计模式
17.1 识别解决方案中的模式
17.2 用Objective-C 描述设计模式
17.2.1 使用单例
17.2.2 委托责任
17.2.3 将变化通知给多个对象
17.3 小结
第18 章 利用NSCoder 读写数据
在对象上实现NSCoding 协议
对象编码
基本类型编码
使用对象图
使用其他类型的数据
解码对象
18.1 使用NSArchiver 和NSUnarchiver
18.2 处理存档文件格式和遗留数据
18.3 小结
第19 章 在其他平台上使用Objective-C
19.1 使用GNUstep
19.1.1 使用Cocotron
19.1.2 使用其他开源库
19.2 展望未来
19.3 小结
Introduction

序言

Objetive-C在IT行业可谓受到了不公平的对待。尽管它很强大,并且是动态的面向对象语言,但却没有像C++、Java等语言一样得到足够认可。

在为iPhone OS 3写Cocoa Touch时,我意识到了需要写一本配套的书,以帮助新手们在接触Cocoa和Cocoa Touch等高层框架之前克服学习Objective-C的障碍。

所以当有人请我写一本专门介绍Objective-C语言的书时,我欣然接受了。

最后,我感觉到可以通过这本书向Mac、iPhone和iPad开发新手们介绍基础知识,因此万分激动。我期待这本书可以催化Objective-C在更多不同平台上发展。Objective-C完全有理由在Unix、Windows等平台上使用。

读者只需具备有限的计算机知识。我会从最基础的知识开始阐述,但是你至少需要懂得一些操作计算机的基础知识。

如果你已经熟悉了其他一些编程语言,这也不会有任何负面影响。我介绍的一些东西对你而言可能是一种回顾,不要担心,你会学到很多关于Objective-C的细节。

如果你接触过Objective-C,希望你可以在本书中发现一些有价值的新信息。我会努力将这些知识设计得便于你查找。这样一来,你无需逐页浏览,就能跳到某一部分并了解如何完成你想完成的任务。

对于本书中使用的一些约定,我尽量确保一致,同时尽量遵照苹果的约定。唯一一个比较明显的例外就是使用“方法”来表示实例和类的函数。苹果通常会倾向于使用“消息”。某种程度上这是缘于Objective-C受到Smalltalk的影响。

关于键盘快捷方式,我选用“Command键”这一术语来表示多数苹果键盘上空格键左侧的键。大家可能知道它也叫苹果键,因为就在几年前它上面会印有一个苹果标志。此外Command键旁边的键称为Option键,Option键旁边的就是Control键。这些是和苹果文档的约定保持一致的。

关于存储对象的变量,我通常会把它们称作“实例变量”。有些书会习惯用该术语或者其缩写“ivar”来指代作为类的一部分的变量。对此,我喜欢使用“成员变量”。在我看来,成员变量可以是实例变量,但不是所有的实例变量都是成员变量。

在文中提及方法时,我会遵照苹果引用它们的约定:使用方法名,但不包括参数。比如以下方法:

-(void)someMethodUsingParam1:(NSString *)param1 andParam2:(NSString *)param2;

就会被写做:-someMethodUsingParam1:andParam2。如果它是一个类方法,打头的连字符就会被替换成一个+号,就像你在写类定义中的方法一样。

关于示例代码,在需要构建完整项目的章节,通常我会尽可能提供代码的完整列表。在没有提供的情况下,你可以从本书网站上下载包含图片资源和其他相关支持文件的项目。有部分章节可能无法创建一个完整的项目来展示相关技术。在这种情况下,代码列表可能只是一些片段,你可用作自定义代码的基础。由于这些代码片段无法构成功能完整的项目,在网站上也就没有提供示例项目。

我希望你在阅读本书时会有一种和我写作时一样的愉悦体验。在我看来,一本好的技术书的标志就是它不会被束之高阁。它会被好好地放在书桌上或者书桌旁,因为经常需要翻阅它。我希望这本书在你的手中也会有这样的地位,并且希望它书角翘起、封面破损,每页都留有潦草的笔迹,但仍然能在未来几年对你有所帮助。

……

Specifications

Brand Jingdong book
Brand Origin China

Disclaimer

Product packaging, specifications and price are subject to change without notice. All information about the products on our website is provided for information purposes only. Please always read labels, warnings and directions provided with the product before use.

View Full Terms of Use
Add to favorites
{{ $isZh ? coupon.coupon_name_sub : coupon.coupon_ename_sub | formatCurrency }}
{{__("Buy Directly")}} {{ itemCurrency }}{{ item.directly_price }}
Quantity
{{ quantity }}
{{ instockMsg }}
{{ limitText }}
{{buttonTypePin == 3 ? __("Scan to view more PinGo") : __("Scan to start")}}
Sold by JD@CHINA
Ship to
{{ __("Ship to United States only") }}
Free shipping over 69
Genuine guarantee

Added to Cart

Keep Shopping

More to Consider

{{ item.brand_name }}

{{ item.item_name }}

{{ item.currency }}{{ item.market_price }}

{{ item.currency }}{{ item.unit_price }}

{{ item.currency }}{{ item.unit_price }}

Coupons

{{ coupon.coupon_name_new | formatCurrency }}
Clip Clipped Over
{{ getCouponDescStr(coupon) }}
{{ coupon.use_time_desc }}
Expires soon {{ formatTime(coupon.use_end_time) }}

Share this item with friends

Cancel

Yami Gift Card

Get this exclusive deal when paying with gift card

Terms and Conditions

Gift card deals are special offers for selected products;

The gift card deals will automatically be activated if a customer uses gift card balance at check out and the balance is sufficient to pay for the total price of the shopping cart products with gift card deals;

You will not be able to activate the gift card deals if you choose other payment methods besides gift card. The products will be purchased at their normal prices;

If your account balance is not enough to pay for the products with gift card deals, you can choose to reload your gift card balance by clicking on the Reload button at either shopping cart page or check out page;

Products that have gift card deals can be recognized by a special symbol showing 'GC Deal';

For any additional questions or concerns, please contact our customer service;

Yamibuy reserves the right of final interpretation.

Sold by Yami

Service Guarantee

Yami Free Shipping over $49
Yami Easy Returns
Yami Ships from United States

Shipping

  • United States

    Standard Shipping is $5.99 (Excluding Alaska & Hawaii). Free on orders of $49 or more.

    Local Express is $5.99 (Available in Parts of CA, NJ, MA & PA). Free on orders of $49 or more.

    2-Day Express (Includes Alaska & Hawaii) starts at $19.99.

Return Policy

Yami is committed to provide our customers with a peace of mind when purchasing from us. Most items shipped from Yamibuy.com can be returned within 30 days of receipt of shipment (For Food, Beverages, Snacks, Dry Goods, Health supplements, Fresh Grocery and Perishables Goods, within 7 days of receipt of shipment due to damages or quality issues; To ensure that every customer receives safe and high-quality products, we do not provide refunds or returns for beauty products once they have been opened or used, except in the case of quality issues; Some products may have different policies or requirements associated with them, please see below for products under special categories, or contact Yami Customer Service for further assistance).
Thank you for your understanding and support.

Learn More

Sold by Yami

Terms and Conditions of Yami E-Gift Card

If you choose “Redeem automatically” as your delivery method, your gift card balance will be reload automatically after your order has been processed successfully;

If you choose “Send to Email”as your delivery method, the card number and CVV will be sent to the email address automatically;

Any user can use the card number and CVV to redeem the gift card, please keep your gift card information safely. If you have any trouble receiving email, please contact Yami customer service;

Yami gift card can be used to purchase both Yami owned or Marketplace products;

Yami gift card will never expire;

Yami gift card balance does not have to be used up at once;

All rights reserved by Yami.

Return Policy

Gift card that has already been consumed is non-refundable.

Sold by JD@CHINA

Service Guarantee

Yami Free Shipping over $49
Yami Easy Returns
Yami Ships from United States

Shipping

  • United States

    Standard Shipping is $5.99 (Excluding Alaska & Hawaii). Free on orders of $49 or more.

    Local Express is $5.99 (Available in Parts of CA, NJ, MA & PA). Free on orders of $49 or more.

    2-Day Express (Includes Alaska & Hawaii) starts at $19.99.

Return Policy

You may return product within 30 days upon receiving the product. Items returned must be new in it's original packing, including the original invoice for the purchase. Customer return product at their own expense.

Sold by JD@CHINA

Service Guarantee

Yami Cross-store Free Shipping over $69
Yami 30-days Return

Yami-China FC

Yami has a consolidation warehouse in China which collects multiple sellers’ packages and combines to one order. Our Yami consolidation warehouse will directly ship the packages to your door. Cross-store free shipping over $69.

Return Policy

You may return products within 30 days upon receiving the products. Sellers take responsibilities for any wrong shipment or missing items. Packing needs to be unopened for any other than quality issues return. We promise to pack carefully, but because goods are taking long journey to destinations, simple damages to packaging may occur. Any damages not causing internal goods quality problems are not allowed to return. If you open the package and any quality problem is found, please contact customer service within three days after receipt of goods.

Shipping Information

Yami Consolidation Service Shipping Fee $9.99(Free shipping over $69)

Sellers in China will ship their orders within 1-2 business days once the order is placed. Packages are sent to our consolidation warehouse in China and combined there. Our Yami consolidation warehouse will directly ship the packages to you via UPS. The average time for UPS to ship from China to the United States is about 10 working days and it can be traced using the tracking number. Due to the pandemic, the delivery time may be delayed by about 5 days. The package needs to be signed by the guest. If the receipt is not signed, the customer shall bear the risk of loss of the package.

Sold by JD@CHINA

Service Guarantee

Free shipping over 69
Genuine guarantee

Shipping

Yami Consolidated Shipping $9.99(Free shipping over $69)


Seller will ship the orders within 1-2 business days. The logistics time limit is expected to be 7-15 working days. In case of customs clearance, the delivery time will be extended by 3-7 days. The final receipt date is subject to the information of the postal company.

Yami Points information

All items are excluding from any promotion or points events on Yamibuy.com

Return Policy

You may return product within 30 days upon receiving the product. Items returned must be new in it's original packing, including the original invoice for the purchase. Customer return product at their own expense.

Yami

Download the Yami App

Back Top

Recommended for You

About the brand

Jingdong book

为您推荐

Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折

Reviews{{'('+ commentList.posts_count + ')'}}

Have your say. Be the first to help other guests.

Write a review
{{ totalRating }} Write a review
  • {{i}} star

    {{i}} stars

    {{ parseInt(commentRatingList[i]) }}%

Yami Yami
{{ comment.user_name }}

{{ showTranslate(comment) }}Show Less

{{ strLimit(comment,800) }}Show more

Show Original

{{ comment.content }}

Yami
Show All

{{ formatTime(comment.in_dtm) }} VERIFIED PURCHASE {{groupData}}

{{ comment.likes_count }} {{ comment.likes_count }} {{ comment.reply_count }} {{comment.in_user==uid ? __('Delete') : __('Report')}}
Yami Yami
{{ comment.user_name }}

{{ showTranslate(comment) }}Show Less

{{ strLimit(comment,800) }}Show more

Show Original

{{ comment.content }}

Yami
Show All

{{ formatTime(comment.in_dtm) }} VERIFIED PURCHASE {{groupData}}

{{ comment.likes_count }} {{ comment.likes_count }} {{ comment.reply_count }} {{comment.in_user==uid ? __('Delete') : __('Report')}}

No related comment~

Review

Yami Yami

{{ showTranslate(commentDetails) }}Show Less

{{ strLimit(commentDetails,800) }}Show more

Show Original

{{ commentDetails.content }}

Yami
Show All

{{ formatTime(commentDetails.in_dtm) }} VERIFIED PURCHASE {{groupData}}

{{ commentDetails.likes_count }} {{ commentDetails.likes_count }} {{ commentDetails.reply_count }} {{commentDetails.in_user==uid ? __('Delete') : __('Report')}}

Please write at least one word

Comments{{'(' + replyList.length + ')'}}

Yami Yami

{{ showTranslate(reply) }}Show Less

{{ strLimit(reply,800) }}Show more

Show Original

{{ reply.reply_content }}

{{ formatTime(reply.reply_in_dtm) }}

{{ reply.reply_likes_count }} {{ reply.reply_likes_count }} {{ reply.reply_reply_count }} {{reply.reply_in_user==uid ? __('Delete') : __('Report')}}

Please write at least one word

Cancel

That’s all the comments so far!

Write a review
How would you rate this item?

Please add your comment.

  • A nice nickname will make your comments more popular!
  • The nickname in your account will be changed to the same as here.
Thanks for your review
Our community rely on great reviews like yours to find the best of Asia.

Report

If you find this content inappropriate and think it should be removed from the Yami.com site, let us know please.

Cancel

Are you sure to delete your review?

Cancel

You’ve Recently Viewed

About the brand

Jingdong book