در این جلسه میخواهیم نصب ترافل و اجرای یک پروژه با ترافل را مورد بررسی قراردهیم.
در درسهای قبلی در مورد ایجاد محیط و نصب geth برای توسعه قرارداد های هوشمند استفاده کردیم .
قبل از اینکه بتوانید از Truffle استفاده کنید، باید آن را با استفاده از npm نصب کنید.
یک ترمینال را باز کنید و از کد زیر استفاده کنید.
npm install -g truffle
برای استفاده از اکثر دستورات Truffle، باید آنها را در یک پروژه اجرا کنید. بنابراین اولین قدم ایجاد یک پروژه Truffle است.
شما میتوانید یک پروژه خالی ایجاد کنید، اما برای کسانی که تازه شروع به کار کردهاند، بهتر است از Truffle Boxes استفاده کنند که نمونهای از پروژه های آماده ترافل هستند.
ما اینجا از پروژه MetaCoin استفاده می کنیم که توکنی ایجاد می کند که می تواند بین حساب ها منتقل شود:
برای ایجاد یک پروژه ترافل میتوانید با نوشتن دستورات زیر در یک دایرکتوری پوشه پروژه خود را بسازید و پروژه متاکوین را از ترافل باکس داخل آن دانلود کنید و استفاده نمایید.
mkdir MetaCoin
cd MetaCoin
برای دانلود پروژه کد زیر را وارد کنید
truffle unbox metacoin
برای ایجاد یک پروژه ترافل جدید از دستور زیر استفاده کنید
truffle init.
پوشه contracts : برای قراردادهای سالیدیتی (با پسوند .sol)
پوشه migrations : دایرکتوری برای فایل های اسکریپت
پوشه test : فهرستی برای فایلهای آزمایشی برای آزمایش درخواست و قراردادهای هوشمند
truffle.js: فایل پیکربندی Truffle
برای تست پروژه در ترمینال بنویسید:
truffle test ./test/TestMetaCoin.sol
و خروجی زیر را مشاهده خواهید کرد
TestMetacoin
√ testInitialBalanceUsingDeployedContract (71ms)
√ testInitialBalanceWithNewMetaCoin (59ms)
2 passing (794ms).
برای تست جاوا اسکریپت پروژه
truffle test ./test/metacoin.js
و خروجی زیر را مشاهده خواهید کرد :
Contract: MetaCoin
√ should put 10000 MetaCoin in the first account
√ should call a function that depends on a linked library (40ms)
√ should send coin correctly (129ms)
3 passing (255ms)
پیشنهاد ویژه: دوره برنامه نویسی بلاکچین
Migration ها فایل های جاوا اسکریپت هستند که به شما کمک می کنند قراردادها را در شبکه اتریوم مستقر کنید.
این فایلها مسئول مرحلهبندی وظایف استقرار شما هستند و با این فرض نوشته میشوند که نیازهای استقرار شما در طول زمان تغییر میکند. همانطور که پروژه شما تکامل می یابد، اسکریپت های Migrations جدیدی ایجاد خواهید کرد تا این تکامل در بلاک چین را بیشتر کنید. تاریخچه Migration هایی که قبلاً اجرا شدهاند، از طریق یک قرارداد مهاجرتی ویژه که در زیر به تفصیل شرح داده شده است، در زنجیره ثبت میشود.