Read an Excerpt
A lot of books claim that they're unique, but this one really is. The @ work series leads you directly into building the kinds of practical projects you're likely to encounter in a professional environment. That promise has appeal because readers have a very clear idea of what they want to build. The projects in this book are definitely in demand. (I know because all these projects have come up more than once in my job.) However, the idea that you can bypass details and learn just the facts is a potential fallacy that threatens the premise of this book series. In fact, I'd argue that there are only a few ways to learn difficult subjects and, unfortunately, none are "quick and easy."
In case you think I'm a walking contradiction, let me explain how this book can be to the point without being so "lite" that the projects aren't useful. It might sound terrible, but in this book you won't learn the Flash skills needed to build complex projects. But the projects you'll build aren't lightweight either. Rather, for each chapter, I've built adaptable support files that serve as engines that display your content. What you'll learn here is how to adapt and extend these engines for your projects. (Of course, you'll be able to investigate the files to see how I built them, but the focus is on using these files.)
These engines are not merely templates that you fill with your own content, switch a few colors, and then put your logo on. In fact, the engines are invisible. For example, when you add captions to a video (in Chapter 3, "Creating a Video with SynchronizedCaptions"), you create the text display and supply the actual captions. The engine handles the bulk of the timing and programming tasks and then simply sends a message to your display when a new caption should appear. Here's a wild analogy to illustrate how it works: Think of how you're insulated from the details involving exactly how your car works. You only have to interface with the steering wheel, gas pedal, and brakes. Now imagine if your car had modular components enabling you to change and modify everything in the interior. As long as you always included some sort of steering wheel, gas pedal, and brakes, the whole system would work.
I know the engines in this book work because I've already seen them customized and extended by several book reviewers. Furthermore, after writing the chapters, I began creating more and more templates that work within the engines (and you can download these from http://www.samspublishing.com). I also expect readers will develop even more templates and email them to me to share. (Making templates for the engines is easy; that's one of the main things you'll be doing in this book.)
Let me conclude with a few contrasting notes about what this book is and isn't, and who it's written for. This book is appropriate for a wide range of readers; some of you will simply replace a few colors and add your logo to the finished files I supply, while others will create very advanced templates that adapt and extend my engines. You'll definitely get a lot more out of the book if you're familiar enough with Flash that you're not fighting with its interface. I explain every step in detail, but I also know that it's easy to get lost if you've never touched Flash. The target audience for this book is an accomplished novice or intermediate Flash user. A lot of people learn how to create animations and projects with simple interactivity but then hit a wall that blocks them from tackling advanced projects. I'm writing for the reader who's at that wall but who wants to learn only how to get over the wall at handthe projects at hand in your work today.
This book is not a guide to Object Oriented Programming (OOP). Although all the code in my engines uses OOP as well as ActionScript 2 (AS2), you can build the projects using any style you want: You can do everything in the Flash timeline or make your own class files (that is, use AS2). You don't need any AS2 experience. The only AS2-specific task you must complete is to copy .as files into the folders in which you're building the projects. All my source files are open for your perusal (which, for me, is a lot like appearing in public in my underwearnot that I've done that). I'm not a hack programmer by any means, but don't expect the source files to be the most elegant examples of OOP you've ever seen. They will, of course, work for the task at hand and won't have a negative impact on performance.
Every project in this book assumes you're delivering content to Flash Player 8. I suppose that's not totally practical because many clients don't want to require their users to have the latest version of the Flash plug-in until after it has been out a while. (However, in Chapter 1, "Exploring Flash 8," I give you evidence for why the adoption rate is likely to occur quickly with Flash Player 8.) The reason the projects use features that require Flash Player 8 is not arbitrary. In every case, I'm embracing new features that either provide results previously unavailable or because they make the development of the project much easier.
The engines in this book are not Flash components. You won't receive a library of advanced UI components. Nor are the engines standalone applications. However, I did build a few helper applications that turned out very cool. For example, one tool lets you add cue points to video and audio in a very natural manner during video playback. I should also add that you won't find a bunch of clipart in the files I've made available for you to download from the accompanying CD-ROM. I hope I don't see a real project in which a reader uses my prototype graphics. Not that I mind, but they're pretty rough.
You are welcome to use any of the code from this book in your real projects. You have no further obligation to me and, similarly, there's no stated or implied guarantee that I will support the files (beyond maintaining the book errata). My point is simply that the projects really are ready for primetime and I expect you to use them.
Finally, for the third time, I'll reiterate that the projects are not lightweight. While I was writing them, I refused to build something that wasn't representative of a real project (and therefore was impractical). I've yet to persuade a client that we should remove a useful feature just because I found it hard to build, so I didn't use excuses here either. Having said that, it's possible you will want a specialty feature added to one of the engines. Realize that you'll learn how to make pretty significant changes to the projects throughout this book. I wouldn't be surprised if you wanted to insert an additional feature I didn't think of. In such cases, feel free to email me at email@example.com, and I might be motivated to actually build itat worst, I can point you in the right direction to help you build it yourself.Organization of This Book
This book is divided into three parts:
Part I, "Getting Started," introduces Flash 8 and provides your basic training for building projects in Flash. The two chapters in this part are really the prerequisites for the rest of the book; don't skip them.
Part II, "Projects," contains a variety of practical projects that are sure to come up in some form during your Flash career. They're not in any particular order and have little overlap or cross referencing. Therefore, you can read them in any order. For example, if you need to add captions to a video, start with Chapter 3, "Creating a Video with Synchronized Captions." If you need to make a PowerPoint-like presentation, jump directly to Chapter 7, "Creating a PowerPoint-style Slide Presentation." In each chapter you'll start by building a basic working version of the project and then go on to add enhancements and variations as you wish. For example, you'll create a quiz in Chapter 5, "Creating an Assessment Quiz," and have the opportunity to add all kinds of question types (such as multiple-choice and drag-and-drop). The chapters in this portion of the book contain the projects you can use on the job.
In Part III, "Appendixes," you'll find Appendix A, "Resources," which provides links and information about third-party products for Flash, important links on the Macromedia website, Flash community websites, plus some tips for accessing various Flash preferences on your own computer. Appendix B, "Components," can be thought of as the CliffsNotes version of a book called Learn How to Use Flash V2 Components in 24 Seconds (if it existed). There you'll learn the important highlights for using Flash components. Finally, the Glossary lists and defines the key terms used throughout the book.
The chapter-by-chapter project and media files are available on this book's CD.
Remember to visit the author's website at http://www.phillipkerman.com/at-work to access additional templates. You can even upload your successful template files to make them available to other readers of this book.
Go to http://www.samspublishing.com/register to register your book so you will be notified of future updates and errata or corrections.
Conventions Used in This Book
Caution - Be sure you extract all the files from each Zip file with the Use Folder Names option (for PC users) selected so you can get the same folders on your computer as included in each Zip file. Mac users can simply double-click the Zip file, and the folder structure should appear intact, as named.
This book uses the following conventions:
Italic is used to denote key terms when they first appear in the book.
Tip - Tips provide shortcuts to make your job easier or better ways to accomplish certain tasks.
Note - Notes provide additional information related to the surrounding topics.
Caution - Cautions alert you to potential problems and help you steer clear of disaster.
This indicates specific files that are available on the accompanying CD-ROM.
© Copyright Pearson Education. All rights reserved.