Go का परिचय: 2025 में व्यावहारिक रूप से कहाँ से शुरू करें
\n\nGo (या Golang) एक कम्पाइल्ड, स्टैटिकली टाइप की गई प्रोग्रामिंग भाषा है, जिसे Google में विकसित किया गया है। 2025 में, यह उच्च-प्रदर्शन वाले माइक्रोसर्विसेज, क्लाउड एप्लिकेशन और DevOps टूल्स के क्षेत्र में मजबूती से स्थापित है। यदि आप व्यावहारिक दृष्टिकोण से Go सीखना शुरू करना चाहते हैं, तो यह मार्गदर्शिका आपको इंस्टॉलेशन से लेकर पहला सार्थक प्रोग्राम लिखने तक ले जाएगी।
\n\nGo क्यों? यह Python की सरलता को C के प्रदर्शन के साथ जोड़ता है। Go, गोरूटीन्स (goroutines) के अंतर्निहित समर्थन के कारण विश्वसनीय सर्वर एप्लिकेशन, नेटवर्क यूटिलिटीज और समानांतर कंप्यूटिंग बनाने के लिए आदर्श है। इस लेख में, हम कोड उदाहरणों के साथ प्रमुख अवधारणाओं को समझेंगे, जिन्हें आप तुरंत चला सकते हैं।
\n\n1. इंस्टॉलेशन और एनवायरनमेंट सेटअप
\n\nपहला कदम Go कम्पाइलर को इंस्टॉल करना है। 2025 में, वर्तमान स्थिर संस्करण Go 1.22 या 1.23 है। इंस्टॉलेशन सरल है:
\n\n- \n
- Windows: आधिकारिक वेबसाइट से MSI इंस्टॉलर डाउनलोड करें और इसे चलाएं। \n
- macOS: Homebrew का उपयोग करें:
brew install go। \n - Linux:
.tar.gzआर्काइव डाउनलोड करें और इसे/usr/localमें अनज़िप करें या पैकेज मैनेजर का उपयोग करें (जैसे,sudo apt install golang-go)। \n
इंस्टॉलेशन के बाद, टर्मिनल में वर्जन जांचें:
\n\ngo version\n\nआपको कुछ इस तरह देखना चाहिए go version go1.22.0 linux/amd64। अब एक वर्कस्पेस (workspace) बनाएं। Go में सभी प्रोजेक्ट्स को एक फोल्डर में रखने का चलन है। एक फोल्डर go-projects बनाएं और उसके अंदर पहले प्रोजेक्ट के लिए एक फोल्डर बनाएं:
mkdir -p ~/go-projects/hello\ncd ~/go-projects/hello\n\nमॉड्यूल इनिशियलाइज़ करें — यह डिपेंडेंसी मैनेजमेंट की मूल इकाई है:
\n\ngo mod init hello\n\nयह कमांड एक go.mod फ़ाइल बनाएगी, जो आपके प्रोजेक्ट की डिपेंडेंसी को ट्रैक करेगी।
2. सिंटैक्स: वेरिएबल्स, टाइप्स और कंट्रोल स्ट्रक्चर्स
\n\nGo में एक सख्त लेकिन संक्षिप्त टाइप सिस्टम है। आइए एक main.go फ़ाइल बनाएं और एक बुनियादी उदाहरण लिखें:
package main\n\nimport "fmt"\n\nfunc main() {\n // वेरिएबल्स की घोषणा\n var name string = "Go"\n var version int = 2025\n isFast := true // छोटी घोषणा (टाइप स्वचालित रूप से अनुमानित होता है)\n\n fmt.Println("नमस्ते,", name)\n fmt.Println("वर्जन:", version)\n fmt.Println("क्या Go तेज़ है?", isFast)\n\n // सशर्त ऑपरेटर\n if version > 2024 {\n fmt.Println("यह वर्तमान वर्जन है!")\n }\n\n // for लूप (Go में एकमात्र लूप)\n for i := 0; i < 3; i++ {\n fmt.Printf("पुनरावृत्ति %d\\n", i)\n }\n}\n\nमुख्य बिंदु:
\n- \n
package main— इंगित करता है कि यह एक निष्पादन योग्य प्रोग्राम है। \n import "fmt"— फ़ॉर्मेटेड इनपुट/आउटपुट के लिए पैकेज आयात करना। \n varऔर:=— वेरिएबल्स घोषित करने के दो तरीके।:=का उपयोग केवल फंक्शन के अंदर किया जाता है। \n - टाइप्स:
string,int,bool,float64और अन्य। \n
प्रोग्राम को go run main.go कमांड से चलाएं। आपको कंसोल में आउटपुट देखना चाहिए।
3. फंक्शन्स और स्ट्रक्चर्स: मॉड्यूलरिटी का आधार
\n\nGo में फंक्शन्स को func कीवर्ड के साथ घोषित किया जाता है। वे कई मान लौटा सकते हैं — यह भाषा की प्रमुख विशेषताओं में से एक है। स्ट्रक्चर्स (struct) OOP में क्लासेस के समान हैं, लेकिन बिना इनहेरिटेंस के।
package main\n\nimport "fmt"\n\n// उपयोगकर्ता का प्रतिनिधित्व करने के लिए स्ट्रक्चर\ntype User struct {\n Name string\n Age int\n}\n\n// फंक्शन जो कई मान लौटाता है\nfunc createUser(name string, age int) (User, error)