Comprehensive Rust 🦀 এ আপনাকে স্বাগতম

Build workflow GitHub contributors GitHub stars

এটি Google এর অ্যান্ড্রয়েড টিম দ্বারা তৈরি একটি চার দিনের রাস্টশিখবার কোর্স যা রাস্ট-এর সম্পূর্ণ স্পেকট্রাম, মৌলিক সিনট্যাক্স থেকে শুরু করে জেনেরিক এবং ত্রুটি পরিচালনার মতো উন্নত বিষয় শিখতে সাহায্য করতে পারে।

এই কোর্স এর সবচেয়ে নতুন সংস্করণ https://google.github.io/comprehensive-rust/ - এখানে পাওয়া যাবে। যদি অন্য কোথাও থেকে আপনি পড়ছেন তাহলে এইখানে একবার দেখে নেয়া ভালো।

এই কোর্সটি পি.ডি.এফ মাধ্যমেও উপলব্ধ আছে (comprehensive-rust.pdf)।

কোর্সের লক্ষ্য হল আপনাকে রাস্ট শেখানো। আমরা ধরে নিলাম আপনি কিছুই জানেন না রাস্ট সম্পর্কে এবং আশা করি:

  • আপনাকে রাস্ট সিনট্যাক্স এবং ভাষা সম্পর্কে একটি বিস্তারিত বোঝায়
  • আপনাকে বিদ্যমান প্রোগ্রামগুলি সংশোধন করতে এবং রাস্ট এ নতুন প্রোগ্রাম লিখতে সক্ষম করে।
  • আপনাকে সাধারণ রাস্ট ইডিয়মস দেখায়।

আমরা কোর্সের প্রথম চারটি দিনকে রাস্ট ফান্ডামেন্টাল বলি।

এটির উপর ভিত্তি করে, আপনাকে এক বা একাধিক বিশেষ বিষয়গুলিতে ডুব দেওয়ার জন্য আমন্ত্রিত।

  • Android: অ্যান্ড্রয়েড প্ল্যাটফর্মের ডেভেলপমেন্ট (AOSP) এর জন্য রাস্ট ব্যবহার করার একটি অর্ধ-দিনের কোর্স। এর মধ্যে C, C++ এবং Java সহ আন্তঃকার্যযোগ্যতা অন্তর্ভুক্ত রয়েছে।
  • [Chromium][chromium.md): একটি আধা দিনের কোর্স যেখানে কিভাবে Chromium যুক্ত ব্রাউসার এ রাস্ট ব্যবহার করা যেতে পারে এটা শেখানো হয়েছে। এতে C++ আন্তঃকার্যক্ষমতা সহ তৃতীয় পক্ষের ক্রেট কিভাবে Chromium এ ব্যবহার করা যেতে পারে এটাও দেখানো হয়েছে।
  • বেয়ার-মেটাল: রাস্ট কিভাবে এমবেডেড ডেভেলপমেন্ট এ লাগতে পারে এই বিষয়ের ওপরে একটা পুরো দিনের ক্লাস। মাইক্রোকন্ট্রোলেরস এবং এপ্লিকেশন প্রসেসসর্স এই দুটো বিষয়গুলির চর্চা করা হয়েছে এখানে।
  • সমবর্তী গণনা: রাস্ট এ সমবর্তী গণনার ওপরে একটা পুরো দিনের ক্লাস । এখানে ক্লাসিকাল সমবর্তী (থ্রেড এবং mutexes ব্যবহার করে অগ্রক্রয়াধিকার-সংক্রান্ত সময়সূচী বানানো) গণনা এবং async/await সমবর্তী গণনা (ফিউচার ব্যবহার করে সমবায় মাল্টিটাস্কিং)-এই দুই ধরণের নিয়ে চর্চা করা হয়েছে।

যা লক্ষ্যের মধ্যে পড়ে না

রাস্ট একটি বৃহৎ প্রোগ্রামিং ল্যাংগুয়েজ এবং আমরা কয়েক দিনের মধ্যে এটিকে কভার করতে সক্ষম হব না। এই কোর্সের কিছু অ-লক্ষ্য হলঃ

##ধৃষ্টতাসমূহ

কোর্সটি অনুমান করে যে আপনি ইতিমধ্যেই প্রোগ্রাম করতে জানেন। রাস্ট একটি স্ট্যাটিকালি টাইপড প্রোগ্রামিং ল্যাংগুয়েজ এবং আমরা কখনও কখনও C এবং C++ এর সাথে তুলনা করব ভালোভাব ব্যাখা করার জন্য অথবা বিপরীত রাস্ট পদ্ধতি।

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

এটি একটি speaker note এর উদাহরণ। আমরা অতিরিক্ত তথ্য স্লাইডে যোগ করতে এইগুলো ব্যবহার করবো। এটি প্রধান পয়েন্ট হতে পারে যা প্রশিক্ষকের উচিত কভারের পাশাপাশি ক্লাসে আসা সাধারণ প্রশ্নের উত্তর দেওয়া।