没有合适的资源?快使用搜索试试~ 我知道了~
首页iOS编程指南:Big Nerd Ranch PDF版
iOS编程指南:Big Nerd Ranch PDF版
需积分: 10 13 下载量 85 浏览量
更新于2024-07-22
收藏 14.44MB PDF 举报
"《iOS Programming The Big Nerd Ranch Guide》是一本由Christian Keur、Aaron Hillegass和Joe Conway共同编写的权威指南,版权属于2014年的Big Nerd Ranch, LLC。该书是专为iOS开发人员设计的,旨在深入讲解iOS编程的各个方面,适合初学者和有经验的开发者提升技能。
书中涵盖了iOS应用开发的基础知识,包括Swift语言的介绍,Objective-C的兼容性,以及Apple生态系统的框架如UIKit、Foundation、Core Data和MapKit等的使用。作者们以实用和直观的方式传授知识,通过实例演示和项目实践帮助读者理解并掌握iOS应用的构建过程。
作为Big Nerd Ranch的标志性商标的10-gallon hat with propeller logo,强调了本书的实用性和Big Nerd Ranch独特的教学风格。此版本的书籍由Pearson Technology Group在全球范围内独家发行,确保了读者能够获得正版资源。
值得注意的是,尽管作者和出版社致力于提供高质量的内容,但本书并非无错误的百科全书,也不承担任何明确或隐含的保修责任。对于因使用本书造成的偶然或间接损失,作者和出版社不承担责任。因此,读者在学习过程中应当具备批判性思维,利用官方文档和社区支持来解决可能遇到的问题。
《iOS Programming The Big Nerd Ranch Guide》是一本不可或缺的iOS开发工具书,无论是为了初次入门还是进阶学习,都能为开发者提供系统化的指导和深入的实践体验。"
Our Teaching Philosophy
This book will teach you the essential concepts of iOS programming. At the same time, you will type
in a lot of code and build a bunch of applications. By the end of the book, you will have knowledge
and experience. However, all the knowledge should not (and, in this book, will not) come first. That
is sort of the traditional way we have all come to know and hate. Instead, we take a learn-while-
doing approach. Development concepts and actual coding go together.
Here is what we have learned over the years of teaching iOS programming:
We have learned what ideas people must grasp to get started programming, and we focus on that
subset.
We have learned that people learn best when these concepts are introduced as they are needed.
We have learned that programming knowledge and experience grow best when they grow
together.
We have learned that “going through the motions” is much more important than it sounds. Many
times we will ask you to start typing in code before you understand it. We realize that you may
feel like a trained monkey typing in a bunch of code that you do not fully grasp. But the best way
to learn coding is to find and fix your typos. Far from being a drag, this basic debugging is where
you really learn the ins and outs of the code. That is why we encourage you to type in the code
yourself. You could just download it, but copying and pasting is not programming. We want
better for you and your skills.
What does this mean for you, the reader? To learn this way takes some trust. And we appreciate
yours. It also takes patience. As we lead you through these chapters, we will try to keep you
comfortable and tell you what is happening. However, there will be times when you will have to take
our word for it. (If you think this will bug you, keep reading – we have some ideas that might help.)
Do not get discouraged if you run across a concept that you do not understand right away. Remember
that we are intentionally not providing all the knowledge you will ever need all at once. If a concept
seems unclear, we will likely discuss it in more detail later when it becomes necessary. And some
things that are not clear at the beginning will suddenly make sense when you implement them the first
(or the twelfth) time.
People learn differently. It is possible that you will love how we hand out concepts on an as-needed
basis. It is also possible that you will find it frustrating. In case of the latter, here are some options:
Take a deep breath and wait it out. We will get there, and so will you.
Check the index. We will let it slide if you look ahead and read through a more advanced
discussion that occurs later in the book.
Check the online Apple documentation. This is an essential developer tool, and you will want
plenty of practice using it. Consult it early and often.
If Objective-C or object-oriented programming concepts are giving you a hard time (or if you
think they will), you might consider backing up and reading our Objective-C Programming: The
Big Nerd Ranch Guide.
How to Use This Book
This book is based on the class we teach at Big Nerd Ranch. As such, it was designed to be
consumed in a certain manner.
Set yourself a reasonable goal, like “I will do one chapter every day.” When you sit down to attack a
chapter, find a quiet place where you will not be interrupted for at least an hour. Shut down your
email, your Twitter client, and your chat program. This is not a time for multi-tasking; you will need
to concentrate.
Do the actual programming. You can read through a chapter first, if you like. But the real learning
comes when you sit down and code as you go. You will not really understand the idea until you have
written a program that uses it and, perhaps more importantly, debugged that program.
A couple of the exercises require supporting files. For example, in the first chapter you will need an
icon for your Quiz application, and we have one for you. You can download the resources and
solutions to the exercises from http://www.bignerdranch.com/solutions/iOSProgramming4ed.zip.
There are two types of learning. When you learn about the Peloponnesian War, you are simply adding
details to a scaffolding of ideas that you already understand. This is what we will call “Easy
Learning.” Yes, learning about the Peloponnesian War can take a long time, but you are seldom
flummoxed by it. Learning iOS programming, on the other hand, is “Hard Learning,” and you may find
yourself quite baffled at times, especially in the first few days. In writing this book, we have tried to
create an experience that will ease you over the bumps in the learning curve. Here are two things you
can do to make the journey easier:
Find someone who already knows how to write iOS applications and will answer your
questions. In particular, getting your application onto the device the first time is usually very
frustrating if you are doing it without the help of an experienced developer.
Get enough sleep. Sleepy people do not remember what they have learned.
Using an eBook
If you are reading this book on a Kindle or Kindle for iPad, we want to point out that reading the code
may be tricky at times. Longer lines of code will wrap to a second line based on the current font size.
This bothers us because we are really conscientious at Big Nerd Ranch about the way our code
appears on the page. Clear visual patterns in code make that code easier to understand.
Therefore, when you get to the point where you are actually typing in code, we suggest opening the
book on your Mac in Kindle for Mac, a free application you can download from Amazon.com. Make
the application window large enough so that you can see the code with no wrapping lines. In Kindle
for Mac’s larger window, you will also be able to see the figures in full detail. Using your Kindle or
iPad together with Kindle for Mac will give you the best of both worlds: convenient, portable reading
and the chance to examine the code in its intended form.
How This Book is Organized
In this book, each chapter addresses one or more ideas of iOS development through discussion and
hands-on practice. For more coding practice, most chapters include challenge exercises. We
encourage you to take on at least some of these. They are excellent for firming up the concepts
introduced in the chapter and making you a more confident iOS programmer. Finally, most chapters
conclude with one or two “For the More Curious” sections that explain certain consequences of the
concepts that were introduced earlier.
Chapter 1 introduces you to iOS programming as you build and deploy a tiny application. You will
get your feet wet with Xcode and the iOS simulator along with all the steps for creating projects and
files. The chapter includes a discussion of Model-View-Controller and how it relates to iOS
development.
Chapters 2 and 3 provide an overview of Objective-C and memory management. Although you will
not create an iOS application in these two chapters, you will build and debug a tool called RandomItems
to ground you in these concepts.
In Chapters 4 and 5, you will begin focusing on the iOS user interface as you learn about views and
the view hierarchy and create an application called Hypnosister.
Chapters 6 and 7 introduce view controllers for managing user interfaces with the HypnoNerd
application. You will get practice working with views and view controllers as well as navigating
between screens using a tab bar. You will also get plenty of experience with the important design
pattern of delegation as well as working with protocols, the debugger, and setting up local
notifications.
Chapter 8 introduces the largest application in the book – Homepwner. (By the way, “Homepwner” is
not a typo; you can find the definition of “pwn” at www.urbandictionary.com.) This application keeps
a record of your possessions in case of fire or other catastrophe. Homepwner will take fourteen chapters
to complete.
In Chapters 8, 9, and 19, you will build experience with tables. You will learn about table views,
their view controllers, and their data sources. You will learn how to display data in a table, how to
allow the user to edit the table, and how to improve the interface.
Chapter 10 builds on the navigation experience gained in Chapter 6. You will learn how to use
UINavigationController and you will give Homepwner a drill-down interface and a navigation bar.
In Chapter 11, you will learn how to take pictures with the camera and how to display and store
images in Homepwner. You will use NSDictionary and UIImagePickerController.
In Chapters 12 and 13, you will set Homepwner aside for a bit to create a drawing application named
TouchTracker to learn about touch events. You will see how to add multi-touch capability and how to
use UIGestureRecognizer to respond to particular gestures. You will also get experience with the
first responder and responder chain concepts and more practice with NSDictionary.
In Chapter 14, you will learn how to use debug gauges, Instruments, and the static analyzer to optimize
the performance of TouchTracker.
In Chapters 15 and 16, you will make Homepwner a universal application – an application that runs
natively on both the iPhone and the iPad. You will also work with Auto Layout to build an interface
that will appear correctly on any screen size.
In Chapter 17, you will learn about handling rotation and using UIPopoverController for the iPad and
modal view controllers.
Chapter 18 delves into ways to save and load data. In particular, you will archive data in the
Homepwner application.
In Chapter 20, you will update Homepwner to use Dynamic Type to support different font sizes that a
user may prefer.
Chapter 21 takes another break from Homepwner and introduces web services as you create the Nerdfeed
application. This application fetches and parses an RSS feed from a server using NSURLConnection
and NSXMLParser. Nerdfeed will also display a web page in a UIWebView.
In Chapter 22, you will learn about UISplitViewController and add a split view user interface to
Nerdfeed to take advantage of the iPad’s larger screen size.
Chapter 23 returns to the Homepwner application with an introduction to Core Data. You will change
Homepwner to store and load its data using an NSManagedObjectContext.
In Chapter 24, you will add state restoration to Homepwner to let users return to the application right
where they left off – no matter how long they are away.
Chapter 25 introduces the concepts and techniques of internationalization and localization. You will
learn about NSLocale, strings tables, and NSBundle as you localize parts of Homepwner.
In Chapter 26, you will use NSUserDefaults to save user preferences in a persistent manner. This
chapter will complete the Homepwner application.
Chapter 27 introduces the Core Animation framework with a brief return to the HypnoNerd application
to implement animations.
Chapter 28 introduces building applications using storyboards. You will piece together an
application using UIStoryboard and learn more about the pros and cons of using storyboards.
剩余724页未读,继续阅读
yizftw
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 天池大数据比赛:伪造人脸图像检测技术
- ADS1118数据手册中英文版合集
- Laravel 4/5包增强Eloquent模型本地化功能
- UCOSII 2.91版成功移植至STM8L平台
- 蓝色细线风格的PPT鱼骨图设计
- 基于Python的抖音舆情数据可视化分析系统
- C语言双人版游戏设计:别踩白块儿
- 创新色彩搭配的PPT鱼骨图设计展示
- SPICE公共代码库:综合资源管理
- 大气蓝灰配色PPT鱼骨图设计技巧
- 绿色风格四原因分析PPT鱼骨图设计
- 恺撒密码:古老而经典的替换加密技术解析
- C语言超市管理系统课程设计详细解析
- 深入分析:黑色因素的PPT鱼骨图应用
- 创新彩色圆点PPT鱼骨图制作与分析
- C语言课程设计:吃逗游戏源码分享
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功