Article View: pl.comp.lang.c
Article #310542Re: Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
From: heby
Date: Sun, 21 Apr 2024 16:31
Date: Sun, 21 Apr 2024 16:31
79 lines
4480 bytes
4480 bytes
On 21/04/2024 15:49, Jacek Marcin Jaworski wrote: > Qt::ConnectionType, które jest param. f. QObject::connect() o którym nie > miałem pojęcia. Programujesz od 14 lat w Qt. Nie jest problem, że tego nie wiesz, nie każdy wie wszystko. Problem w tym, że wyciągasz daleko idące wnioski i lamenty, ze swojej ignorancji. Ubierając je w patoformalizm, staja się jeszcze bardziej żałosne. > 3. Mimo, że pracowałem na pełen etat nad prog. opartymi na C++ i Qt, to > w żadnej z 3 polskich firemek w których były one w użyciu nie mogłem się > doprosić komercyjnej licencji. Komercyja licencja nic nie zmienia. Qt jest takie samo. > A wiem, że qt.io ma specjalną bazę wiedzy > dla komercyjnych klientów (miałem nadzieję, że dzięki niej poznam Qt-way). Ta wiedza jest dostepna w googlu. Powiem inaczej: Wzorzec projektowy signal-slot *DOMYŚLNIE* nie używa pętli komunikatów. To jest jego domyslna zasada działania generycznej implementacji s-s, takiej jak boost::signal. Fakt, że nie szukałeś takiego trybu pracy w Qt oznacza, że nie wiesz jak działa wzorzec projektowy s-s. > 1. Złośliwości takie jak zmuszanie do nużącego spr. błędów zwracanych > przez wartość (brak użycia wyjątków); Przyjazne w programowaniu funkcyjnym. > 2. Złośliwości takie jak łapanie lecących wyjątków w pętli zdarzeń > (przez to nie można ich łapać w f. main()); main() nie musi być dnem pętli komunikatów. Dnem może być np. wątek, albo callback systemowy. Zrzucanie wyjątków poniżej dna wątku lub przez callback systemowy może być UB. Qt ma swoje rozwiązania różnych przypadków tego typu. Nie musisz z nich korzystać, jesli koniecznie chcesz sobie strzelić w kolano. Jeśli jednak wyjątek spada *poniżej* pętli komunikatów, to masz coś poważnie spieprzone. > 3. Złośliwości takie jak brak możliwości wywołania f. > QApplication::exec() w f. innej niż main(); A kto broni? > 4. Złośliwości takie jak celowo popsute kl. QMainWindow, QDocWidget, > QMdiArea; Nie okresliłeś co popsute. > 8. Złośliwości takie jak nazewnictwo odwrotne od działania takie jak w > QSizePolicy; Albo niepojmowanie do czego służy. > 9. Złośliwości takie jak Qt Creator, który nie przestrzega zasady > zero-conf, który jest zakodowany całkowicie odwrotnie do zaleceń twórców > sys. Unix p. Kena Thomson i Denisa Ritchi, które brzmi: "Pisz prog., > które spełniają jedno zadanie i robią to dobrze. Pisz prog. > umożliwiające wspólpracę. Pisz prog. do obsługi strumieni tekstowych, > ponieważ one tworzą uniwersalny interfejs." (to cytat. z Linux Magazine > PL nr z kwi. 2024, s. 67); Zero konkretów co jest źle z Qt creatorem. Nie używaj creatora, jesli nie lubisz. Nie ma wymogu. > 10. Złośliwości takie jak odp. na pyt. "Jak kodować wtyczki dla Qt > Creator?" "Zobacz sobie w kodzie jakiejś gotowej wtyczki."; Bardzo dobra rada. Ludzie wolą żywy kod, niż 100 stron pdfa "jak napisać 40 linijek". > 11. Złośliwości takie jak częste zmiany API wtyczek w Qt Creator; API Qt creatora nie jest stabilne. Swoje kontrolki powinieneć kompilować z każdym buildem aplikacji na nowo. Skąd wytrzasnąłeś obietnicę stabilnego API/ABI?
Technical Details
Message-ID:
<v03f1s$d2fg$1@dont-email.me>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erje.net!feeder.erje.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mailReferences:
<v00jvv$ntr$2$Jaworski@news.chmurka.net> <v018ir$3rl7p$1@dont-email.me> <v035hh$9lm$1$Jaworski@news.chmurka.net>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erje.net!feeder.erje.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: heby <heby@poczta.onet.pl> Newsgroups: pl.comp.lang.c Subject: Re: Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych Date: Sun, 21 Apr 2024 18:31:55 +0200 Organization: A noiseless patient Spider Lines: 80 Message-ID: <v03f1s$d2fg$1@dont-email.me> References: <v00jvv$ntr$2$Jaworski@news.chmurka.net> <v018ir$3rl7p$1@dont-email.me> <v035hh$9lm$1$Jaworski@news.chmurka.net> MIME-Version: 1.0 Injection-Date: Sun, 21 Apr 2024 18:31:56 +0200 (CEST) Injection-Info: dont-email.me; posting-host="4fcba039a15ea2af5b9eed3d39206607"; logging-data="428528"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19cVFmRrCSCONABUM2BY3iJ" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:yu7itjyMESD7siBpnhFa2BZTVWA= In-Reply-To: <v035hh$9lm$1$Jaworski@news.chmurka.net> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit