جستجو برای:
سبد خرید 0
  • آخرین دوره های آموزشی
  • درخواست پروژه
  • مقالات بلاکچین
  • تماس با ما

ورود

گذرواژه خود را فراموش کرده اید؟

ثبت نام

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

  • 09395149363
  • info@fara-zaman.ir
  • لیست علاقه مندی ها
0
فرازمان | آکادمی بلاکچین
  • آخرین دوره های آموزشیداغ
  • درخواست پروژه
  • مقالات بلاکچینجدید
  • تماس با ما
آخرین اطلاعیه ها
جهت نمایش اطلاعیه باید وارد سایت شوید
شروع کنید

وبلاگ

فرازمان | آکادمی بلاکچیناخبارنمونه قراردادهای هوشمند سالیدیتیپروژه دفترچه آدرس(Address book) در قرارداد هوشمند Solidity

پروژه دفترچه آدرس(Address book) در قرارداد هوشمند Solidity

27 خرداد 1401
ارسال شده توسط مریم طاهری
نمونه قراردادهای هوشمند سالیدیتی
دفترچه آدرس(Address book) قرارداد هوشمند Solidity

یک دفترچه آدرس(Address book) در کد زیر در قرارداد هوشمند Solidity آمده است. دفترچه آدرس این امکان را به فرد می دهد تا لیستی از آدرس های حساب اتریوم را با نام مستعار در بلاک چین ذخیره کند. به عنوان یک نکته، هرگز داده های حساس یا خصوصی را در بلاک چین عمومی ذخیره نکنید. داده های ذخیره شده در بلاک چین عمومی هستند که می توان آن ها را با استفاده از ابزارهای مختلف (مانند Web3) خواند.

قرارداد دفترچه آدرس بسیار پیشرفته است زیرا از موارد زیر استفاده می کند:

  • Mapping
  • آرایه ها
  • حلقه

برای یادگیری اصول اولیه Mappngها، آرایه ها و حلقه ها، قرارداد زیر را آزمایش کنید. سعی کنید کد قرارداد هوشمند را گسترش دهید. با استفاده از Remix آن را در شبکه آزمایشی دپلوی کنید. فراموش نکنید:

  • ذخیره یک متغیر حالت در بلاک چین از گس استفاده می کند.
  • مشاهده متغیرهای حالت از بلاک چین از گس استفاده نمی کند.
				
					pragma solidity 0.5.10;

contract AddressBook {

    //maps an address to an address array
    //As an example your address to a list of addresses you are interested in.  This supports multiple people having an address book

    mapping(address => address[]) private _addresses;

 
    //maps an address to another map of address to a string
    //example - your address mapped to a mapping of your address book to its alias

    mapping(address => mapping(address => string)) private _aliases;


    //returns the list of addresses in the _addresses map
    function getAddressArray(address addr) public returns (address[] memory) {
        return _addresses[addr];
    }

    //adds address to your list of addresses in the _addresses map.
    //Uses push since it is an array
    //adds your address, address and alias to the _aliases map
    function addAddress(address addr, string memory alia) public {
        _addresses[msg.sender].push(addr);
        _aliases[msg.sender][addr] = alia;
    }

    function removeAddress(address addr) public {
        // get the length of the addresses in the array from the msg sender
        uint length = _addresses[msg.sender].length;
        for(uint i = 0; i < length; i++) {
            // if the address that you want to remove = one of the addresses you own 
            //and is one of the iterations of the loop
            if (addr == _addresses[msg.sender][i]) {
                //once we find the item in the array we need to delete the item
                //then shift each item down 1.  You can't just delete an item in the middle of an array
                //make sure the length of the address is not < 1 (this is needed because we are going to reorder the array)
                if(1 < _addresses[msg.sender].length && i < length-1) {
                    //shift the last item in the array to the position of the item that we are removing
                    _addresses[msg.sender][i] = _addresses[msg.sender][length-1];
                }

                // delete the item we just swapped from
                delete _addresses[msg.sender][length-1];
                //then decrement the length of the array by 1
                _addresses[msg.sender].length--;
                //delete the alias for it
                delete _aliases[msg.sender][addr];
                //_state[msg.sender]++;
                break;
            }
        }
    }

    //Gets the alias for your address
    function getAlias(address addrowner, address addr) public returns (string memory) {
        return _aliases[addrowner][addr];
    } 
}
				
			
دوره ها و آموزش های فرازمان

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

