-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask
.pl!news.nask.org.pl!news.internetia.pl!not-for-mail
From: "Andrzej Ekiert" <d...@t...pl>
Newsgroups: pl.misc.elektronika
Subject: Re: [OT] Zarządzanie konfiguracją modułów kodu źródłowego
Date: Sun, 06 May 2012 15:44:02 +0200
Organization: Netia S.A.
Lines: 96
Message-ID: <o...@j...jedi>
References: <o...@j...jedi> <jo5q8q$5u9$1@news.mm.pl>
<o...@j...jedi> <jo5u0n$810$1@news.mm.pl>
NNTP-Posting-Host: ip-91-192-3-72.techmedia.com.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed; delsp=yes
Content-Transfer-Encoding: Quoted-Printable
X-Trace: mx1.internetia.pl 1336311956 9954 91.192.3.72 (6 May 2012 13:45:56 GMT)
X-Complaints-To: a...@i...pl
NNTP-Posting-Date: Sun, 6 May 2012 13:45:56 +0000 (UTC)
X-Tech-Contact: u...@i...pl
User-Agent: Opera Mail/10.10 (MacIntel)
X-Server-Info: http://www.internetia.pl/
Xref: news-archive.icm.edu.pl pl.misc.elektronika:630681
[ ukryj nagłówki ]Dnia 06-05-2012 o 15:23:06 Zbych <z...@o...pl> napisał(a):
>>> A to już zwykłe makra, definy, funkcje inline, specjalizacje szablonów
>>> nie wystarczą do ukrycia fizycznego położenia pinów?
>>
>> Wystarczą, ale dla każdego projektu trzeba te define'y inaczej ustawić -
>> ta sama nazwa, inna wartość.
>
> Zgadza się i zakładam, że rzeczy specyficzne dla projektu trzymasz w
> osobnym pliku, który leży sobie w katalogu z projektem i jest przez
> bibliotekę tylko includowany. Zgadza się?
>
Tak.
> Ja jak na razie na I2c wieszałem jakieś pamięci, RTC itp. badziewie. Do
> jego obsługi wystarczały mi 3 funkcje typu wyślij blok danych, odbierz
> blok danych, sprawdź gotowość. Współdzielenie zabezpieczałem mutexami.
> Funkcje RTC czy obsługa pamięci wprost wołały te funkcje. W innym procku
> dodawałem tylko inną bibliotekę do I2c. Interface zostawał ten sam. Zero
> narzutu.
Masz driver do RTC w bibliotece. Procesor ma 2 moduły sprzętowe I2C1 i
I2C2. Musisz przekazać driverowi RTC informację, funkcje dotyczące którego
modułu ma wywołać: odbierz_blok_danych_z_I2C1() czy
odbierz_blok_danych_z_I2C2(). Albo to robisz na poziomie #define, albo
definiując "driver" do I2C i przekazując modułowi I2C handle do tego
drivera (jest narzut). Ja chcę na poziomie #define, ale pragnę sobie
usprawnić zarządzanie takimi #define.
>>> Wolę zrobić kopię biblioteki z projektu x-1 i nanieść poprawki.
>>
>> Wykrywasz błąd albo robisz usprawnienie w x-1 i dopiero masz poprawianie
>> wszędzie gdzie ta kopia jest. Brrr...
>
> To jest niewątpliwie wada. Ale powiedzmy sobie szczerze, ile można
> spieprzyć w kodzie obsługi I2C, uarta itp?
Spieprzyć zawsze można. Poza tym moduł może być czymś bardziej złożonym.
Np. implementacją protokołu sieciowego.
> A teraz weź projekt sprzed kilku lat (bo klient chce drobną poprawkę) i
> skompiluj go z nową biblioteką. Jaką masz gwarancję, że nie wyjdą jakieś
> wredne bugi związane np. z zależnościami czasowymi?
Gwarancji nie mam, choć moja ciągła dbałość o to, by kawałek kodu, w
którym zależności czasowe występują, nie mógł być zakłócony przez inne
niezwiązane z nim moduły wykonywane równolegle, daje mi spore szanse.
Generalnie uważam, że zysk ze współdzielonych bibliotek znacznie
przewyższa koszty.
ae
Następne wpisy z tego wątku
- 06.05.12 15:49 Sebastian Biały
- 06.05.12 15:54 Michoo
- 06.05.12 15:59 Zbych
- 06.05.12 16:10 Andrzej Ekiert
- 06.05.12 16:24 Jacek Domański
- 06.05.12 16:28 Zbych
- 06.05.12 16:42 Sebastian Biały
- 06.05.12 16:50 Andrzej Ekiert
- 06.05.12 16:55 Michoo
- 06.05.12 17:08 Andrzej Ekiert
- 06.05.12 17:21 mk
- 06.05.12 17:35 Sebastian Biały
- 06.05.12 17:41 marek
- 06.05.12 17:41 Andrzej Ekiert
- 06.05.12 18:18 mk
Najnowsze wątki z tej grupy
- Mierniki poziomu glukozy (CGM, FGM)
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Kontrola nad prądem - sprawdź jak działa [apka - przyp. JMJ] eLicznik
- NETIA i hasło logowania
- Modulacja FM
- Najgorszy język programowania
- Kol. sukces po polsku: firma Szumisie sp. z o.o.
- Chińska Telefonia 6G - Chcą Nas Sterować Elektrycznie - Jak Kukiełki w Teatrze Lalek!!!
- RS-485 ale automatycznie dwukierunkowy
- Leżakujące SSD gubią po roku dane
- kolorowy e-paper
- Sterownik kotła CO praca PWM
- Jakie baterie A23 i LR44?
- OLED SSD1306 - degradacja?
- Który symulator AVR jest ,,prawilny"?
Najnowsze wątki
- 2025-12-12 Warszawa => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-12-12 Warszawa => Architekt rozwiązań (Workday) - Legal Systems <=
- 2025-12-12 Warszawa => Dynamics 365 Commerce/POS Developer <=
- 2025-12-12 Wrocław => React Developer with knowledge of C++ <=
- 2025-12-12 Białystok => Programista React ze znajomością C++ <=
- 2025-12-12 Warszawa => Microsoft Dynamics 365 Finance Consultant <=
- 2025-12-11 To już efekt Żurka czy coś jeszcze GORSZEGO?
- 2025-12-11 Policjanci w mieście Łodzi zmierzą ci prędkość z błędem mniejszym niż producent w laboratorium :-)
- 2025-12-11 Warszawa => Senior Java Developer <=
- 2025-12-11 Kolejny prezent
- 2025-12-10 hameryka
- 2025-12-10 Tak im zależy na wlasnym kraju. :-(
- 2025-12-10 Czy "hipoteka przymusowa" podpada (powinna podpadać) pod ochronę immunitetem poselskim? [Ziobro]
- 2025-12-10 Żurek po raz kolejny wykazał jaki poziom reprezentuje
- 2025-12-10 Gdańsk => Microsoft Dynamics AX/365 SCM Consultant - Service & Suppor




2035 rok coraz mniej realny? Europa traci tempo w wyścigu o elektromobilność