khaled moazedi
khaled moazedi
خواندن ۴ دقیقه·۲ سال پیش

Naming REST API Endpoints



سلام روز همه بخیر امیدوارم نسیم آزادی به زودی وزیدن بگیره

برای آزادی #جادی و همه ی در بندان و شادی روح شهدای آزادی

توی این روزهای سخت یکی از وظایفی که بر خودم توجه به اون رو واجب می دونم توجه به پیشرفت شخصی خودم و اشاعه ی فرهنگ سعی برای حرکته .
یکی از دوستان از قول جیمز کلیر به نقل از کتاب عادتهای اتمی می گفت : بزرگترین تهدید موفقیت شکست نیست تن آساییه ! ومن چقدددر باورش دارم .... دوستان تواناییهاتون رو به کار بگیرید که تو بدنتون خشک نشن ! زندگی همراه خوب حرکته ! به مرور و بدون اینکه بفهمی بهت جایزه ش رو میده به قول دوستان انگلیسی زبانمون belive in progress

باری !
در مورد naming میخوام یه چند تا نکته از این منبع استخراج کنم استفاده کنم در اختیار شما هم بگذارم (احتمالا یه نکته هم به مقاله ی time in golang اضافه می کنم )


REST API naming conventions(قواعد نام گذاری در فریم ورک REST)

× قانون اول و مهم اینه که برای نام گذاری از اسم استفاده بشه نه حرف و نه فعل ! اسمی که با دیدنش مخاطب محتوای اون url رو براحتی حدس بزنه

× قانون بعد اینه که هیچگاه از کلمات مختصر شده و گنگ استفاده نشه مثلا deletefriendshipRequest رو نباید delFR یا چیزهایی شبیه به این نوشت که تنها شما و آنهم در مواردی که scale کارتون کمه می فهمیدش و بقیه و حتی خودتون در scale بالا اصلا ازش سر در نمیارید ! و حتی یادمون باشه که اسمی که من گذاشتم هم درست نیست چون هم حاوی یکی از ارکان CRUD یعنی delete هست هم در کل فعله !
× پس یه قانون دیگه هم داشته باشیم : در url نویسی هر گز از کلمات کلیدی HTTP استفاده نشه (و...create,update,read, delete,get,post) چون هم کلمه ی کلیدی هستن و هم فعل هستند

× قانون بعد : از (/) و (\) و (:) -slash, backslash,colon و (؛)و (""). (=), ...- درست استفاده کنید اینها برای استفاده ی REST رزرو شدن و نمی تونید جز در مواردی که برای اونها تعریف شده استفاده شون کنید مثلا : اسلش برای جدا کردن ثفحات مربوط به یک category استفاده میشه به عنوان مثال :

users/admin/settings

× برای جدا کردن کلمات ترکیبی از dash یا hyphen (-) ونه underline (_) ونه cammleCase استفاده کنید

مثال درست : user-numbers | | مثال غلط : user_numbers OR userNumbers

بین همه توافق شده که (همه که میگم خودمون منظورم نیست ! از ما بهترون منظورمه ) که از هایفن برای جدا کردن کلمات ترکیبی استفاده بشه هم در تایپ راحتتره هم فهمش برای عموم ساده تره . حالا ممکنه من و شما نظرمون چیز دیگه ای باشه ... خب اینجا آزادی حتی خراب کاری هم بکنی چه برسه به با متد خودت url نوشتن ! اما خب بهتره به این خرد جمعی اعتماد کنی مهندس! جواب میده (به غلط کردم بعدش نمی ارزه ...در اسکیل های بزرگ به عرفانی دست پیدا میکنی که این دوستان یه چیزی می دونستن که اینارو گفتن بعد اگر لیاقت اینو داشته باشی که راه بازگشتی وجود داشته باشه که خوش اقبالی و اگر نه ! تکمه رو غیر فعال کردن و فقط می مونه آه ندامت و دست حسرت زدن بر دامان )

× حروف رو lowercase استفاده کنید . این قانون کوتاه و شیر فهم و مختصره . از حروف بزرگ استفاده نکن

× قانون بعد میگه هرگز از پسوند برای url ت استفاده نکن یعنی : users/admin.xml نداریم users/admin خلاص ! اگه مایلی type رو به نمایش بذاری راه های دیگه ای هست Content-Type entity-header

× و قانون آخر این قوانینو همیشه رعایت کن! اینجوری دو سه تا خوبی داره : یک حرفه ایه دو منظمه سه همه فهمه و کارت با کار بقیه که حرفه ای هستن تداخل پیدا نمی کنه

خسته نباشید و به منبعی که بالا گفتم هم سر بزنید .. هر چند همینا رو گفته که م گفتم ولی منبعه حتما می تونید چیزای بهتری ازش یاد بگیرید .. اگه کارتون درسته و جایی از ایم مقاله ایراد می بینید یا کم و کاستی داره به مام بگید اصلاحش کنیم و بیشتر یاد بگیریم اگر هم اول راهید : نگران نباشید راه میافتید کم کم انقدرهام سخت نیست

take it easy ...

خالد.م

restnaminggolangrestful apiapi
back end developer .. copy writter
شاید از این پست‌ها خوشتان بیاید