RTV forum PL | NewsGroups PL

C++ a API sieciowe: Co warto wiedzieć o standardach 2011 i 2014?

Re. Pytanie do serwisantów.

NOWY TEMAT

elektroda NewsGroups Forum Index - Elektronika Polska - C++ a API sieciowe: Co warto wiedzieć o standardach 2011 i 2014?

Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8  Next

re
Guest

Wed Aug 24, 2016 3:42 pm   



Użytkownik "Piotr Gałka"

Quote:
Zamiast zatrudniać mało popularnego faceta który zna sie na tcp, ssl, C,
SQL, obsłudze bazy na poziomie API i podobnie niezwiązanych ze sobą rzeczy
i kazać mu pisac procedury obsługi http/https, kontaktów z bazą,
wyciągania datasetów, szyfrowania ssl zatrudniamy kumatego gostka który
wie że są biblioteki do tego, wie jak ich użyć (nietrywialna sprawa) i on
mam to zrobi szybko.

Żałuję, że ja nie wiem jak ich użyć, ale nie będę teraz o to męczył
(szczególnie, że nietrywialne Smile ).
---
Nie potrzebujesz i tyle

Myślałem, że użycie biblioteki polega na tym, że się ją kupuje, studiuje jej
dokumentację i potem używa.
---
Weź sobie jakąś dobrą bibliotekę do "twojego" CRC, przestudiuj

Podejrzewałem, że mogą być jakieś darmowe (być może wątpliwej jakości, a
może wręcz odwrotnie), które skądś można pobrać.
---
Z reguły korzysta się z bibliotek zawierających kod, którego jakości nie
jesteśmy w stanie dotrzymać.

Ale że używa się bibliotek leżących gdzieś tam, gdzie nie wiadomo kiedy ktoś
może coś zmienić (i wszystko co zostało sprawdzone że działa w zasadzie
powinno wymagać sprawdzania od nowa) to dowiedziałem się dopiero niedawno z
tego artykułu.
---
A niby jak miałoby to działać ? Ale nie wiem czy odkryłeś już systemy
wersjonowania kodu Smile że można po prostu cofnąć się do ostatniej pasującej
wersji biblioteki. Że nie odkryłeś testów automatycznych to już wiem :-)

A że to nie kilka osób tylko tam chyba było o kilkudziesięciu tysiącach
aplikacji (nie czytałem teraz), które przestały się kompilować to dla mnie
szok do kwadratu.
---
Za duża skala ?

re
Guest

Wed Aug 24, 2016 3:45 pm   



Użytkownik "Piotr Gałka"

....
Quote:
Spróbuj bez bibliotek napisać na mcu wielozadaniowy kod, komunikujący się
po tcpip, usb i z dowolnym fsem. Ciekawe ile czasu Ci to zajmie.

W naszych urządzeniach (to brat, nie ja) nie ma bibliotek i jest USB, ale
tcpip załatwia scalak, który realizuje stos - czyli równoważnik użycia
biblioteki.
---
Czyli jednak użyłeś tej biblioteki

Piotr Gałka
Guest

Thu Aug 25, 2016 7:36 am   



Użytkownik <sczygiel@gmail.com> napisał w wiadomości
news:b12798f6-7cdb-43a0-8807-bf27bd057fe4@googlegroups.com...

Quote:


Quote:


Quote:
Ale ich jakość może się różnić między sobą. Różnie może sie trafić.

Dziękuję.
Zapisałem sobie wszystkie informacje (mam już prawie 4 strony
"najważniejszych rzeczy z tej dyskusji") i jak posortuję to stopniowo (w
wolnych chwilach) sobie pooglądam.

Quote:
Ale sypnięcie nie jest problemem. Bo te pare linii można sobie lokalnie
wbudować w biblioteke i wszystko wróci do normy.
Problemem jest to że ludzie bezmyślnie korzystają z tego co dostają. Czyli
to co Ciebie tak bardzo dziwi.

