प्रौद्योगिकी साझेदारी

गो भाषायाः परिचयः (१) २.

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Go Modules निर्भरता संकुल अन्वेषणतन्त्रम्
  • डाउनलोड् कृतानि तृतीयपक्षनिर्भरतानि अत्र संगृह्यन्ते $GOPATH/pkg/mod अधः
  • go install द्वारा उत्पन्नं कार्यान्वयनीयं सञ्चिका अस्मिन् संगृहीतं भवति $GOPATH/binअधः
  • अन्वेषणक्रमेण निर्भरं भवति : १.
    • कार्यसूची
    • $ गोपाथ / pkg / mod
    • $गोपाथ/src

1. गो भाषायाः मूलभूताः

1.परिचयकर्तारः कीवर्डः च

१.१ नामकरणविधिः

go चरस्य, नित्यस्य, कस्टम् प्रकारस्य, संकुलस्य, फंक्शन् इत्यस्य च नामकरणं निम्नलिखितनियमानाम् अनुसरणं कर्तव्यम् ।

प्रथमः वर्णः भवितुम् अर्हति任意Unicode字符वा下划线

प्रथमवर्णात् परे भागाः यूनिकोडवर्णाः, अण्डरस्कोरः अथवा संख्याः भवितुम् अर्हन्ति

नामदीर्घतायाः सीमा नास्ति

सैद्धान्तिकरूपेण नामस्य चीनीवर्णाः, सर्वे चीनीवर्णाः अपि भवितुम् अर्हन्ति, परन्तु व्यवहारे एतत् मा कुरुत ।

१.२ कीवर्ड
भङ्गःमूलभूतम्‌funcअन्तरफलकम्विचि
विषयस्थगयतिगच्छनक्शाstruct
चान्उतगोतोसम्पुटनुदति
constयदिपङ्क्तिःप्रकारःअनुवर्तते
कृतेआयातनिर्वतनम्fallthrough इतिवर्
१.३ आरक्षितशब्दाः

•नियत

true false iota nil

•दत्तांशस्य प्रकारः

int int8 int16 int32 int64

uint uint8 uint16 uint32 uint64

float32 float64

complex128 complex64

byte rune string

bool error uintptr

•नियोग

make len cap new append copy

close delete complex real imag panic recover

१.४ चराः
१.४.१ चरप्रकाराः
प्रकारःचरप्रकाराः गच्छन्तुfmt उत्पादनम्
पूर्णाङ्कःint int8 int16 int32 int64 uint uint8 uint16 uint32 uint64%d
प्लवक बिन्दुfloat32 float64%f %e %g
बहुवाचकcomplex128 complex64%v
boolean इतिbool%त
सूचकःuintptr%d
उद्धरणmap slice channel%v
बाइट्byte%d
कोऽपि पात्रःrune%d
सूत्रstring%s
त्रुटिerror%v
१.४.२ चरप्रारम्भः
  • यदि घोषणायाः अनन्तरं स्पष्टतया आरम्भः न भवति तर्हि संख्यात्मकः प्रकारः O इत्यत्र आरभ्यते, स्ट्रिंग् प्रकारः रिक्तं स्ट्रिंग् इत्यत्र आरभ्यते, बूलियन प्रकारः च false इति आरभ्यते

    सन्दर्भप्रकाराः, कार्याणि, सूचकाः, अन्तरफलकाः च nil इति आरभन्ते

    • var a string=“चीन” २.
    • var a,b int=3,7
    • var a="चीन", प्रकार अनुमान
    • वर अ,ब=“चीन”, ७
  • फंक्शन्स् इत्यस्य अन्तः चराः (अवैश्विकचराः) घोषयितुं आरभितुं च शक्यन्ते: =

    • क:=3
  • अण्डरस्कोरः अनामचरं सूचयति

    • _=2+4
  • अनामिकचराः नामस्थानं न गृह्णन्ति, स्मृतिः च न आवंटयन्ति, अतः तेषां पुनः उपयोगः कर्तुं शक्यते

१.५ नित्याः

नित्यं परिभाषिते सति मूल्यं नियुक्तं भवितुमर्हति, कार्यक्रमस्य चालनकाले तेषां मूल्यं परिवर्तयितुं न शक्यते ।

const PI float32=3.14

const(
	PI=3.14
	E=2.71
)

