به جلسۀ دیگری از دوره آموزش ارزهای دیجیتال خوش آمدید. همانطور که در درس قبلی دربارۀ قراردادهای هوشمند ذکر شد، اتریوم یک پلتفرم محاسباتی است که به شما امکان میدهد تا قراردادهای هوشمند ایجاد و اجرا کنید. یک قرارداد هوشمند یک قطعه کد نرمافزاری از پیش برنامهریزی شده است که هنگامی که شرایط مشخص شده برآورده میشوند، کد بهصورت خودکار اجرا میشود. بیشتر توسعهدهندگانی که قراردادهای هوشمند ایجاد میکنند، در واقع این کار را بهعنوان بخشی از یک «برنامه غیرمتمرکز یا dApp» که در حال ساخت آن هستند، انجام میدهند. اما dAppها چه هستند؟ و چرا اهمیت دارند؟ با آکادمی کالج پیپس، بزرگترین مرجع تخصصی آموزش و اخبار بازارهای مالی، همراه باشید.
[ez-toc]
برنامه غیرمتمرکز (dApp) چیست؟
یک برنامه غیرمتمرکز، که بهعنوان «dApp» نیز شناخته میشود، یک برنامۀ نرمافزاری است که بهطور خودکار با استفاده از قراردادهای هوشمند عمل میکند. از آنجایی که قراردادهای هوشمند، برنامههای کامپیوتری هستند که بر اساس شرایط از پیش تعیین شدهای، بهصورت خودکار اجرا میشوند، این امکان را برای dApp ها فراهم میکنند تا بهصورت خودکار و بدون دخالت انسان عمل کنند.
dAppها بسیار شبیه به برنامههای وب یا موبایل هستند، با این تفاوت که dAppها با استفاده از قراردادهای هوشمند ساخته شدهاند و بر روی یک بلاکچین اجرا میشوند. به زبان ساده، یک dApp، یک قرارداد هوشمند و یک رابط کاربری وب (UI) است.
بهعبارتی دیگر، برنامه غیرمتمرکز ترکیبی از یک رابط کاربری فرانتاند (UI) است که شبیه به برنامههای گوشی هوشمند یا وب شما است، با عملکرد قراردادهای هوشمند که در بکاند اجرا میشوند. فرانتاند یک برنامه به بخشی از برنامه اشاره دارد که بر روی صفحه نمایش کاربر یا رابط گرافیکی کاربر (GUI) نمایش داده میشود. بکاند یک برنامه به بخشی از برنامه اشاره دارد که بر روی صفحه نمایش کاربر نشان داده نمیشود.
dAppها امکان انجام تراکنش یا توافق بین دو طرف را در کد فراهم میکنند، بدون نیاز به واسطه یا مرجع مرکزی. آنها میتوانند بهسادگی به کد اعتماد کنند تا اطمینان حاصل شود که قرارداد حتماً انجام میشود. dAppها همچنین منبعباز هستند، به این معنی که کد منبعشان برای هر کسی قابل مشاهده است. این امر باعث میشود تا dAppها راحتتر مورد اعتماد قرار گیرند؛ زیرا کد منبع میتواند بررسی شود و هر نیت مخرب قابل مشاهده است.

