یه برنامهنویس سادهی بکاند که گاهی مجسمههای چوبی هم میسازه و همیشه دوست داره مشکلات رو یهجوری حل کنه که کس دیگهای حلش نکرده. اینجا راه حل مشکلاتی که حل میکنم رو سعی میکنم بنویسم.
کد نویسی تمیز چیست؟ هر آنچه را که لازم است بدانید
اگر اهل برنامهنویسی نباشید یا به تازگی قصد ورود به این عرصه را داشته باشید، شاید عنوان این یادداشت برایتان عجیب باشد. چرا کد نویسی تمیز اهمیت دارد؟ مگر در نهایت عملکرد آن مهم نیست؟ چرا چگونگی نوشتن کد، دستخوش نگارش چندین مقاله و کتاب شده است؟
در این یادداشت درباره Clean Code و چرایی اهمیت این موضوع در دنیای برنامهنویسی توضیحات کوتاهی میدهیم. با ما همراه باشید:
تعاریف Clean Code و Dirty Code
همانطور که از نام این دو عبارت پیداست، یکی از آنها کدهای تمیز هستند (Clean Code) و از نظر مفهومی در مقابل کدهای کثیف (Dirty Code) قرار میگیرند. کد تمیز به کدی گفته میشود که کاملاً شفاف و گویا نگاشته شده است و اگر برنامهنویس دیگری کد را بخواند، کاملاً متوجه آن میشود.
در این نوع کد تمامی عملکردها (Functions) و دستورات شفاف هستند، علائم دستوری به شکل منظم در جای خود قرار گرفتهاند، در برخی از دستورات پیچیده، کامنتهایی کاربردی برای شفافسازی وجود دارد و نکاتی دیگری که آنها را در آموزش کد نویسی تمیز معرفی خواهیم کرد.
اما در کد نویسی کثیف، حتی اگر کد هم کار کند و خروجی مورد انتظار ما را ارائه دهد، به جز کسی که برنامه را نوشته شخص دیگری از آن سر در نمیآورد. در بیشتر پروژههای نرمافزاری که معمولاً گروهی از برنامهنویسان روی یک پروژه کار میکنند، این کار یک فاجعه محسوب میشود.
چرا کد نویسی تمیز اهمیت دارد؟
اگر قواعد تمیز کدنوشتن را رعایت نکنید، نه تنها افرادی که بعد از شما روی پروژه کار خواهند کرد و همکارهای فعلی شما برای درک کارتان به مشکل برخواهند خورد، بلکه خودتان هم پس از گذشت مدت کوتاهی، در صورت نیاز به ایجاد تغییرات و رفع مشکل، برای درک کد خودتان با مشکل مواجه میشوید.
در برخی از مقالات گفته میشود که یک برنامهنویس 20 تا 30 درصد زمان خود را به خلق کردن کد اختصاص میدهد و بیشترین زمان او صرف ایجاد تغییرات در کد به سفارش مشتری، رفع مشکل یا بهینهسازی پروژه میشود. برای کد نویسی تمیز بیش از هرچیز به تمرین بسیار زیاد و دیسیپلین نیاز دارید. در نظر داشتن موارد زیر نیز میتوانند برای بهبود کار شما کمک کننده باشند:
- تا حد امکان ساده بنویسید؛ اگر قرار است کد دستوری شما چند کار را بهصورت پیچیده انجام دهد، آن را در حد امکان ساده کنید و دستورهای آن را جداسازی کنید.
- در گذاشتن کامنت افراط و تفریط نکنید؛ برای تمیزنوشتن کد نیازی نیست برای هر دستور یک خط کامنت بنویسید، اصولاً بیشتر کدها باید بهخودیخود گویا باشند و نیازی به توضیح نداشته باشند، اما در جاهای پیچیدهتر کد حتماً یک کامنت گویا و شفاف درباره عملکرد آن بنویسید.
- قاعده اجتناب از تکرار یا Don’t Repeat Yourself) DRY)؛ با استفاده از کلاسها و توابعی که قبلاً آنها را تولید کردهاید، از دوباره کاری بپرهیزید.
- بازبینی کدها، بهینه سازی کدها، کاهش حجم توابع و وابستگیها؛ تمامی این موارد تأثیر بهسزایی روی پیشرفت شما در اصول کد نویسی تمیز دارند.
- انتخاب اسامی با معنی برای کلاسها و متدها؛ با این روش نه خودتان و نه همتیمیهایتان برای درک عملکرد کد، دچار سردرگمی نمیشوید.
و در نهایت به یاد داشته باشید که در برنامهنویسی، از آزمون و خطا نترسید. این تنها راه یادگیری، پیشرفت و بهینه کردن مهارتهای شما است.
شما چطور؟ تمیز کد مینویسید؟
مطلبی دیگر از این انتشارات
جلساتی که نباید به صورت ناهمزمان برگزار شوند
مطلبی دیگر از این انتشارات
آشنایی با Multi threading در جاوا
مطلبی دیگر از این انتشارات
آموزش اصولی کد نویسی تمیز - بخش اول