Ja normalnie to idę jeszcze o krok dalej (albo bliżej, zależy z której
strony się patrzy). Jeszcze nie napisałem programu (programiku), który
wymagałby instalacji - zawsze jest to exe, które zawiera w sobie wszystko
(czyli jak za dobrych DOSowych czasów Smile ).
Według mnie kiedyś (gdy HDD były małe i RAMu nie za dużo) dll-e miały
głęboki sens, ale obecnie nie widzę problemu, czy moje exe jest o 1, czy
nawet 5M większe, czy mniejsze, gdy jest to różnica o 1 zdjęcie z wakacji.
Wydawało by się, że nie dotyczy to olbrzymich aplikacji, ale z drugiej
strony, na ile to rozumiem, to oszczędność będzie tylko wtedy, gdy na
komputerze będzie chodziła też druga aplikacja korzystająca akurat z tego
samego dll-a. Czy to jest tak częsty przypadek. Może i jest ale jak dotyczy
tylko jednego, czy kilku dll-i to pewnie i tak oszczędność niewielka.
P.G.

Piotr Gałka
Guest

Thu Aug 25, 2016 7:38 am   



Użytkownik "Jarosław Sokołowski" <jaros@lasek.waw.pl> napisał w wiadomości
news:slrnnrr87q.b44.jaros@falcon.lasek.waw.pl...

Quote:
Ja odczuwałem różnicę. Wetknięcie tam command.com i paru innych rzeczy
sprawiało, że system stawał się bardziej responsywny.

A z polskiego na nasze, to co to oznacza? Smile
P.G.

Piotr Gałka
Guest

Thu Aug 25, 2016 7:52 am   



Użytkownik "slawek" <fake@fakeemail.com> napisał w wiadomości
news:almarsoft.897710647133166806@news.v.pl...
Quote:

Gdzie ich szukać? Jest rok 2016, użyj Google.

Nigdy dotychczas nie interesowałem się bibliotekami więc nie szukałem.

Podejrzewam, że jakbym szukał biblioteki marki biblioteka to dostanę tysiące
trafień w których zginę.
Znacznie prościej jest od kogoś życzliwego dowiedzieć się - praktycznie
używa się tych 5 źródeł z bibliotekami i tyle w temacie.

Szczerze mówiąc doskonale wiedziałem, że są projekty Open Source, ale jakoś
miałem zatrzaśniętą klapkę, że to są projekty gotowych aplikacji i nie
przyszło mi do głowy, że takie "niedokończone rzeczy" jak biblioteki też
mogą być projektem Open Source.
P.G.

Jarosław Sokołowski
Guest

Thu Aug 25, 2016 8:14 am   



Pan Piotr Gałka napisał:

Quote:
Ja odczuwałem różnicę. Wetknięcie tam command.com i paru innych
rzeczy sprawiało, że system stawał się bardziej responsywny.

A z polskiego na nasze, to co to oznacza? Smile

Responsywny system szybko reaguje na polecenia. A potem wykonuje
je w swoim tempie. Możemy sobie wyobrazić komputer z zegarem 4 GHz
i DOS-em uruchomionym z dyskietki. Wydajemy mu jakieś *zewnętrsne*
polecenie, a on majestatycznie rozpędza plastik, czyta porozrzuzene
sektory chrobocząc głowicą, aż w końcu w okamgnieniu wykona co
od niego chcieliśmy. Komputer z zegarem 12 MHz, ale korzystający
z ramdysku, zareaguje kilkaset razy szybciej, a wykona kilkaset
razy wolniej. Z tym że to "wolniej" może być dla człowieka
niezauważalne. A "szybciej" -- wręcz przeciwnie. Dla mnie nawet
różnica między HDD i ramdyskiem była odczuwalna w normalnej (dla
mnie) przcy z komputerem.

Mniej lub bardziej responsywne są nie tylko komputery. Samochodów
też to dotyczy. Statek pełnomorski jest bardzo mało responsywny,
choć potrafi całkiem szybko pomykać przez oceany. Z ludźmi również
tak jest. Jednych trzeba prosić miesiącami, ale jak im zaskoczy,
to uwijają się żwawo. Inni od razu reagują "już lecę", a potem
rok grzebią się z robotą.