نقشه راه

راهنما آکادمی فرازمان

برای یادگیری برنامه نویسی بلاکچین…

دوره مفاهیم پایه برنامه نویسی
دوره جامع جاوا اسکریپت و جی کوئری
آموزش برنامه نویسی سالیدیتی
دوره جامع html/css/bootstap
آموزش پیشرفته برنامه نویسی بلاکچین
آموزش Whitepaper نویسی برای پروژه های بلاکچینی

در این باره بیشتر بخوانید

نمونه قرارداد هوشمند Solidity

رابط(Interface) در قراردادهای هوشمند Solidity

کتابخانه ها(Library) در قراردادهای هوشمند Solidity

نحوه نوشتن دستور if در Solidity

وراثت(Inheritance) در قراردادهای هوشمند Solidity

انواع حافظه (Memory,Storage,Stack,CallData) در قرارداد هوشمند Solidity

برچسب ها: دفترچه آدرسAddress bookآموزش برنامه نویسی سالیدیتیآموزش سالیدیتی
جدیدتر یک نمونه قرارداد هوشمند Solidity
قبلی پروژه هتل و فروش(Hotel and vending) در قرارداد هوشمند solidity

دیدگاهتان را بنویسید لغو پاسخ

جستجو برای:
برچسب‌ها
function nft آموزش برنامه نویسی سالیدیتی آموزش بلاکچین آموزش سالیدیتی اتریوم اخبار بازی اخبار رمز ارز اخبار کریپتو امنیت قرارداد هوشمند ان اف تی اکتیویژن ایلان ماسک بازی بلاکچین برنامه نویسی بلاک چین برنامه نویسی سالیدیتی بلاک چین بیتکوین بیت کوین تحلیل بیت کوین تسلا توابع توابع در سالیدیتی جاوا اسکریپت حسابرسی در قرارداد هوشمند خبر بلاکچین دسنترالند دوج کوین رمزارز سالیدیتی سرمایه گذاری سندباکس قرارداد هوشمند مایکروسافت متاورس مقاله بلاکچین مقاله کریپتویی موزیلا نمونه قرارداد هوشمند سالیدیتی وب3 پی پال کریپتو کسب درامد کیف پول اتریوم کیف پول بلاکچین
  • محبوب
  • جدید
  • دیدگاه ها
دسته‌ها
  • آموزش برنامه نویسی سالیدیتی
  • اتریوم
  • اخبار NFT
  • اخبار متاورس
  • امور مالی غیرمتمرکز
  • برنامه نویسی سالیدیتی
  • بیت کوین
  • سولانا
  • صرافی غیرمتمرکز
  • قرارداد هوشمند
  • کریپتو
  • کیف پول ارز دیجیتال
  • مقالات بلاکچین
  • مقاله
  • نمونه قراردادهای هوشمند سالیدیتی
 فـرا زمان با بهره گیری از دانش روز دنیا و توانایی در آموزش، مشاوره و پیاده سازی انواع پروژه های بلاکچینی پا به عرصه ی رقابت گذاشته و هر روز به گروه و تخصص خود می افزاید.
دسترسی سریع
  • خانه
  • دوره ها
  • اخبار
  • تماس با ما
  • ساری، ابتدای خیابان 15 خرداد،مجتمع بهار،طبقه اول
  • 09395149363
  • info@fara-zaman.ir
خبرنامه

چیزی را از دست ندهید، ثبت نام کنید و در مورد شرکت ما مطلع باشید.

نماد ها

logo-samandehi
© 1400. آکادمی فرازمان - طراحی فرازمان
اشتراک گذاری در شبکه های اجتماعی
ارسال به ایمیل
https://fara-zaman.ir/?p=13289
دسته بندی دوره ها
دوره های من
دسته بندی دوره ها

طراحی وب

  • 1 دوره

WhitePaper

  • 1 محصول

برنامه نویسی اتریوم (سالیدیتی)

  • 4 محصول

کلاس مجازی

  • 1 دوره
دوره های من
برای مشاهده خریدهای خود باید وارد حساب کاربری خود شوید
Twitter Youtube Instagram
مرورگر شما از HTML5 پشتیبانی نمی کند.

سوالی دارید؟ از ما بپرسید، کارشناسان ما در اسرع وقت با شما تماس می گیرند.

گروه تخصصی برنامه نویسی
  • 09395149363
  • پشتیبانی آنلاین
  • 09395149363