具体描述
With Pro iOS Web Design and Development, you’ll design websites and develop web applications for iPhone and iPad using web standards deployed with Apple's Safari browser.
Utilizing the very latest web and mobile technologies and releases, this book shows every web professional how to use HTML5 to do the heavy lifting, CSS3 to create the look and feel, and JavaScript to add program logic to their mobile sites and Web applications.
In addition, you’ll learn how to address the specific features made available through Apple's iOS, especially with regard to designing Web-based touch-screen interfaces.
Pro iOS Web Design and Development will help you deliver rich mobile user experiences without compromise by optimizing your sites for WebKit and Safari, the de facto standard for the iPhone, iPad, and iPod touch.
作者简介
With a background in psychology (University of Padova) and computer science
(University of Pisa), Andrea Picchi started designing WebApps for the new
Apple device in 2007 when the first iPhone was launched on the market. After
the first release of the Apple SDK in 2008, he started developing Native Apps
using Objective-C.
He also worked with the SimBin Development Team AB on the videogame
RACE07—The Official WTCC Game project—and supported the group’s iPhone
iUI Developers, iPhoneWebDev and iPhone Application Development
course at Stanford University.
In recent years, Andrea Picchi has spoken at many important conferences
around Europe, twice at the WhyMCA Mobile Developer Conference with a talk
on “The Cognitive Paradigm of Touch-Screen Devices” and another on “A
Cognitive Approach to the User-Centered Design for Mobile Design and Development.” He also
spoke at IASummit with a speech on “Cognitive Design and Optimization of Touch-Screen
Interfaces” and at UXConference with a speech on “Cognitive Optimization of Mobile Touch
Contexts.”
In 2011 he also started to teach “iOS WebApps” in a course also available on iTunesU and
“Mobile Device Development” in a first-level Master, both organized by the Computer Science
Department of the University of Pisa.
Today, as a mobile project manager, his priority has been to implement a cognitive approach
to touch-screen interface design in both mobile and ubiquitous computing contexts. He also
continues his work designing and developing for iOS with both the web model (using HTML5,
CSS3, JavaScript) and SDK model (using Cocoa-Touch in Objective-C).
目录信息
Title
Copyright
Dedication
Contents at a Glance
Contents
About the Author
About the Technical Reviewer
Acknowledgments
Preface
Introduction
Chapter 1: Think Mobile Touch
Why the Mobile Web?
From Desktop to Mobile
Mobile Market
Why Mobile Now?
A Mobile-Oriented Approach
Mobile-Oriented Guidelines
Apple's Mobile Hardware
Summary
Chapter 2: Agile Project Building for iOS Devices
Implementing a Mobile Information Architecture
What Is Information Architecture and Why Is It Important?
Abiding by the Golden Rules of Mobile Strategy
Content-Out Approach
Representing an Information Architecture with a Site Map
Sketching an Information Architecture with Wireframes
Visualizing Interactions Through Prototypes
Systematic Approach to Mobile Design
Accessibility in Apple Devices
Usability in iOS Devices
iPhone Page Model
iPhone User Interface
iPad Block Model
iPad User Interface
Tools for Apple Mobile Design
Summary
Chapter 3: Web Developmentfor iOS Devices
Web Development Tools
Development Frameworks
Mobile Web Site
Mobile Applications
Web Development Model
Web Development Model: Pros and Cons
Four Different Approaches to a WebApp
WebApp and Native App: What Makes the Difference for the User
Web Standards: HTML, CSS, and JavaScript
Browser Support for Standards: WebKit and Safari
SDK Development Model
Apple’s Objective-C, Cocoa Touch, and Xtools Model
Hi, I’m a Mac
Tools and Frameworks for Apple Mobile Development
Summary
Chapter 4: User Interface Design for iOS Devices
User Interface Design
What Is an Interface?
Everything Is an Interface
Negative Space
Color Psychology
The Interface Hierarchy
Reading Patterns
The User Interface Design Process
iPhone and iPad Compatible User Interface Design
Research
Structure
Aesthetic
Interaction
Deliverables
iPad Native-Like User Interface Design
Research
Structure
Aesthetic
Interaction
Deliverables
iPhone Native-Like User Interface Design
Research
Structure
Aesthetic
Interaction
Deliverable
Tools for User Interface Design
Summary
Chapter 5: iPhone UI Design: Think Simple
User Interface Sketching
Think Simple
The iPhone is an On-the-Go Device
The Essence of the iPhone Page Model
iPhone Limitations
The Nature of Users' Cognitive Resources
Anatomy of Sketching
Design Using Tools
Explore the Balsamiq Mockups Interface
Represent Connections
Designing with Adobe Fireworks
Creating a Canvas
Organize Levels
Layout Design
Interface Design
Reuse Design
Tools for User Interface Design
Summary
Chapter 6: iPad UI Design: Think Inverted
User Interface Sketching
Think Inverted
Inverted Simplicity
Remove and Prioritize
Hide and Shape
Shrink and Group
Key Points of the Simplicity-Complexity Paradox
Sketching the UI
Design Using Tools
Design with Adobe Fireworks
iPad-Compatible Version
iPad Native-Like Version
Summary
Chapter 7: Web Standards for WebKit: Maximizing Mobile Safari
Comparing iPhone and iPad for Web Presentation
HTML5
HTML5 Markup Syntax
HTML5 Re-Definitions
HTML5 Semantics
HTML5 Media
CSS3
Prefixes
Rounded Borders
Border Images
Gradients
Box Sizing
Box Shadow
Outline
Background Size
Background Origin
Multiple Backgrounds
Text Shadow
Text Overflow
Word Wrapping
Web Fonts
Tap Highlight
Multiple Columns
Spanning Columns
Transitions
Transforms
Animation
Keyframes
Reflections
Javascript
Adding Javascript to a Webpage
Javascript Structure
Data Categories
Reserved Words
Variables
Operators
Conditional Statements
Loop Statements
Functions
Variable Scope
Arrays
Strings
Objects
BOM (Browser Object Model)
DOM (Document Object Model)
Compare DOM and HTML Structure
Working with DOM
Some Javascript Best Practices
Resource on Web Standards
Summary
Chapter 8: Native iOS EnvironmentDevelopment
Setting up the Environment
Defining Viewport
Full-Screen Mode Application
Adding the Springboard Icon
Application Startup Image
Application Redirecting
Setting up the Head Section
Native Link Emulation
Native Text Emulation
Native Element Emulation
Native Scrolling Emulation
Native iOS Service Interaction
The Phone Application
The Mail Application
The SMS Application
The Maps Application
Touch Events and Gesture Interactions
Touch Event Paradigm: Touch Is Not a Click
Native and Customized Touch Event Handler
Create Touchable Design Elements
Orientation Change Event
Orientation Change Media Query
Expand a Framework for iOS
Resources for Coding
Summary
Chapter 9: Native iOS Design Implementation
iPhone Page Model Implementation
Implement the Native-Like Page Structure
iPhone Native Interface Emulation
The Top Bar Section
The Page Title Element
The Breadcrumb Bar
The Hero Content Area
The Menu Area
The Footer Section
Summary
Chapter 10: Optimizing iOS WebApps
iPad and iPhone Compatibility
Performance Optimization
Code Optimization
Image Optimization
Application Compressing
Usability Optimization
Offline WebApp
The Manifest File
Mobile SEO
Anatomy of a Search Engine
Search Engine Oriented Design
Resource on Optimization and SEO
Summary
Chapter 11: Testing iOS WebApps
Web Development Lifecycles
Web Application Testing
Agile Tests
Heat Map Tests
Organizing a Test
Creating Use-Cases
Creating the Assets
Performing a Test
Paper Prototype
Electronic Prototype
Evaluating a Test
Variables and Feedback to Evaluate
Number of Touches
Number of Mistakes
Estimated Time of Arrival
Collecting Feedback
Evaluation Techniques
Resources on Testing
Summary
Chapter 12: Maximizing the Market for iOS WebApps
Use Your Mobile Strategy
How to Promote Your WebApp
Use Beta Invitation Testers
Use Press Releases
Create a WebApp Web Site
Use E-mail Marketing
Create YouTube Video Tutorials
Submit to Apple WebApp Portal
Submit to Other WebApp Portals
Use the Virality of Social Networks
Monetizing a WebApp
Resources on WebApp Market
Summary
Chapter 13: Looking Beyond the Mobile Web to Ubiquitous Computing
The Explosion of Mobile Devices, Wireless, and Cellular Communications
Next-Generation User Experience with Touchscreen and Multitouch Technology
New Technology, New Usability, and New Opportunity
How the Multitouch-Screen Revolution Will Change Next-Generation Computing
From Domestic to Ubiquitous Computing and Ambient Intelligence
Resources for Telecommunication and Ubiquitous Computing
Summary
Index
· · · · · · (收起)
读后感
用户评价
坦白说,我之前尝试过好几本同类主题的教材,但很多都陷入了那种干巴巴的理论堆砌,读起来晦涩难懂,仿佛在啃一本教科书的官方文档。然而,这本书的叙事风格却异常流畅和亲切,作者似乎非常懂得如何与读者进行“对话”。它不仅仅是陈述“是什么”,更深入地探讨了“为什么会这样设计”以及“在实际项目中如何规避陷阱”。例如,在讲解视图控制器生命周期时,作者会穿插一些真实的崩溃日志分析,告诉你某个操作顺序出错会导致什么后果,而不是仅仅列出那些标准的`viewDidLoad`和`viewDidAppear`方法。这种基于实战经验的讲解方式,极大地增强了内容的实用性和可信度。它没有避讳技术栈的复杂性,反而将其拆解成易于消化的步骤,即便是涉及底层API调用或复杂的内存管理时,也总能找到一个清晰的类比或一个巧妙的注解来引导我们跨越理解的鸿沟。读完一章,我感觉自己像是跟一个经验丰富的前辈进行了一次深度辅导,收获的远不止知识点本身。
我特别欣赏作者在处理“新兴技术和未来趋势”这一部分时所展现出的审慎和远见。很多技术书籍在内容更新上总是滞后于技术发展的步伐,要么内容过时,要么盲目追逐热点。这本书则显得尤为平衡。它在介绍当前主流技术栈的同时,也花篇幅探讨了未来可能的发展方向和正在酝酿中的重大技术变革。比如,对于某些被认为会取代现有范式的新技术,作者并非一味唱赞歌,而是客观地列出了其当前阶段的局限性和尚未解决的实际工程问题。这种“批判性学习”的角度,非常有助于读者形成独立的技术判断力,而不是人云亦云地跟风。它鼓励我们去思考“为什么”要选择某项技术,而不是仅仅满足于“能用”即可。这种前瞻性思维的培养,对于任何立志于长期在行业内深耕的开发者来说,都是极其宝贵的财富,使得这本书的参考价值能够更持久地保持下去。
这本书的知识结构安排简直是教科书级别的典范,逻辑递进得丝丝入扣,完全符合一个技术学习者从入门到精通的认知曲线。它并没有急于抛出那些最新的、花里胡哨的框架特性,而是非常扎实地从最基础的平台架构和核心编程范式入手。比如,在进入到UI构建之前,作者花了相当的篇幅来巩固Swift语言的特性,特别是那些在并发和协议导向编程中至关重要的部分,这使得后续学习MVVM、VIPER等架构模式时,基础更加稳固。然后,它非常自然地将焦点转移到网络层和数据持久化,处理了诸如RESTful API的设计规范、错误处理的最佳实践,以及SQLite或Core Data的选择考量。这种由底层向表层的、由基础到应用的构建,确保了读者不会因为基础不牢而对高层应用逻辑产生雾里看花的感觉。对我来说,最关键的是它能帮我建立一个完整的知识地图,让我清楚地知道当前学习的知识点在整个开发体系中处于哪个位置。
在内容深度上,这本书无疑超越了我预期的水准。很多市面上的书籍往往只停留在“如何实现”的层面,教你敲出可以运行的代码,但对于背后的设计哲学和性能优化细节却一笔带过。这本书却明显是抱着培养“架构师”而非“代码工人”的心态来编写的。它不仅展示了如何使用某个API,还深入分析了该API在不同场景下的性能开销和潜在的资源浪费点。例如,在涉及到图像加载和缓存策略时,作者详尽地比较了基于内存缓存、磁盘缓存以及混合策略的优缺点,甚至给出了具体的内存使用阈值建议。更令人惊喜的是,书中对调试和性能分析工具的使用也进行了详尽的指导,包括如何利用Instruments来定位内存泄漏和CPU热点。这种对“工程质量”的极致追求,让这本书的价值大大提升,它不再是一本简单的教程,更像是一本实战手册和性能调优的参考指南。
这本书的排版和装帧简直是业界良心,拿到手就能感受到那种沉甸甸的质感,这对于需要经常翻阅的技术书籍来说简直是福音。内页的纸张选用了那种略带哑光的,即便是长时间阅读也不会觉得眼睛很累,而且墨水的清晰度非常高,代码块的缩进和高亮处理得恰到好处,即便是初学者也能一眼分辨出关键字和变量,这一点在学习复杂的面向对象编程时显得尤为重要。装订处非常牢固,我试着将它完全摊平在桌面上,书脊也没有出现任何松动的迹象,这确保了我们在查找特定章节或回顾旧知识点时,不必担心书本会散架。更值得称赞的是,这本书的插图和流程图设计也十分用心。它们不仅仅是简单的示意图,而是真正起到了辅助理解的作用,比如在解释多线程调度或网络请求生命周期时,那些精美的UML图或者时序图,瞬间将抽象的概念具象化了。这种对细节的关注度,体现了作者和出版社在图书制作上的匠心,让阅读体验从知识的输入过程,升华为一种享受。
通篇都在扯理论,垃圾,建议参照《HTML5秘籍》以及官方文档。吐槽一句:貌似这个Apress出版这种黑黄封面的书质量都不行。
通篇都在扯理论,垃圾,建议参照《HTML5秘籍》以及官方文档。吐槽一句:貌似这个Apress出版这种黑黄封面的书质量都不行。
通篇都在扯理论,垃圾,建议参照《HTML5秘籍》以及官方文档。吐槽一句:貌似这个Apress出版这种黑黄封面的书质量都不行。
通篇都在扯理论,垃圾,建议参照《HTML5秘籍》以及官方文档。吐槽一句:貌似这个Apress出版这种黑黄封面的书质量都不行。
通篇都在扯理论,垃圾,建议参照《HTML5秘籍》以及官方文档。吐槽一句:貌似这个Apress出版这种黑黄封面的书质量都不行。