Jarek

--
Transatlantyki na oceanach
A krążowniki w rejsach ćwiczebnych
Każdy z nich musi mieć kapitana
Nasz kapitan też jest potrzebny

Piotr Gałka
Guest

Thu Aug 25, 2016 8:28 am   



Użytkownik "Sebastian Biały" <heby@poczta.onet.pl> napisał w wiadomoœci
news:npkavv$thb$1@node1.news.atman.pl...

Quote:
Co programiœci rozumiejš pod pojęciem API dla danego sprzętu?

takie coœ:
Stream kodujRamkęKluczem( Stream _in, Kay klucz);
int128_t dawajCRC( Stream _stream, int _size );
Command sparsujRamke( Stream _ramka ) throw StrasznyBlad;
Stream wygenerujRamke( Command _komenda );

Ale nie takie coœ:
void zrobWszystkoAMyTylkoZrobimyOkienkaZPrzyciskami(void);

:))))

Umiesz żartobliwie i dosadnie przekazać informację trafiajšc jednoczeœnie w
sedno.
Na pewno znacznie lepiej teraz rozumiem co to jest API.

Wydaje mi się, że ten (przydługi) wštek powoli wygasa.
Korzystajšc z okazji (celowo w odpowiedzi na post Sebastiana, który poza
grupš odpowiedział mi też na kilka jeszcze głupszych pytań, które wstyd
byłoby mi zadać na forum) dziękuję wszystkim, którzy odpowiadali na moje
pytania.
Dla przypomnienia jak wštek "Pytanie do serwiasntów" stał się wštkiem o
językach i bibliotekach:
- chodziło o wyrwane złšcze i serwis,
- ktoœ napisał, że dobrym rozwišzaniem byłoby umieszczeni złšcza odpowiednio
głęboko,
- inny ktoœ napisał, że widział takie rozwišzanie, ale tylko w jednym
przypadku,
- ja się pochwaliłem, że już w 1995 roku przerabiajšc DSM-51 na
"Idiot-proof" tak umieœciliœmy złšcze zasilania DC,
- na to była reakcja: "To ty jesteœ ten od Piccolo, co nie przerobił na czas
programu DOS na Windows".
- tłumaczšc się, że w tym czasie nie miałem ani wiedzy, ani narzędzi,
napisałem między innymi coœ w stylu, że nie jestem informatykiem ani
programistš i z komputerami miewam problemy tam, gdzie dla innych wszystko
jest proste i oczywiste,
- na to Sebastian: pytaj, pomożemy.
- a że akurat miesišc temu zderzyłem się z sytuacjš, że jakaœ firma
informatyczno/programistyczna potrzebowała by od nas coœ więcej niż tylko
protokół komunikacji, i wiem, że Sebastian jest dobry w te klocki to nie
omieszkałem wykorzystać takiej oferty no i już jesteœmy w dll-ach.

Jeszcze raz dziękuje i pozdrawiam Wszystkich,
co nie znaczy, że jak ktoœ się jeszcze odezwie to przestaję odpowiadać Smile
P.G.

Piotr Gałka
Guest

Thu Aug 25, 2016 8:47 am   



Użytkownik "re" <re@re.invalid> napisał w wiadomości
news:npkf9e$538$1@mx1.internetia.pl...

Quote:
A niby jak miałoby to działać ? Ale nie wiem czy odkryłeś już systemy
wersjonowania kodu Smile
Obiło mi się, ale spokojnie można powiedzieć, że nie odkryłem Smile


Quote:
że można po prostu cofnąć się do ostatniej pasującej wersji biblioteki.
Ale to było na temat tego artykułu. Jakoś się okazało, że oni nie mogli się

cofnąć do poprzedniej wersji jak te 11 linijek zniknęło z internetu.

Quote:
Że nie odkryłeś testów automatycznych to już wiem Smile
Wiem, że w toku dyskusji wykazałem się bardzo wieloma brakami w odkryciach,

