I've seen a lot of developers trying hard to get their apps as native-looking as possible (relative to the OS) by using GUI toolkits like GTK+, WxWidgets and so on. It made me wonder if it is kind of a must or if i can go other way.

I like design languages like Material and Flat design, and i'd like to develop a desktop app with such characteristics, for i saw on the Gnome website that i can style my GTK+ 3 apps with CSS (including CSS3 features).

Do you have any advice on that, regarding to the User Experience perspective? Is there any impact on the UX by which i should opt for designing a native-looking GUI/UI?

I've only worked with web development and i want become a C++ programmer, so this is why my questions. I haven't made any GUI yet but i already have these doubts, so if you can help me, i appreciate.

1 Answer 1


The reason to use "native-looking" OS-specifc styling is to maintain consistency with other apps that the user has used before. If you release an iOS app with Android style navigation then the user, who is likely used to iOS style navigation, may become confused or at least slowed down. This is the same with desktop apps.

However, like most things in UX, this is just a best practice. If you have a good reason to deviate away from the standards then you can absolutely do so. Just keep your users in mind when you are creating the interface.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.