{"id":31364,"date":"2019-10-31T21:40:52","date_gmt":"2019-10-31T18:40:52","guid":{"rendered":"https:\/\/prohoster.info\/blog\/uchimsya-pisat-waves-smart-kontrakty-na-ride-i-ride4dapps-chast-2-dao-decentralized-autonomous-organization\/"},"modified":"2019-10-31T21:40:52","modified_gmt":"2019-10-31T18:40:52","slug":"uchimsya-pisat-waves-smart-kontrakty-na-ride-i-ride4dapps-chast-2-dao-decentralized-autonomous-organization","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/novosti-interneta\/uchimsya-pisat-waves-smart-kontrakty-na-ride-i-ride4dapps-chast-2-dao-decentralized-autonomous-organization","title":{"rendered":"Wir lernen, Wave-Smart Contracts auf RIDE und RIDE4DAPPS zu schreiben. Teil 2 (DAO \u2013 Dezentrale Autonome Organisation)","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"\u0423\u0447\u0438\u043c\u0441\u044f \u043f\u0438\u0441\u0430\u0442\u044c Waves \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b \u043d\u0430 RIDE \u0438 RIDE4DAPPS. \u0427\u0430\u0441\u0442\u044c 2 (DAO &mdash; Decentralized Autonomous Organization)\" src=\"\/wp-content\/uploads\/2019\/04\/74bb95028bc99ebcf03982cf3d1aaa24.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442!<\/p>\n<p><\/p>\n<p>\u0412 <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/447790\/\">\u043f\u0435\u0440\u0432\u043e\u0439<\/a><\/noindex> \u0447\u0430\u0441\u0442\u0438 \u043c\u044b \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438 \u043a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 dApp (\u0434\u0435\u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c) \u0432 <noindex><a rel=\"nofollow\" href=\"https:\/\/ide.wavesplatform.com\/\">Waves RIDE IDE<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u0435\u0439\u0447\u0430\u0441 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u0443\u0435\u043c \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043d\u044b\u0439 <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.wavesplatform.com\/en\/smart-contracts\/ride4dapps\/examples.html\">\u043f\u0440\u0438\u043c\u0435\u0440<\/a><\/noindex>.<\/p>\n<p><\/p>\n<h4>\u042d\u0442\u0430\u043f 3. \u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 dApp \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430<\/h4>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p><img decoding=\"async\" alt=\"\u0423\u0447\u0438\u043c\u0441\u044f \u043f\u0438\u0441\u0430\u0442\u044c Waves \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b \u043d\u0430 RIDE \u0438 RIDE4DAPPS. \u0427\u0430\u0441\u0442\u044c 2 (DAO &mdash; Decentralized Autonomous Organization)\" src=\"\/wp-content\/uploads\/2019\/04\/1c4c57eb2c4ba74d1878c46d671e3d83.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<blockquote><p>\u041a\u0430\u043a\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441\u0440\u0430\u0437\u0443 \u0431\u0440\u043e\u0441\u0430\u044e\u0442\u0441\u044f \u043d\u0430 \u0433\u043b\u0430\u0441\u0430 \u0441 Alice <strong>dApp<\/strong> Account?<br \/>\n<strong>\u0412\u043e-\u043f\u0435\u0440\u0432\u044b\u0445: <\/strong><br \/>\nBoob \u0438 Cooper \u043c\u043e\u0433\u0443\u0442 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043d\u0430 \u0430\u0434\u0440\u0435\u0441 dApp \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043e\u0431\u044b\u0447\u043d\u043e\u0439 <strong>transfer<\/strong> \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 \u0438, \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043d\u0435 \u0441\u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043a \u043d\u0438\u043c \u0434\u043e\u0441\u0442\u0443\u043f \u043e\u0431\u0440\u0430\u0442\u043d\u043e.<\/p>\n<p><strong>\u0412\u043e-\u0432\u0442\u043e\u0440\u044b\u0445:<\/strong><br \/>\n\u041c\u044b \u043d\u0438\u043a\u0430\u043a \u043d\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432\u0430\u0435\u043c Alice \u0432 \u0432\u044b\u0432\u043e\u0434\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432 \u0431\u0435\u0437 \u0441\u043e\u0433\u043b\u0430\u0441\u043e\u0432\u0430\u043d\u0438\u044f \u0441 Boob \u0438\u043b\u0438(\u0438) Cooper. \u0422\u0430\u043a \u043a\u0430\u043a, \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 verify, \u0432\u0441\u0435 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 \u043e\u0442 Alice \u0431\u0443\u0434\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f.<\/p><\/blockquote>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u043c 2-\u0435, \u0437\u0430\u043f\u0440\u0435\u0442\u0438\u0432 Alice <strong>transfer<\/strong> \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438. \u0414\u0435\u043f\u043b\u043e\u0438\u043c \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u0441\u043a\u0440\u0438\u043f\u0442:<br \/>\n<img decoding=\"async\" alt=\"\u0423\u0447\u0438\u043c\u0441\u044f \u043f\u0438\u0441\u0430\u0442\u044c Waves \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b \u043d\u0430 RIDE \u0438 RIDE4DAPPS. \u0427\u0430\u0441\u0442\u044c 2 (DAO &mdash; Decentralized Autonomous Organization)\" src=\"\/wp-content\/uploads\/2019\/04\/f365ef07f1d49080a305e4746d0754fa.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n\ufffc<br \/>\n\u041f\u0440\u043e\u0431\u0443\u0435\u043c \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u043c\u043e\u043d\u0435\u0442\u044b \u0441 dApp Alice \u0438 \u0435\u0435 \u043f\u043e\u0434\u043f\u0438\u0441\u044c\u044e. \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043e\u0448\u0438\u0431\u043a\u0443:<br \/>\n<img decoding=\"async\" alt=\"\u0423\u0447\u0438\u043c\u0441\u044f \u043f\u0438\u0441\u0430\u0442\u044c Waves \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b \u043d\u0430 RIDE \u0438 RIDE4DAPPS. \u0427\u0430\u0441\u0442\u044c 2 (DAO &mdash; Decentralized Autonomous Organization)\" src=\"\/wp-content\/uploads\/2019\/04\/c1e3b96c955e1b26f4427e7d0d8096f8.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u041f\u0440\u043e\u0431\u0443\u0435\u043c \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0447\u0435\u0440\u0435\u0437 withdraw:<\/p>\n<p><\/p>\n<pre><code class=\"scala\">broadcast(invokeScript({dappAddress: address(env.accounts[1]), call:{function:\"withdraw\",args:[{type:\"integer\", value: 1000000}]}, payment: []}))<\/code><\/pre>\n<p><\/p>\n<p>\u0421\u043a\u0440\u0438\u043f\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0438 \u0441\u043e 2-\u043c \u043f\u0443\u043d\u043a\u0442\u043e\u043c \u043c\u044b \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043b\u0438\u0441\u044c!<\/p>\n<p><\/p>\n<h4>\u042d\u0442\u0430\u043f 4. \u0421\u043e\u0437\u0434\u0430\u0435\u043c DAO \u0441 \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043d\u0438\u0435\u043c<\/h4>\n<p><\/p>\n<p>\u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u0432 \u044f\u0437\u044b\u043a\u0435 RIDE \u043f\u043e\u043a\u0430 \u043d\u0435 \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u044b \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f\u043c\u0438 (\u0441\u043b\u043e\u0432\u0430\u0440\u0438-\u0441\u043b\u043e\u0432\u0430\u0440\u0435\u0439, \u0438\u0442\u0435\u0440\u0430\u0442\u043e\u0440\u044b, \u0440\u0435\u0434\u044c\u044e\u0441\u0435\u0440\u044b \u0438 \u043f\u0440\u043e\u0447). \u041e\u0434\u043d\u0430\u043a\u043e, \u0434\u043b\u044f \u043b\u044e\u0431\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u0441 \u043f\u043b\u043e\u0441\u043a\u0438\u043c\u0438 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f\u043c\u0438 <strong>key-value<\/strong> \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0441\u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0440\u0430\u0431\u043e\u0442\u044b \u0441\u043e \u0441\u0442\u0440\u043e\u043a\u0430\u043c\u0438, \u0441\u043e\u043e\u0442\u0432\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0441 \u043a\u043b\u044e\u0447\u0430\u043c\u0438 \u0438 \u0438\u0445 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u043e\u0439.<\/p>\n<p><\/p>\n<p>\u0421\u0442\u0440\u043e\u043a\u0438 \u043e\u0447\u0435\u043d\u044c \u043f\u0440\u043e\u0441\u0442\u043e \u043a\u043e\u043d\u043a\u0430\u0442\u0435\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u0441\u0442\u0440\u043e\u043a\u0438 \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u044f\u0442\u044c \u043f\u043e \u0438\u043d\u0434\u0435\u043a\u0441\u0430\u043c.<br \/>\n\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0441\u043e\u0431\u0435\u0440\u0435\u043c \u0438 \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c \u0441\u0442\u0440\u043e\u043a\u0443 \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c \u043a\u0430\u043a \u044d\u0442\u043e \u043f\u043e\u0432\u043b\u0438\u044f\u0435\u0442 \u043d\u0430 \u0438\u0441\u0445\u043e\u0434 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438.<br \/>\n\u041c\u044b \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438\u0441\u044c \u043d\u0430 \u0442\u043e\u043c, \u0447\u0442\u043e Alice \u043d\u0435 \u043c\u043e\u0433\u043b\u0430 \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u0442\u044c Transfer \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u044e, \u0442\u0430\u043a \u043a\u0430\u043a \u044d\u0442\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0431\u044b\u043b\u0430 \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u0432 @verifier \u0434\u043b\u044f \u0442\u0430\u043a\u043e\u0433\u043e \u0442\u0438\u043f\u0430 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0439.<\/p>\n<p><\/p>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0443\u043f\u0440\u0430\u0436\u043d\u044f\u0435\u043c\u0441\u044f \u0441\u043e \u0441\u0442\u0440\u043e\u043a\u0430\u043c\u0438 \u0438 \u043f\u043e\u0442\u043e\u043c \u0440\u0430\u0437\u0440\u0435\u0448\u0438\u043c \u044d\u0442\u043e. <\/p>\n<p>\n<b class=\"spoiler_title\">RIDE Strings<\/b><\/p>\n<p>\u0422\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u044f \u0441\u043d\u043e\u0432\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430, \u043c\u044b \u0443\u043c\u0435\u0435\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441\u043e \u0441\u0442\u0440\u043e\u043a\u0430\u043c\u0438.<br \/>\n<img decoding=\"async\" alt=\"\u0423\u0447\u0438\u043c\u0441\u044f \u043f\u0438\u0441\u0430\u0442\u044c Waves \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b \u043d\u0430 RIDE \u0438 RIDE4DAPPS. \u0427\u0430\u0441\u0442\u044c 2 (DAO &mdash; Decentralized Autonomous Organization)\" src=\"\/wp-content\/uploads\/2019\/04\/902b65d80f6678cbd9c29af0c8d4fbc8.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\ufffc<br \/>\n\u0418\u0442\u043e\u0433\u043e, \u043c\u044b \u0438\u043c\u0435\u0435\u043c \u0432\u0441\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0435 \u0434\u043b\u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0441\u043b\u043e\u0436\u043d\u043e\u0439 \u043b\u043e\u0433\u0438\u043a\u0438 <strong>DAO dApp<\/strong>.<\/p>\n<p>\n<b class=\"spoiler_title\">Data Transactions<\/b><\/p>\n<p>Data Transactions:<br \/>\n\u201cThe maximum size for a key is 100 characters, and a key can contain arbitrary Unicode code points including spaces and other non-printable symbols. String values have a limit of 32,768 bytes and the maximum number of possible entries in data transaction is 100. Overall, the maximum size of a data transaction is around 140kb\u200a\u2014\u200afor reference, almost exactly the length of Shakespeare\u2019s play \u2018Romeo and Juliet\u2019.\u201d<\/p>\n<p><\/p>\n<p><u><strong>\u0421\u043e\u0437\u0434\u0430\u0435\u043c DAO \u0441\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c\u0438 \u0443\u0441\u043b\u043e\u0432\u0438\u044f\u043c\u0438:<\/strong><\/u><br \/>\n\u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0441\u0442\u0430\u0440\u0442\u0430\u043f\u0443 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0444\u0438\u043d\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u0432\u044b\u0437\u0432\u0430\u0432 <strong>getFunds()<\/strong> \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043c\u0438\u043d\u0438\u043c\u0443\u043c 2-\u0445 \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u043e\u0432 \u2014 \u0438\u043d\u0432\u0435\u0441\u0442\u043e\u0440\u043e\u0432 DAO. <strong>\u0412\u044b\u0432\u0435\u0441\u0442\u0438<\/strong> \u043c\u043e\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0440\u043e\u0432\u043d\u043e \u0441\u0442\u043e\u043b\u044c\u043a\u043e, \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432 \u0441\u0443\u043c\u043c\u0435 \u0443\u043a\u0430\u0437\u0430\u043b\u0438 \u043d\u0430 <strong>\u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043d\u0438\u0438<\/strong> \u0432\u043b\u0430\u0434\u0435\u043b\u044c\u0446\u044b DAO.<\/p>\n<p><\/p>\n<blockquote><p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u0434\u0435\u043b\u0430\u0435\u043c 3 \u0442\u0438\u043f\u0430 \u043a\u043b\u044e\u0447\u0435\u0439 \u0438 \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u043b\u043e\u0433\u0438\u043a\u0443 \u043f\u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u0431\u0430\u043b\u0430\u043d\u0441\u0430\u043c\u0438 \u0432 2-\u0445 \u043d\u043e\u0432\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u0445 vote \u0438 getFunds:<br \/>\nxx&#8230;xx<strong>_ia<\/strong> = \u0438\u043d\u0432\u0435\u0441\u0442\u043e\u0440\u044b, \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0439 \u0431\u0430\u043b\u0430\u043d\u0441 <em>(vote, deposit, withdrawal)<\/em><br \/>\nxx\u2026xx<strong>_sv<\/strong> = \u0441\u0442\u0430\u0440\u0442\u0430\u043f\u044b, \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0433\u043e\u043b\u043e\u0441\u043e\u0432 <em>(vote, getFunds)<\/em><br \/>\nxx\u2026xx<strong>_sf<\/strong> = \u0441\u0442\u0430\u0440\u0442\u0430\u043f\u044b, \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0433\u043e\u043b\u043e\u0441\u043e\u0432 <em>(vote, getFunds)<\/em><br \/>\nxx\u2026xx = \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441 (35 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432)<\/p><\/blockquote>\n<p>\u0417\u0430\u043c\u0435\u0442\u044c\u0442\u0435 \u0432 Vote \u043d\u0430\u043c \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u043b\u043e\u0441\u044c \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c \u0441\u0440\u0430\u0437\u0443 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u043b\u0435\u0439:<\/p>\n<p><\/p>\n<pre><code class=\"scala\">WriteSet([DataEntry(key1, value1), DataEntry(key2, value2)]),<\/code><\/pre>\n<p><\/p>\n<p>WriteSet \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043d\u0430\u043c \u0434\u0435\u043b\u0430\u0442\u044c \u0441\u0440\u0430\u0437\u0443 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u043e\u0434\u043d\u043e\u0439 <strong>invokeScript<\/strong> \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438.<\/p>\n<p><\/p>\n<p>\u0412\u043e\u0442 \u0442\u0430\u043a \u044d\u0442\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0432 key-value \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 DAO dApp, \u043f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e \u043a\u0430\u043a Bob \u0438 Cooper \u043f\u043e\u043f\u043e\u043b\u043d\u0438\u043b\u0438 <strong>ia<\/strong>-\u0434\u0435\u043f\u043e\u0437\u0438\u0442\u044b:<br \/>\n<img decoding=\"async\" alt=\"\u0423\u0447\u0438\u043c\u0441\u044f \u043f\u0438\u0441\u0430\u0442\u044c Waves \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b \u043d\u0430 RIDE \u0438 RIDE4DAPPS. \u0427\u0430\u0441\u0442\u044c 2 (DAO &mdash; Decentralized Autonomous Organization)\" src=\"\/wp-content\/uploads\/2019\/04\/8708c0d724fba2f733305d98c7a32fbf.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0434\u0435\u043f\u043e\u0437\u0438\u0442\u0430 \u0443 \u043d\u0430\u0441 \u0441\u043b\u0435\u0433\u043a\u0430 \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u0430\u0441\u044c:<br \/>\n<img decoding=\"async\" alt=\"\u0423\u0447\u0438\u043c\u0441\u044f \u043f\u0438\u0441\u0430\u0442\u044c Waves \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b \u043d\u0430 RIDE \u0438 RIDE4DAPPS. \u0427\u0430\u0441\u0442\u044c 2 (DAO &mdash; Decentralized Autonomous Organization)\" src=\"\/wp-content\/uploads\/2019\/04\/383bc6969d8954146ea6a829b07f9e73.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u0421\u0435\u0439\u0447\u0430\u0441 \u043d\u0430\u0441\u0442\u0443\u043f\u0430\u0435\u0442 \u0441\u0430\u043c\u044b\u0439 \u0432\u0430\u0436\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u0432 \u0434\u0435\u044f\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 DAO \u2014 <strong>\u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043d\u0438\u0435<\/strong> \u0437\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u044b \u0434\u043b\u044f \u0444\u0438\u043d\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f.<\/p>\n<p><\/p>\n<p>Bob \u0433\u043e\u043b\u043e\u0441\u0443\u0435\u0442 \u0437\u0430 \u043f\u0440\u043e\u0435\u043a\u0442 Neli \u043d\u0430 500000 wavelets:<\/p>\n<p><\/p>\n<pre><code class=\"scala\">broadcast(invokeScript({dappAddress: address(env.accounts[1]), call:{function:\"vote\",args:[{type:\"integer\", value: 500000}, {type:\"string\", value: \"3MrXEKJr9nDLNyVZ1d12Mq4jjeUYwxNjMsH\"}]}, payment: []}))<\/code><\/pre>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"\u0423\u0447\u0438\u043c\u0441\u044f \u043f\u0438\u0441\u0430\u0442\u044c Waves \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b \u043d\u0430 RIDE \u0438 RIDE4DAPPS. \u0427\u0430\u0441\u0442\u044c 2 (DAO &mdash; Decentralized Autonomous Organization)\" src=\"\/wp-content\/uploads\/2019\/04\/77b8e201b6678a9614e0e9ad66124200.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u0412 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u044b \u0432\u0438\u0434\u0438\u043c \u0432\u0441\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 \u0434\u043b\u044f \u0430\u0434\u0440\u0435\u0441\u0430 Neli:<br \/>\n<img decoding=\"async\" alt=\"\u0423\u0447\u0438\u043c\u0441\u044f \u043f\u0438\u0441\u0430\u0442\u044c Waves \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b \u043d\u0430 RIDE \u0438 RIDE4DAPPS. \u0427\u0430\u0441\u0442\u044c 2 (DAO &mdash; Decentralized Autonomous Organization)\" src=\"\/wp-content\/uploads\/2019\/04\/655e042d4d05a6d14394b2d828065f6e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n\u041a\u0443\u043f\u0435\u0440 \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u043e\u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043b \u0437\u0430 \u043f\u0440\u043e\u0435\u043a\u0442 Neli.<br \/>\n<img decoding=\"async\" alt=\"\u0423\u0447\u0438\u043c\u0441\u044f \u043f\u0438\u0441\u0430\u0442\u044c Waves \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b \u043d\u0430 RIDE \u0438 RIDE4DAPPS. \u0427\u0430\u0441\u0442\u044c 2 (DAO &mdash; Decentralized Autonomous Organization)\" src=\"\/wp-content\/uploads\/2019\/04\/1397e97702ecdd16ab24685930002caf.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0432\u0437\u0433\u043b\u044f\u043d\u0435\u043c \u043d\u0430 \u043a\u043e\u0434 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <strong>getFunds<\/strong>. Neli \u0434\u043e\u043b\u0436\u043d\u0430 \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043c\u0438\u043d\u0438\u043c\u0443\u043c 2 \u0433\u043e\u043b\u043e\u0441\u0430, \u0447\u0442\u043e\u0431\u044b \u0438\u043c\u0435\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u0438\u0437 DAO.<br \/>\n<img decoding=\"async\" alt=\"\u0423\u0447\u0438\u043c\u0441\u044f \u043f\u0438\u0441\u0430\u0442\u044c Waves \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b \u043d\u0430 RIDE \u0438 RIDE4DAPPS. \u0427\u0430\u0441\u0442\u044c 2 (DAO &mdash; Decentralized Autonomous Organization)\" src=\"\/wp-content\/uploads\/2019\/04\/0b279b735596035d2f0b5685dd582780.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Neli \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u043f\u043e\u043b\u043e\u0432\u0438\u043d\u0443 \u0434\u043e\u0432\u0435\u0440\u0435\u043d\u043d\u043e\u0439 \u0435\u0439 \u0441\u0443\u043c\u043c\u044b:<\/p>\n<p><\/p>\n<pre><code class=\"scala\">broadcast(invokeScript({dappAddress: address(env.accounts[1]), call:{function:\"getFunds\",args:[{type:\"integer\", value: 500000}]}, payment: []}))<\/code><\/pre>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"\u0423\u0447\u0438\u043c\u0441\u044f \u043f\u0438\u0441\u0430\u0442\u044c Waves \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b \u043d\u0430 RIDE \u0438 RIDE4DAPPS. \u0427\u0430\u0441\u0442\u044c 2 (DAO &mdash; Decentralized Autonomous Organization)\" src=\"\/wp-content\/uploads\/2019\/04\/9bfc6306e464838c1378a6520b80a960.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u0415\u0439 \u044d\u0442\u043e \u0443\u0434\u0430\u0435\u0442\u0441\u044f, \u0442\u043e \u0435\u0441\u0442\u044c DAO \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442!<\/p>\n<p><\/p>\n<p>\u041c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f DAO \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 <strong>RIDE4DAPPS<\/strong>.<br \/>\n\u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0447\u0430\u0441\u0442\u044f\u0445 \u043c\u044b \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u0437\u0430\u0439\u043c\u0435\u043c\u0441\u044f \u0440\u0435\u0444\u0430\u043a\u0442\u043e\u0440\u0438\u043d\u0433\u043e\u043c \u043a\u043e\u0434\u0430 \u0438 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043a\u0435\u0439\u0441\u043e\u0432.<\/p>\n<p><\/p>\n<p>\u041f\u043e\u043b\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u043a\u043e\u0434\u0430 \u0432 <noindex><a rel=\"nofollow\" href=\"https:\/\/ide.wavesplatform.com\/\">Waves RIDE IDE:<\/a><\/noindex><\/p>\n<p><\/p>\n<pre><code class=\"scala\"># In this example multiple accounts can deposit their funds to DAO and safely take them back, no one can interfere with this.\n# DAO participants can also vote for particular addresses and let them withdraw invested funds then quorum has reached.\n# An inner state is maintained as mapping `address=&gt;waves`.\n# https:\/\/medium.com\/waves-lab\/waves-announces-funding-for-ride-for-dapps-developers-f724095fdbe1\n\n# You can try this contract by following commands in the IDE (ide.wavesplatform.com)\n# Run commands as listed below\n# From account #0:\n#      deploy()\n# From account #1: deposit funds\n#      broadcast(invokeScript({dappAddress: address(env.accounts[1]), call:{function:\"deposit\",args:[]}, payment: [{amount: 100000000, asset:null }]}))\n# From account #2: deposit funds\n#      broadcast(invokeScript({dappAddress: address(env.accounts[1]), call:{function:\"deposit\",args:[]}, payment: [{amount: 100000000, asset:null }]}))\n# From account #1: vote for startup\n#      broadcast(invokeScript({dappAddress: address(env.accounts[1]), call:{function:\"vote\",args:[{type:\"integer\", value: 500000}, {type:\"string\", value: \"3MrXEKJr9nDLNyVZ1d12Mq4jjeUYwxNjMsH\"}]}, payment: []}))\n# From account #2: vote for startup\n#      broadcast(invokeScript({dappAddress: address(env.accounts[1]), call:{function:\"vote\",args:[{type:\"integer\", value: 500000}, {type:\"string\", value: \"3MrXEKJr9nDLNyVZ1d12Mq4jjeUYwxNjMsH\"}]}, payment: []}))\n# From account #3: get invested funds\n#      broadcast(invokeScript({dappAddress: address(env.accounts[1]), call:{function:\"getFunds\",args:[{type:\"integer\", value: 500000}]}, payment: []}))\n\n{-# STDLIB_VERSION 3 #-}\n{-# CONTENT_TYPE DAPP #-}\n{-# SCRIPT_TYPE ACCOUNT #-}\n\n@Callable(i)\nfunc deposit() = {\n   let pmt = extract(i.payment)\n   if (isDefined(pmt.assetId)) then throw(\"can hodl waves only at the moment\")\n   else {\n        let currentKey = toBase58String(i.caller.bytes)\n        let xxxInvestorBalance = currentKey + \"_\" + \"ib\"\n        let currentAmount = match getInteger(this, xxxInvestorBalance) {\n            case a:Int =&gt; a\n            case _ =&gt; 0\n        }\n        let newAmount = currentAmount + pmt.amount\n        WriteSet([DataEntry(xxxInvestorBalance, newAmount)])\n   }\n}\n@Callable(i)\nfunc withdraw(amount: Int) = {\n        let currentKey = toBase58String(i.caller.bytes)\n        let xxxInvestorBalance = currentKey + \"_\" + \"ib\"\n        let currentAmount = match getInteger(this, xxxInvestorBalance) {\n            case a:Int =&gt; a\n            case _ =&gt; 0\n        }\n        let newAmount = currentAmount - amount\n     if (amount &lt; 0)\n            then throw(\"Can't withdraw negative amount\")\n    else if (newAmount &lt; 0)\n            then throw(\"Not enough balance\")\n            else ScriptResult(\n                    WriteSet([DataEntry(xxxInvestorBalance, newAmount)]),\n                    TransferSet([ScriptTransfer(i.caller, amount, unit)])\n                )\n    }\n@Callable(i)\nfunc getFunds(amount: Int) = {\n        let quorum = 2\n        let currentKey = toBase58String(i.caller.bytes)\n        let xxxStartupFund = currentKey + \"_\" + \"sf\"\n        let xxxStartupVotes = currentKey + \"_\" + \"sv\"\n        let currentAmount = match getInteger(this, xxxStartupFund) {\n            case a:Int =&gt; a\n            case _ =&gt; 0\n        }\n        let totalVotes = match getInteger(this, xxxStartupVotes) {\n            case a:Int =&gt; a\n            case _ =&gt; 0\n        }\n        let newAmount = currentAmount - amount\n    if (amount &lt; 0)\n            then throw(\"Can't withdraw negative amount\")\n    else if (newAmount &lt; 0)\n            then throw(\"Not enough balance\")\n    else if (totalVotes &lt; quorum)\n            then throw(\"Not enough votes. At least 2 votes required!\")\n    else ScriptResult(\n                    WriteSet([\n                        DataEntry(xxxStartupFund, newAmount)\n                        ]),\n                    TransferSet([ScriptTransfer(i.caller, amount, unit)])\n                )\n    }\n@Callable(i)\nfunc vote(amount: Int, address: String) = {\n        let currentKey = toBase58String(i.caller.bytes)\n        let xxxInvestorBalance = currentKey + \"_\" + \"ib\"\n        let xxxStartupFund = address + \"_\" + \"sf\"\n        let xxxStartupVotes = address + \"_\" + \"sv\"\n        let currentAmount = match getInteger(this, xxxInvestorBalance) {\n            case a:Int =&gt; a\n            case _ =&gt; 0\n        }\n        let currentVotes = match getInteger(this, xxxStartupVotes) {\n            case a:Int =&gt; a\n            case _ =&gt; 0\n        }\n        let currentFund = match getInteger(this, xxxStartupFund) {\n            case a:Int =&gt; a\n            case _ =&gt; 0\n        }\n    if (amount &lt;= 0)\n            then throw(\"Can't withdraw negative amount\")\n    else if (amount &gt; currentAmount)\n            then throw(\"Not enough balance\")\n    else ScriptResult(\n                    WriteSet([\n                        DataEntry(xxxInvestorBalance, currentAmount - amount),\n                        DataEntry(xxxStartupVotes, currentVotes + 1),\n                        DataEntry(xxxStartupFund, currentFund + amount)\n                        ]),\n                    TransferSet([ScriptTransfer(i.caller, amount, unit)])\n            )\n    }\n@Verifier(tx)\nfunc verify() = {\n    match tx {\n        case t: TransferTransaction =&gt;false\n        case _ =&gt; true\n    }\n}<\/code><\/pre>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/447790\/\">\u041f\u0435\u0440\u0432\u0430\u044f \u0447\u0430\u0441\u0442\u044c<\/a><\/noindex><br \/>\n<noindex>\u041a\u043e\u0434 \u043d\u0430 \u0433\u0438\u0442\u0445\u0430\u0431\u0435<\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/ide.wavesplatform.com\/\">Waves RIDE IDE<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/waves-lab\/waves-announces-funding-for-ride-for-dapps-developers-f724095fdbe1\">\u0410\u043d\u043e\u043d\u0441 \u0433\u0440\u0430\u043d\u0442\u043e\u0432\u043e\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b<\/a><\/noindex><\/p>\n<p>\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/447808\/\">habr.com<\/a><\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442! \u0412 \u043f\u0435\u0440\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043c\u044b \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438 \u043a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 dApp (\u0434\u0435\u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c) \u0432 Waves RIDE IDE. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u0435\u0439\u0447\u0430\u0441 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u0443\u0435\u043c \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440. \u042d\u0442\u0430\u043f 3. \u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 dApp \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430 \u041a\u0430\u043a\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441\u0440\u0430\u0437\u0443 \u0431\u0440\u043e\u0441\u0430\u044e\u0442\u0441\u044f \u043d\u0430 \u0433\u043b\u0430\u0441\u0430 \u0441 Alice dApp Account? \u0412\u043e-\u043f\u0435\u0440\u0432\u044b\u0445: Boob \u0438 Cooper \u043c\u043e\u0433\u0443\u0442 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043d\u0430 \u0430\u0434\u0440\u0435\u0441 dApp \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043e\u0431\u044b\u0447\u043d\u043e\u0439 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":23330,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-31364","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-novosti-interneta"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442! \u0412 \u043f\u0435\u0440\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043c\u044b \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438 \u043a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 dApp (\u0434\u0435\u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c) \u0432 Waves RIDE IDE. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u0435\u0439\u0447\u0430\u0441 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u0443\u0435\u043c \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440. \u042d\u0442\u0430\u043f 3. \u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 dApp \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430 \u041a\u0430\u043a\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441\u0440\u0430\u0437\u0443 \u0431\u0440\u043e\u0441\u0430\u044e\u0442\u0441\u044f \u043d\u0430 \u0433\u043b\u0430\u0441\u0430 \u0441 Alice dApp Account? \u0412\u043e-\u043f\u0435\u0440\u0432\u044b\u0445: Boob \u0438 Cooper \u043c\u043e\u0433\u0443\u0442 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043d\u0430 \u0430\u0434\u0440\u0435\u0441 dApp \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043e\u0431\u044b\u0447\u043d\u043e\u0439\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/de\/blog\/novosti-interneta\/uchimsya-pisat-waves-smart-kontrakty-na-ride-i-ride4dapps-chast-2-dao-decentralized-autonomous-organization\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0423\u0447\u0438\u043c\u0441\u044f \u043f\u0438\u0441\u0430\u0442\u044c Waves \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b \u043d\u0430 RIDE \u0438 RIDE4DAPPS. \u0427\u0430\u0441\u0442\u044c 2 (DAO \u2014 Decentralized Autonomous Organization) | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442! \u0412 \u043f\u0435\u0440\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043c\u044b \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438 \u043a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 dApp (\u0434\u0435\u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c) \u0432 Waves RIDE IDE. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u0435\u0439\u0447\u0430\u0441 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u0443\u0435\u043c \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440. \u042d\u0442\u0430\u043f 3. \u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 dApp \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430 \u041a\u0430\u043a\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441\u0440\u0430\u0437\u0443 \u0431\u0440\u043e\u0441\u0430\u044e\u0442\u0441\u044f \u043d\u0430 \u0433\u043b\u0430\u0441\u0430 \u0441 Alice dApp Account? \u0412\u043e-\u043f\u0435\u0440\u0432\u044b\u0445: Boob \u0438 Cooper \u043c\u043e\u0433\u0443\u0442 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043d\u0430 \u0430\u0434\u0440\u0435\u0441 dApp \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043e\u0431\u044b\u0447\u043d\u043e\u0439\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/novosti-interneta\/uchimsya-pisat-waves-smart-kontrakty-na-ride-i-ride4dapps-chast-2-dao-decentralized-autonomous-organization\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:40:52+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:40:52+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Lernen, Waves Smart Contracts in RIDE und RIDE4DAPPS zu schreiben. Teil 2 (DAO \u2014 Dezentrale autonome Organisation) | ProHoster","description":"Hallo zusammen! Im ersten Teil haben wir detailliert betrachtet, wie man dApps (dezentrale Anwendungen) in der Waves RIDE IDE erstellt und damit arbeitet. Jetzt lassen Sie uns das behandelte Beispiel etwas testen. Abschnitt 3. Testen des dApp-Kontos Welche Probleme fallen sofort bei Alice dApp-Konto auf? Erstens: Boob und Cooper k\u00f6nnten versehentlich Gelder an die dApp-Adresse mit einer normalen","canonical_url":"https:\/\/prohoster.info\/de\/blog\/novosti-interneta\/uchimsya-pisat-waves-smart-kontrakty-na-ride-i-ride4dapps-chast-2-dao-decentralized-autonomous-organization","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0423\u0447\u0438\u043c\u0441\u044f \u043f\u0438\u0441\u0430\u0442\u044c Waves \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b \u043d\u0430 RIDE \u0438 RIDE4DAPPS. \u0427\u0430\u0441\u0442\u044c 2 (DAO \u2014 Decentralized Autonomous Organization) | ProHoster","og:description":"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442! \u0412 \u043f\u0435\u0440\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043c\u044b \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438 \u043a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 dApp (\u0434\u0435\u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c) \u0432 Waves RIDE IDE. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u0435\u0439\u0447\u0430\u0441 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u0443\u0435\u043c \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440. \u042d\u0442\u0430\u043f 3. \u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 dApp \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430 \u041a\u0430\u043a\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441\u0440\u0430\u0437\u0443 \u0431\u0440\u043e\u0441\u0430\u044e\u0442\u0441\u044f \u043d\u0430 \u0433\u043b\u0430\u0441\u0430 \u0441 Alice dApp Account? \u0412\u043e-\u043f\u0435\u0440\u0432\u044b\u0445: Boob \u0438 Cooper \u043c\u043e\u0433\u0443\u0442 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043d\u0430 \u0430\u0434\u0440\u0435\u0441 dApp \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043e\u0431\u044b\u0447\u043d\u043e\u0439","og:url":"https:\/\/prohoster.info\/de\/blog\/novosti-interneta\/uchimsya-pisat-waves-smart-kontrakty-na-ride-i-ride4dapps-chast-2-dao-decentralized-autonomous-organization","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:40:52+00:00","article:modified_time":"2019-10-31T18:40:52+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"31364","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 05:49:20","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 03:18:39","updated":"2026-01-21 05:49:20"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/31364","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=31364"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/31364\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media\/23330"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=31364"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=31364"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=31364"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}