ale jakbyś jakoś zdefiniował/opisał co rozumiesz pod pojęciem testy
automatyczne (jakiś przykład) to byłbym dźwięczny. Czuję, że wiąże się to z
czymś co ja nazywam wektory testowe, ale nie wiem czy to jest to samo, czy
coś więcej.
P.G.

Piotr Gałka
Guest

Thu Aug 25, 2016 9:01 am   



Użytkownik "re" <re@re.invalid> napisał w wiadomości
news:npkfft$631$1@mx1.internetia.pl...
Quote:

W naszych urządzeniach (to brat, nie ja) nie ma bibliotek i jest USB, ale
tcpip załatwia scalak, który realizuje stos - czyli równoważnik użycia
biblioteki.
---
Czyli jednak użyłeś tej biblioteki
Dla mnie to nie jest użycie biblioteki tylko coś równorzędnego.

Jak w mikrokontrolerze jest sprzęt liczący AESa i brat pisząc program
korzysta z niego to nie musi dołączać do swojego kodu żadnej biblioteki
tylko musi wiedzieć przez które rejestry i jak komunikować się z tym
sprzętem. Tak faktycznie to on wg typu procesora ma #if i albo korzysta,
albo wstawia kawałek w assemblerze.
Nazywanie tego korzystaniem z biblioteki doprowadzi do tego, że:
- użycie scalaka do RFID to użycie biblioteki,
- użycie scalaka do CAN to użycie biblioteki,
- użycie scalaka do RS485 to użycie biblioteki,
a stąd już blisko do stwierdzenia, że 555 to biblioteka funkcji czasowych.

Gdzieś należy postawić granicę i dla mnie jak pisząc program nie musisz
dołączać żadnej biblioteki to nie korzystasz z biblioteki, ale nie bronię
mieć innego zdania.
P.G.

Piotr Gałka
Guest

Thu Aug 25, 2016 11:11 am   



Użytkownik <sczygiel@gmail.com> napisał w wiadomości
news:c83804b9-6c6b-4939-8020-68e72d026a99@googlegroups.com...

Spróbuj odkryć Smile
Bo SVN lub ewentualnie git (choć do prostych spraw lepszy svn IMHO) to fajna
sprawa.
Coś w rodzaju aktówki windowsowej i automatycznego kopiowacza który zapisuje
poszczególne zmiany w plikach zapisywanych. Fajna sprawa.
Przydaje sie nie tylko do kodu.
Może śledzić również dokumenty, pliki binarne itp...
--------
Nie czuję potrzeby. Jak zacząłem trochę używać Buildera 2010 to po jakimś
czasie wyłączłem jego funkcje pamiętania iluś tam ostatnich wersji plików i
dokonanych zmian. Za drobne rzeczy robię, abym miał takie potrzeby.



W idealnym przypadku skladaja sie z zestawu który testuje program (lub
biblioteke) w zakresie podstawowych funkcjonalnosci (uruchomienie, wykonanie
standardowej akcji itp.) plus testów dla warunków granicznych (np.
nakarmienie programu wadliwymi danymi, nakarmienie go danymi spoza zakresu
itp.) plus jednym - dwu testów wykrywających czy naprawiony bug sie
przypadkiem nie pojawił ponownie.
----------
Zrozumiałem.
Robiłem tego typu testy, ale nie dla software'u tylko dla sprzętu.
Musieliśmy przerobić naszego HAK2 (klucz sprzętowy USB) na inny procesor
(więc program od nowa, bo stary był w assemblerze). Napisałem program który
mielił minutę klucz, i puszczaliśmy go ze starym i nowym aby sprawdzić czy
wyszło to samo.


Te testy uruchamia się automatycznie po skompilowaniu nowej wersji.
----------
Rozumiem, że słowo automatyczne dotyczy nie tylko tego, że ileś testów jest
wykonywanych automatycznie ale też tego, że nie da się skompilować nowej
wersji biblioteki, aby automatycznie nie uruchomiły się jej testy.


