Presentation is loading. Please wait.

Presentation is loading. Please wait.

Dispelling Cross-Platform Software Development Myths

Similar presentations


Presentation on theme: "Dispelling Cross-Platform Software Development Myths"— Presentation transcript:

1 Dispelling Cross-Platform Software Development Myths
Cross-Platform GUI Programming with wxWidgets Kevin Hock August 2005

2 Overview Who am I? What is cross-platform development?
Why cross-platform? Cross-platform myths Recap wxWidgets wxWidgets book

3 Who am I? Miami University (OH) Visiting Instructor
Founded BitWise Communications Created BitWise IM wxWidgets developer wxWidgets book co-author

4 What is cross-platform?
Applications for multiple platforms Platform-agnostic API Write once, compile/run everywhere GUI layout Advanced classes

5 Why cross-platform? Heterogeneous world Growing Linux / OS X markets
Increased market share Increased customer satisfaction Not locked to a platform

6 Myth #1: Slow applications
wxWidgets is a thin wrapper CPU speeds increasing Few real-time applications Hand in hand with slow, is… Mahogany Mail (Linux)

7

8 Myth #2: Large libraries required
Thin wrapper Statically link wxWidgets Avoid rpm / so / dll issues Compare sizes on Windows: Library Raw MB Zip MB Java 30+ 15 GTK+ 9+ 4 QT 4+ 2 wxWidgets <1 <1/2 Bulky libraries also mean…

9 Myth #3: Poor mobile support
Windows CE GPE using GTK+ wxX11 uses only X Palm OS 6 Adjust window layouts (small) So many devices, it must have… Life! on GPE

10 Myth #4: Non-native appearance
Uses OS widgets, not a skin If it’s native on all platforms, then don’t you have…

11

12

13

14 Myth #5: Awkward window layout
Sizers adapt to Fonts Languages Widget sizes Window sizes Sounds great, what about…

15 Myth #6: Non-standard dialogs
wxWidgets uses standard OS dialogs Non-native, used by another library Native, used by wxWidgets What if it doesn’t exist? Doesn’t that lead to…

16 Myth #7: Lowest common denominator
Generic widgets bridge gaps Platform-specific classes (wxWebkit) Custom-drawn application widgets Platform-specific code But wouldn’t this factoring still lead to… Audacity Sound Editor (Linux)

17

18 Myth #8: Have to learn OS details
wxWidgets abstracts – common API wxMenuBar, About / Preferences wxSound wxConfig wxSingleInstanceChecker wxLaunchDefaultBrowser Wow, all this must be really complicated…

19 Myth #9: Complicated, unstable
“More often than not wxWidgets gets out of the way of the programmer.” Well structured, easy to use API Excellent documentation 12 years of evolution Worldwide community Lists, newsgroups, forums, wiki What about support when I have a problem?

20 Myth #10: Locked into one vendor
Open source Worldwide community Cannot be discontinued Not a company, no profit motive Community support wxCode: community extensions But aren’t I still…

21 Myth #11: Locked into a technology
Standard C++, no extensions Use standard C++ libraries Library-agnostic New technologies embraced Free upgrades to new technologies! Old New Motif GTK GTK+ GTK+ 2 Win16 Win32 Carbon Cocoa Vista? But I’m still…

22 Why choose wxWidgets? Avoids common cross-platform issues Open-source
12 years of evolution Worldwide community Many supported platforms Advanced features

23 Who uses wxWidgets? Open source projects Small businesses
Large organizations: AMD AOL (Communicator) Carnegie-Mellon University Grisoft (AVG Anti-Virus) Lockheed Martin NASA OSAF - Chandler Xerox OSAF’s Chandler (Linux)

24

25 What’s in the book? Concepts & overviews Class descriptions
Code examples Discussions Project setup guides CD-ROM: code & utilities

26 Conclusion Powerful cross-platform framework Heterogeneous world
Target additional platforms Agile movement among platforms wxWidgets book Questions?


Download ppt "Dispelling Cross-Platform Software Development Myths"

Similar presentations


Ads by Google