অ্যান্ড্রয়েড প্ল্যাটফর্মটি মরিচা, একটি আধুনিক সিস্টেম-প্রোগ্রামিং ভাষা যা C/C++ এর সমতুল্য কর্মক্ষমতা সহ মেমরি নিরাপত্তা গ্যারান্টি প্রদান করে, এ নেটিভ OS উপাদানগুলি বিকাশের জন্য সহায়তা প্রদান করে। মরিচা কম্পাইল-টাইম চেকগুলির সংমিশ্রণ ব্যবহার করে যা অবজেক্টের জীবনকাল এবং মালিকানা প্রয়োগ করে এবং রানটাইম চেক যা বৈধ মেমরি অ্যাক্সেস নিশ্চিত করে, যার ফলে একটি আবর্জনা সংগ্রহকারীর প্রয়োজনীয়তা দূর হয়।
মরিচা আধুনিক ভাষার বৈশিষ্ট্যগুলির একটি পরিসর সরবরাহ করে যা বিকাশকারীদের তাদের কোডে আরও উত্পাদনশীল এবং আত্মবিশ্বাসী হতে দেয়:
- নিরাপদ সমসাময়িক প্রোগ্রামিং - যে সহজে এটি ব্যবহারকারীদের দক্ষ, থ্রেড-সেফ কোড লেখার অনুমতি দেয় তা রাস্টের ভয়হীন কনকারেন্সি স্লোগানের জন্ম দিয়েছে।
- এক্সপ্রেসিভ টাইপ সিস্টেম - মরিচা অত্যন্ত এক্সপ্রেসিভ ধরনের (যেমন নিউটাইপ র্যাপার এবং বিষয়বস্তু সহ enum ভেরিয়েন্ট) অনুমতি দিয়ে লজিক্যাল প্রোগ্রামিং বাগ প্রতিরোধ করতে সাহায্য করে।
- শক্তিশালী কম্পাইল-টাইম চেক - কম্পাইল-টাইমে ধরা পড়া আরও বাগ বিকাশকারীর আত্মবিশ্বাস বাড়ায় যে কোড সফলভাবে কম্পাইল হলে, এটি উদ্দেশ্য অনুযায়ী কাজ করে।
- বিল্ট-ইন টেস্টিং ফ্রেমওয়ার্ক - রাস্ট একটি বিল্ট-ইন টেস্টিং ফ্রেমওয়ার্ক প্রদান করে যেখানে ইউনিট টেস্টগুলি তাদের পরীক্ষা করা বাস্তবায়নের পাশাপাশি স্থাপন করা যেতে পারে, যা ইউনিট টেস্টিংকে অন্তর্ভুক্ত করা সহজ করে তোলে।
- ত্রুটি হ্যান্ডলিং এনফোর্সমেন্ট - পুনরুদ্ধারযোগ্য ব্যর্থতার সাথে ফাংশনগুলি একটি ফলাফলের ধরন ফিরিয়ে দিতে পারে, যা হয় একটি সফল বৈকল্পিক বা একটি ত্রুটির বৈকল্পিক হবে৷ কম্পাইলারের জন্য কলকারীদের একটি ফাংশন কল থেকে প্রত্যাবর্তিত
Result
enum এর ত্রুটির বৈকল্পিক পরীক্ষা এবং পরিচালনা করতে হবে। এটি পরিচালনা না করা ব্যর্থতার ফলে বাগগুলির সম্ভাবনা হ্রাস করে। - সূচনা - মরিচা ব্যবহার করার আগে প্রতিটি ভেরিয়েবলকে তার প্রকারের আইনী সদস্যের কাছে আরম্ভ করা প্রয়োজন, একটি অনিরাপদ মান থেকে অনিচ্ছাকৃত সূচনা প্রতিরোধ করে।
- নিরাপদ পূর্ণসংখ্যা পরিচালনা - সমস্ত পূর্ণসংখ্যা-টাইপ রূপান্তরগুলি স্পষ্ট কাস্ট। একটি ভেরিয়েবলকে বরাদ্দ করার সময় বা অন্য ধরনের সাথে পাটিগণিত করার চেষ্টা করার সময় বিকাশকারীরা দুর্ঘটনাক্রমে একটি ফাংশন কলের সময় কাস্ট করতে পারে না। মরিচা-এর জন্য অ্যান্ড্রয়েডে ডিফল্টরূপে ওভারফ্লো চেকিং চালু থাকে, যার জন্য ওভারফ্লো ক্রিয়াকলাপগুলি সুস্পষ্ট হতে হবে।
আরও তথ্যের জন্য, অ্যান্ড্রয়েড রাস্ট সমর্থনে ব্লগ পোস্টগুলির সিরিজ দেখুন:
- অ্যান্ড্রয়েড প্ল্যাটফর্মে মরিচা
কেন অ্যান্ড্রয়েড টিম মরিচাকে একটি নতুন প্ল্যাটফর্ম ভাষা হিসাবে প্রবর্তন করেছে তার একটি ওভারভিউ প্রদান করে৷ - অ্যান্ড্রয়েড ওপেন সোর্স প্রকল্পে মরিচাকে একীভূত করা
বিল্ড সিস্টেমে কীভাবে মরিচা সমর্থন চালু করা হয়েছে এবং কেন নির্দিষ্ট ডিজাইনের সিদ্ধান্ত নেওয়া হয়েছিল তা আলোচনা করে। - Android প্ল্যাটফর্মে মরিচা/C++ ইন্টারপ
অ্যান্ড্রয়েডের মধ্যে মরিচা/সি++ আন্তঃঅপারেবিলিটির পদ্ধতি নিয়ে আলোচনা করে।