از آنجایی که شرکتهای فناوری کد منبعشان را مخفی نگه میدارند، ما واقعاً نمیدانیم که برای مثال، الگوریتم جستجوی سری گوگل چگونه کار میکند یا آیا دستیار صوتی الکسا واقعاً به مکالمات ما گوش میدهد یا خیر. اما با قراردادهای هوشمند و dAppها، ما میتوانیم ببینیم که آیا همه چیز در پشت صحنه درست است یا خیر.
در واقع dAppها در برابر سانسور مقاوم هستند. این بدان معناست که دولتها یا شرکتهای بزرگ نمیتوانند هیچ محتوایی را مسدود کرده یا دسترسی کاربران را ممنوع کنند. اکنون، این میتواند هم چیز خوبی و هم بدی باشد، بسته به اینکه چگونه استفاده شود (یا سوءاستفاده شود). بهعنوان مثال، سانسور در رسانههای اجتماعی، همیشه مورد بحث بوده است؛ زیرا پلتفرمهایی مانند فیسبوک میتوانند کاربران را به دلیل دیدگاههای سیاسیشان ممنوع کنند. اگر یک dApp برنامهریزی شده باشد تا کاری انجام دهد و قرارداد هوشمند اجرا شود، هیچکس نمیتواند کاری برای متوقف یا معکوس کردن کد انجام دهد.
در نهایت، یکی از بزرگترین مزایای dAppها، این است که از بین بردنشان بسیار دشوار است. dAppها بر روی شبکهای از کامپیوترهای غیرمتمرکز (که میتوانند روی صدها یا هزاران بلاکچین باشند) در سراسر جهان اجرا میشوند. حتی اگر چند (یا چند صد) نود آفلاین شوند، باقی شبکه به اجرای بلاکچین ادامه میدهند تا بدون خرابی عمل کنند.
اینها همه خوب و عالی است، اما شایان ذکر است که dAppها معایبی نیز دارند، بهویژه از نظر توسعهدهندگان. از آنجا که کد و دادههای منتشر شده بر روی بلاکچین سختتر اصلاح میشوند، ممکن است برای توسعهدهندگان بسیار چالشبرانگیز باشد که dApp ها را پس از انتشار بهروزرسانی کنند. این بدان معناست که رفع اشکالات در نسخههای قدیمیتر یا معرفی ویژگیهای جدید میتواند دردسر بزرگی باشد. همچنین، مزایای اجرا بر روی شبکه اتریوم (یعنی امنیت، شفافیت، غیرمتمرکز بودن و قابلیت اطمینان) با هزینۀ بالایی همراه است.
مکانیزم اجماع فعلی اتریوم (PoW) زمان میبرد و هر گره باید هر تراکنش را اجرا و ذخیره کند که منجر به تقاضای محاسباتی بالاتر میشود. حتی با اینکه dAppها اساساً بهطور کامل آفلاین نمیشوند، همچنان ممکن است ازدحام شبکه رخ دهد و باعث کندی زمان اجرا شود. این مبادلات باعث میشود که dAppها سخت مقیاسپذیر شوند، اما در بهروزرسانیهای آیندۀ اتریوم وعده دادهاند که برخی از این مشکلات را حل کنند، مانند تغییر به مکانیزم اجماع اثبات سهام (PoS).
مثالی از dApp
برای داشتن درک بهتر از چگونگی کارکرد dAppها در دنیای واقعی، بیایید به یونی سوآپ بهعنوان یک مثال نگاه کنیم. یونی سوآپ که بر روی بلاکچین اتریوم ساخته شده است، یک تبادل غیرمتمرکز (DEX) است. یونی سوآپ برنامهای ارائه میدهد که به کاربران اجازه میدهد تا بهراحتی داراییهای رمزنگاری را مبادله یا «سوآپ» کنند.
این مثالی از نمای رابط کاربری یک برنامه است:

برخلاف تبادلات سنتی که از کتابهای سفارش متمرکز برای مدیریت نقدینگی و تعیین قیمتها استفاده میکنند، DEX یونی سوآپ بر روی تکنولوژی AMM اجرا میشود. AMM به معنای «سازندۀ بازار خودکار» است، که فقط یک اصطلاح فنی برای یک قرارداد هوشمند است که بهجای کتاب سفارش به استخر نقدینگی متکی است و از یک فرمول ریاضی برای تعیین قیمت خرید و فروش استفاده میکند.
در عمل، یونی سوآپ هیچ یک از داراییهای رمزنگاری شده را در تبادل نگه نمیدارد و همچنین طرف مقابل تراکنشها را برای ایجاد نقدینگی نمیگیرد. در عوض، معاملات بین شما و یک قرارداد هوشمند انجام میشود. در داخل قرارداد هوشمند، یک فرمول ریاضی وجود دارد که تعیین میکند با چه قیمتی میتوانید یک دارایی کریپتویی را بخرید یا بفروشید.
داراییهای ارز دیجیتال از کجا میآیند؟ بهعنوان مثال، اگر AMM تراکنش را مدیریت میکند و ما بخواهیم مقداری ETH خود را با BAT مبادله کنیم، BAT را از چه کسی دریافت خواهیم کرد؟
اینجاست که «استخرهای نقدینگی» وارد عمل میشوند. سایر کاربران داراییهای رمزارز خود را برای تأمین نقدینگی واریز میکنند و با سهمی از کارمزد معامله جبران میشوند. از آنجایی که DEX یونی سوآپ بر روی نرمافزار منبعباز اجرا میشود، اگر هر چیز مشکوکی وجود داشته باشد، کاربران میتوانند کد منبع را بررسی کنند.
پروتکل dApp عمومی و بدون مجوز است، به این معنی که اگر هر کسی که بخواهد داراییهای کریپتویی بخرد یا بفروشد، میتواند از dApp استفاده کند. نیازی به ثبتنام یا درخواست دسترسی نیست. تنها چیزی که نیاز دارید این است که کیف پول رمزنگاری شدۀ خود را به آن متصل کنید.