1) Nu neapărat. Cred că ar fi mai corect să spunem că probabil merită să scrieți codul de backend în C ++, indiferent de implicațiile de performanță. Chiar dacă nu poți să-ți iei legăturile de sus în jos pe comutatorul platformei, ți-ar fi prudent să faci pregătiri pentru această eventualitate, din moment ce tipurile de management tind să-și schimbe mintea fără prea multe motive sau avertismente; chiar dacă decid să nu schimbe acum, nu înseamnă că nu vor decide să schimbe șase luni de acum. Scriind logica în C ++ acum, știind că este o posibilitate, deși mai dificilă, vă poate face viața mai ușoară mai târziu.
2) Nu chiar. Există "soluții", cum ar fi wxWindows și GTK #, dar de cele mai multe ori sunt buggy sau dificil de a lucra corect sau lipsesc ceva important pe o platformă sau alta. De asemenea, vă blochează, de obicei, într-un UI cu cel mai mic numitor comun (de exemplu, controalele generale funcționează bine, dar puteți uita că vreodată faceți ceva interesant - WPF, de exemplu). UI-urile sunt ușor de scris, deci cred că dacă îți scrieți logica în ceva portabil, ar trebui să fie o problemă banală de a bate împreună mai multe UI-uri specifice platformei.