تعلم لغة البرمجة جو من البداية الى الاحتراف
Learn programming language go from beginning to professionalism
Learn programming language go/golang from beginning to professionalism
احسن واسهل محرر اطن هو Visual Studio Code
و المفكرة من ويندوز تستطيع الكتابة بها وحفظ الملف بالامتداد go
مثلا:
variablego1.go
وتشغيل برنامج cmd الذهاب الى المكان الذي تحفظ فيه ملفات go
وتكتب الامر:
go run variablego1.go
---------------------------
---------------------------
المتغيرات وطريقة التصريح(الاعلان) بها
و اسناد قيم لها في لغة جو Go
---
مثال:
//
package main
import "fmt"
func main(){
s:="a123"
var s1 string
var s2="b456"
var s3 string ="h789"
s1="string"
var f1 float32
var f2 float64
f1=2.5
f2=250.75
var b1 bool
b1=true
b2:=false
fmt.Println(s,s1,s2,s3,f1,f2,b1,b2)
}
----------------------------------------
----------------------------------------
الثوابت اسناد القيم لها في لغة جو Go
الثوابت لايمكن تغيرها
مثال:
// constantsgo1.go
package main
import "fmt"
func main () {
const(
s = "Hello!"
i = 7
r = 2.5
)
const w="Welcome!"
fmt.Println(s,i,r,w)
}
----------------------------------------
----------------------------------------
طباعة الجمل والكلمات في سطر واحد في لغة جو Go
مثال:
// Printgo1.go
package main
import "fmt"
func main () {
fmt.Print("hello!")
fmt.Print("2021")
}
----------------------------------------
----------------------------------------
طباعة الجمل والكلمات في لغة جو Go
مثال:
// printlngo0.go
package main
import (
"fmt"
)
func main () {
const s1 = "ali"
fmt.Println(s1)
}
----------------------------------------
----------------------------------------
قرآة رقم من لوحة المفاتيح في لغة جو Go
طريقة كتابة تعليمات البرمجية في سطر واحد
مثال:
// scango1.go
package main
import "fmt"
func main () {
var a int
fmt.Print("Enter a number : "); fmt.Scan(&a); fmt.Print(" The number is ",a)
}
----------------------------------------
----------------------------------------
عملية الجمع في لغة جو Go
برنامج لجمع عددين في لغة جو Go
مثال:
// addition01.go
package main
import (
"fmt"
)
func main() {
var x,y int
fmt.Print("Enter number one : ")
fmt.Scanln(&x)
fmt.Print("Enter number two : ")
fmt.Scanln(&y)
fmt.Println(" Result : ",x+y)
}
----------------------------------------
----------------------------------------
عملية الجمع في لغة جو Go
برنامج لجمع عددين في لغة جو Go
مثال:
// additiongo1.go
package main
import (
"fmt"
)
func main() {
var x,y int
fmt.Print("Enter number one : ")
fmt.Scanln(&x)
fmt.Print("Enter number two : ")
fmt.Scanln(&y)
o:=x+y
fmt.Println(" Result : ",o)
}
----------------------------------------
----------------------------------------
عمل دالة في لغة جو Go
دالة او اجراء تابع
وهذه الدالة تقوم بجمع عددين وارجاع النتيجة الى الدالة الرئيسية
مثال:
// functiongo1.go
package main
import "fmt"
func main () {
fmt.Println(add(7,5))
}
func add(x int, y int) int {
return x+y
}
----------------------------------------
----------------------------------------
عمل دالة في لغة جو Go
دالة او اجراء تابع
وهذه الدالة تقوم بجمع وطرح عددين وارجاع النتيجتين
لم ار لغة تفعل مثل هذا الا لغة جو Go
مثال:
// functiongo2.go
package main
import "fmt"
func add_minus(x int, y int) (int,int) {
return x+y,x-y
}
func main () {
fmt.Println(add_minus(7,5))
}
----------------------------------------
----------------------------------------
المصفوفات تعامل معهم في لغة جو Go
المصفوفة هي مجموعة من القيم من نفس نوع
هذه مصفوفة احادية من نوع السلاسل الحرفية والرقمية
مثال:
// arraysgo1.go
package main
import "fmt"
func main () {
var names[3] string
names[0]="ali"
names[1]="ahmed"
names[2]="saad"
for i:=0; i<len(names); i++ {
fmt.Println(names[i])
}
fmt.Println(names[1])
fmt.Println(len(names))
}
----------------------------------------
----------------------------------------
المصفوفات تعامل معهم في لغة جو Go
المصفوفة هي مجموعة من القيم من نفس نوع
هذه مصفوفة احادية من نوع السلاسل الحرفية والرقمية وتعامل معها مختلف بنسب للقرآة
مثال:
// arraysgo2.go
package main
import "fmt"
func main () {
var names[3] string
names[0]="ali"
names[1]="ahmed"
names[2]="saad"
for i:=range names {
fmt.Println(names[i])
}
fmt.Println(names[0:3])
fmt.Println(names[1])
fmt.Println(len(names))
}
----------------------------------------
----------------------------------------
المصفوفات الرقمية تعامل معهم في لغة جو Go
المصفوفة هي مجموعة من القيم من نفس نوع
هذه مصفوفة احادية من نوع الاعداد الصحيحة اي الرقمية
مثال:
package main
import "fmt"
func main () {
arr1 := [3]int{1,2,3}
for i, value := range arr1{
fmt.Println(value,i)
}
}
----------------------------------------
----------------------------------------
المصفوفات الرقمية تعامل معهم في لغة جو Go 2
المصفوفة هي مجموعة من القيم من نفس نوع
هذه مصفوفة احادية من نوع الاعداد الصحيحة اي الرقمية
مثال:
package main
import "fmt"
func main () {
arr1 := [ 3 ] int { 7, 250, 100 }
for _, value := range arr1 {
fmt.Println(value)
}
}
----------------------------------------
----------------------------------------
المصفوفات الاحادية تعامل معهم في لغة جو Go
المصفوفة هي مجموعة من القيم من نفس نوع
هذه مصفوفة احادية من نوع السلاسل الحرفية والرقمية
وطريقة اسناد القيم مختلفة
مثال:
package main
import "fmt"
func main () {
arr1 := [ 3 ] string { "ali", "mahmod", "khaled" }
for _, value := range arr1 {
fmt.Println(value)
}
}
----------------------------------------
----------------------------------------
المصفوفات الاحادية تعامل معهم في لغة جو Go 2
المصفوفة هي مجموعة من القيم من نفس نوع
هذه مصفوفة احادية من نوع السلاسل الحرفية والرقمية
طريقة اسناد القيم مختلفة ولتوضيح اكثر
مثال:
package main
import "fmt"
func main () {
arr1 := [ 3 ] string { "ali", "mahmod", "khaled" }
for i, value := range arr1 {
fmt.Println(value, i)
}
}
----------------------------------------
----------------------------------------
المصفوفات الثنائية البعد تعامل معهم في لغة جو Go
المصفوفة هي مجموعة من القيم من نفس نوع
هذه مصفوفة ثنائية من نوع السلاسل الحرفية والرقمية
مثال:
package main
import "fmt"
func main () {
arr1 := [3][3]string{
{"faicel", "mahmoud", "khaled"},
{"saadi", "gembel", "kemal"},
{"khaled", "ahmed", "ferid"},
}
for _, value := range arr1 {
fmt.Println(value)
}
}
----------------------------------------
----------------------------------------
تجاوز قيمة من حلقة تكرارية في لغة جو Go
لتجاوز قيمة من حلقة تكرارية استعمل الامر continue
مثال:
// continuego1.go
package main
import "fmt"
func main(){
for i:=0; i < 10; i++ {
if i == 5 {
continue
}
fmt.Println("Value is ",i)
}
}
----------------------------------------
----------------------------------------
وقف حلقة تكرارية عند بلوغها قيمة معينة في لغة جو Go
لوقف حلقة تكرارية عند بلوغها قيمة معينة استعمل الامر break
مثال:
// breakgo1.go
package main
import "fmt"
func main(){
i:=0;
for i < 10 {
if i == 5 {
break
}
fmt.Println("Value is ",i)
i = i + 1
}
}
----------------------------------------
----------------------------------------
الحلقات التكرارية المتدخلة في لغة جو Go
مثال:
// fordgo1.go
package main
import "fmt"
func main () {
fmt.Println()
for i := 1; i <= 5; i++ {
fmt.Print("#")
for j := 1; j <= 5; j++ {
fmt.Print("*")
}
fmt.Println("#")
}
}
----------------------------------------
----------------------------------------
الحلقات التكرارية في لغة جو Go
الحلقات التكرارية تدور من 1 الى 5
مثال:
// forgo1.go
package main
import "fmt"
func main(){
for i:=0; i<5; i++ {
fmt.Println("Value is ",i)
}
}
----------------------------------------
----------------------------------------
الحلقات التكرارية في لغة جو Go 2
هذه الحلقات التكرارية تدور من 1 الى 5 ومختلفة تشبه ويلwhile في لغات اخرى
مثال:
// forgo2.go
package main
import "fmt"
func main(){
i:=0;
for i<5{
fmt.Println("Value is ",i)
//i++
//i+=1
i = i + 1
}
}
----------------------------------------
----------------------------------------
عمل شرط بif في لغة جو Go
مثال:
// ifgo1.go
package main
import "fmt"
func main(){
i:=7
if i==7 {
fmt.Println("i=",i)
}else{
fmt.Println("i<7 or i>7")
}
}
---------------------------------------------
---------------------------------------------
اداة اختيار switch من نوع عدد صحيح في لغة جو Go
اداة الاختيار switch يتم من خلالها اختيار واحد من مجموعة من الاخيارات
-
هنا يتم اختيار الرقم 4 وهو الذي ادخلناه في البداية
package main
import "fmt"
func main() {
var number int = 4
switch number {
case 1: fmt.Println("A number is 1")
case 2: fmt.Println("A number is 2")
case 3: fmt.Println("A number is 3")
case 4: fmt.Println("A number is 4")
case 5: fmt.Println("A number is 5")
case 6: fmt.Println("A number is 6")
case 7: fmt.Println("A number is 7")
default:
fmt.Println("It is default:")
}
}
---------------------------------------------
---------------------------------------------
اداة اختيار switch من نوع سلسلة حرفية في لغة جو Go
اداة الاختيار switch يتم من خلالها اختيار واحد من مجموعة من الاخيارات
-
هنا يتم اختيار الخيار توtwo وهو الذي ادخلناه في البداية
package main
import "fmt"
func main() {
var sq string = "two"
switch sq {
case "one": fmt.Println("string is one")
case "two": fmt.Println("string is two")
case "three": fmt.Println("string is three")
case "four": fmt.Println("string is four")
default:
fmt.Println("string is default:")
}
fmt.Println("Hello")
}
}
---------------------------------------------
---------------------------------------------
اداة اختيار switch من نوع منطقي بولـيا في لغة جو Go
اداة الاختيار switch يتم من خلالها اختيار واحد من مجموعة من الاخيارات
-
هنا يتم اختيار الخيار تروtrue وهو الذي ادخلناه في البداية
package main
import "fmt"
func main() {
var bq bool = true
switch bq {
case true: fmt.Println("bool is true")
case false: fmt.Println("bool is false")
default:
fmt.Println("bool is default:")
}
}
---------------------------------------------
---------------------------------------------
اداة اختيار switch من نوع منطقي بوليا في لغة جو Go
اداة الاختيار switch يتم من خلالها اختيار واحد من مجموعة من الاخيارات
-
هنا يتم اختيار الخيار فالسfalse وهو الذي ادخلناه في البداية
package main
import "fmt"
func main() {
bq := false
switch bq {
case true: fmt.Println("bool is true")
case false: fmt.Println("bool is false")
default:
fmt.Println("bool is default:")
}
}
/////////////////////////////////////////
----------------------------------------
----------------------------------------
عمل تسجيلة struct في لغة جو Go
التسجيلة هي مجموعة من القيم المختلفة
مثال:
// structgo1.go
package main
import "fmt"
type nameb1 struct {
name1 string
name2 string
}
func main () {
var mynameb1=nameb1 {
name1: "ali",
name2: "ahmed",
}
fmt.Println(mynameb1.name1)
}
----------------------------------------
----------------------------------------
مثلث من النجوم
مثال:
package main
import "fmt"
func main () {
fmt.Println()
for i := 1; i <= 5; i++ {
for j := i; j <= 5; j++ {
fmt.Printf("*")
}
fmt.Println("*")
}
fmt.Println("*")
}