Go bilan tanishuv


ULASHISH

Go nima?

  • Go — kross-platformali, ochiq kodli dasturlash tili
  • Go yordamida yuqori unumdorlikka ega ilovalar yaratish mumkin
  • Go — soddaligi va samaradorligi bilan tanilgan, tez ishlaydigan, statik tiplashtirilgan va kompilyatsiya qilinadigan til
  • Go 2007-yilda Google’da Robert Griesemer, Rob Pike va Ken Thompson tomonidan ishlab chiqilgan
  • Go sintaksisi C++ sintaksisiga o‘xshaydi

Go nima uchun ishlatiladi?

  • Veb-dasturlash (server tomoni)
  • Tarmoqqa asoslangan dasturlarni ishlab chiqish
  • Kross-platformali korporativ ilovalarni ishlab chiqish
  • Bulutga yo‘naltirilgan (cloud-native) dasturlash

Nega Go tilidan foydalanish kerak?

  • Go qiziqarli va uni o‘rganish oson
  • Go tez bajariladi va tez kompilyatsiya qilinadi
  • Go bir vaqtda bajarishni (concurrency) qo‘llab-quvvatlaydi
  • Go tilida xotirani boshqarish mexanizmi mavjud
  • Go turli platformalarda ishlaydi (Windows, Mac, Linux, Raspberry Pi va h.k.)

Go tilini Python va C++ bilan taqqoslash

Go Python C++
Statik tiplashtirilgan Dinamik tiplashtirilgan Statik tiplashtirilgan
Tez bajariladi Sekin bajariladi Tez bajariladi
Kompilyatsiya qilinadi Interpretatsiya qilinadi Kompilyatsiya qilinadi
Tez kompilyatsiya qilinadi Interpretatsiya qilinadi Sekin kompilyatsiya qilinadi
Goroutine’lar va channel orqali bir vaqtda bajarishni (concurrency) qo‘llab-quvvatlaydi Bir vaqtda bajarish (concurrency) uchun o‘rnatilgan mexanizm yo‘q Oqimlar (threads) orqali bir vaqtda bajarishni qo‘llab-quvvatlaydi
Xotirani avtomatik tozalash (garbage collection) mavjud Xotirani avtomatik tozalash (garbage collection) mavjud Xotirani avtomatik tozalash (garbage collection) mavjud emas
Sinflar va obyektlarni qo‘llab-quvvatlamaydi Sinflar va obyektlar mavjud Sinflar va obyektlar mavjud
Vorislikni qo‘llab-quvvatlamaydi Vorislikni qo‘llab-quvvatlaydi Vorislikni qo‘llab-quvvatlaydi

Eslatmalar:

  • Kompilyatsiya vaqti deganda kodni bajariladigan dasturga o‘girish uchun ketadigan vaqt tushuniladi
  • Concurrency (bir vaqtda bajarish) — yakuniy natijaga ta’sir qilmagan holda bir nechta ishni ixtiyoriy tartibda yoki bir vaqtning o‘zida bajarish
  • Statik tiplashtirish o‘zgaruvchilar tiplari kompilyatsiya vaqtidayoq ma’lum bo‘lishini anglatadi


Ishni boshlash

Ushbu darslik sizga Go asoslarini o‘rgatadi.

Buning uchun oldindan dasturlash tajribasiga ega bo‘lish shart emas.

Boshlash »

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!