Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
KNJIGE
#81
C++ Core Guidelines
http://isocpp.github.io/CppCoreGuideline...ines#S-cpl

Day 1 Keynote - Bjarne Stroustrup: C++11 Style
https://channel9.msdn.com/Events/GoingNa...pp11-Style
Reply
#82
PS: U gornjem odliconom predavanju od gospodina Bjarne Stroustrup (on je jedan od najvecih kontributora za C++/C++11/C++14 koji su posle usvojeni kao standard) ima jedan zanimljiv konkretan primer svemirske sonde koja je zbog greske u programu skrenula sa kursa i odletela uuuu i to ih kostalo 500 miliona dolara samo tako, zbog pogresno deklarisane variable !!!
Ili primer ako imamo "overhed" od 50% za neku funkciju, to je nekome 50 miliona dolara vise za farmu servera ili kako on kaze verovatno jos vise od toga jer mora da se ima bar dva puta vise i jos nesto sto to sinhronizuje i balansira.
Odlgedajte ceo video, znam da je malo teze pratiti kompletno na engleskom jeziku, ali sa play/pause moze nekako, ima tu vrlo korisnih informacija i price koja je uvod u moderne C++ koncepte i mogucnosti koje pruza ovaj trenutno najmociji i najrasprostranjeniji programski jezik.

PS2: Gospodin je autor i ovog dokumenta:
http://www.stroustrup.com/JSF-AV-rules.pdf
Dakle, sta ovaj gospodin kaze sa tim nema sale!
Reply
#83
Za numeričke aplikacije, tzv. scientific computing, Fortran je i dalje najviše korišćeni jezik.

Pozdrav
Reply
#84
Da Fortran se i dalje dosta koristi, ovo sa C++ i C11/C14/C17 je samo neki uvod, nije to nov jezik vec stil i nacin pisanja programa (meta jezik) sa primenjenim nekim vrlo bitnim i korisnim stvarima, interfejsi, vektori, objekti, imenovane i definisane veriable i tako dalje, ima svasta tu zanimljivo sto je napravljeno za tacno neke konkretne potrebe i implementirano u jezik kao standard i samim tim programerima koji su do sad kodirali u C i C98++ moze puno da pomogne jer su napravljene precice i stvari obradjene tacno kako treba.
Na primer Bjarne zagovara potpuno upotrebu Exception-a jer vodi u razne probleme, takodje zagovara upotrebu Garbage Colector-a za "curenje" memorije, covek kaze "ne sme da curi i nemoj da curi" ... i tako jedno stotine razlicitih pravila kako uvezati pointere/vektore/objekte/metode/klase/interfejse/tipove/strimove/i-ko-zna-sta-sve sve zajedno Wink
Pa dalje na primer tu je .hpp ekstenzija koja je u sustini c++ header fajl ali zbog mogucnosti upotrebe namespase-a za variable moguce je napisati potpuno portabilnu biblioteku u hederu i nezavisnu od ostatka coda-a i bez ostatka source fajlova!
Auto varibale i lambda funkcije, heh, to je tek zanimljivo i kako rade sa programskim interfejsima, gomila stvari se pise meta jezikom a kompajler to onda uzme i prevede u najoptimalniji format i usput odradi gomilu nekih provera a to sve da bi se odrzala cista semantika code-a, npr sto nesto ne moze da se iskaze u metrima ili kilogramima ili sekundama nego stalno nesto mora da se konvertuje (mislim da je spomenuo bas Fotran koji to moze ali nisam siguran). Ima tu vrlo bitnih pravila i programskih paterni koje na prvi pogled izgledaju banalno ali nisu ni malo kada se veoma ozbiljno i detaljno sagledaju.
Dalje Clang je tek prica za sebe, bas mi se svidja, cross-platform build system koji radi razne "stalno potrebne" stvari koje se ticu pronalazenja biblioteka, pravila za izbor objekata za odredjene platforme i tako dalje, opet neka meta prica ali koja stvarno lepo radi i koristi se uveliiiiiikoooo samo sto mi to ne pratimo bas ... automatski generise Makefile pa make onda pokrene prevodjenje i linkovanje ... probao na Linux i na Mac i radi kao dobar dan : ) ... mislim da ce i ARM (tj mozda vec tako i radi) kompajleri da rade 1:1 ...

Ovo je ozbiljna prica i ono sto stalno spominjem i kada je u pitanju programiranje za embeded platforme i mikrokontrolere, ne trebaju mi nikakve biblioteke (CubeMX, STDLib i slicno), potrebna mi je cista semantika coda-a i kompajler koji je dovoljno pametan da samo preko dobro organizovane header definicije programeru pruzi novi nivo organizacije i to BEZ programskog overhead ili vrlo minimalnog a sto sve ove doticne funkcije i ST-ove biblioteke trenutno rade, funkcije koje pozivaju funkcije koje pozivaju funkcije, cek malo, svaki poziv 1us na STM32F103, silno vreme se gubi jer nije dobro organizovano ...

Hocu jezik i standard koji kada se kaze upali pin 1 na MCU da to svede na 1, 2 ili 3 masinske instrukcije (najmanje sto moze) i hocu da mi kazu kako to da napisem i da koristim ubuduce, kojom god sintaksom da trebam da napisem a ne obrnuto da ja pisem po pravilima nekih funkcjia, hocu da pisem po pravilima jezika, to je poenta!
CMSIS je tu napravio ogrmnu u tacno potrebnu bazu, jos nije to sve iskorisceno najbolje kako treba, bare metal i dalje nezamenljiv ...
Na primer, sto ne moze da se napravi recimo Objekat za konfiguraciju svih pinova i da pre-procesor sve sto sam pisao (recimo 10-20-30 linija coda, u C++11 je to moguce napraviti recimo pomocu templejt interfejsa) svede na 4-5 masinskih instrukcija jer se sa toliko to moze sve konfigurise a ne da to radim u run time a recimo i ne treba mi tamo u run-time jer te operacije samo jednom prolazim ...
Trenutno smo postedjeni thread-ova i procesa za MCU sa 1 jednim jezgrom, ali koliko sledece godine ce da pricamo o nekim visejegarnim ARM-ovima, pa kad onda pocne da se komplikuje sa Thread Safe zahtevima cela prica, hehe ...
Reply
#85
pa i rade, arm gcc i clang idu zajedno

exceptioni su neophodna stvar i jako korisni(iz ugla pythona)
garbage collector takodje, ne vidim radost u malloc/calloc/realloc/free funkcijama, to je bas stvar proslosti , ako jezik to ne moze da uradi za mene...
inace zbog toga sto program moze da se zavrsi na vise mesta nepredvidjeno, dolazi do curenja memorije koja ostane alocirana a neoslobodjena

postoje alati za sprecavanje curenja memorije(putem testiranja, prosto traze gde curi)
http://valgrind.org/
Reply
#86
Danas mi na facebooku iskočilo da Texas Instruments da je dvije knjižice za skinuti. Jedna o OPampovima druga o ADCovima.


Attached Files
.pdf   OP amps cookbook Texas Instruments.pdf (Size: 5,62 MB / Downloads: 31)
.pdf   ADC cookbook Texas Instruments.pdf (Size: 6,13 MB / Downloads: 18)
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)