Arduino i Raspberry Pi početnik? Evo kako napisati čisti kôd

  • Harry James
  • 3290
  • 15253
  • 273
Oglas

Kad započnete s i više o razvoju softvera, često nailazite na frazu “čisti kod”. U svom najčišćem obliku, ovo je kôd koji drugi ljudi lako čitaju. Ekspresivan je i lijep, a njegovu namjeru lako možete razaznati jednostavno gledajući ga.

Pisanje čistog koda lakše je reći nego učiniti.

Bez obzira jeste li Arduino Prvi koraci s Arduinom: Vodič za početnike Početak rada s Arduinom: Vodič za početnike Arduino je platforma za prototiranje elektronike otvorenog koda koja se temelji na fleksibilnom, jednostavnom hardveru i softveru. Namijenjen je umjetnicima, dizajnerima, hobistima i svima koji su zainteresirani za stvaranje interaktivnih objekata ili okruženja. tinkerer, ili gradite Raspberry Pi Raspberry Pi: Neslužbeni udžbenik Raspberry Pi: Neslužbeni vodič Bez obzira jeste li trenutni vlasnik Pi-a koji želi saznati više ili ste potencijalni vlasnik ovog uređaja veličine veličine kreditne kartice, to nije vodič koji želite propustiti. aplikacija s Python-om ili ste čak i web programer, postoje neki korisni savjeti koji će drugima olakšati čitanje koda.. Evo što trebate znati.

Budite dosljedni

Možda je prvi i najočitiji savjet dosljedan u onome što radiš. Dobar primjer za to je slijediti iste obrasce prilikom imenovanja funkcija Apsolutne osnove programiranja za početnike (2. dio) Apsolutne osnove programiranja za početnike (2. dio) U 2. dijelu našeg apsolutnog vodiča za programiranje početnika, bit ću koji pokrivaju osnove funkcija, povratne vrijednosti, petlje i uvjeti. Provjerite da ste pročitali prvi dio prije nego što se pozabavite tim problemom, gdje sam objasnio… i varijable Osnove računalnog programiranja 101 - Promjenjive i podatkovne vrste Osnove računalnog programiranja 101 - Promjenjive i podatkovne vrste Nakon što ste se malo upoznali i razgovarali o objektno orijentiranom programiranju prije i odakle dolazi njegov imenjak, mislio sam da je vrijeme da prođemo kroz apsolutne osnove programiranja na nejezički specifičan način. Ovo…. Trebali biste odabrati konvenciju o imenovanju i držati se toga.

Dakle, kakvu konvenciju o imenovanju trebate koristiti?

Pa, ako pišete Python za Raspberry Pi, odgovor je jasan. Standard PEP-8 (barometar za dobar, čisti Python kod) kaže da bi imena varijabli trebala biti mala slova, a svaka riječ odvojena podvlakom. Na primjer: gpio_input i moisture_sensor_reading.

Vodič za Arduino stil podrazumijeva da bi trebali napisati svoje varijable u onome što je poznato kao slučaj Camel. Ovdje se riječi ne odvajaju ničim, već se prvo slovo svake riječi velikim slovom, osim prve riječi. Na primjer: buttonPressed i temperatureReading.

Postoje, naravno, i drugi stilovi imenovanja varijabli. Navedeno jednostavno preporučuju službeni vodiči za stil. Ali što god odlučite, pazite da se toga pridržavate i koristite istu konvenciju o imenovanju u cijelom programu.

Napišite smislene komentare

Komentari su sjajan način objašnjavanja vašeg programa. Možete navesti što svaka funkcija radi i svaku varijablu predstavlja svojim riječima. To trećoj strani olakšava čitanje koda, ali i olakšava održavanje koda jer ga u konačnici i bolje razumijete.

Ali ako svoje komentare ne pišete na očigledan i ekspresivan način, možda se nećete toliko gnjaviti.

Kada pišete komentare, pokušajte objasniti zašto kod, osim načina. Pokušajte obznaniti obilato i recite nešto o kôdu koji ne može sam izgovoriti. Dakle, umjesto:

// ažuriranje čitanja

Razmislite o pisanju:

// Ažurirajte broj razbijanja laserskog snopa prije nego što ga uklonite

Obavezno pišite cjelovite, gramatički ispravne rečenice. Pored toga, PEP-8 standard za Python kaže da bi uvijek trebali pisati svoje komentare i varijable na engleskom jeziku. To olakšava drugima suradnju s vama, ukoliko se odlučite pustiti kôd kao otvoreni kod, jer je engleski jezik itekako lingua franca razvoja softvera.

Vodič za Arduino stil ide još dalje i kaže da morate komentirati svaki blok koda, svaki za petlju i svaku deklaraciju varijable.

Osobno mislim da je to pomalo ekstremno. Ako pišete višestruke, izražene nazive varijabli, vaš je kôd već samo dokumentovanje. Ipak, ne oklijevajte dodati komentare tamo gdje mislite da su potrebni. Koristite svoje dobro prosuđivanje.

Pojednostavite svoj kôd

Kada se prvi put učite razvijati Kako naučiti programiranje bez svih stresova Kako naučiti programiranje bez ikakvog stresa Možda ste se odlučili baviti programiranjem, bilo za karijeru ili samo kao hobi. Sjajno! Ali možda se počinjete osjećati preplavljeno. Nije tako sjajno. Evo pomoći da vam olakša putovanje. , često ste ispunjeni neizmjernim naletom entuzijazma. Pročitali ste sve što možete o vašem odabranom jeziku, okviru ili platformi. Počinjete nailaziti na koncepte koje nikad prije niste znali i previše ste željni da ih upotrijebite u vlastitom kodu.

Stvari poput ternarnih operatora, koje vam omogućuju da kondenzirate logiku an “ako izjava” poput ove:

 int x = 5; ako (x < 10)  y = 1;  else  y = 0;  

U jednu liniju, poput ove:

int x = 5; int y = (x < 10) ? 1 : 0; printf("%i\n", y); 

Ternarski operatori su sigurno cool, a ja vas savjetujem da ih pročitate. No, kada pišete kôd koji drugi lako čitaju, najbolje ih je izbjegavati. To je, međutim, samo jedan primjer.

Vodič za Arduino stil također vas potiče da izbjegavate pokazivače, #define izjave i vrste podataka koji nisu standardni: boolean, char, byte, int, unsigned int, long, unsigned long, float, double, string, array i void. Trebali biste izbjegavati vrste podataka poput uint8_t, jer se one rjeđe koriste, nisu objašnjene u dokumentaciji i nisu užasno kratke.

Uvlačite i iskoristite prednost Whitespacea

Kada je u pitanju pisanje čistog koda, Python korisnici su u prednosti, jer standardni tumač Python-a nalaže da svi kodovi mora biti razumno strukturiran i razveden. Ako se ne stavite uvlačiti nakon svake funkcije i klase deklaracije i uvjetne izjave, vaš se program jednostavno neće pokrenuti.

Na Arduinu vas ništa ne sprečava u pisanju nestrukturiranog, zbijenog koda. To je, u konačnici, teško pročitati i teško je održati.

Ali ni vas ništa ne sprečava da strukturirate svoj kôd.

Prvo utvrdite za koliko ćete namjeravati ući. Ključ s karticama trebali biste koristiti razborito, jer svaki uređivač teksta tretira ASCII kôd za karticu drugačije, a ako svoj kôd dijelite s nekim drugim, postoji šansa da oni mogu nenamjerno uvesti nedosljednosti u svoj urez. Te nedosljednosti mogu slomiti vaš program, pogotovo ako koristite jezik osjetljiv na bijeli prostor poput CoffeeScript CoffeeScript Je li JavaScript bez glavobolje. JavaScript je JavaScript bez glavobolje. Nikad nisam volio pisati JavaScript toliko puno. Od dana kada sam napisao svoj prvi redak korištenjem, oduvijek mi je zamjeralo da sve što napišem u njemu uvijek izgleda poput Jacksona ... ili Pythona. Ovaj članak OpenSourceHacker detaljnije objašnjava zašto treba izbjegavati ključ s karticama.

Obično koristim četiri razmaka za svaku alineju, ali sve ovisi o vama. Sve dok ste dosljedni.

Možete konfigurirati svoj IDE i uređivač teksta da svaku karticu tretira kao zadani broj razmaka, omogućujući vam da upotrebljavate tipku tablice bez rizika da unesete probleme. Ako koristite Sublime Text 2, pogledajte njihovu službenu dokumentaciju. Ako koristite Vim, samo uredite svoj .vimrc datoteka s ovim linijama. Arduino uređivač to automatski radi umjesto vas i ubacuje dva mjesta kad god pritisnete karticu.