Od razu zajawię temat programu make i plików makefile.
-----
Intensywnie używałem w czasach DOS. Nie było jeszcze biblioteki Turbo Vision
(Borlanda okienka w DOS) więc (na potrzeby Piccolo) sam napisałem sobie taką
bibliotekę. Moja działała 10 razy szybciej od tej Borlanda, ale nie umiała
zdarzeń myszy przekazać do odpowiedniego okienka.
A że wtedy zależało mi, aby exe były małe to każdą, nawet kilku linijkową
funkcję wkładałem do osobnego obj i te wszystkie obj łączyłem w lib
(wszystko w długim na kilka stron makefile).
Przyzwyczaiłem się do tego, że środowisko dba o takie sprawy i mi to pasuje.
P.G.

J.F.
Guest

Thu Aug 25, 2016 12:10 pm   



Użytkownik "Piotr Gałka" napisał w wiadomości grup
dyskusyjnych:npjgr7$scn$1@news.chmurka.net...
Użytkownik "J.F." <jfox_xnospamx@poczta.onet.pl> napisał w wiadomości
Quote:
Ale popatrzcie na to
http://qz.com/646467/how-one-programmer-broke-the-internet-by-deleting-a-tiny-piece-of-code/

Widziałem to kiedyś, ale czytałem z wielkim zadziwieniem.
Zdecydowanie nie jestem programistą, ale jak już piszę jakiś
programik to w zasadzie nigdy nie używam żadnych bibliotek. Raz
miałem program używający jakiejś biblioteki (ktoś mi usiadł na
komputerze i wstawił aby działało) to zaraz zacząłem żmudnie pisać
wszystko samemu, aby pozbyć się biblioteki (traktując to jako naukę)
i mi się udało.

Masz to szczescie, ze maluchy piszesz, i mozesz sie pozbyc.
A jak przyjdzie obslugiwac TCP/IP, USB, Bluetooth, FAT32 czy NTFS, to
napisanie od nowa bedzie za dlugo trwalo.

Ale tu chyba o co innego poszlo. Nie znam tego srodowiska, ale
domyslam sie, ze to takie bardziej narzedziowe i jak widac - wszystko
sie sciaga automatycznie :-)

Tworzysz strone www w jQuery czy Ajax, to tez sie nie zastanawiasz jak
to dziala i czym to zastapic, tylko po prostu korzystasz.
Kompilatora tez nie zastepujesz, tylko uzywasz, co najwyzej klniesz i
mowisz "wiecej im nie zaplace".

Quote:
Patrząc na innych przez pryzmat siebie wydawało mi się, że nikt nie
lubi mieć obcego kodu (wiem kompilator, i to co dostarcza środowisko
też są obcy) więc nie rozumiałem jak można polegać nie dość, że na
czymś obcym to jeszcze leżącym gdzieś tam. Nie mieściło mi się w
głowie że są tacy ludzie co tak robią. A tu się okazuje, że nie tylko
istnieją (czyli co najmniej jeden), ale że jest ich całkiem sporo.
Wiecie może, jaka jest tak na prawdę przyczyna takiej, według mnie
karygodnej, niefrasobliwości?

Takie czasy, takie szkolenia :-)

Ale spora czesc jest nieunikniona - rozbudowalo sie to wszystko, sam
od zera nie napiszesz.

J.

Guest

Thu Aug 25, 2016 12:16 pm   



W dniu czwartek, 25 sierpnia 2016 10:46:55 UTC+2 użytkownik Piotr Gałka napisał:
Quote:
Użytkownik "re" <re@re.invalid> napisał w wiadomości
news:npkf9e$538$1@mx1.internetia.pl...

A niby jak miałoby to działać ? Ale nie wiem czy odkryłeś już systemy
wersjonowania kodu Smile
Obiło mi się, ale spokojnie można powiedzieć, że nie odkryłem :)


