اسکرول بار

آی تی کلوپ | ITCLOOP

روی نبض فناوری زندگی کنید

سفری به درون ذهن توسعه‌دهندگان بلاک چین: شبکه آزمایشی (Testnet) چیست؟

  • -
سفری به درون ذهن توسعه‌دهندگان بلاک چین: شبکه آزمایشی (Testnet) چیست؟

توسعه‌دهندگان بلاک‌چین با آشنایی بیشتر با تفاوت‌های ظریف شبکه‌های آزمایشی (Testnet)، می‌توانند ارزیابی بهتری از نسخه‌های آزمایشی خاص انجام دهند.

شبکه‌‌های آزمایشی بلاک‌چین (Testnet) موضوع جذابی است. این شبکه‌ها در اشکال و ابعاد مختلفی ارائه شده‌اند. در این مقاله، از تجربیات اندرو لوین از گروه کوینوس (Koinos) درباره‌ی شبکه‌های آزمایشی بلاک‌چین بهره خواهیم برد تا شبکه‌های آزمایشی را رمزگشایی و بینشی کلی درمورد این موضوع ارائه کنیم که چرا این شبکه‌ها تأثیر زیادی روی قیمت می‌گذارند.

بهترین نقطه برای شروع بحث نام Testnet است. هدف هر شبکه‌ی آزمایشی، بررسی شبکه است. دو نوع شبکه‌ی آزمایشی اصلی وجود دارد: نوع اول، به شبکه‌هایی گفته می‌شود که قبل از شبکه‌ی اصلی (Mainnet) منتشر می‌شود و نوع دوم، شبکه‌ای آزمایشی است که پس از راه‌اندازی شبکه‌ی اصلی منتشر می‌شود. عملکردهای این دو نوع شبکه شبیه به‌هم است؛ اما زمینه‌ای که در آن منتشر می‌شوند، به‌طور چشم‌گیری بر درک و تأثیر انتشار اثر می‌گذارد. ابتدا نوع دوم شبکه‌های آزمایشی را بررسی می‌کنیم؛ زیرا گزینه‌ی ساده‌تری است.

وقتی درمورد شبکه‌های موجود مثل بیت کوین و اتریوم صحبت می‌کنید، شبکه‌های آزمایشی دو عملکرد اصلی را انجام می‌دهند. اولین عملکرد این است که شبکه‌های یادشده محیطی زنده هستند که توسعه‌دهندگان می‌توانند برنامه‌های غیرمتمرکز خود را روی آن آزمایش کنند. هر توسعه‌دهنده‌ای خوب می‌داند که مفهومی به‌نام «کد کامل» وجود ندارد. شبکه‌های آزمایشی محیطی در‌دسترس توسعه‌دهندگان قرار می‌دهند که شباهت بسیار زیادی به بلاک‌چین اصلی مثل اتریوم دارد و می‌توان در آن کد خود را با ریسک صفر آزمایش کرد.

شبکه آزمایشی بلاک چین

همان‌طور‌که احتمالا انتظار دارید، احتمال خراب‌شدن تراکنش‌ها و برنامه‌ها روی شبکه‌های آزمایشی وجود دارد و توکن‌ استفاده‌شده روی این شبکه‌ها نیز بی‌ارزش خواهد بود. بنابراین، شبکه‌‌ی آزمایشی به محیطی گفته می‌شود که امکان آزمایش و بررسی اپلیکشن‌های غیرمتمرکز (DApps) را دراختیار توسعه‌دهندگان قرار می‌دهد تا بدین‌طریق، قابلیت‌های برنامه‌های خود را بهبود بخشند. نکته‌ی جالب این است که ارزش شبکه‌ی آزمایشی به «بی‌ارزش» بودن آن است؛ این یعنی هیچ انتظاری از عملکرد کامل یا ایجاد ثروث در این شبکه‌ها وجود ندارد.

توسعه‌دهندگان اپلیکیشن‌های غیرمتمرکز درمقابل توسعه‌دهندگان بلاک‌چین

