GNOME 3 Application Development Beginner's Guide. Step-by-step practical guide to get to grips with GNOME application development - Helion
Tytuł oryginału: GNOME 3 Application Development Beginner's Guide. Step-by-step practical guide to get to grips with GNOME application development
ISBN: 9781849519434
stron: 366, Format: ebook
Data wydania: 2013-02-20
Księgarnia: Helion
Cena książki: 129,00 zł
GNOME is a desktop environment and graphical user interface that runs on top of a computer operating system. GNOME 3 provides both modern desktops and development platforms with more than 50 supported languages of the world. Since 1999, it has been evolving into a very nice desktop to use and an interesting platform to develop on. "GNOME 3 Application Development Beginner's Guide" is about developing GNOME 3 application with Vala and JavaScript programming languages. It guides the reader to build Gtk+, Clutter, and HTML5 applications on the GNOME 3 platform. It covers GNOME 3 specific subsystems such as data access, multimedia, networking, and filesystem. It also covers good software engineering practices such as localization and testing.This book is full of step-by-step tutorials and ready to run codes. The examples are written in a simple and straightforward way to make it easier for the reader to get a thorough understanding of the topics.The book starts with the installation of GNOME 3 and ends with building two exciting projects, a web browser and a Twitter client. The book starts from the basics and gradually talks about more advanced topics.It then guides the readers in using the development environment starts from Anjuta IDE, Glade, and DevHelp. The essential GNOME 3 subsystems like GStreamer, GLib, GIO, GSettings, Evolutions Data Server, WebKit, and GNOME desktop are then uncovered one by one. Then the internationalization, localization, and unit testing techniques are brought up."GNOME 3 Application Development Beginner's Guide" is really a guide that a novice GNOME 3 application developer must not miss.
Osoby które kupowały "GNOME 3 Application Development Beginner's Guide. Step-by-step practical guide to get to grips with GNOME application development", wybierały także:
- Windows Media Center. Domowe centrum rozrywki 66,67 zł, (8,00 zł -88%)
- Ruby on Rails. Ćwiczenia 18,75 zł, (3,00 zł -84%)
- Przywództwo w świecie VUCA. Jak być skutecznym liderem w niepewnym środowisku 58,64 zł, (12,90 zł -78%)
- Scrum. O zwinnym zarządzaniu projektami. Wydanie II rozszerzone 58,64 zł, (12,90 zł -78%)
- Od hierarchii do turkusu, czyli jak zarządzać w XXI wieku 58,64 zł, (12,90 zł -78%)
Spis treści
GNOME 3 Application Development Beginner's Guide. Step-by-step practical guide to get to grips with GNOME application development eBook -- spis treści
- GNOME 3 Application Development Beginners Guide
- Table of Contents
- GNOME 3 Application Development Beginner's Guide
- Credits
- About the Author
- About the Reviewers
- www.PacktPub.com
- Support files, eBooks, discount offers and more
- Why Subscribe?
- Free Access for Packt account holders
- Support files, eBooks, discount offers and more
- Preface
- What this book covers
- What you need for this book
- Who this book is for
- Conventions
- Time for action heading
- What just happened?
- Pop quiz heading
- Have a go hero heading
- Reader feedback
- Customer support
- Downloading the example code
- Errata
- Piracy
- Questions
- 1. Installing GNOME 3 and SDK
- System requirements
- The GNOME Shell
- GNOME Panel/Fallback
- Development requirements
- GNOME 3 desktop architecture
- GNOME and the SDK
- Time for action installing GNOME and SDK in Fedora 17
- What just happened?
- Marking packages to be installed
- Ready to install the packages
- Time for action installing GNOME and SDK in openSUSE 12
- What just happened?
- Marking SDK packages
- Starting the installation
- Time for action installing GNOME and SDK in Debian Testing
- What just happened?
- Marking SDK packages
- Applying the installation
- Time for action installing GNOME and SDK in Ubuntu 12.04
- What just happened?
- Continue installing the SDK
- Summary
- System requirements
- 2. Preparing Our Weapons
- Firing up Anjuta
- Time for action creating a new Vala project
- What just happened?
- The IDE layout
- Bookmarks
- Files
- Project
- Symbols
- Watches
- Breakpoints
- Messages
- Terminal
- Navigation between tabs
- Time for action navigating between tabs
- What just happened?
- Comment block
- Time for action commenting/uncommenting a block
- What just happened?
- Have a go hero uncommenting the block
- Time for action running the program for the first time
- What just happened?
- Make an error and see how it works
- Editing UI
- Time for action editing UI
- What just happened?
- Palette
- Widgets
- Time for action adding a label and a button
- What just happened?
- Time for action changing widget properties
- A responsive button
- Time for action making the button responsive
- What just happened?
- Pop quiz naming a signal
- Tracking symbols
- Time for action finding a symbol
- Getting help
- Summary
- 3. Programming Languages
- Programming GNOME with JavaScript
- Time for action saying hello to Seed
- What just happened?
- Have a go hero trying more JavaScript code here
- Time for action running our program with Seed
- What just happened?
- Loosely typed language
- Time for action playing with data types
- What just happened?
- Pop quiz what is the value now?
- Controlling iteration
- Time for action controlling Iteration
- What just happened?
- Have a go hero counting down
- Time for action manipulating an array
- What just happened?
- Have a go hero fill with anything you want
- Object-oriented programming (OOP) with JavaScript
- Time for action using the JavaScript object
- What just happened?
- With great power comes great responsibility
- Have a go hero another way to fill the object
- Constructing objects
- Time for action playing with constructors
- What just happened?
- Class and object
- Pop quiz can you see the difference now?
- Using prototypes
- Time for action adding prototypes
- What just happened?
- Have a go hero adding more methods
- Time for action modifying the prototype of an object
- What just happened?
- Pop quiz how to make it global then?
- Have a go hero changing the implementation details
- Modularization
- Time for action modularizing our program
- What just happened?
- Getting to know Vala
- Time for action entry point to our program
- What just happened?
- Have a go hero look at the generated C code
- Member access specifier
- Time for action defining member access
- What just happened?
- The access specifiers
- Pop quiz how to fix this?
- Basic data types
- Time for action experiment with data types
- What just happened?
- Gee, what is it?
- Time for action adding the Gee library
- What just happened?
- Time for action Gee in action
- What just happened?
- Initializing members when declaring
- Time for action watching for signals
- What just happened?
- Have a go hero putting parameters in signals
- Summary
- 4. Using GNOME Core Libraries
- Before we start
- The GLib main loop
- Time for action playing with the GLib main loop
- What just happened?
- Have a go hero stopping the timeout
- GObject signals
- Time for action handling GObject signals
- What just happened?
- Have a go hero writing it in Vala
- GLib properties
- Time for action accessing properties
- What just happened?
- Pop quiz why the value of zero is printed out
- Have a go hero making a property read-only
- Configuration files
- Time for action reading configuration files
- What just happened?
- Have a go hero multi-section configuration
- GIO, the input/output library
- Time for action accessing files
- What just happened?
- Network access with GIO
- Time for action accessing a network
- What just happened?
- Have a go hero making an echo server
- Understanding GSettings
- Time for action learning GSettings
- What just happened?
- GSettings API
- Time for action accessing GSettings programmatically
- What just happened?
- Summary
- 5. Building Graphical User Interface Applications
- Before we start
- Creating a basic GTK+ application
- Time for action implementing the mockup
- What just happened?
- Pop quiz
- Have a go hero creating a Vala version
- Time for action adding icons to the buttons
- What just happened?
- Have a go hero adjusting the icon placement
- Porting the code without GtkBuilder
- Time for action programming with raw GTK+
- What just happened?
- GUI programming with Clutter
- Time for action implementing the mockup with Clutter
- What just happened?
- Have a go hero playing with the animations
- Summary
- 6. Creating Widgets
- Before we take off
- Overriding the widget's standard functions
- Time for action overriding the set_title function
- What just happened?
- Adding new functionalities
- Time for action making a composite widget
- What just happened?
- Maintaining compatibility
- Have a go hero hiding the entry after use
- Implementing a GTK+ custom widget
- Time for action implementing the custom widget
- What just happened?
- Maintaining widgets in a library
- Time for action creating a library
- What just happened?
- Summary
- 7. Having Fun with Multimedia
- Packages required
- Understanding the basic concept of GStreamer
- Accessing the GStreamer pipeline with the command line
- Time for action testing the pipeline
- What just happened?
- Time for action programmatically playing the audio
- What just happened?
- Time for action handling the events
- What just happened?
- Playing a video media
- Time for action playing video
- What just happened?
- Have a go hero defining the audio first
- Time for action programmatically playing the video
- What just happened?
- Summary
- 8. Playing with Data
- Presenting data with TreeView
- Time for action using TreeView
- What just happened?
- The Evolution Data Server (EDS) architecture
- Time for action setting up the address book and the calendar data source
- What just happened?
- Time for action accessing the address book
- What just happened?
- Have a go hero saving data to the address book
- Summary
- 9. Deploying HTML5 Applications with GNOME
- Before we start
- Embedding WebKit
- Time for action embedding WebKit
- What just happened?
- Runtime with JavaScriptCore
- Time for action calling the Vala object from the frontend
- What just happened?
- Have a go hero using a separate HTML file
- Time for action connecting GNOME with client-side JavaScript
- What just happened?
- Have a go hero where to put index.html
- Summary
- 10. Desktop Integration
- Talking to each other with D-Bus
- Time for action listening to D-Bus
- What just happened?
- Pop quiz a good example application?
- The GNOME session manager
- Time for action talking to the session manager
- What just happened?
- Have a go hero checking all nulls
- Launcher
- Time for action putting our application in the launcher
- What just happened?
- GNOME keyring
- Time for action storing passwords securely
- What just happened?
- Notification system
- Time for action sending notifications
- What just happened?
- Have a go hero displaying an icon
- Summary
- 11. Making Our Applications Go International
- Understanding locale
- Time for action getting the available locales
- What just happened?
- Have a go hero exploring the locale parameters
- Time for action adding a locale
- What just happened?
- Time for action getting different outputs with different locales
- What just happened?
- Have a go hero using a bogus local identifier
- i18n in a Vala project
- Time for action bootstrapping the infrastructure
- What just happened?
- Time for action creating a UI
- What just happened?
- Time for action translating UI texts
- What just happened?
- Have a go hero installing another locale
- The localization process
- Summary
- 12. Quality Made Easy
- Reasons for performing unit testing
- Time for action creating our first unit test
- What just happened?
- Have a go hero checking the actual value
- Stubbing our tests
- Time for action creating stubs
- What just happened?
- Testing GUI modules
- Time for action testing a GTK+ module
- What just happened?
- Have a go hero adding missing tests
- Summary
- 13. Exciting Projects
- Part I web browser
- Time for action designing our UI
- What just happened?
- Browser interaction
- Time for action preparing the build infrastructure
- What just happened?
- Time for action finishing up
- What just happened?
- Have a go hero creating more tests
- Part II A Twitter client
- Time for action implementing the Twitter client
- What just happened?
- Summary
- A. Pop Quiz Answers
- Chapter 2, Preparing Our Weapons
- Pop quiz naming a signal
- Chapter 3, Programming Languages
- Pop quiz how to fix this?
- Pop quiz what is the value now?
- Pop quiz can you see the difference now?
- Pop quiz how to make it global
- Chapter 4, Using GNOME Core Libraries
- Pop quiz why the value of zero is printed out
- Chapter 5, Building Graphical User Interface Applications
- Pop quiz
- Chapter 10, Desktop Integration
- Pop quiz a good example application
- Chapter 2, Preparing Our Weapons
- Index