Golang Press
1 subscriber
1 photo
3 links
Download Telegram
Channel created
Channel name was changed to «Golang Press»
اکر میخواهید در مورد انترفیس ها بیشتر بدونید توی گولنگ
پلی لیست زیر رو مشاهده کنید
🔎 Interfaces 101 by Ardan Labs
Forwarded from Gopher Academy
در کدنویسی Go، تفاوت اصلی بین دو تعریف شما به نوع متغیر (global یا constant) و روش مقداردهی آنها مربوط است:

1. `var DockerClient *client.Client`:
این یک متغیر است که می‌تواند در زمان اجرا مقداردهی شود. مقدار آن قابل تغییر است و در برنامه‌های پویا و انعطاف‌پذیر کاربرد دارد.

2. `const DockerClient = *client.Client`:
این تعریف صحیح نیست، زیرا مقدار ثابت (const) باید یک مقدار قابل محاسبه در زمان کامپایل (compile-time) باشد، اما یک مقدار اشاره‌گر به دلیل ماهیت پویا نمی‌تواند در یک ثابت تعریف شود.

### نتیجه:
تعریف صحیح و کاربردی var DockerClient *client.Client است، زیرا مقدار اشاره‌گرها و متغیرهایی که به منابع خارجی (مانند Docker) وابسته هستند، باید در زمان اجرا تنظیم شوند.


🕸 https://linktr.ee/Labdon
در کدنویسی Go، تفاوت اصلی بین دو تعریف شما به نوع متغیر (global یا constant) و روش مقداردهی آنها مربوط است:

1. `var DockerClient *client.Client`:
این یک متغیر است که می‌تواند در زمان اجرا مقداردهی شود. مقدار آن قابل تغییر است و در برنامه‌های پویا و انعطاف‌پذیر کاربرد دارد.

2. `const DockerClient = *client.Client`:
این تعریف صحیح نیست، زیرا مقدار ثابت (const) باید یک مقدار قابل محاسبه در زمان کامپایل (compile-time) باشد، اما یک مقدار اشاره‌گر به دلیل ماهیت پویا نمی‌تواند در یک ثابت تعریف شود.

### نتیجه:
تعریف صحیح و کاربردی var DockerClient *client.Client است، زیرا مقدار اشاره‌گرها و متغیرهایی که به منابع خارجی (مانند Docker) وابسته هستند، باید در زمان اجرا تنظیم شوند.