شبکه‌های آزمایشی ماهیتی دوطرفه دارند که این ما را به دومین عملکرد این سیستم‌ها می‌رساند؛ عملکردی که به‌نفع توسعه‌دهنده‌ی اپلیکیش‌های غیرمتمرکز نیست. یکی از مواردی که از دیدگاه منحصر‌به‌فرد لوین مطرح شده، این است که معمولا توسعه‌دهندگان برنامه‌های غیرمتمرکز با توسعه‌دهندگان بلاک‌چین ترکیب می‌شوند. به‌طور معمول توسعه‌دهندگان بلاک‌چین نقشی در ایجاد قراردادهای هوشمند ندارند و معمولا زمان بسیار کمی را برای ساخت این نوع قراردادها صرف می‌کنند.

کل سیستم کوینوس به‌عنوان قراردادهای هوشمند پیاده‌سازی شده است. ازآنجاکه قراردادهای هوشمند این سیستم قابلیت ارتقا دارند، این بدان‌معنی است که هر ویژگی را می‌توان بدون هاردفورک به بلاک‌چین اضافه کرد. همچنین به این معنی است افرادی که بلاک چین را توسعه می‌دهند (مانند اعضای گروه کوینوس)، از همان زنجیره‌ و ابزار و جعبه‌ابزاری بهره می‌برند که توسعه‌دهندگان دیگر از آن‌ها برای ساخت DAppهای خود استفاده خواهند کرد. ازآنجاکه این ویژگی فقط مختص کوینس است، بنابراین، می‌توانیم بحث درمورد آن را کنار بگذاریم.

هارد فورک سافت فورک

در هر بلاک‌چین دیگری، توسعه‌دهندگان باید به‌روزرسانی‌هایی را به زبان برنامه‌نویسی بستر بلاک‌چین (مثل C ++، Rust، Haskell و...) توسعه دهند و روی سیستم بسیار بزرگ و پیچیده‌ای به نام «معماری یکپارچه» اجرا کنند. در معماری‌های یکپارچه، تغییر هر بخش از سیستم می‌تواند بر بخش‌های دیگر آن سیستم تأثیر بگذارد؛ بنابراین، خطر ایجاد تغییرات در این شرایط بسیار بیشتر است.

توسعه‌دهندگان بلاک‌چین به محیطی زنده با سهام کم نیز نیاز دارند که بتوانند از آن برای آزمایش تغییرات مدنظر خود استفاده کنند تا مشکلات احتمالی را بیابند. توسعه‌دهندگان بلاک‌چین درست مثل توسعه‌دهندگان برنامه‌های غیرمتمرکز می‌خواهند این محیط تا حد امکان به شبکه‌ی واقعی نزدیک باشد؛ به این معنی که آن‌ها به‌دنبال برقرای ارتباط بین کدهای خود با کدهای توسعه‌دهندگان برنامه‌ها هستند.

دو طرفِ شبکه‌های آزمایشی

شبکه آزمایشی بیت کوین

این جنبه‌ی دوطرفه‌بودن شبکه‌های آزمایشی را نشان می‌دهد. این نوع شبکه‌ها توسعه‌دهندگان برنامه‌ها و توسعه‌دهندگان پلتفرم‌ها را قادر می‌سازند تا با یکدیگر تعامل داشته باشند و کد خود را با خیالی آسوده در در‌دسترس‌ترین محیط موجود و با ریسک بسیار کم آزمایش کنند. این امر به هر دو گروه اجازه می‌دهد محصولات خود را بهبود ببخشند و ارزش آن‌ را برای کاربران خود بیشتر کنند.

اکنون می‌توان دریافت چرا شبکه‌های آزمایشی چنین تأثیری روی قیمت نوکن می‌گذارند. اگر فرض کنیم قیمت تابعی از ارزش است و شبکه‌های آزمایشی به توسعه‌دهندگان کمک می‌کنند تا ارزش محصولات خود را افزایش دهند، باید انتظار تأثیر قیمت را داشت. مشکل آن است که این هم‌بستگی چند پیامد نامطلوب در پی خواهد داشت. پروژه‌ها اغلب شبکه‌ای آزمایشی منتشر می‌کنند که هیچ کاربردی برای توسعه‌دهندگان ندارد و تنها هدف آن افزایش قیمت توکن است. متأسفانه بسیاری از مردم فقط با مشاهده‌ی خبر مربوط به شبکه‌های آزمایشی، تصویر می‌کنند محصول باارزشی منتشر شده است و درنتیجه‌ی این اقدام، تأثیر نامطلوبی روی قیمت خواهد گذاشت.