const(
  a=100
  b	//100,跟上一行的值相同
  c	//100,跟上一行的值相同
)

const(
	a = iota	//0
  b					//1
  c					//2
  d					//3
)

const(
	a = iota	//0
  b					//1
  _					//2
  d					//3
)

const(
	a = iota	//0
  b	= 30		//30
  c	= iota	//2
  d					//3
)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
१.६ शाब्दिकम्

शाब्दिकम् : चरनाम न दृश्यते, परन्तु मूल्यं प्रत्यक्षतया दृश्यते ।मूलप्रकारस्य अक्षराणि नित्यानां तुल्यानि भवन्ति

अक्षरशः अपवादरूपेण भिन्नदत्तांशप्रकारस्य तुलना कर्तुं न शक्यते

fmt.Printf("9tn"04 ==4.00//用到了整型字面量和浮点型字面量
fmt.Printf("%vn".4i//虚数字面量0.4i
fmt.Printf("%tn", "u4f17'=='//Unicode和rune字面量
fmt.Printf("Hello nWorldn!n"//字符串字面量
  • 1
  • 2
  • 3
  • 4
१.७ चरव्याप्तिः
वैश्विक चर
var (
  A=3	//全局变量,大写字母开头,所有地方都可以访问,跨package访问时需要带上package名称
	b=4	//全局变量,小写字母开头,本package内都可以访问
  • 1
  • 2
  • 3
  • 4
स्थानीय चर
func fool{
	b:=5 //局部变量,仅本函数内可以访问。内部声明的变量可以跟外部声明的变量有冲突,以内部的为准
  
	{
  	b:=6	//仅小圈定的作用域内可以访问,可以跟外部的变量有冲突
	}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
१.८ टिप्पण्याः तथा godoc
१.८.१ टिप्पणीरूपम्
  • एकपङ्क्तिटिप्पणी।// इत्यनेन आरभ्यताम् ।
  • बहुपङ्क्तिटिप्पणियाँ। अनेकाः क्रमिकपङ्क्तयः // इत्यनेन आरभ्यन्ते, अथवा अनुच्छेदस्य पूर्वं /* इत्यस्य उपयोगं कुर्वन्ति तथा अनुच्छेदस्य अन्ते */ इत्यस्य उपयोगं कुर्वन्ति ।
  • बहुपङ्क्तिटिप्पणीनां मध्ये कोऽपि रिक्तरेखा न दृश्यते
  • नोटः ध्यान-ग्राहकः, TODO: भविष्ये अनुकूलनस्य आवश्यकता अस्ति, अप्रचलितः: चरस्य वा कार्यस्य वा उपयोगं न कर्तुं दृढतया अनुशंसितम् अस्ति ।
  • टिप्पणीपङ्क्तौ पूर्वं indentation योजयित्वा go code लिखितुं शक्नुवन्ति ।
१.८.२ टिप्पणीनां स्थितिः
  • संकुल टिप्पणियाँ। संकुलस्य उपरि xxx. एकस्य संकुलस्य केवलं एकस्मिन् स्थाने संकुलटिप्पण्याः लेखनस्य आवश्यकता भवति, प्रायः समर्पितं doc.go ।

    केवलं एकः पङ्क्तिः packagexxx अस्ति तथा च संकुलस्य विषये टिप्पण्याः सन्ति ।

  • संरचना टिप्पणियाँ।उपरि प्रकार xxx struct

  • कार्य टिप्पणियाँ।उपरि func xxx() .

  • पङ्क्तिटिप्पणयः।उपरि वा दक्षिणे वा पङ्क्तिः

१.८.३ गच्छ doc
  • go doc इति आदेशः यः go इत्यनेन सह आगच्छति
  • go doc प्रवेशवर्गः/util
१.८.४ गोडोक्
  • godoc परियोजनासङ्केतस्य कृते एनोटेशनदस्तावेजस्य जालसंस्करणं निर्यातयितुं शक्नोति ।
    • भवन्तः प्रथमं golang.org/x/tools/cmd/godoc प्राप्तुं गच्छन्तु इति संस्थापयितुं आवश्यकम्
    • http:godoc -http=:6060 आरभत
    • भ्रमणार्थं ब्राउजर् इत्यस्य उपयोगं कुर्वन्तु: http://127.0.0.1:6060/pkg/go-course/entrance class