Skip to content

Commit

Permalink
Update 4.20-rules.md
Browse files Browse the repository at this point in the history
شفاف سازی بیشتر در ماهیت وجودی قوانین اجباری و اختیاری
  • Loading branch information
OmidHekayati committed May 24, 2023
1 parent f806d3e commit 2bf95c7
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions content/chapter 4/4.20-rules.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,12 @@ title: '4.20 قوانین کدنویسی در گو'
slug: go-code-rules
weight: 7020
---
قوانین در زبان گو همانند دیگر زبان های برنامه نویسی به دو دسته تقسیم می شوند. بخشی از قوانین در سطح سینتکس زبان مطرح می شوند، لذا رعایت آنها مهم هست، در غیر اینصورت کامپایلر قادر به کامپایل درست کدهای شما نخواهد بود و در بعضی شرایط ممکن است به صورت خاموش خطا به محیط اجرا (runtime) نیز برده شود. بخشی از قوانین به عنوان پیشنهاد و ترجیح مطرح هستند که عموما توسط لینتر بررسی می شوند و تاثیر اصلی بر خوانایی منطق کدها دارند. یعنی رعایت آنها الزام قطعی ندارد. به طور مثال استفاده از `_` در نام گذاری ها در گو توصیه نمی شود ولی در کتابخانه استاندارد (الحاقی به زبان گو) به وفور عدم رعایت این موضوع دیده می شود.

## 4.20.1 قوانین نام گذاری
لازم به ذکر است که سازمان ها می توانند قوانین پیشنهادی خود را توسعه دهند و با توسعه لینتر اختصصای در فرآیند توسعه نرم افزار خود با روش هایی مانند CI/CD از رعایت قوانین خود توسط توسعه دهندگان پروژه های نرم افزاری خود اطمینان حاصل نمایند.

در زبان برنامه‌نویسی Go برای نامگذاری توابع، نام‌های مشخصی وجود دارند که باید رعایت شوند تا کد هم خوانایی بیشتری داشته باشد و هم از نظر تعاریف و نام‌گذاری استاندارد باشد.
## 4.20.1 قوانین نام گذاری
در زبان برنامه‌نویسی Go برای نامگذاری توابع، همان گونه که در بالا نیز توضیح داده شد دو مدل قوانین (اجباری و اختیاری) وجود دارد. قوانین اجباری باید رعایت شوند و قوانین اختیاری بهتر است رعایت شوند تا کد هم خوانایی بیشتری داشته باشد و هم از نظر تعاریف و نام‌گذاری مطابق رویه های (پروتکل های) معرفی شده توسط تیم توسعه زبان، به صورت استاندارد باشند.

### 4.20.1.1 نام توابع

Expand Down

0 comments on commit 2bf95c7

Please sign in to comment.