Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 10 cze 2025, o 15:16


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 
    Autor Wiadomość
    PostNapisane: 17 lis 2015, o 13:08 
    Offline
    Nowy

    Dołączył(a): 24 wrz 2015
    Posty: 14
    Lokalizacja: Oława
    Pomógł: 3

    Witam.

    Jak nazywacie swoje klasy? Czy grupujecie je w przestrzenie nazw?

    Pytanie stawiam projektantom C++, którzy w swoich projektach posiadają/będą posiadać bardzo wiele różnych klas. Pisząc własne biblioteki dla urządzeń trzeba przemyśleć nazewnictwo klas tak aby nazwy te nie powtarzały się. Nie ma takich dylematów w przypadku tworzenia biblioteki dla jednego typu wyświetlacza lcd i dla jednego typu sterownika ATMega. Klasę nazwiemy Lcd. Do obsługi urządzenia w ciele klasy użyjemy rejestrów wejść i wyjść tegoż sterownika. Pliki biblioteki nazwiemy lcd.hpp i lcd.cpp.
    1. Problem pojawia się, gdy chcemy rozbudować bibliotekę o nowy typ wyśwetlacza, którego inaczej się steruje. Nazywając nową klasę Lcd mamy gotowy konflikt nazw.
    2. Inny problem pojawia się w sytuacji, gdy chcemy to samo urządzenie klasy Lcd, napisane na sterownik AVR 8-bitowy, przystosować do nowej rodziny sterowników np. AVR32, XMega, PIC, itp. W tych sterownikach są inne nazwy rejestrów wejść i wyjść i trzeba przerobić naszą klasę. I znowu dla nowej klasy chcemy nadać nazwę Lcd (bo to przecież jest lcd). Konflikt nazw!

    Jakie stosujecie kryteria w nadawaniu nazwy swoim klasom? Czy i jak stosujecie przestrzenie nazw?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 lis 2015, o 13:20 
    Offline
    Użytkownik

    Dołączył(a): 16 maja 2012
    Posty: 349
    Lokalizacja: Legnica
    Zbananowany użytkownik

    Pomógł: 23

    Preprocesor i kompilacja warunkowa?
    Czy może chcesz linkować prekompilowane biblioteki? Jeżeli tak to trzeba inaczej nazywać jedynie biblioteki a w środku nazwy mogą być takie same.


    Autor postu otrzymał pochwałę

    _________________
    sig off ;(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 lis 2015, o 14:31 
    Offline
    Użytkownik

    Dołączył(a): 26 lip 2015
    Posty: 269
    Pomógł: 34

    Nie wiem czy dobrze zrozumiałem, ale ja bym nadał nazwy takie np:
    LCD_SSD1306_AVR
    LCD_HD44780_PIC
    I w tedy taka osoba zainteresowana wpisze tylko LCD i w podpowiedzi pojawi mu się nazwa LCD_SSD1306_AVR i LCD_HD44780_PIC i wtedy chyba każdy zrozumie, że jeden jest na PIC, a drugi na AVR, jeden dla sterownika ssd1306, a drugi dla hd44780. Tylko ważna jest kolejność ustal jaka i trzymaj się jej od najbardziej ogólnej do bardziej szczegółowych i jak jedną kolejność opracujesz to następne rób w tej kolejność. Zaczynam przygode z c# także mi się tak wydaje :P .


    Autor postu otrzymał pochwałę


    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 lis 2015, o 09:09 
    Offline
    Nowy

    Dołączył(a): 24 wrz 2015
    Posty: 14
    Lokalizacja: Oława
    Pomógł: 3

    perlon napisał(a):
    trzeba inaczej nazywać jedynie biblioteki a w środku nazwy mogą być takie same.


    Bartek123 napisał(a):
    Nie wiem czy dobrze zrozumiałem, ale ja bym nadał nazwy takie np:
    LCD_SSD1306_AVR
    LCD_HD44780_PIC

    Ależ to proste rozwiązania. Wystarczy nadać klasom nazwy Lcd i umieścić je w osobnych bibliotekach tak jak piszecie. Dzięki za porady. Pozdrawiam.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 4 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości


    Nie możesz rozpoczynać nowych wątków
    Nie możesz odpowiadać w wątkach
    Nie możesz edytować swoich postów
    Nie możesz usuwać swoich postów
    Nie możesz dodawać załączników

    Szukaj:
    Skocz do:  
    cron
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO