paint-brush
কিভাবে রিমিক্সে আপনার সলিডিটি স্মার্ট কন্ট্রাক্ট কোড লিখবেন এবং কম্পাইল করবেন: dApp ডেভেলপমেন্ট বেসিকসদ্বারা@lumoslabshq
2,436 পড়া
2,436 পড়া

কিভাবে রিমিক্সে আপনার সলিডিটি স্মার্ট কন্ট্রাক্ট কোড লিখবেন এবং কম্পাইল করবেন: dApp ডেভেলপমেন্ট বেসিকস

দ্বারা Lumos Labs6m2023/03/23
Read on Terminal Reader
Read this story w/o Javascript

অতিদীর্ঘ; পড়তে

এই সপ্তাহের ব্লগ পোস্টটি স্মার্ট চুক্তির বিষয়ের সাথে পরিচয় করিয়ে দেয় তবে এমন একটি ভাষায় যা বেশিরভাগ ওয়েব ডেভেলপাররা সহজে রূপান্তর করতে পারে: আমরা সলিডিটি সম্পর্কে কথা বলছি। বেশিরভাগ স্মার্ট কন্ট্রাক্ট ডেভেলপাররা সলিডিটি দিয়ে শুরু করেন এবং যার জন্য, রিমিক্স ইন্টিগ্রেটেড ডেভেলপমেন্ট এনভায়রনমেন্ট হল প্রথম টুল যা দিয়ে তারা সাধারণত তাদের যাত্রা শুরু করে।

People Mentioned

Mention Thumbnail
featured image - কিভাবে রিমিক্সে আপনার সলিডিটি স্মার্ট কন্ট্রাক্ট কোড লিখবেন এবং কম্পাইল করবেন: dApp ডেভেলপমেন্ট বেসিকস
Lumos Labs HackerNoon profile picture
0-item
1-item

যদিও একটি স্মার্ট চুক্তির ধারণাটি 90 এর দশকে ফিরে আসে, Ethereum ছিল প্রথম প্ল্যাটফর্ম যা এর সম্ভাব্যতা উপলব্ধি করে এবং এটির বাস্তবায়নের কারণে তৃতীয় পক্ষের প্রয়োজনীয়তা দূর করে।


Ethereum কেন্দ্রের পর্যায়ে নেওয়ার সাথে সাথে, স্মার্ট চুক্তির বাজারটি শক্তি থেকে শক্তিতে বৃদ্ধি পেয়েছে এবং 2030 সালের মধ্যে এটি 8.3 বিলিয়ন মার্কিন ডলার মূল্যের বাজার আকারে বৃদ্ধি পাবে বলে অনুমান করা হচ্ছে৷ স্পষ্টতই, স্মার্ট কন্ট্রাক্টগুলি বিভিন্ন শিল্প জুড়ে প্রকল্পগুলির অনুকূলে পাওয়া গেলে, চাহিদার এই বৃদ্ধির পরিপ্রেক্ষিতে স্মার্ট চুক্তি বিকাশকারীরা ভাল বেতন পান এতে অবাক হওয়ার কিছু নেই।


যার কথা বলতে গেলে, এই সপ্তাহের ব্লগ পোস্টটি স্মার্ট চুক্তির বিষয়ের সাথে পরিচয় করিয়ে দেয় তবে এমন একটি ভাষায় যা বেশিরভাগ ওয়েব ডেভেলপাররা সহজেই রূপান্তর করতে পারে: আমরা সলিডিটি সম্পর্কে কথা বলছি।

রিমিক্স ইন্টিগ্রেটেড ডেভেলপমেন্ট এনভায়রনমেন্ট

আপনি যদি স্মার্ট কন্ট্রাক্ট ডেভেলপমেন্ট শিখতে চান, তাহলে আদর্শ পছন্দের মধ্যে এমন একটি ভাষা নির্বাচন করা জড়িত যা জনপ্রিয়, শেখার সহজ এবং সহজে অ্যাক্সেসযোগ্য উন্নয়ন পরিবেশ প্রদান করে।


এই কারণে, বেশিরভাগ স্মার্ট কন্ট্রাক্ট ডেভেলপাররা সলিডিটি দিয়ে শুরু করেন এবং যার জন্য, রিমিক্স ইন্টিগ্রেটেড ডেভেলপমেন্ট এনভায়রনমেন্ট হল প্রথম টুল যা দিয়ে তারা সাধারণত তাদের ওয়েব3 ডেভেলপমেন্ট যাত্রা শুরু করে। বেশিরভাগের জন্য, এই প্রথমবার তারা একটি উন্নয়ন পরিবেশ ব্যবহার করবে তবে এটি অনায়াসে করা হয়েছে কারণ যে কোনও জনপ্রিয় ব্রাউজারে রিমিক্স আইডিই সেট আপ করা যেতে পারে।


রিমিক্স আইডিই - ডিফল্ট স্ক্রীন


একটি মৌলিক স্তরে, এটি লক্ষ্য করা গুরুত্বপূর্ণ যে প্রতিটি স্মার্ট চুক্তি একটি .sol ফাইল যে ভাষায় লেখা হয়েছে: সলিডিটি। এছাড়াও, চুক্তি কম্পাইল করার জন্য আপনি কোন সংস্করণটি ব্যবহার করতে চান তা নির্বাচন করতে হবে। আপনার স্মার্ট কন্ট্রাক্ট লেখা এবং কম্পাইল করার এই দুটি কাজই আপনার স্মার্ট কন্ট্রাক্ট টেস্টনেট বা মেইননেটে স্থাপন করার আগে অবশ্যই সম্পন্ন করতে হবে।


যেটির কথা বলতে গেলে, এটি অত্যাবশ্যক যে আপনি একটি টেস্টনেটে আপনার স্মার্ট চুক্তিটি মেইননেটে স্থাপন করার আগে পরীক্ষা করুন৷ রিমিক্স ব্যবহার করার সময়, আপনি Goerli বা Sepolia testnet ব্যবহার করতে পারেন। যাইহোক, এর জন্য, আপনাকে প্রথমে আপনার Web3 ওয়ালেটটিকে রিমিক্সের সাথে সংযুক্ত করতে হবে - বিশেষত, মেটামাস্ক ওয়ালেট ব্যবহার করে।


মেটামাস্ক ওয়ালেট


টেস্টনেট কী তা আপনার যদি কোনো ধারণা না থাকে, তাহলে এটিকে এমন একটি পরিবেশ হিসেবে ভাবুন যেখানে আপনি নকল তহবিল ব্যবহার করে আপনার চুক্তি চালাতে পারবেন এবং পরীক্ষার মাধ্যমে আপনার স্মার্ট চুক্তি বাস্তব বিশ্বের জন্য প্রস্তুত কিনা তা মূল্যায়ন করতে পারবেন। সংক্ষেপে, এটি মেইননেটে স্থাপনের আগে কীভাবে স্মার্ট চুক্তি কাজ করবে তার একটি সিমুলেশন।


সবশেষে, আপনাকে বুঝতে হবে যে প্রতিটি স্মার্ট চুক্তি, একবার স্থাপন করা হলে, একটি অনন্য ঠিকানা দ্বারা চিহ্নিত করা হয়। অবশ্যই, আপনি রিমিক্সে উপলব্ধ ডামি ব্যবহারকারী অ্যাকাউন্টগুলির মাধ্যমে আপনার স্মার্ট চুক্তির মধ্যে এবং বাইরে তহবিল স্থানান্তর করতে পারেন। এছাড়াও, আপনাকে অবশ্যই গ্যাস ফি প্রদানের বিষয়ে এবং আপনি লিখতে এবং আপনার প্রথম স্মার্ট চুক্তি চালানোর সাথে সাথে কীভাবে এটি আপনার অ্যাকাউন্ট থেকে কেটে নেওয়া হয় সে সম্পর্কে আপনি যা করতে পারেন তাও শিখতে হবে।

রিমিক্স আইডিই ব্যবহার করার জন্য আপনার প্রথম পদক্ষেপ

এখন, আপনি যদি রিমিক্স আইডিই ব্যবহার করে আপনার প্রথম স্মার্ট চুক্তি লিখতে এবং সংকলন করতে চান, তাহলে আইকন প্যানেলে চারটি আইকন রয়েছে যা আপনাকে অবশ্যই ব্যবহার করতে শিখতে হবে:


আইকন প্যানেল


এই চারটি আইকনের প্রত্যেকটি ওয়ার্কস্পেস কীভাবে ব্যবহার করতে হয় তার বিভিন্ন ফাংশন উপস্থাপন করে:

  1. ফাইল এক্সপ্লোরার
  2. ফাইলগুলিতে অনুসন্ধান করুন
  3. সলিডিটি কম্পাইলার
  4. লেনদেন স্থাপন ও চালান


ফাইল এক্সপ্লোরার নির্বাচন করা আপনাকে ডিফল্ট ওয়ার্কস্পেসে নিয়ে যায়, যেমনটি নীচে দেখানো হয়েছে:

ডিফল্ট ওয়ার্কস্পেস


আপনি এখানে ফোল্ডার এবং সলিডিটি ফাইলগুলি তৈরি করতে, সংশোধন করতে এবং মুছতে সক্ষম হবেন৷ আপনার কর্মক্ষেত্রে ফাইলগুলি আপলোড করার পাশাপাশি এটিকে একটি Github সারাংশে যুক্ত করার বিকল্পগুলিও উপলব্ধ।


প্যানেলের দ্বিতীয় আইকনটি ফাইলগুলিতে অনুসন্ধান লেবেলযুক্ত, এবং যা আপনাকে এটি করতে দেয়। এই ক্ষেত্রে, আমরা অনুসন্ধান শব্দটি 'ভেন্ডিং মেশিন' খুঁজছি, এবং যার জন্য, ফলাফলগুলি নীচে প্রদর্শিত হবে৷


ফাইলগুলিতে অনুসন্ধান করুন


সলিডিটি কম্পাইলার বিকল্প নির্বাচন করার জন্য, আমাদের একটি স্ক্রিনে নিয়ে যাওয়া হয়েছে, যেমনটি নীচে দেখানো হয়েছে:

সলিডিটি কম্পাইলার


এখানে আপনি কম্পাইলার সংস্করণ এবং আপনি যে চুক্তিটি কম্পাইল করতে চান তা নীল বোতামে আঘাত করার আগে নির্বাচন করতে পারেন, যেমন উপরে দেখানো হয়েছে।


Deploy & Run Transactions নামক প্যানেলের চূড়ান্ত আইকনের জন্য, আমরা এই সিরিজের পরবর্তী ব্লগ পোস্টে সেই আইকনটি কীভাবে ব্যবহার করতে হয় তা কভার করব।

আপনার প্রথম সলিডিটি চুক্তির সাথে কাজ করা

এখন, বেশ কয়েকটি জনপ্রিয় স্মার্ট কন্ট্রাক্ট ল্যাঙ্গুয়েজের সিনট্যাক্স জাভাস্ক্রিপ্ট, পাইথন এবং রাস্টের মতোই রয়েছে - যে ভাষাগুলি ইতিমধ্যেই অভিজ্ঞ ডেভেলপারদের মধ্যে জনপ্রিয়।


তবুও যেটি দাঁড়িয়েছে তা হল সলিডিটি কারণ ইথেরিয়াম প্ল্যাটফর্ম একটি সমান ক্লিপে বিকাশকারীদের ভাড়া করে চলেছে, তাই এই ভাষা ব্যবহার করে একটি ভেন্ডিং মেশিন স্মার্ট চুক্তি বাস্তবায়নের মাধ্যমে আমাদের যাত্রা শুরু করা ভাল। আপনি এই Ethereum ওয়েবপেজ থেকে ভেন্ডিং মেশিন স্মার্ট কন্ট্রাক্ট কোড কপি করতে পারেন।


ভেন্ডিং মেশিনের সাথে পরিচিত?


এটি অবশ্যই উল্লেখ করা উচিত যে একটি ভেন্ডিং মেশিনের কাজ স্মার্ট চুক্তিগুলি কীভাবে কাজ করে তার সাথে খুব মিল। প্রকৃতপক্ষে, দুটি পদ্ধতি 'রিফিল' এবং 'ক্রয়', যেমন আপনি ভেন্ডিং মেশিন স্মার্ট কন্ট্রাক্টে দেখতে পাচ্ছেন, একটি ভেন্ডিং মেশিনের মালিক এবং এর ক্রেতারা বাস্তব জীবনে সঞ্চালিত ক্রিয়াগুলির প্রতিলিপি করে৷


এখন, 'ফাইল এক্সপ্লোরার' আইকন নির্বাচন করে আপনার কর্মক্ষেত্রে নেভিগেট করুন। নতুন ফাইল তৈরি করুন আইকন ব্যবহার করে একটি নতুন .sol ফাইল খুলুন, নীচে দেখানো হয়েছে:


নতুন ফাইল তৈরি করুন আইকন


এখন, SPDX-লাইসেন্স-আইডেন্টিফায়ারের সাথে সেই ফাইলে ভেন্ডিং মেশিনের স্মার্ট কন্ট্রাক্ট কোড পেস্ট করুন, যেমনটি নীচে দেখানো হয়েছে:

'ভেন্ডিং মেশিন' স্মার্ট কন্ট্রাক্ট


এর পরে, "প্রাগমা" বিবৃতিতে নির্বাচিত কম্পাইলার সংস্করণের উপর ভিত্তি করে রিমিক্সে আপনার প্রথম স্মার্ট চুক্তিটি কম্পাইল করার সময়। অবশ্যই, ত্রুটির জন্য ডিবাগিং এই প্রক্রিয়ার একটি অংশ হবে।

রিমিক্সে আপনার প্রথম সলিডিটি স্মার্ট কন্ট্রাক্ট কম্পাইল করা হচ্ছে

এখন, একবার আমরা আমাদের ডিফল্ট ওয়ার্কস্পেসে একটি .sol ফাইলে আমাদের স্মার্ট চুক্তি কোড যোগ করলে, পরবর্তী ধাপ হল আপনার কোড ডিবাগ করা। শূন্য ত্রুটির ফলে, আপনি টেস্টনেটে স্থাপন করার আগে স্মার্ট চুক্তিটি কম্পাইল করবেন।


আমরা শুরু করার আগে, Ctrl + S কীবোর্ড শর্টকাট আপনার স্মার্ট চুক্তি কম্পাইল করবে। এখন, যদি আইকন প্যানেলে সলিডিটি কম্পাইলার বিকল্পটিতে একটি সবুজ চেক চিহ্ন থাকে, আপনার কোড স্থাপনার জন্য প্রস্তুত!


সফল সংকলন (সবুজ টিকমার্ক সহ)


অবশ্যই, সবকিছু পরিকল্পনা যায় না। বেশীরভাগ ক্ষেত্রেই, আপনার লেখা কোডটি কম্পাইল করার প্রচেষ্টা সফল করার আগে আপনাকে এমন ত্রুটিগুলি বাছাই করতে হবে। সলিডিটি কম্পাইলার আইকনটি এরকম কিছু দেখাবে, যেখানে '1' আপনার কোডের ত্রুটির সংখ্যা নির্দেশ করে:


অসফল সংকলন (১টি ত্রুটি সহ)


সাধারণ ত্রুটির কথা বললে, নতুনরা সঠিক কম্পাইলার সংস্করণ নির্বাচন করতে ব্যর্থ হয় যা স্মার্ট চুক্তির প্রাগমা বিবৃতিতে নির্বাচিত একটির সাথে মেলে, যেমনটি নীচে দেখানো হয়েছে:


প্রাগমা বিবৃতিতে ত্রুটি


এটি ঠিক করার জন্য, সলিডিটি কম্পাইলার বিকল্পের ড্রপ-ডাউন মেনুতে প্রবেশ করুন:

কম্পাইলার সংস্করণ ড্রপ-ডাউন মেনু পরিবর্তন করা (দ্বি-দিকনির্দেশক তীর সহ)


নিম্নলিখিত ফলাফল পেতে কম্পাইলার সংস্করণটিকে "0.8.7+commit.e28d00a7" এ পরিবর্তন করুন:

প্রাগমা স্টেটমেন্টের মতো 0.8.7 সংস্করণে পরিবর্তন করুন


আরেকটি সাধারণ ত্রুটির মধ্যে সিনট্যাক্স ত্রুটি তৈরি করা জড়িত, যেমন একটি "কাপকেক ব্যালেন্স" ম্যাপিং জড়িত:


সিনট্যাক্স ত্রুটি: এমন কোন ম্যাপিং আগে ঘোষণা করা হয়নি, তাই না?


আপনি যদি ইতিমধ্যে লক্ষ্য না করে থাকেন, একটি লাল বাক্সে লাল বিস্ময়বোধক বিন্দুটি একটি ত্রুটি আছে এমন বিবৃতিটিকে নির্দেশ করে। এই ক্ষেত্রে, একবার আপনি একটি "k" যোগ করে টাইপো সংশোধন করে Ctrl + S টিপুন, সেই চিহ্নটি অদৃশ্য হয়ে যাবে।


টাইপো সংশোধন করার পরে, ত্রুটি সমাধান করা হয়


এই দুটি সাধারণ ত্রুটির রেজোলিউশনের সাথে, আপনি সলিডিটি কম্পাইলার আইকনের সাথে একটি সবুজ টিক চিহ্নও দেখতে পাবেন। স্পষ্টতই, আপনি সফলভাবে আপনার প্রথম স্মার্ট চুক্তি কম্পাইল করেছেন।


তাই এখন, টেস্টনেটে আপনার স্মার্ট চুক্তি স্থাপন করার সময় এসেছে তবে এটি ভবিষ্যতের ব্লগ পোস্টে কভার করা হবে।


তাতে বলা হয়েছে, Web3 ডেভেলপমেন্ট সম্পর্কে আরও জানতে এবং আপনার দক্ষতা তৈরি করার জন্য আমরা একটি ডেভেলপার-কেন্দ্রিক মেটাভার্স তৈরি করছি।


একচেটিয়া অ্যাক্সেসের জন্য লুমোস মেটাভার্স হোয়াইটলিস্টে যোগ দিতে সাইন আপ করুন: