Visit our Sponsor:
|
|
Pre-Conference Training
Registration opens at 8am, and classes begin at 9am.
Cocoa (Chris Hanson)
- Introduction and Overview of the Camp
- Object-Oriented Programming and The Objective-C Language
- OOP basics
- Review of OOP
- Classes, instances, messages, and methods
- Objective-C
- Declaring and defining classes
- Sending messages to objects
- Declaring protocols
- The dynamic runtime
- FoundationKit 101
- NSObject, the root of it all
- Allocation and initialization
- Memory management
- NSString/NSMutableString
- Lab 1: Introducer
- Introducer is a simple tool that creates an Introducer object which says hello to anyone and everyone.
- Using Project Builder and Cocoa Browser
- Source code organization
- Logging with NSLog
- Lab time
- Stepping through the code for Introducer
- FoundationKit 102
- NSNumber
- NSArray
- NSDictionary
- NSData
- Lab 2: Introducer II
- Introducer II is an extension of Introducer that creates one Introducer for each name in an array, and uses that to introduce the name.
- AppKit 100
- Interface Builder introduction
- The Target-Action design pattern
- Lab 3: Currency Converter
- The currency converter application illustrates the basic use of Interface Builder.
- Break for Lunch
- AppKit 101
- The Model-View-Controller design pattern
- The Delegation design pattern
- NSWindow, NSButton, NSTextField, and NSPopUpButton
- Lab 4: Introducer III
- Introducer III is an application that lets a user pick a name from a list, and displays the appropriate introduction for each name.
- AppKit 102
- NSTableView
- NSUserDefaults
- Lab 5: Introducer IV
- Introducer IV is an extension of Introducer III that allows the appropriate introductions to be entered for each user.
- AppKit 103
- The multi-document architecture
- The text system and attributed strings
- Lab 6: SimpleHTMLEditor
- SimpleHTMLEditor is an HTML editor that allows HTML documents to be opened and edited in a two-pane window. The bottom pane is a normal text-editing window, while the top pane shows the styled text.
- AppKit Brain Dump
- NSResponder & the responder chain
- Undo & redo
- NSView, NSControl, and NSCell
Chris Hanson has been developing software on the Macintosh for thirteen years, and using Cocoa for six. Through his consulting company, bDistributed.com, he does custom Mac OS X development and porting and custom WebObjects development for corporate clients. His weblog is at http://www.livejournal.com/users/chanson/.
Tcl/Tk (Clif Flynt)
- Introduction to Tcl/Tk
- Describes why and where Tcl is being used, the language's strengths, and tools for learning, programming, and debugging Tcl code.
- Introduces Tcl syntax, substitution rules and basic commands.
- Example: Build a GUI calculator with 30 lines of code.
- An overview of Tcl/Tk
- Discussion of Tcl/Tk features
- Discussion of Tcl/Tk command syntax
- Describe Tcl variables, assignment, loop commands
- Describe Tcl/Tk development tools
- List resources for learning and extending Tcl/Tk
- Demonstrate building a Tcl/Tk application
- This session covers:
- set
- expr
- for
- append
- exit
- button widget
- foreach
- label widget
- grid
- Tcl as Glue
- Introduces using Tcl/Tk as a wrapper for other programs, starting and retrieving input from the slave tasks, and displaying the output.
- Example: button bar to automate and organize tasks.
- Tcl/Tk and Large Program Management
- Describe the Tcl list variables
- Introduce Local/Global variable Scope
- How to create Tcl procedures with a fixed number of parameters
- How to create Tcl procedures with default values
- How to create Tcl procedures that accept an undefined number of parameters
- Invoking new programs from a Tcl script
- Retrieving status and output from child tasks
- Displaying large amounts of text
- This session covers:
- file commands
- scrollbar widget
- text widget
- eval
- proc
- toplevel widget
- exec
- list commands
- file selector widget
- source
- cd
- more grid options
- switch
- String Manipulation with Tcl/Tk
- This session introduces methods for parsing strings using Tcl's list, string and regular expression support.
- Example: A web robot that will download an html page, parse the page, retrieve a selected item from the page and display a downloaded image on a canvas.
- Large Program Management with Tcl/Tk
- Using package and namespace
- Parsing with string commands
- Parsing with regular expressions
- Regular expression syntax
- Introduce the canvas widget
- This session covers:
- string commands
- regexp
- regsub
- http package
- canvas widget
- image widget
- Tcl I/O: Using files, pipes and sockets
- Introduces Tcl input/output. The lecture discusses reading and writing to files, sockets and other programs.
- The Tcl associative array is introduced, with examples describing how it can be used to simplify a project.
- More techniques for using the canvas are described.
- Example: Using the socket commands to create a client/server shared-whiteboard groupware project application.
- Client/Server Architecture in Tcl
- stdin and stdout
- File channels
- Sockets
- Configuring a channel
- Commands for manipulating associative array elements.
- Commands for manipulating entire associative arrays.
- Techniques for data organization with naming conventions.
- Creating a canvas
- Creating items on a Tk canvas
- Manipulating the items on a canvas
- This session covers:
- array set/get/names
- client and server sockets
- fileevent
- canvas widget
- scrollbar widget
- Complex client/server architecture
Clif Flynt has been a professional programmer since 1978 and a Tcl devotee since 1993. Clif wrote the TclTutor computer-aided instruction package, and writes the "Tclsh Spot" series for ;login: magazine. His books include Tcl/Tk: A Developer's Guide, and Tcl/Tk for Real Programmers. He has taught at the college level, and provided Tcl/Tk training to corporations around the world.
If you are interested in registering for either of these one-day pre-conference training sessions, visit our online registration page.
|