eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaRynek pracy STM32Re: Rynek pracy STM32
  • Data: 2022-07-19 19:03:41
    Temat: Re: Rynek pracy STM32
    Od: heby <h...@p...onet.pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    On 19/07/2022 18:55, Janusz wrote:
    >> A co konkretnie nie ma nic wspólnego?
    > To
    > "Ale to jak ona jest faktycznie realizowana zależy od tego pliku h
    >  o wspólnej nazwie dla wszystkich projektów a tam jest informacja
    >  jaki procesor i jak jest podłączony dla danej wersji płytki."
    >
    >  z tym
    >
    > "Tak. To statyczny polimorfizm."

    Bo to statyczny polmirfizm. Masz abstrakcyjną klasę ModBus, która nie
    musi wiedzieć z jakiego UARTu i na jakim cpu będzie korzystać. Dowiaduje
    się w momencie specjalizacji szablonu, podczas kompilacji, gdzie
    nastepuje konkretyzacjia wszyskiego, na stałe. Dlatego statyczny.

    > To jest konfiguracja sprzętowa a polimorfizm

    Ah, czyli czepiasz się definicji? Tak, konfiguracja sprzętowa jest
    *polimorficzna*, bo masz kilka klas realizujących na rózne sposoby ten
    sam interfejs hardwareowy.

    > to
    > "Polimorfizm (z gr. wielopostaciowość) - mechanizmy pozwalające
    > programiście używać wartości, zmiennych i podprogramów na kilka różnych
    > sposobów[1]. Inaczej mówiąc jest to możliwość wyabstrahowania wyrażeń od
    > konkretnych typów[2]."

    Tak jak abstrakcja ModBus wyabstrahowana od konkretnego UARTu.

    > metody, procedury. W niektórych językach niektóre operatory lub funkcje
    > są przeciążone, ale programista nie może ich dodatkowo dociążać lub
    > przeciążać własnych."

    No patrz, moje wszystkie klasy UART mają metodę "sendChar( char c);

    Natomiast:

    template< class _Uart >
    class ModBus;

    ma gdzieś w metodzie, daleko w środku:

    template< class _Uart >
    ModBus< _Uart >::sedFrame( ... ) {
    [...]
    m_uart.sendChar( foo );
    [...]
    }

    i gdzieś daleko mam taki ModBus< STM32UART0 > modbus;

    To, że nie widzisz tu polimorfizmu, to nie znaczy, że go tam nie ma. C++
    to trudna rzecz.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: