-
Data: 2024-02-03 05:51:13
Temat: Jakie są dobre zasady programowania programów opartych na wtyczkach?
Od: Jacek Marcin Jaworski <j...@a...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Dzień dobry! (Mimo, że do świtu jeszcze prawie 2,5godz.)
Problem jaki teraz chcę poruszyć to programowanie w C++ programów
opartych o wtyczki. Tylko trik polega na tym, że są to programy
zdarzeniowe czyli używające biblioteki takiej jak Qt.
Model programu mam prosty i logiczny:
Logiki prog.->Narzędzia prog.->Bibl. własne->Bibl. obce
To co dla mnie jest kluczowe, to możliwość rozszerzania logik o wtyczki.
Problem jaki tu występuje, to hazard wynikający z przechodzenia zdarzeń
przez pętlę zdarzeń, która ma to do siebie że nie gwarantuje kiedy
zdarzenie będzie obsłużone. Dlatego wygodny mechanizm sygnał->slot w
przypadku wtyczek odpada (bo program staje się nieprzewidywalny).
W klasycznym ujęciu problem jest rozwiązywany banalnie: przez tablice
wsk. do f. (np. "tablice przerwań programowych" w M$ DOS).
Tylko, że w C++ nie mamy dostępu do tablic f. wirtualnych.
Jednak można sobie zdefiniować tablice f. C jako f. zwrotnych z góry
określoną sygnaturą i je wywoływać z wtyczek. Wadą jest to, że styk
miedzy prog. a wtyczką oparty jest nie na obiektach tylko na czystych f.
C (co oznacza konieczność użycia globalnych zm. we wtyczkach).
W tym przypadku do każdej logiki należało by dodać po jednej tablicy
tych f. C na każde przewidziane działanie wtyczek.
Z drugiej strony są szablony:
Można sobie wyobrazić tablicę obiektów pewnego szablonu (sygnatury f.).
I te obiekty mogą mieć albo wsk. do f. C albo wsk. do o. i f. (zgodnej z
sygnaturą). Tu należy zadbać jedynie o prawidłowe sygnatury f. i
operator porównania który jest konieczny dla f. tablicy removeAll().
To rozwiązanie jest dużo bardziej odlotowe od prostych tablic z f. C,
ale ma tą zaletę, że było by obiektowo i bez zm. globalnych we wtyczkach.
Pyt. są takie:
1. Czy macie jakieś inne pomysły na wywołania zwrotne z prog. do wtyczek?
2. Jak wasze prawdziwe prog. korzystają z wtyczek?
3. Jakbyście pisali nowy prog. oparty o wtyczki to które rozw. byście
wybrali?
Miłej sob. i nie.!
Jacek Marcin Jaworski
Następne wpisy z tego wątku
- 03.02.24 17:23 heby
Najnowsze wątki z tej grupy
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
Najnowsze wątki
- 2025-09-24 "Wybitna" inteligencja AI
- 2025-09-24 test stereo
- 2025-09-24 Bluetooth stereo
- 2025-09-24 Rzeszów => International Freight Forwarder <=
- 2025-09-24 Gdańsk => Delphi Programmer <=
- 2025-09-24 Warszawa => BI Developer / Analityk BI <=
- 2025-09-24 Alior zmiana logowania
- 2025-09-24 Warszawa => Senior Microsoft Dynamics 365 Business Central Consultant
- 2025-09-24 Andżelika Borys odwiedziła [WIELKIEGO PATRIOTĘ - przyp. JMJ] Andrzeja Poczobuta w [białoruskiej - przyp. JMJ] kolonii karnej
- 2025-09-24 W USA budują pierwszą komercyjną elektrownię fuzji jądrowej
- 2025-09-24 W USA budują pierwszą komercyjną elektrownię fuzji jądrowej
- 2025-09-24 W USA budują pierwszą komercyjną elektrownię fuzji jądrowej
- 2025-09-24 W USA budują pierwszą komercyjną elektrownię fuzji jądrowej
- 2025-09-23 Re: Kolory już są
- 2025-09-23 paragony grozy