Jump to content

Hacking:Technical decisions: Difference between revisions

m
→‎C++ and Qt: I smoothed the wording & fixed grammar where I was sure that I wasn't changing the meaning.
m (→‎Historical background: "then" is the proper word for subsequent temporal relation)
m (→‎C++ and Qt: I smoothed the wording & fixed grammar where I was sure that I wasn't changing the meaning.)
 
Line 17:
== C++ and Qt ==
 
When you decide to use Qt you also want to decide which language to use too. There are several [https://en.wikipedia.org/wiki/List_of_language_bindings_for_Qt_5 bindings], but waswe decided to use a native one - C++. The C++ language itself has a lot of problems and some criticize it a lot. But still it is good language if you need speed and your application is very complex, (many CAD systems are written onin C++).) Of course, as was mentioned before, Qt itself is also a big reason why we use C++.
 
Qt's killer feature for us was [https://doc.qt.io/qt-5/graphicsview.html Graphics View Framework]. This set of classes allow us to quick build the GUI for manipulating objects. A lot of developer teams do their own research in this area, but we decided not to reinvent a wheel and concentrate on more important things and not reinvent a wheel. Of course this is not all. Qt is a standalone cross-platform framework with very good documentation and a lot of examples. It brings almost all classes and abstractions we need to build Seamly2D. Almost all because, additionally, we adopted [http://beltoforion.de/article.php?a=muparser muParser] library for our formula parsing.
 
In the end it allows us to build a project that has only one external dependence: Qt itself. And this fact makemakes maintaining very easy., Somewhich some users appreciate this fact very much.
 
== Code Repository Hosting ==
61

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.