WxWidgets FAQ Introduction

Материал из Wiki.crossplatform.ru

Версия от 11:29, 25 февраля 2009; ViGOur (Обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Содержание

Introduction

About

This is a tutorial, that will introduce you to the programming with the wxWidgets toolkit.

wxWidgets

wxWidgets is a GUI (Graphical User Interface) toolkit for creating C++ applications. It is an opensource, mature and cross-platform toolkit. wxWidgets applications run on all major OS platforms, Windows, Unix and Mac. The project was started by Julian Smart in 1992. wxWidgets is much more than a toolkit. It provides a large variety of classes for handling streams, databases, threads, online help or application settings. wxWidgets consists of a large group of widgets. The community around wxWidgets is grouped around their website

The C++ programming language

The C++ programming language is one of the most widely used programming languages on this planet. It is used in the majority of the most famous applications like MS Office, Macromedia Flash, Firefox, Photoshop or 3D Max. C++ dominates also the world of PC games. It is one of the most difficult programming languages. On the other hand, programming in C++ in 2007 is different from programming in 1997. Things got easier a lot nowadays.

The TIOBE Programming Community Index gives us a theoretical usage of various programming languages. Java rules. The C++ language is detroned. But C++ will continue to be used in it's footholds for the coming decades and ther seems to be no real threat for it. We can clearly see specialization among programming languages. Java is used mainly in enterprise projects and portables, C is the king in system programming (OS, device drivers, small apps), PHP rules among small to medium size web sites, Javasript is used on the client site of a web application.

Position Language Ratings
1 Java 21.7%
2 C 14.9%
3 Visual Basic 10.7%
4 PHP 10.2%
5 C++ 9.9%
6 Perl 5.4%
7 C# 3.4%
8 Python 3.0%
9 JavaScript 2.7%
10 Ruby 2.0%

C/C++ are still the most widely used languages for classical desktop GUI applications. There is a nice article why Java will not wipe out C++ in the coming years.

Multiplatform programming

Today, multiplatform programming is a buzzword. Most languages and libraries want to be multiplatform. wxWidgets was created as a multiplatform tool from the beginning. Most developers choose among these options. If it is possible, the go web. Or they can use Qt, wxWidgets, Swing or SWT. There is also one litte gem called FLTK, but it is not that popular. There is not the best choice. In our country, we have a large railroad company. This company is using a software written in Java and Swing. There was probably a reason for that choice. It is cheaper to buy new hardware and develop in Java. The company bought together the hardware and the software. As a solution. Using Java we code faster and there will be less bugs. Clearly, this option is better. But when we code a text editor in Java, we cannot say to our customer's, hey guys, you need to buy additional 1GB memory. And there are situations, where Java just can't compete. The Qt library is the closest competitor to wxWidgets. Using the right tool for the right job is one of the most importat decisions programmer's (or management) do.