1 গো প্রোগ্রামের মৌলিক গঠন
একটি গো প্রোগ্রাম একটি প্যাকেজের ঘোষণা দিয়ে শুরু হয়, এরপর প্রয়োজনীয় প্যাকেজ ইমপোর্ট করা হয়, প্যাকেজ-স্তরের ভ্যারিয়েবল, ধ্রুবক, এবং টাইপের ঘোষণা দেওয়া হয়, এবং শেষে প্যাকেজের ভেতরে থাকা ফাংশনগুলি। "Hello World" কে নেবে একটি উদাহরণ মাধ্যমে, নিচের গো প্রোগ্রামের একটি সাধারণ মৌলিক গঠন দেখানো হয়েছে:
package main // মূল প্যাকেজের ঘোষণা, যা নির্ভরতা নেই। এটি একটি নিম্ন-প্রস্তুত প্রোগ্রাম নির্দেশ করে
import "fmt" // ইনপুট এবং আউটপুট ফাংশন ধারণ করা fmt প্যাকেজ ইমপোর্ট করা হয়
// main ফাংশন, প্রোগ্রামের প্রবেশ বিন্দু
func main() {
fmt.Println("Hello, World!") // টার্মিনালে "Hello, World!" আউটপুট করা হয়
}
প্যাকেজের ধারণা এবং উদ্দেশ্য
গো ভাষায়, প্যাকেজ হল একটি বেশি সংখ্যক গো উৎস ফাইলের সংগ্রহ এবং উচ্চ-স্তরের কোড পুনর্ব্যবহারের দিক দেখানোর জন্য ব্যবহৃত হয়। গোতে প্রতিটি ফাইল একটি প্যাকেজের অংশ এবং প্যাকেজের নামটি সেই নির্দেশিত নামে থাকবে, যেখানে এটা বসে থাকে।
উৎস কোড ফাইলের নামকরণের নিয়ম
গো উৎস ফাইলের নামকরণটি সাধারণভাবে ছোট অক্ষরে হলে এবং স্পেস বা বিশেষ অক্ষর অন্তর্ভুক্ত নেই, যেমন hello_world.go
। উৎস ফাইলের নামটি প্যাকেজের নামের সাথে মেল খাচ্ছে না, তবে একই প্যাকেজের ভেতরে সব ফাইলের প্যাকেজ ঘোষণা বিবেচনা করে ফাইলের নাম মেলে নিতে হবে।
প্রোগ্রামে মন্তব্য ব্যবহার করা
গো ভাষায়, মন্তব্যের দুই ধরণ রয়েছে: //
দিয়ে শুরু হওয়া একলাইন মন্তব্য এবং /*
দিয়ে শুরু হয় এবং */
দিয়ে শেষ হওয়া বহুলাইন মন্তব্য। মন্তব্যের বিষয়বস্তুটি পার্শ্ব দরকার করা হয় না।
// এটা একলাইন মন্তব্য
/*
এটা বহুলাইন মন্তব্য
যা বহুল লাইনে ছড়িয়েছে
*/
2 প্রোগ্রামের প্রবেশ বিন্দু এবং মেইন ফাংশন
একটি গো প্রোগ্রামে, main
ফাংশনটি বিশেষভাবে প্রোগ্রামের প্রবেশ বিন্দুর ভূমিকা পালন করে। গো রানটাইম নিজেই মূল প্যাকেজের ভিতরে থাকা main
ফাংশনকে কল করে প্রোগ্রাম প্রণালী চালু করে।
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
main
ফাংশনটি কোনো প্যারামিটার ধারণ করে না এবং কোনো ফলাফল ফেরত দেয় না। main
ফাংশনের কাজ সম্পাদনের পর প্রোগ্রাম নিজেই সাধারণভাবে শেষ হয়ে যায়। যদি প্রোগ্রাম শেষ হতে যায় তবে প্রয়োজনে os.Exit
ফাংশন ব্যবহার করা উচিত।
3 প্রোগ্রাম তৈরি এবং চালু করা
go build
কমান্ড ব্যবহার
go build
কমান্ড চালানোর পরমিতি উৎস কোড ফাইলটি কোম্পাইল করে একটি অবিশ্বাস্য ফাইল তৈরি করে। শেলে, উৎস ফাইলের থাকা ডিরেক্টরি গিয়ে নিচের কমান্ডটি লিখতে হবে:
go build hello_world.go
সফলভাবে সম্পাদনা হলে, আপনি বর্তমান ডিরেক্টরিতে একটি অব্যবহৃত ফাইল দেখতে পাবেন যার নাম hello_world
(বা উইন্ডোজে hello_world.exe
)।
go run
কমান্ড ব্যবহার
go run
কমান্ড গো প্রোগ্রাম কোম্পাইল করে এবং চালু করে, যা দ্রুত টেস্ট এবং উন্নয়নের জন্য খুব সুবিধাজনক। হেলো ওয়ার্ল্ড প্রোগ্রাম চালাতে, আপনি নিচের কমান্ডটি লিখতে পারেন:
go run hello_world.go
এই কমান্ডটি চালানোর পর আপনি তার সাথে তারপরে ঘর্ষণ করার সুযোগ পাবেন।
4. প্রোগ্রামের আউটপুট
গো প্রোগ্রামে, fmt
প্যাকেজ দ্বারা প্রদত্ত Println
ফাংশনটি ব্যবহার করে টার্মিনালে তথ্য আউটপুট করা যায়। নীচে একটি সংক্ষিপ্ত উদাহরণ দেওয়া হয়েছে যা টার্মিনালে "Hello, World!" আউটপুট করে:
package main
import "fmt"
func main() {
fmt.Println("Hello, World!") // আউটপুট টার্মিনালে
}
প্রোগ্রাম সম্পাদনের পর, আউটপুট টার্মিনালে খুব সহজেই দেখা যাবে। উত্তরজনক আউটপুট প্রয়োজনে log
প্যাকেজ বা ডিরেকটলি মানিপুলেটিং স্ট্যান্ডার্ড আউটপুট স্ট্রীম os.Stdout
ব্যবহার করে প্রাপ্ত করা যেতে পারে।
import "os"
os.Stdout.WriteString("Hello, World!\n") // স্ট্যান্ডার্ড আউটপুট স্ট্রীম ডিরেক্টলি ম্যানিপুলেট করুন
import "log"
log.Println("Hello, World!") // তারিখ এবং সময়ের তথ্য সহ আউটপুটের জন্য log প্যাকেজ ব্যবহার করা হয়
এই মৌলিক আউটপুট পদ্ধতিগুলি ব্যবহারকারীদের সাথে যোগাযোগ করার গুরুত্বপূর্ণ উপায় এবং এটি অতি সাধারণভাবে ওয়েব পৃষ্ঠাগুলিতে বগ থিকানা প্রিন্ট করার জন্য ব্যবহৃত হয়।