تبریک به خاطر رسیدن به این مرحله در دوره آموزشی !
این نوشته به شما کمک می کند پروژه نهایی خود را با کیفیت بهتری ارائه دهید. لطفاً کلیه دستورالعمل ها و الزامات مربوط به پروژه را که در این سند نوشته شده است، دنبال کنید.
ارسال پروژه
پس از تکمیل پروژه و آمادگی جهت بررسی و امتیازدهی به پروژه لطفا “**فرم ارسال پروژه”** را پر کنید. در این فرم موارد زیر از شما خواسته شده است:
- آدرس ایمیل
- لینک پروژه ( روی سایت گیت هاب)
- لینک دموی ویدئویی پروژه (روی سایت گیت هاب)
- آدرس کاربر در بلاک چین اتریوم جهت ارسال گواهی
مشخصات پروژه نهایی
پروژه نهایی که در مخزن گیت هاب دانشجو قرار میگیرد، باید دارای فایلهای زیر باشد :
- فایلهای کد قرارداد هوشمند
- یک فایل به نام
README.md
که پروژه را به طور کلی شرح میدهد و راهنمایی می کند که پروژه چطور به صورت لوکال اجرا شود. - (اختیاری) یک فایل به نام
design_pattern_decisions.md
که دیزاین پترنهای مورد استفاده دانشجو را شرح دهد. - (اختیاری) یک فایل به نام
avoiding_common_attacks.md
که شرح میدهد پروژه چگونه در مقابل حملات متداول مقاوم است. - یک فایل به نام
deployed_addresses.txt
که نام تست نت و آدرس قرارداد دپلوی شده در آن تست نت را نشان دهد. - یک فایل دمو ( screen recording ) به صورت ویدئویی که نحوه عملکرد پروژه را نشان میدهد.
وجود و عملکرد صحیح هر کدام از موارد بالا برای هر پروژه بررسی و امتیازدهی میشود.
نکاتی که در تحویل نهایی باید مد نظر بگیرید:
-
قراردادها درشاخه contracts قرارداده شده باشد
-
پروژه به صورت یک پروژه ترافل تحویل داده شود و کامپایل ترافل با موفقیت صورت پذیرد.
-
پروژه در یک بلاک چین لوکال روی پورت 8545 اجرا شود.
-
تستها در شاخه Test قرار داده شده باشد.حداقل 5 تست برای پروژه نوشته شود. ( تستها به طور خلاصه تشریح شوند و این دلیل نوشته شود که دانشجو چرا این تست را نوشته است). تستها می تواند به زبان سالیدیتی یا جاوا اسکریپت نوشته شود.
- ارائه توضیحات (comment) در پروژه به خوبی رعایت شده باشد.
-
یک رابط کاربری ساده که پروژه از طریق آن اجرا شود به همراه پروژه تحویل داده شود.
-
پروژه را اجرا کرده و در حین اجرا صفحه را رکورد کنید و نشان دهید چگونه تنظمات و زیرساختهای اجرای پروژه را برای آن لحاظ می کنید و پروژه در حالتهای مختلف چگونه عمل میکند. طول مدت ویدئو حداقل چهار دقیقه و حداکثر ده دقیقه می تواند باشد.
-
پروژه باید بتواند اکانت فعلی متامسک را تشخیص دهد و متناسب با آن محتوا و توابع را نمایش دهد.
-
حداقل از یک کتابخانه استفاده شود.
یادداشتی درباره دشواری پروژه
بسته به سطح مهارت فعلی توسعه وب شما ، این پروژه ممکن است کم و بیش دشوار باشد. اگر چه ممکن است که پیاده سازی بسیاری از ایده ها طیف وسیعی از پیچیدگی ها را در اجرا شامل شود ولی پیاده سازی ویژگی های اساسی یک پروژه نشان می دهد که شما می توانید یک قراردادهوشمند را ایجاد کرده و آن را به یک رابط کاربری پیوند دهید. در این دوره، تمرکز ما بر عملکرد و امنیت قرارداد هوشمند است و سبک طراحی یا زیبایی و طراحی رابط کاربری جز موارد آموزشی در نظر گرفته شده در دوره نیست. پروژه دانشجو باید نشان دهنده این موضوع باشد که چگونه می تواند قراردادهای هوشمند ایمن بنویسد.
ایده پروژه نهایی
- ایده خود را پیاده سازی کنید.
اگر ایده خاصی دارید که میتوان آنرا با قرارداد هوشمند پیاده سازی کرد این دوره یک فرصت عالی است که روی ایده خود کار کنید و انرا اجرایی کنید.
نکته مهم : در نظر داشته باشد که میزان سختی ایده انتخابی باید متناسب با سطح دوره برگزار شده باشد ( ایده نه خیلی ساده باشد و نه خیلی پیچیده و سخت برای عملی کردن باشد.) - از پروژه های پیشنهادی در جلسه ششم نسبت به انتخاب ایده پروژه اقدام کنید.
- در فرم گزارش پروژه عنوان پروژه خود را بنویسید و در حد چند خط انرا توضیح دهید.
مهلت تحویل نهایی پروژه 29 اسفندماه 1400 می باشد.