Spróbuj odkryć Smile
Bo SVN lub ewentualnie git (choć do prostych spraw lepszy svn IMHO) to fajna sprawa.
Coś w rodzaju aktówki windowsowej i automatycznego kopiowacza który zapisuje poszczególne zmiany w plikach zapisywanych. Fajna sprawa.
Przydaje sie nie tylko do kodu.
Może śledzić również dokumenty, pliki binarne itp....

Quote:
że można po prostu cofnąć się do ostatniej pasującej wersji biblioteki.
Ale to było na temat tego artykułu. Jakoś się okazało, że oni nie mogli się
cofnąć do poprzedniej wersji jak te 11 linijek zniknęło z internetu.

Że nie odkryłeś testów automatycznych to już wiem Smile
Wiem, że w toku dyskusji wykazałem się bardzo wieloma brakami w odkryciach,
ale jakbyś jakoś zdefiniował/opisał co rozumiesz pod pojęciem testy
automatyczne (jakiś przykład) to byłbym dźwięczny. Czuję, że wiąże się to z
czymś co ja nazywam wektory testowe, ale nie wiem czy to jest to samo, czy
coś więcej.


To jest zazwyczaj rodzaj skryptów lub programów wykorzystujących ten tworzony kod i weryfikujące czy program nadal wykonuje się poprawnie.

W idealnym przypadku skladaja sie z zestawu który testuje program (lub biblioteke) w zakresie podstawowych funkcjonalnosci (uruchomienie, wykonanie standardowej akcji itp.) plus testów dla warunków granicznych (np. nakarmienie programu wadliwymi danymi, nakarmienie go danymi spoza zakresu itp.) plus jednym - dwu testów wykrywających czy naprawiony bug sie przypadkiem nie pojawił ponownie.

Te testy uruchamia się automatycznie po skompilowaniu nowej wersji.

Od razu zajawię temat programu make i plików makefile.
To program który rekompiluje tylko wymagane pliki aby zbudować program. Większość środowisk graficznych typu eclipse lub borlandowe robi to samodzielnie wewnątrz. Ale dla pisarza tradycyjnego make jest bardzo pomocne.

Piotr Gałka
Guest

Thu Aug 25, 2016 12:21 pm   



Użytkownik <sczygiel@gmail.com> napisał w wiadomości
news:cfaf6949-ac77-4d5e-bb96-69693bf00876@googlegroups.com...

Ja np. korzystam z SVN do synchronizowania plików między komputerami, jako
backup i system wersjonowania.
Całość to w sumie dwa skrypty (update i commit) a pożytek ogromny.
Jak pracuję na jednym komputerze i tworzę coś to wystarczy że wyślę aktualny
stan pracy do svn jednym skryptem, nastepnie idę do drugiego komputera i
uruchamiam update, robie co mi tam trzeba i wynik znowu wysylam do svn
(commit).
To w sumie nic kosmicznego ale bardzo ułatwia pracę.

-----------
Przekonałeś mnie na tyle, że zapisałem sobie to SVN (+ wcześniej wymieniony
git) do sprawdzenia kiedyś.....
Ja pracuję na jednym komputerze i nie mam potrzeby synchronizacji
czegokolwiek. A do backupu zrobiłem sobie kilkanaście lat temu dwa skrypty.
Jeden backupuje wszystko, a drugi to, co zmieniło się od czasu, gdy zrobiono
wszystko. Codziennie wołam ten drugi, a gdy jego backup robi się duży to raz
wołam tego całego i potem znów codziennie tego przyrostowego. Jakoś nie mam
determinacji, aby coś w tym poprawiać.

Wiąże się z tym pewien zbieg okoliczności. Jak już miałem to gotowe to
zrobiłem backupy (wtedy jeszcze na dyskietki) mojego komputera, a że było
już późno to przeniesienie tego na drugi (nie mój) komputer zaplanowałem na
drugi dzień. A w nocy mieliśmy włamanie i ukradli nam komputery. Kilka
miesięcy prac na tym drugim wcięło (to były projekty płytek).
P.G.

Piotr Gałka
Guest

Thu Aug 25, 2016 12:24 pm   



