Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

تعريف أنواع مخصصة

جزء من قسم Fundamentals في رحلة GO على Coddy — الدرس 94 من 109.

في لغة Go، يمكنك إنشاء أنواع مخصصة خاصة بك بناءً على أنواع موجودة. هذا يمنح الكود الخاص بك مزيداً من الوضوح وأمان الأنواع (type safety).

قم بتعريف نوع مخصص لدرجة الحرارة بالدرجة المئوية:

type Celsius float64

func main() {
    var temperature Celsius = 25.5
    fmt.Printf("Temperature: %.1f°C\n", temperature)
}

تُظهر النتيجة قيمة درجة الحرارة:

Temperature: 25.5°C

تتصرف الأنواع المخصصة مثل أنواعها الأساسية ولكن يتم التعامل معها كأنواع منفصلة من قبل المترجم، مما يحسن من قابلية قراءة الكود ويمنع الأخطاء المنطقية.

challenge icon

التحدي

مبتدئ

في هذا التحدي، ستتدرب على تعريف نوع مخصص في Go. تسمح لك الأنواع المخصصة بإنشاء أنواع بيانات خاصة بك بناءً على الأنواع الموجودة.

مهمتك هي تعريف نوع مخصص يسمى Temperature يعتمد على float64، ومن ثم إنشاء متغير من هذا النوع.

بعد تعريف النوع، يجب أن يقوم البرنامج بطباعة قيمة ونوع متغير درجة الحرارة.

ورقة مرجعية

أنشئ أنواعًا مخصصة في Go باستخدام الكلمة المفتاحية type:

type Celsius float64

تعتمد الأنواع المخصصة على أنواع موجودة ولكن يعاملها المترجم (compiler) كأنواع متميزة:

type Celsius float64

func main() {
    var temperature Celsius = 25.5
    fmt.Printf("Temperature: %.1f°C\n", temperature)
}

تعمل الأنواع المخصصة على تحسين قابلية قراءة الكود وتوفر أمان النوع (type safety) بينما تتصرف مثل أنواعها الأساسية.

جرّب بنفسك

package main

import "fmt"

// TODO: قم بتعريف نوع مخصص يسمى 'Temperature' بناءً على float64

func main() {
	// إنشاء متغير من النوع Temperature بقيمة 23.5
	var roomTemp Temperature = 23.5
	
	// طباعة قيمة ونوع roomTemp
	fmt.Printf("Room temperature: %v\n", roomTemp)
	fmt.Printf("Type of roomTemp: %T\n", roomTemp)
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس Fundamentals