این صفحه حاوی جزئیات یک پروژه نگارش فنی است که برای فصل اسناد Google پذیرفته شده است.
خلاصه پروژه
- سازمان منبع باز:
- اکوسیستم ARK
- نویسنده فنی:
- yslcrypto
- نام پروژه:
- پروژه 1 - راهنمای توسعه بلاک چین اصلی
- طول پروژه:
- طول استاندارد (3 ماه)
شرح پروژه
در اینجا برخی از افکار پس از خواندن بخش شروع به کار آورده شده است:
چگونه محیط برنامه نویس خود را راه اندازی کنید
نصب: من به نحوه نصب ابزارهای توسعه در اینجا عمیق تر خواهم پرداخت. من نمونههای کد را همراه با خطاهای رایج و نحوه رفع آنها ارائه میدهم (میتوانیم در اینجا به صفحه عیبیابی پیوند دهیم).
چرخاندن اولین شبکه آزمایشی خود: اولین برداشت: در حال حاضر برای کسی که فقط در حال بررسی است و می خواهد سریع راه اندازی شود، بسیار گیج کننده است. در اینجا چند چیز وجود دارد که من تغییر خواهم داد:
من می خواهم حتی مفاهیم اساسی مانند testnet را تعریف کنم.
من نمونههای کد کوتاهتری را ارائه میدهم: mkdir، cd، و غیره. همچنین آنها را با هم گروهبندی میکنم تا خوانندگان بتوانند راحتتر کپی و جایگذاری کنند. هیچ چیز خیلی ساده نیست و همه دوست دارند کپی و پیست کنند.
در اولین مطالعه، برای من مشخص نیست که مراحل 1 و 2 زیربخش بوت شبکه به چه مواردی می رسد. کلیک کردن و مرور لینک ها نیاز به تفکر زیادی دارد. من فکر میکنم که میتوانیم این را خیلی واضحتر کنیم، بدون اینکه خیلی به علفهای هرز بپردازیم.
حداقل میخواهم در مرحله 5 یک نمای کلی از core-container ارائه دهم (که فکر میکنم واقعاً مرحله 4 است؟) تا خواننده بدون دنبال کردن پیوندی، شهودی برای کاری که انجام میدهد داشته باشد.
برای مراحل 3 و 5 (واقعاً 4)، نمونه کدهای طولانی تر را توضیح می دهم.
برای مرحله آخر، من به افزونه و فایل نصب شده لینک می دهم تا زندگی را برای خواننده آسان تر کنم.
در نهایت به گونهای ویرایش میکنم که اطمینان حاصل شود که بیش از یک ایده در هر پاراگراف وجود ندارد (اجازه میدهد به آسانی بررسی شود). همچنین لحن را کمی سرگرمکنندهتر/دوستانهتر میکنم و چند ایموجی اضافه میکنم.
نحوه نظارت بر بلاک چین
من پاراگراف اول را ساده می کنم. من توضیح میدهم که یک پلاگین چیست، یک نماینده چه کاری انجام میدهد (یا حداقل به توضیح اصول اول پیوند میدهد)، جعل یک بلوک به چه معناست، و مثالی از یک رویداد شبکه میآورم.
مشکل را تعریف کنید: من به خواننده درک میکنم که یک گره کامل چیست، به توضیح دقیقتری پیوند میدهم، و بهتر است مبادلات بین یک گره کامل و یک برنامه خارجی را توضیح دهم. در نهایت من به صفحه شروع قبلی - نحوه راه اندازی یک شبکه آزمایشی و محیط توسعه - در انتهای این بخش (در صورتی که خواننده ابتدا به طور تصادفی با این صفحه برخورد کرده باشد) پیوند می دهم.
API رویدادها: از لیست رویدادهای موجود مشخص نیست که باید از «block.applied» برای به دست آوردن آنچه میخواهیم استفاده کنیم. اگرچه نکته زیر آن را واضح تر می کند، من قبلاً این را توضیح خواهم داد.
برای من روشن نیست که "block.applied" چه چیزی را برمی گرداند. من فکر می کنم مهم است که این موضوع را شفاف کنیم.
در مثال کد در پایان، فکر میکنم روشن شود که «block.generatorPublicKey» جایگزین «block.forger» (در مثال شبه کد قبلی) میشود، و «delegateKey» جایگزین «delegateWeAreMonitoring» میشود. در نهایت، برای اطمینان از سازگاری نمونههای کد و شبه کد، «delegateKey» و «generatorKey» را نیز در دستور if عوض میکنم.
ایجاد پلاگین: من توضیح خواهم داد که داربست در این زمینه به چه معناست. چیزی شبیه به: درست مانند داربست واقعی در یک سایت ساختمانی، وقتی در مورد داربست در این زمینه صحبت می کنیم، منظور ما یک ساختار از پیش ساخته شده ساده برای پلاگین شماست که می توانید در بالای آن ساختار واقعی را بسازید.
من نمونههای کد را برای تغییر نام دایرکتوری و افزونه اضافه میکنم، نمونهای از package.json را نشان میدهم و منظور ما از افزودن تنظیمات لازم به plugin.js چیست.
گره زدن آن به هم: من می خواهم واضح تر توضیح دهم که تغییرات چیست. و با یک پایان تبریک و چند ایموجی دیگر تمام کنید :)
چگونه با استفاده از ARK SDK اولین تراکنش خود را ارسال کنید
شروع به کار: من یک نمونه کد اضافه می کنم تا کاربر بتواند یک فهرست جدید با کپی پیست ایجاد کند.
اتصال به Testnet: در صورتی که خواننده ناآشنا باشد، توضیح می دهم که REST API چیست (یا حداقل به یک توضیح پیوند داده شود). من نمونه ای از JSON Viewer را می دهم و به آن پیوند می دهم. من از لحن دوستانهتری در نکته دوم استفاده میکنم (چون از خواننده درخواست لطف میکنیم).
تغییر مدیر پیکربندی: من نمونههای رایج باگهای مرتبط با شبکه را ذکر میکنم و پیوند دادن به بخش عیبیابی را در نظر میگیرم.
راهاندازی حسابهای ارسال و دریافت: من یک نمونه کد اضافه میکنم تا خواننده بتواند با کپی پیست به فهرست پیکربندی تغییر کند. من یک نمونه کد اضافه می کنم که محتویات delegates.json را نشان می دهد.
نحوه ارسال تراکنش ها با استفاده از ARK CORE TESTER CLI
پیش نیازها: من یک نمونه کد اضافه می کنم که نشان می دهد چگونه یک کپی کار از مخزن ARK Core GitHub دریافت کنید، و دیگری که خواننده را به دایرکتوری مناسب منتقل می کند.
مبانی: پاراگراف اول را برای کسانی که با متغیرهای محیط مسیر آشنایی ندارند واضح تر می کنم.
نتیجه گیری
برای نتیجه گیری، اینها فقط چند یادداشت کوتاه هستند که در حین مطالعه مستندات برداشتم. وقتی پروژه را با هم شروع می کنیم، می خواهم خودم این روند را طی کنم تا ببینم به کجا می رسم. و از این دانش برای ساده سازی بیشتر اسناد استفاده کنید.
در نهایت، در حالی که من فقط یک پروژه را در اینجا گذرانده ام، نمی بینم که این کار بیش از چند هفته طول بکشد. همانطور که در مکاتبات ایمیلی ما بحث شد، فکر میکنم در طول مدتی که با هم هستیم میتوان روی چندین پروژه کار کرد.