गो (गोलैंग) मानक पुस्तकालय: एक संपूर्ण अवलोकन
गो (या गोलैंग) गूगल द्वारा विकसित एक आधुनिक कंपाइल्ड प्रोग्रामिंग भाषा है, जिसे सरलता, प्रदर्शन और विश्वसनीयता के लिए बनाया गया है। इसकी लोकप्रियता का एक मुख्य कारण इसका शक्तिशाली और अच्छी तरह से प्रलेखित मानक पुस्तकालय है। कई अन्य भाषाओं के विपरीत, गो 'बॉक्स से बाहर' पैकेजों के एक समृद्ध सेट के साथ आता है जो लगभग सभी बुनियादी कार्यों को कवर करता है: टेक्स्ट के साथ काम करने से लेकर उच्च-लोड वेब सेवाओं के निर्माण तक। इस अवलोकन में, हम कोड उदाहरणों के साथ गो मानक पुस्तकालय के प्रमुख पैकेजों की विस्तार से जाँच करेंगे।
पैकेज fmt: फ़ॉर्मेटेड इनपुट/आउटपुट
यह पहला पैकेज है जिससे प्रत्येक गो डेवलपर परिचित होता है। यह कंसोल पर फ़ॉर्मेटेड आउटपुट और डेटा पढ़ने के लिए फ़ंक्शन प्रदान करता है।
package main
import "fmt"
func main() { name := "Go" version := 1.22 // फ़ॉर्मेटेड आउटपुट fmt.Printf("भाषा: %s, संस्करण: %.1f", name, version)
// आउटपुट के बिना स्ट्रिंग बनाना message := fmt.Sprintf("नमस्ते, %s!", name) fmt.Println(message)}पैकेज strings और strconv: स्ट्रिंग के साथ काम करना
पैकेज strings में स्ट्रिंग खोजने, बदलने, विभाजित करने और जोड़ने के फ़ंक्शन शामिल हैं। strconv स्ट्रिंग को संख्याओं में और इसके विपरीत रूपांतरित करने के लिए जिम्मेदार है।
import ( "fmt" "strconv" "strings")
func main() { s := "नमस्ते, दुनिया!" // उपस्ट्रिंग खोजना if strings.Contains(s, "दुनिया") { fmt.Println("मिल गया") } // स्ट्रिंग विभाजित करना parts := strings.Split(s, ", ") fmt.Println(parts[0]) // नमस्ते
// स्ट्रिंग को संख्या में बदलना num, _ := strconv.Atoi("42") fmt.Println(num + 8) // 50}पैकेज net/http: HTTP सर्वर और क्लाइंट बनाना
सबसे शक्तिशाली पैकेजों में से एक। यह कोड की कुछ पंक्तियों में एक पूर्ण HTTP सर्वर चलाने की अनुमति देता है। माइक्रोसर्विसेज और वेब एप्लिकेशन में व्यापक रूप से उपयोग किया जाता है।
package main
import ( "fmt" "net/http")
func handler(w http.ResponseWriter, r *http.Request) { fmt.Fprintf(w, "नमस्ते, %s!", r.URL.Path[1:])}
func main() { http.HandleFunc("/", handler) http.ListenAndServe(":8080", nil)}पैकेज encoding/json: JSON के साथ काम करना
आधुनिक एप्लिकेशन लगातार JSON प्रारूप में डेटा का आदान-प्रदान करते हैं। पैकेज encoding/json गो संरचनाओं को JSON में और इसके विपरीत आसानी से क्रमबद्ध और अक्रमबद्ध करने की अनुमति देता है।
import ( "encoding/json" "fmt")
type User struct { Name string `json:"name"` Age int `json:"age"`}
func main() { user := User{Name: "अलेक्से", Age: 30} // JSON में क्रमबद्ध करना jsonData, _ := json.Marshal(user) fmt.Println(string(jsonData)) // {"name":"अलेक्से","age":30}
// JSON से अक्रमबद्ध करना var decoded User json.Unmarshal(jsonData, &decoded) fmt.Println(decoded.Name) // अलेक्से}पैकेज io और os: फ़ाइलों और स्ट्रीम के साथ काम करना
पैकेज os ऑपरेटिंग सिस्टम के साथ काम करने के लिए फ़ंक्शन प्रदान करता है: फ़ाइलों को पढ़ना और लिखना, पर्यावरण चर और कमांड लाइन तर्कों के साथ काम करना। io में डेटा स्ट्रीम (पढ़ना/लिखना) के साथ काम करने के लिए इंटरफ़ेस शामिल हैं।
import ( "io/ioutil" "os")
func main() { // फ़ाइल में लिखना data := []byte("Hello, Go!") ioutil.WriteFile("example.txt", data, 0644)
// फ़ाइल से पढ़ना content, _ := ioutil.ReadFile("example.txt") os.Stdout.Write(content)}पैकेज sync और goroutines: समवर्तीता
गो गोरूटीन (हल्के थ्रेड) और चैनलों के माध्यम से अपने अंतर्निहित समवर्तीता समर्थन के लिए प्रसिद्ध है। पैकेज sync सिंक्रनाइज़ेशन प्रिमिटिव प्रदान करता है, जैसे म्यूटेक्स
पुस्तकालय में भी
PHP में Markdown प्रसंस्करण और पार्सिंग: लाइब्रेरी और उपकरण
SFML C++ पूरी गाइड: उदाहरण, इंस्टॉलेशन, कोड | PythonLib
Rust में लॉगिंग: आपके प्रोजेक्ट के लिए सर्वश्रेष्ठ लाइब्रेरीज़ और समाधानों का अवलोकन
Prometheus मेट्रिक्स TypeScript में: पूर्ण मॉनिटरिंग गाइड