Rust:
নতুন প্রকল্প শুরু করা
কিভাবে:
একটি নতুন রাস্ট প্রকল্প শুরু করতে, আপনার প্রয়োজন হবে কার্গো—রাস্টের প্যাকেজ ম্যানেজার। রাস্ট এবং কার্গো অফিসিয়াল ইনস্টলার, রাস্টআপ এর মাধ্যমে ইনস্টল করুন।
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
এরপর, একটি সহজ কমান্ড দিয়ে নতুন প্রকল্প তৈরি করা যায়:
cargo new my_project
এই কমান্ডটি ‘my_project’ নামের একটি নতুন ডিরেক্টরি সহ সব জরুরি ফাইল তৈরি করে:
Cargo.toml
: আপনার প্রকল্পের ম্যানিফেস্ট যা মেটাডেটা এবং ডিপেন্ডেন্সিগুলি ধারণ করে।src
: আপনার সোর্স ফাইলগুলির বাসস্থান এই ডিরেক্টরি।main.rs
: আপনার প্রোগ্রামের মূল প্রবেশদ্বার।
তৈরির পরে আপনার main.rs
কেমন সহজ দেখায় তার একটি উদাহরণ:
fn main() {
println!("Hello, world!");
}
আপনার প্রকল্প কম্পাইল এবং রান করার জন্য:
cd my_project
cargo run
এবং ম্যাজিকের মতো, আপনি আউটপুট দেখতে পাবেন:
Compiling my_project v0.1.0 (path/to/my_project)
Finished dev [unoptimized + debuginfo] target(s) in 0.0 secs
Running `target/debug/my_project`
Hello, world!
গভীর ডুব
রাস্ট তার নিজস্ব প্যাকেজ ম্যানেজার এবং বিল্ড সিস্টেম, কার্গো, প্রারম্ভিক দিন থেকে ভোগ করেছে। প্রায় ২০১৩ সালে তৈরি, এটি প্রকল্প, ডিপেন্ডেন্সিগুলি এবং বিল্ড পরিচালনার রাস্টের উপায়।
নতুন প্রকল্প শুরু করার জন্য কার্গো কেন দারুণ?
- সামঞ্জস্য: এটি একটি মানকৃত প্রকল্পের কাঠামো তৈরি করে।
- ডিপেন্ডেন্সিগুলি: এটি বাহ্যিক লাইব্রেরিগুলি সহজে ম্যানেজ করে।
- কম্পাইলেশন: এটি আপনার কোড কম্পাইল করে, রাস্টের নিরাপত্তা এবং পারফরমেন্সের বৈশিষ্ট্যগুলি সম্পূর্ণরূপে ব্যবহার করে।
অন্য ভাষাগুলি আলাদা টুল ব্যবহার করে—নোড.জেএস এর জন্য npm, রুবির জন্য বান্ডলার, এবং পাইথনের জন্য পিপ। কার্গো এই সমস্তের জবাব দেয় এবং জাভাস্ক্রিপ্ট ইকোসিস্টেমে গ্রান্ট বা ওয়েবপ্যাকের মতো পৃথক টুলের দায়িত্ব দেওয়া সহ, আলাদাভাবে আরও অনেক কিছু করে।
রাস্টে প্রকল্প শুরুর বিকল্প উপায়? ভাল, আপনি সব কিছু নিজে তৈরি করতে পারেন বা আইডিই ব্যবহার করতে পারেন, কিন্তু কার্গো যখন ভারসাম্য এনে দেয় তখন নতুন করে চাকা আবিষ্কার কেন করবেন?
আরও দেখুন
- রাস্ট প্রোগ্রামিং ভাষার বই: https://doc.rust-lang.org/book/
- রাস্ট এবং কার্গো ইনস্টলেশন গাইড: https://www.rust-lang.org/tools/install
- কার্গো ডকুমেন্টেশন: https://doc.rust-lang.org/cargo/