Potom jednostavno trebate znati gdje uvlačiti kôd. Kao dobro pravilo, uvijek biste trebali dodati uvlake nakon svake deklaracije funkcije i nakon svake ako, drugo, za, dok, prekidač, i slučaj izjava.

Mnogi urednici imaju mogućnost uvlačenja čitavih blokova koda odjednom. Ako koristite Sublime Text 2, možete postaviti kombinaciju prečaca ili tipke. Inače možete koristiti zadanu kombinaciju koja je (na OS X) Ctrl + [. U uređivaču Arduino uvlačenje datoteke možete automatski popraviti pritiskom Ctrl + T na Windows i Linux i Ctrl + T na OS X.

To u potpunosti ovisi o vašem uredniku, tako pročitajte priručnik!

Ne ponavljajte sebe

Jedna od najvažnijih mantri dobrog razvoja softvera je ne ponavljaj se, koja se često skraćuje na SUHI.

Pisanje DRY koda nevjerojatno je važno jer osigurava da je logika vašeg programa dosljedna, omogućava vam da promijenite mjesto na jednom mjestu i da se to odrazi na globalnoj razini, a manje vremena trošite na pisanje iste stvari iznova i iznova.

Najbolji način da ostanete DRY je uz liberalnu i velikodušnu upotrebu funkcije - obuhvaćajući ponovljeni zadatak blokom koda koji možete pozivati ​​ponovo i ponovo - i osigurati da je svaki zaseban i dobro napisan.

Dobra funkcija je kratka; Vodič za PEP-8 kaže malo o duljini funkcije, ali Clean Code: Priručnik o agilnom obrtu softvera Boba Martina (visoko preporučeno) kaže da “funkcije jedva da bi ikada trebale biti duge od 20 linija”. Po mogućnosti, bili bi još kraće od toga.

Funkcije također trebaju činiti točno jednu stvar. Trebate funkciju koja radi dvije stvari? Napišite dvije funkcije.

Ovi savjeti olakšavaju praćenje tijeka programa i krajnje uklanjanje pogrešaka ako je potrebno. Tu je i dodatna korist za Arduino korisnike, koji su strogo ograničeni ograničenjem pohrane, jer se viškovi uklanjaju. To rezultira manjim programima.

Budite eksplicitni

Druga je važna mantra razvoja softvera “eksplicitno je bolje nego implicitno”. To znači da bi vaš kôd trebao prilično vikati što radi na prvi pogled. Vodič za Arduino stil kaže da ovakvu stvar treba izbjegavati:

ako (gumbPress) doSomething ();  

Umjesto toga, trebalo bi očito što se događa. Umjesto toga, napišite nešto ovako:

if (gumbPress == True) doSomething ();  

Izađi i kod (dobro)

Pisanje čistog koda iznenađujuće je jednostavno. Jednostavno morate biti dosljedni u svemu što radite, izbjegavati viškove i biti eksplicitni. Zapamtite, čisti kod je samo čitljiv kod.

Puno je sjajnih materijala za čitanje na ovu temu. Izvrsno je polazište Arduino vodiči i API stilovi, a slijedi PEP-8 standard ako gradite Python aplikacije za Raspberry Pi. Ako koristite neki drugi jezik (kao što je Javascript na Tesselovoj ploči Gradnja Interneta stvari, Tessel: Razvojni odbor za Node.js, izgradnja Interneta stvari, Tessel: Razvojni odbor Node.js Tessel je nova pasmina razvojna ploča koja u potpunosti radi na Node.js, a nakon uspješnog Kickstartera sada su dostigli točku da budu dostupni svima.), provjerite Google za službeni vodič za stil.

Ako tražite više akademskog čitanja o ovoj temi, potražite Clean Code: Handbook of Agile Software Craftsmanship Bob Martin. Spomenuo sam ga ranije u ovom članku, i dolazi vrlo preporučljivo. Iako koristi Java za ilustraciju koncepata, mnoge se ideje mogu prenijeti na druge jezike, poput Pythona i C za Arduino.

Na mreži je i nekoliko sjajnih postova na blogovima koji ilustriraju kako napisati dobar, opisni i čisti kod. Preporučujem vam da odjavite “Čist, kvalitetan kôd: vodič kako postati bolji programer” autor Arash Arabi pišući za butterfly.com.au i “Osnove pisanja čistog kodeksa” Chris Reynolds, pišući za webdevstudios.com.

Iako nisu izričito povezane s čistim kodom, također je korisno naučiti koje funkcije i knjižnice je najbolje izbjegavati na vašem jeziku po izboru. Na primjer, ako učite PHP, trebali biste izbjegavati “mySQL” biblioteke, a ako Arduino gradite fizičke proizvode, nikada ne smijete koristiti funkciju odgađanja Arduino funkcije kašnjenja i zašto je ne biste trebali koristiti Arduino odgodu funkciju i zašto je ne biste trebali koristiti dok je odgoda () prikladno za osnovne demonstracije kako Arduino radi, stvarno ga ne biste trebali koristiti u stvarnom svijetu. Evo zašto i što biste trebali koristiti umjesto toga. .

Zapamtite, kôd koji je lakše čitati lakše se održava. Osim toga, ako se ikada zaglavite u nečemu, netko će lakše pročitati i pomoći vam.

Imate li kakav savjet za pisanje čistog koda? Jesam li nešto propustila? Reci mi! Ostavite mi komentar ispod i javite mi.

Krediti za fotografije: suhi krevet (Premasagar), mali ključ TAB (Kai Hendry), 2015. (Wikilogia)




Abermotjep ([email protected])
05.07.20 20:55
krenglbach junge singles <a href=" https://zarell.com/steinach-am-brenner-single-maenner-bezirk.html ">steinach am brenner single manner bezirk</a> beste dating app durnau <a href=" https://zarell.com/pernitz-single-umgebung.html ">pernitz single umgebung</a> lamprechtshausen bekanntschaften <a href=" https://zarell.com/seri-se-partnervermittlung-aus-ostermiething.html ">seri se partnervermittlung aus ostermiething</a> kennenlernen aus felixdorf <a href=" https://zarell.com/neue-leute-kennenlernen-in-andau.html ">neue leute kennenlernen in andau</a> meine stadt singles in schattendorf <a href=" https://zarell.com/persoenliche-partnervermittlung-in-brixen-im-thale.html ">personliche partnervermittlung in brixen im thale</a> schardenberg reiche m nner kennenlernen <a href=" https://zarell.com/stainz-kostenlose-singleboersen.html ">stainz kostenlose singleborsen</a> steyregg blind dating <a href=" https://zarell.com/wienerwald-singleboerse.html ">wienerwald singleboerse</a> gerasdorf bei wien beste singleborse <a href=" https://zarell.com/sankt-jakob-im-rosental-freizeit-singles.html ">sankt jakob im rosental freizeit singles</a> bruck an der leitha single manner <a href=" https://zarell.com/lichtenau-im-waldviertel-sie-sucht-ihn-kreis.html ">lichtenau im waldviertel sie sucht ihn kreis</a> single night aus krems an der donau <a href=" https://zarell.com/kaltenleutgeben-speeddating.html ">kaltenleutgeben speeddating</a> eggenburg single frau <a href=" https://zarell.com/er-sucht-sie-markt-birkfeld.html ">er sucht sie markt birkfeld</a> singletreff ab 50 grossgmain <a href=" https://zarell.com/als-single-aus-niederneukirchen.html ">als single aus niederneukirchen</a> krottendorf singleboerse <a href=" https://zarell.com/kefermarkt-single-mann.html ">kefermarkt single mann</a> treffen frauen aus ganserndorf <a href=" https://zarell.com/neuberg-an-der-muerz-singleboerse.html ">neuberg an der murz singleborse</a> tiefgraben christliche partnersuche <a href=" https://zarell.com/wo-maenner-kennenlernen-in-leogang.html ">wo manner kennenlernen in leogang</a> singles aus kostenlos aus eberndorf <a href=" https://zarell.com/hallein-partnersuche-50-plus.html ">hallein partnersuche 50 plus</a> single date stra?gang <a href=" https://zarell.com/frau-sucht-jungen-mann-in-sankt-leonhard.html ">frau sucht jungen mann in sankt leonhard</a> christliche singles in murau <a href=" https://zarell.com/mann-kennenlernen-schluesslberg.html ">mann kennenlernen schlusslberg</a> judendorf singles treffen <a href=" https://zarell.com/partnersuche-und-umgebung-mattsee.html ">partnersuche und umgebung mattsee</a> sie sucht ihn kreis aus krieglach <a href=" https://zarell.com/oberhaag-neue-leute-kennenlernen.html ">oberhaag neue leute kennenlernen</a> dating service pinggau
Abermotjep ([email protected])
05.07.20 20:12
single frau anif <a href=" https://qirco.com/single-flirt-in-mutters.html ">single flirt in mutters</a> hietzing wo treffen sich singles <a href=" https://qirco.com/kosten-single-in-weitensfeld-im-gurktal.html ">kosten single in weitensfeld im gurktal</a> paudorf single manner <a href=" https://qirco.com/eben-im-pongau-amerikaner-kennenlernen.html ">eben im pongau amerikaner kennenlernen</a> haus im ennstal neu leute kennenlernen <a href=" https://qirco.com/voecklamarkt-partnersuche-online.html ">vocklamarkt partnersuche online</a> metnitz kleinanzeigen bekanntschaften <a href=" https://qirco.com/alberndorf-in-der-riedmark-maenner-kennenlernen.html ">alberndorf in der riedmark manner kennenlernen</a> junge leute kennenlernen aus oberhausen <a href=" https://qirco.com/frau-sucht-mann-fuers-bett-pottschach.html ">frau sucht mann furs bett pottschach</a> sankt stefan ob stainz single night <a href=" https://qirco.com/tiefgraben-als-single.html ">tiefgraben als single</a> partnervermittlungen mank <a href=" https://qirco.com/traiskirchen-kleinanzeigen-bekanntschaften.html ">traiskirchen kleinanzeigen bekanntschaften</a> single date feldkirchen an der donau <a href=" https://qirco.com/taxach-anzeigen-bekanntschaften.html ">taxach anzeigen bekanntschaften</a> reiche frau sucht mann aus satteins <a href=" https://qirco.com/aspach-partnersuche-senioren.html ">aspach partnersuche senioren</a> dating seiten aus unterweitersdorf <a href=" https://qirco.com/frau-sucht-jungen-mann-in-strassburg.html ">frau sucht jungen mann in stra?burg</a> maria lanzendorf singles aus kostenlos <a href=" https://qirco.com/haag-am-hausruck-partnersuche-ab-60.html ">haag am hausruck partnersuche ab 60</a> datingseite in lilienfeld <a href=" https://qirco.com/single-kostenlos-reding.html ">single kostenlos reding</a> lerchenfeld blitz dating <a href=" https://qirco.com/weiden-am-see-singlespeed-fahrrad.html ">weiden am see singlespeed fahrrad</a> manner kennenlernen payerbach <a href=" https://qirco.com/junge-singles-oberndorf-in-tirol.html ">junge singles oberndorf in tirol</a> burgenland private partnervermittlung <a href=" https://qirco.com/soeding-sankt-johann-dating.html ">soding-sankt johann dating</a> blitz dating aus metnitz <a href=" https://qirco.com/junge-leute-kennenlernen-aus-judenburg.html ">junge leute kennenlernen aus judenburg</a> obritzberg-rust meine stadt single <a href=" https://qirco.com/slow-dating-sankt-georgen-bei-salzburg.html ">slow dating sankt georgen bei salzburg</a> single frau gro?-enzersdorf <a href=" https://qirco.com/partnervermittlungen-trausdorf-an-der-wulka.html ">partnervermittlungen trausdorf an der wulka</a> partnervermittlung umgebung in helpfau-uttendorf <a href=" https://qirco.com/frau-sucht-mann-fuer-eine-nacht-absam.html ">frau sucht mann fur eine nacht absam</a> anger exklusive partnervermittlung
Abermotjep ([email protected])
05.07.20 20:09
romantisk dejt hallsberg <a href=" https://omr-scanner.net/askersund-dating-apps.html ">askersund dating apps</a> dejt maria magdalena <a href=" https://omr-scanner.net/stoepen-dejt.html ">stopen dejt</a> dating app i sondrum-vapno <a href=" https://omr-scanner.net/ljunghusen-par-soeker-man.html ">ljunghusen par soker man</a> bollstabruk dating sweden <a href=" https://omr-scanner.net/dejt-uppvidinge.html ">dejt uppvidinge</a> hitta sex i algutsrum <a href=" https://omr-scanner.net/dejtingsajt-storfors.html ">dejtingsajt storfors</a> par soker man i vendel <a href=" https://omr-scanner.net/singlar-i-malmkoeping.html ">singlar i malmkoping</a> riala dating site <a href=" https://omr-scanner.net/roknaes-romantisk-dejt.html ">roknas romantisk dejt</a> par soker man i fryksande <a href=" https://omr-scanner.net/dejt-brevik.html ">dejt brevik</a> online dating i amotfors <a href=" https://omr-scanner.net/aengelholm-singlar.html ">angelholm singlar</a> arvika ostra motesplatser for aldre <a href=" https://omr-scanner.net/simrishamn-par-soeker-man.html ">simrishamn par soker man</a> hassleby speed dating <a href=" https://omr-scanner.net/hyssna-speed-dating.html ">hyssna speed dating</a> sodra asunda dejt <a href=" https://omr-scanner.net/nybro-st-sigfrid-dejtingsajt.html ">nybro-s:t sigfrid dejtingsajt</a> dejting matfors <a href=" https://omr-scanner.net/dejta-kvinnor-i-flemingsberg.html ">dejta kvinnor i flemingsberg</a> dejta i varby <a href=" https://omr-scanner.net/linkoepings-berga-single.html ">linkopings berga single</a> romantisk dejt burea <a href=" https://omr-scanner.net/skogslyckan-dejtingsajt.html ">skogslyckan dejtingsajt</a> gora pa dejt i tengene <a href=" https://omr-scanner.net/dating-sweden-mora.html ">dating sweden mora</a> traffa tjejer i bergkvara <a href=" https://omr-scanner.net/aerentuna-p-dejt.html ">arentuna pa dejt</a> dejta kvinnor i karlstad <a href=" https://omr-scanner.net/toeloe-dejt-aktiviteter.html ">tolo dejt aktiviteter</a> gora pa dejt i skinnskatteberg <a href=" https://omr-scanner.net/smoegen-singel-kvinna.html ">smogen singel kvinna</a> odensjo dejta <a href=" https://omr-scanner.net/hestra-par-soeker-man.html ">hestra par soker man</a> dejting hammar
Abermotjep ([email protected])
05.07.20 20:08
schwarzautal madchen kennenlernen <a href=" https://forsale24.net/frau-treffen-in-woellersdorf.html ">frau treffen in wollersdorf</a> frau single in bruckl <a href=" https://forsale24.net/lengau-single.html ">lengau single</a> bad erlach freizeit singles <a href=" https://forsale24.net/kirchschlag-in-der-buckligen-welt-single-boerse.html ">kirchschlag in der buckligen welt single borse</a> single abend aus mitterdorf an der raab <a href=" https://forsale24.net/singles-frauen-in-grafenegg.html ">singles frauen in grafenegg</a> ansfelden partnervermittlung <a href=" https://forsale24.net/freizeit-singles-in-steinbach-an-der-steyr.html ">freizeit singles in steinbach an der steyr</a> unterpremstatten reiche frau sucht mann <a href=" https://forsale24.net/kleinanzeigen-sie-sucht-ihn-in-wildschoenau.html ">kleinanzeigen sie sucht ihn in wildschonau</a> datingseite in sankt lorenz <a href=" https://forsale24.net/wartberg-im-muerztal-single-umgebung.html ">wartberg im murztal single umgebung</a> solden single mann <a href=" https://forsale24.net/gunskirchen-sie-sucht-ihn.html ">gunskirchen sie sucht ihn</a> single studenten in volders <a href=" https://forsale24.net/single-kostenlos-weikendorf.html ">single kostenlos weikendorf</a> deutschkreutz partnersuche ab 50 <a href=" https://forsale24.net/traisen-neue-menschen-kennenlernen.html ">traisen neue menschen kennenlernen</a> bad bleiberg singles treffen <a href=" https://forsale24.net/unterpremstaetten-partnersuche-50-plus.html ">unterpremstatten partnersuche 50 plus</a> tirol exklusive partnervermittlung <a href=" https://forsale24.net/singleboersen-kostenlos-eichgraben.html ">singleborsen kostenlos eichgraben</a> singles ab 50 paudorf <a href=" https://forsale24.net/single-app-aus-haag.html ">single app aus haag</a> waizenkirchen dating events <a href=" https://forsale24.net/singles-und-umgebung-aus-finkenstein-am-faaker-see.html ">singles und umgebung aus finkenstein am faaker see</a> datingseite in lockenhaus <a href=" https://forsale24.net/reiche-m-nner-kennenlernen-aus-steinbrunn.html ">reiche m nner kennenlernen aus steinbrunn</a> kosten single in steinach am brenner <a href=" https://forsale24.net/single-dating-aus-maria-lanzendorf-1.html ">single dating aus maria-lanzendorf</a> baden singles kreis <a href=" https://forsale24.net/stadt-partnersuche-aus-zillingdorf.html ">stadt partnersuche aus zillingdorf</a> freizeit singles in admont <a href=" https://forsale24.net/maedels-kennenlernen-aus-andritz.html ">madels kennenlernen aus andritz</a> studenten kennenlernen in schlierbach <a href=" https://forsale24.net/soeding-singletreff-ab-50.html ">soding singletreff ab 50</a> leute aus kennenlernen koflach <a href=" https://forsale24.net/kostenlos-partnersuche-in-bad-zell.html ">kostenlos partnersuche in bad zell</a> singles ab 50 orth an der donau
Abermotjep ([email protected])
05.07.20 19:25
bad mitterndorf senioren kennenlernen <a href=" https://recognition-software.com/frauental-an-der-lassnitz-single-abend.html ">frauental an der la?nitz single abend</a> hietzing markt sie sucht ihn <a href=" https://recognition-software.com/sie-sucht-ihn-wels.html ">sie sucht ihn wels</a> meiningen frau single <a href=" https://recognition-software.com/gablitz-sie-sucht-ihn.html ">gablitz sie sucht ihn</a> singleborse kostenlos gro? sankt florian <a href=" https://recognition-software.com/nestelbach-bei-graz-frauen-kennenlernen.html ">nestelbach bei graz frauen kennenlernen</a> frau sucht jungen mann in felixdorf <a href=" https://recognition-software.com/exklusive-partnervermittlung-aurolzmuenster.html ">exklusive partnervermittlung aurolzmunster</a> single aktiv in strengberg <a href=" https://recognition-software.com/fieberbrunn-flirten.html ">fieberbrunn flirten</a> junge leute kennenlernen aus sankt margarethen bei knittelfeld <a href=" https://recognition-software.com/markt-sie-sucht-ihn-in-graz.html ">markt sie sucht ihn in graz</a> eben am achensee singleboerse <a href=" https://recognition-software.com/persoenliche-partnervermittlung-in-bad-mitterndorf.html ">personliche partnervermittlung in bad mitterndorf</a> braunau am inn partnersuche 50 plus <a href=" https://recognition-software.com/imst-frauen-aus-treffen.html ">imst frauen aus treffen</a> dating agentur neuhofen an der krems <a href=" https://recognition-software.com/serioese-partnervermittlung-purgstall.html ">seriose partnervermittlung purgstall</a> melk dates <a href=" https://recognition-software.com/neue-menschen-kennenlernen-in-strassgang.html ">neue menschen kennenlernen in stra?gang</a> alland singleborse <a href=" https://recognition-software.com/flirt-in-goessendorf.html ">flirt in gossendorf</a> bruckl dating app <a href=" https://recognition-software.com/walding-kurse-fuer-singles.html ">walding kurse fur singles</a> meine stadt singles in obertrum am see <a href=" https://recognition-software.com/blind-dating-in-koessen.html ">blind dating in kossen</a> partnersuche online in sierndorf <a href=" https://recognition-software.com/ebenthal-in-kaernten-polizisten-kennenlernen.html ">ebenthal in karnten polizisten kennenlernen</a> dating service grafenbach-sankt valentin <a href=" https://recognition-software.com/lend-maenner-kennenlernen.html ">lend manner kennenlernen</a> wo treffen sich singles aus st. valentin <a href=" https://recognition-software.com/eidenberg-datingseite.html ">eidenberg datingseite</a> reiche single manner aus wullersdorf <a href=" https://recognition-software.com/treffen-mit-frauen-in-wagrain.html ">treffen mit frauen in wagrain</a> singleborse aus anger <a href=" https://recognition-software.com/sankt-barbara-im-muerztal-singles-frauen.html ">sankt barbara im murztal singles frauen</a> dates aus gro?gmain <a href=" https://recognition-software.com/luftenberg-an-der-donau-single-stadt.html ">luftenberg an der donau single stadt</a> metnitz beste singleborse
O modernoj tehnologiji, jednostavnoj i pristupačnoj.
Vaš vodič u svijetu moderne tehnologije. Naučite kako koristiti tehnologije i uređaje koji nas okružuju svaki dan i naučite kako otkriti zanimljivosti na Internetu.