Ethereum în practică, Partea 2: Cum de a crea o democrație mai bună în 100 de linii de cod
Am făcut jetoane (token). Dar ceea ce este punctul în cazul în care nu fac nimic nou? Acum vom crea un nou contract, care va utiliza jetoanele de contact deja stabilite. În contractul nostru, vom descrie o blokcheyne organizație democratică. Orice om care are jetoanele vor vota în favoarea soluțiilor propuse.
Așa că hai să mergem înapoi în fila CONTRACTE -> Implementați DAO contract și inserați codul sursă (Organizația Autonomă Democrat) în domeniul Soliditate Sursa. Alegeți din contractul Democrație lista verticală și setați următorii parametri:
Suma = 0. Aici puteți introduce cu orice cantitate de eter va începe DAO dumneavoastră. Dar eterul poate fi adăugat mai târziu, așa că lăsați la zero. (Nota traducătorului: cea mai recentă versiune a contractului, acest câmp este eliminat, ceea ce face sens).
În minimumSharesForVoting indică a fost adoptat cvorumul minim, care este obligată să emită. Unități de măsură - „cenți.“ Asta este, dacă sunteți de a crea monedă a fost introdusă, toate lucrurile pe care am sfătui, dacă este dat două număr zecimal 500 ar însemna 5.00 jetoane. Toate token-uri au 100. Deci, pentru o decizie destul de 5% din voturi.
contractul ar trebui să arate ceva de genul imagine:
Dați clic pe acest nou contract pentru a deschide pagina sa. În cazul în care acest contract nu este eterul, este necesar să se adauge un pic pentru a vedea modul în care această democrație neobișnuită. În cazul în care contractul are deja are unele fonduri, apoi faceți clic pe «Afișare informații de contract».
Pe partea dreaptă a ecranului listează funcțiile care produc calculele și să facă modificări la blokcheyn. Prin urmare, acestea sunt plătite, adică, necesită eter. Selectați din lista derulantă newProposal, pentru a crea o nouă propunere.
Evaluați această ofertă este foarte ușor. Selectați funcția «vot» în lista verticală. Introduceți numărul de propuneri pentru care doriți să le voteze. Și bifați caseta Da, dacă doriți să sprijine propunerea. Sau lăsați-l necompletat dacă doriți să vorbească împotriva. Apăsați butonul EXECUTE pentru a trimite vocea.
În cazul în care numărul minim de voturi câștigate, puteți efectua contractul (executeProposal). În cazul în care propunerea vom merge doar pentru a trimite aer, acel câmp transactionBytecode din nou lăsați necompletat. După ce ați apăsat butonul EXECUTE, ia timp pentru a introduce parola. Notă privind «consumul estimat comision». Dacă există un avertisment în litere roșii, înseamnă că funcția nu va fi efectuată, dar taxa pentru încercarea de execuție va fi în continuare luate. Acest lucru se poate întâmpla din diverse motive. Dar, în contextul contractului nostru, cel mai probabil este vorba de încercarea de a efectua o ofertă înainte de termenul limită de colectare a semnăturilor este încheiat. Din motive de siguranță, orice încercare de a efectua un contract de invalid este suprimat, dar în încercarea de a îndeplini comisia va percepe în continuare.
Dacă totul merge bine, veți putea vedea rezultatele votului în câteva secunde. „Open pentru votare» (openToVote) se va stinge, iar rezultatele de vot vor apărea în câmpul proposalPassed. Cantitatea de aer în baza contractului este redusă, deoarece o parte din acesta va fi trimis către un destinatar care a fost listat la început.
Acum putem spune că am creat o organizație autonomă democratică, care este controlată de blokcheyna și utilizează în mod exclusiv digitale de acțiune-jetoane. O astfel de organizație poate avea un impact foarte mare în lumea reală. Și acum, uita-te la minunat și mai important lucru - această organizație nu se află sub controlul dumneavoastră, deși ați creat-o. Contractul fără participarea dumneavoastră, va fi acum efectuate în conformitate cu normele pe care l-au pus. Pentru totdeauna. Nu-l poți mitui, nu poate denatura. Regulile sunt constante, indiferent de ce fel de suma în cauză, sau 0,01 esteri 1.000.000.
Într-adevăr ar putea fi ceva mai bun decât asta? Chiar faptul poate. Data viitoare ne vom uita la modul în care puteți utiliza transactionBytecode nu pur și simplu pentru a trimite aerul, și de a face lucrurile mai complicate. Și vom schimba codul de jetoane pentru organizația noastră democratică a fost în măsură să monitorizeze cifra de afaceri a acestora.