شبکه‌های آزمایشی قبل از شبکه‌ی اصلی

شبکه اصلی Mainnet

بسیاری از افراد بر کاربرد شبکه‌های آزمایشی روی بلاک‌چین‌های موجود تمرکز دارند. این شبکه‌ها فضای امنی برای توسعه‌دهندگان برنامه‌ها فراهم کرده‌اند تا اپلیکیشن‌های خود را آزمایش کنند. علاوه‌براین، توسعه‌دهندگان پلتفرم می‌توانند با استفاده از شبکه‌های آزمایشی، ارتقای قابلیت‌های شبکه‌ی اصلی را بررسی کنند. این فرایند به شما کمک می‌کند تا پیش از انتشار شبکه‌ی اصلی، جنبه‌های مختلف آن را روی شبکه‌ی آزمایشی بررسی کنید.

باردیگر اشاره می‌کنیم که هدف اصلی در این بخش آزمایش است؛ اما تمرکز اصلی روی سیستم خواهد بود. ازآنجاکه این شبکه‌ها جدید محسوب می‌شوند، هیچ برنامه‌ای روی آن‌ها اجرا نمی‌شود و در این وضعیت، شبکه یک‌طرفه‌تر خواهد شد. توسعه‌دهندگان بلاک‌چین بیشترین استفاده را از پایگاه کد دارند و در این شرایط، هدف این است که پلتفرم را به‌ جایی برسانیم که توسعه‌دهندگان برای ساخت برنامه‌ روی پلتفرم مورنظر بیشتر ترغیب شوند.

اولین نیاز توسعه‌دهندگان این است که از امنیت پلتفرم اطمینان حاصل کنند و همین موضوع باید به‌عنوان دستورالعمل اصلی برای راه‌اندازی شبکه‌های آزمایشی خاص در نظر گرفته شود. با فرض بر اینکه توسعه‌دهندگان از امنیت پلتفرم اطمینان پیدا کرده‌اند، باید درمورد نحوه‌ی استفاده از پلتفرم موردنظر نیز آموزش ببینید. به‌عبارت‌دیگر، شبکه‌ی آزمایشی باید به‌عنوان ابزار آموزشی در نظر گرفته شود که توسعه‌دهندگان را قادر می‌سازد درک عمیق‌تری از نحوه‌ی استفاده از پلتفرم به‌دست آورند و در‌عین‌حال، به آزمایش امنیت شبکه نیز کمک کنند.

درنهایت، هنگام آزمایش شبکه و آموزش درمورد نحوه‌ی استفاده از آن، بخش‌هایی از پلتفرم که امکان ارتقای آن وجود دارد، کشف خواهد شد. در این شرایط، شاید برای کمک به درک بهتر سیستم به کتابخانه‌ها یا اسناد مهم نیاز پیدا کنید. این اطلاعات بازخورد ارزشمندی است که توسعه‌دهندگان پلتفرم باید پیش از نهایی‌شدن اجرای شبکه‌ی اصلی، از آن برای بهبود پلتفرم استفاده کنند.

چه بدانیم و چه ندانیم، شبکه‌های رایانه‌ای امروزه به بخش عمده‌ای از زندگی ما تبدیل شده‌اند و اهمیت آن‌ها نیز رو‌به‌افزایش است. شبکه‌های آزمایشی گامی حیاتی در فرایند انتشار شبکه‌های رایانه‌ای جدید و نوآورانه محسوب می‌شوند که ارزش آن‌ها در زندگی روزمره‌ی ما می‌تواند افزایش یابد. با به‌دست‌آوردن درک عمیق‌تر از تفاوت‌های ظریف شبکه‌های آزمایشی و موارد مهمی که روی این پلتفرم‌ها منتشر می‌شود، می‌توان نسخه‌های آزمایشی خاص و دلایل طراحی و راه‌اندازی آن‌ها را بهتر ارزیابی کرد.

اشتراک گذاری با دوستان
نظرات: (۰) اولین کسی باش که برای این مطلب نظر می‌ده!
ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
تجدید کد امنیتی

هدایت به بالای صفحه