Użytkownik "J.F." <jfox_xnospamx@poczta.onet.pl> napisał w wiadomości
news:57bee057$0$15206$65785112@news.neostrada.pl...
Quote:

Ale spora czesc jest nieunikniona - rozbudowalo sie to wszystko, sam od
zera nie napiszesz.

Jakoś ta prawda usiłuje do mnie chyba od lat dotrzeć, ale skutecznie

wypieram ją ze świadomości Sad
P.G.

Guest

Thu Aug 25, 2016 1:52 pm   



W dniu czwartek, 25 sierpnia 2016 13:11:02 UTC+2 użytkownik Piotr Gałka napisał:
Quote:
Użytkownik <sczygiel@gmail.com> napisał w wiadomości
news:c83804b9-6c6b-4939-8020-68e72d026a99@googlegroups.com...

Te testy uruchamia się automatycznie po skompilowaniu nowej wersji.
----------
Rozumiem, że słowo automatyczne dotyczy nie tylko tego, że ileś testów jest
wykonywanych automatycznie ale też tego, że nie da się skompilować nowej
wersji biblioteki, aby automatycznie nie uruchomiły się jej testy.

A to już jak kto lubi/potrzebuje.


Generalnie jak masz sytuację że sam sobie coś tworzysz to sam masz swój tryb pracy i sobie sam o wszystkim pamietasz. A jak nie pamiętasz to sobie sam jakieś skrypty czy automaty zrobisz aby pilnowały nudnych spraw.

Więc takie testy sobie możesz puszczać na koniec dnia aby sie upewnić że zmiany wprowadzone nie zdestabilizowały ci kodu programu.

Ale w sytuacji kiedy wiele osób pracuje nad tym samym projektem i każda coś tam zmienia to dobrze jest mieć mechanizm który okresowo (raz na godzine, raz na dzień itp.) zaciąga świeżą kopię z repozytorium svn/git, kompiluje ją, testuje i montuje jakis plik instalacyjny lub archiwum z programem.

Dlatego zazwyczaj te testy uruchamia się co każdą udaną kompilację.

Wtedy wiadomo co, kto, gdzie zmienił przed wystąpieniem błędu.

W małych środowiskach tak czy siak warto robić testy automatyczne i mieć z tego troche inny pożytek:
Zanim zaczniesz pisać biblioteke czy API, piszesz kod który będzie korzystał z tej biblioteki/API. Piszesz go tak jak wyobrażasz sobie wykorzystanie Twojego produktu.
Ten kod weryfikuje czy dało się wywołać kod i czy kod zwraca poprawny rezultat.

I jak już utworzysz kod właściwy nagle te testy zaczną pokazywać wynik pozytywny.

To takie troche podejście od "końca". Bo zazwyczaj początkujący programiści piszą najpierw swój kod właściwy a potem go testują czy działa a potem czy działa dobrze a potem czy nadal działa dobrze jak się go nakarmi głupotami..

A to podejście jest odwrotne. Najpierw piszesz kod weryfikujący i na początku on weryfikuje wszystko negatywnie. A z czasem coraz więcej testów kończy się sukcesem.

Generalnie te tematy to istna rzeka do filozofowania.
I niektóre sprawy są IMHO warte zapoznania nawet w małych projektach.
Nawet takich jednoosobowych.

Ja np. korzystam z SVN do synchronizowania plików między komputerami, jako backup i system wersjonowania.
Całość to w sumie dwa skrypty (update i commit) a pożytek ogromny.
Jak pracuję na jednym komputerze i tworzę coś to wystarczy że wyślę aktualny stan pracy do svn jednym skryptem, nastepnie idę do drugiego komputera i uruchamiam update, robie co mi tam trzeba i wynik znowu wysylam do svn (commit).

To w sumie nic kosmicznego ale bardzo ułatwia pracę.

Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8  Next

elektroda NewsGroups Forum Index - Elektronika Polska - C++ a API sieciowe: Co warto wiedzieć o standardach 2011 i 2014?

NOWY TEMAT

Regulamin - Zasady uzytkowania Polityka prywatnosci Kontakt RTV map News map