جستجو برای:
سبد خرید 0
  • نقشه راه یادگیری پایتون
  • دوره آموزشی
  • درباره ما
  • مجله لرن پایتون
  • پروفایل من

ورود

گذرواژه خود را فراموش کرده اید؟

یا

ارسال مجدد کد یکبار مصرف (00:30)

ثبت نام

استفاده از سایت مشروط بر قبول توافقنامه کاربری و حفظ حریم شخصی می باشد. سیاست حفظ حریم خصوصی.

ارسال مجدد کد یکبار مصرف (00:30)
آموزش زبان برنامه نویسی پایتون
0
آخرین اطلاعیه ها
جهت نمایش اطلاعیه باید وارد سایت شوید
شروع کنید
  • نقشه راه یادگیری پایتون
  • دوره آموزشی
  • درباره ما
  • مجله لرن پایتون
  • پروفایل من
شروع کنید

وبلاگ

آموزش برنامه نویسی پایتون-لرن پایتون > بلاگ > برنامه نویسی وب > چرا باید در کدنویسی CodeRefactoring داشته باشیم؟

چرا باید در کدنویسی CodeRefactoring داشته باشیم؟

1400-12-27
ارسال شده توسط بهارک مهدی پور
برنامه نویسی وب
کد ریفکتورینگ

 در اصل  CodeRefactoring یعنی چه؟ چرا باید در کدنویسی CodeRefactoring داشته باشیم؟

خب در این بخش یک مبحث مهم و ضروری در پایتون را مورد بررسی قرار خواهیم داد.

گروه لرن پایتون برای علاقه‌مندان خود، قطاری در نظر گرفته جهت سیروسفر در برنامه‌نویسی که به دنیای زیبای پایتون سفرکرده و با مفاهیم جذاب پایتون آشنا خواهند شد.

حاضری سفر پایتونی مونو شروع کنیم؟  پس بزن بریم که پایتون منتظر شماست…

مسافران محترم به مقصد CodeRefactoring لطفاً آماده حرکت باشید.

ایستگاه CodeRefactoring:

CodeRefactoring  یعنی چه؟ خب در این ایستگاه یک مبحث مهم و ضروری در پایتون را مورد بررسی قرار خواهیم داد. قبل از هر چیزی بریم ببینیم اصلاً چرا باید در کدنویسی CodeRefactoring داشته باشیم؟

بله اینها سؤالاتی هستند که اکثر مبتدی‌های پایتون با آنها مواجه می‌شوند من خودم اولین باری که CodeRefactoring و شنیدم برایم خیلی بی‌معنی و پیچیده اومد چون وقتی کد و نوشتیم و اجرا شد چه دلیلی داره دوباره از CodeRefactoring استفاده کنم چرا باید “سری که درد نمی کنه رو دستمال ببندم”؟ خب برنامه من همیشه اجرا می‌شود دیگر چرا اصلاح کد؟
بله گفتم اصلاح کد دقت کردید؟!!! اگر دقت نکردید دوباره برگردید عقب و پاراگراف قبلی رو بخوانید.

در این ایستگاه قرار است ذهن خود را پاکسازی کنیم و یک نظمی بدیم تا مفهوم CodeRefactoring یعنی چه، بهتر قابل درک شود. خب دوستان وقتی کد یک برنامه را نوشتید باید به سؤال زیر جواب بدید.
“آیا زمان تغییر و  اصلاح کد پایتونی که نوشتم فرارسیده است یا نه؟” اگر پاسخ شما بله بود پس تا آخر این  مطلب همراه ما باشید تا بتوانید کدهای خود را ریفکتور کنید به‌طوری که کد شما اصلاح و مرتب شود بدون اینکه تغییری در روند اجرای کد داشته باشید.

Coderefactoring یعنی چه؟

CodeRefactoring یعنی چه؟

CodeRefactoring یعنی فرآیندی برای بهبود و اصلاح کد برای داشتن یک کد تمیز، ساده، کارآمد و قابل نگهداری. به‌طوری که عملکرد اصلی کد تغییر نکند. این تعریف ساده‌ای بود که می‌توانستیم برای کدریفکتورینگ ارائه دهیم.

هدف از Refectoring بهبود کد با ایجاد تغییرات کوچک بدون تغییر در اجرای کد است یعنی به هیچ عنوان در اجرای کد تغییری نخواهیم داشت و سبب افزایش خوانایی کد می‌شود تا بهتر بتوانیم اشکالات آن را برطرف کنیم. 

هدف کلی از CodeRefactoring این است که حرفه‌ای پایتونی شویم تا بتوانیم کد بهینه‌ای را بنویسیم از من نوعی، به شما نصیحت هیچوقت به خاطر کمبود زمان کدهای نامرتب ننویسید و همیشه یادمان باشد اصلاح کد را به بعد موکول نکنیم چون هیچ کسی جز خودتان متضرر نخواهد شد.

زمانی که می‌خواهیم یک ویژگی جدید به کد اضافه کنیم اگر یک کد نامرتب داشته باشیم با کامنت‌های زیاد، اضافه کردن ویژگی جدید کار بسیار پیچیده‌ای خواهد بود و زمان بیشتری تلف خواهد کرد ولی وقتی کد من از قبل Refector شده باشد این پروسه اضافه کردن یک دستور، کار من را بسیار راحت خواهد کرد زیرا دسترسی به بخش‌هایی از کد بسیار آسانتر از قبل خواهد بود تا درک کد بهتر شود. در نتیجه بعد از اینکه کد را نوشتیم باید کد خود را اصلاح کنیم تا کد کمتر، تمیزتر و بهینه‌ای داشته باشیم‌.

مزایای CodeRefactoring:

1-کد کمتر با خوانایی بیشتر و درک بالا
2 -آسان و قابل نگهداری
3 -تسهیل در رفع باگ

تا اینجای بحث، هدفمان از Refectory مشخص شد و فهمیدیم که برای چه کاری باید استفاده کنیم حال این سؤال پیش می‌آید وقتی معنی CodeRefactoringرو فهمیدم خب چطوری باید از آن استفاده کنم؟
نگران نباش دوست عزیز تا لرن پایتون و داری غم نداشته باش بریم سراغ روش‌های ساده برای Refectoring حالا وقتش رسیده که روش‌های جدیدی یاد بگیریم تا بتونیم کدهای خود را بهینه کنیم بزن بریم. وارد محیط ویژوال استودیو کد میشیم وطبق موارد گفته شده شما هم تمرین کنید.

1-تعریف تابع برای کارهای تکراری:
یک تابع می‌تواند با استفاده از نام تابع – فراخوانی تابع – اجرا شود، تابع مزایای زیادی دارد که با یک مثال می‌توانیم این موضوع را بهتر درک کنیم. در زیر برنام‌هایی نوشتیم که طول و عرض را می‌گیرد و مساحت مستطیل را حساب می‌کند.

کد قبل از اصلاح:
تعریف تابع از راهکارهای coderefactoring
: CodeRefacroring
تعریف تابع از راهکارهای coderefactoring

در برنامه بالا (کد قبل از اصالح) ما از دو حلقه While استفاده کردیم که اگر یکم بخواهیم بهینه‌اش بکنیم می‌توانیم با تعریف یک تابع به جای استفاده از دو حلقه از یک حلقه استفاده کنیم در این صورت با CodeRefactoring می‌توانیم کد خود را اصلاح کنیم و با یک تابع مثبت بودن اعداد ورودی را مشخص کنیم به همین راحتی.

2 -کاهش تعداد خط کدها (Code of Lines ):
اگر تعداد خط کدها بیشتر باشد در این صورت می‌توانیم با نوشتن متغیرها در یک خط برنامه خود را بهینه کنیم به مثال زیر که دارای 9 خط هست دقت فرمایید، می‌توانیم به‌راحتی در 3 خط خلاصه کنیم، درک برنامه 3 خطی بهتر از 9 خطی است:

کد قبل از اصلاح:
کاهش تعداد خط کدها در coderefactoring
:CodeRefactoring
کاهش تعداد خط کدها در coderefactoring

3 -استفاده از تابع ()enumerate به جای ()range :
می‌توانیم از تابع ()enumerate برای تکرار روی لیست واقعی استفاده کنیم

کد قبل از اصلاح:
استفاده از enumerate در coderefactoring
:CodeRefactoring
استفاده از enumerate در coderefactoring

4 -کاهش کدهای تکراری:
تکرار، درک کد را سخت‌تر می‌کند و زمانی که کدهای تکراری در برنامه زیاد داشته باشید منجر به باگ خواهید شد پس تا جایی که ممکن است دستورات تکراری را کاهش دهید.

کد قبل از اصلاح:
کاهش کدهای تکراری
:CodeRefactoring
کاهش کدهای تکراری

5 -کاهش کامنت‌گذاری:
تا حد ممکن سعی کنید از نوشتن کامنت زیاد جلوگیری کنید زیرا باعث سردرگمی و افزایش خطوط کد خواهد شد. باوجوداینکه بخواهیم یک دستوری را جستجو کنیم نوشتن کامنت به ما در یافتن کد موردنظر کمک خواهد کرد ولی بیشتر بودنش هم از یک دیدگاهی سبب گیج شدن ما خواهد شد.

جمع‌بندی:

 از مبحث CodeRefactoring یعنی چه  شروع کردیم و طی مسیری رسیدیم به پایان راه تا یک کد تمیز و بدون باگ داشته باشیم و یک مهارت مهم برای هر توسعه دهنده را یاد بگیریم.در بالا روش‌های CodeRefactoringرا با هم بررسی کردیم و توانستیم کدهایی را برای Refactory شناسایی کنیم ولی بعد از تمرین روشهای بالا وقتی که مسلط شدید به اصلاح کد در این صورت ما برای شما یک سورپرایز خواهیم داشت که از یک ابزاری برای Refactory کدهای پایتون می‌توانید استفاده کنید به شرط تسلط بر روشهای بالا، هم چنین شما نیز می‌توانید اگر روش دیگری برای اصلاح داشتید را با ما به اشتراک بگذارید. پس منتظر سورپرایز ما باشید.

قبلی بهترین زبان برنامه نویسی
بعدی کتابخانه Requests

دیدگاهتان را بنویسید

برای نوشتن دیدگاه باید وارد بشوید.

جستجو برای:
دوره های آموزشی
  • کسب درآمد با استفاده از وب اسکریپینگ آموزش وب اسکریپینگ با پایتون
    ۴,۰۰۰,۰۰۰ تومان
  • آموزش جنگو (django) | طراحی سایت با جنگو + پروژه محور | لرن پایتون دوره آموزش حرفه‌ای پایتونی شو(آموزش پروژه محور جنگو3)
    نمره 5.00 از 5

    ۵,۰۰۰,۰۰۰ تومان
جستجو برای:
دسته‌ها
  • آموزش پایتون
  • آموزش جنگو
  • برنامه نویسی وب
  • خلاصه کتاب
  • طراحی سایت
  • کاربردهای پایتون
  • ماشین لرنینگ
  • مقالات
پشتیبانی
  • Popular
  • Recent
  • Comments
پشتیبانی
لرن پایتون

مهارت در برنامه نویسی با زبان پایتون جز مشاغل پولساز جهان هست و البته هوش مصنوعی محبوبیت این مهارت رو بیشترثابت کرد.بدون نیاز به اختراع مجدد چرخ فقط تمرکز کنید وهمه تجربه موفق دیگران رو بهبود ببخشید.من آرزو محمد زادگان مهندس برق الکترونیک و برنامه نویس و توسعه دهنده وب به همراه تیم لرن پایتون آماده ایم تا تجربه هایم رو در اختیارت بزاریم پس فقط تمرکز کن واز تجربه 18ساله من استفاده کن و بهبود ببخش تا دنیای رو جای بهتری برای زندگی بسازیم

دسترسی سریع
  • درباره ما
  • تماس با ما
  • دوره آموزشی
  • نقشه راه یادگیری پایتون
نمادها
logo-samandehi
شبکه های اجتماعی
Instagram Eaparat Whatsapp

:: لرن پایتون توسط سرورهای اختصاصی ایران سرور پشتیبانی شده است.

تمامی حقوق مادی و معنوی برای لرن پایتون محفوظ است و هرگونه کپی وانتشار محتوا فقط با لینک به مرجع مجاز است. © کپی رایت 2019

اشتراک گذاری در شبکه های اجتماعی
ارسال به ایمیل
https://www.learnpythonn.com/?p=5870
ورود ×
کد تایید
لطفاً کد تأیید ارسال شده را تایپ کنید
ثبت

رمز عبور را فراموش کرده اید؟
ورود با کد یکبارمصرف
ارسال مجدد کد یکبار مصرف(00:30)
آیا حساب کاربری ندارید؟
ثبت نام
ارسال مجدد کد یکبار مصرف(00:30)
برگشت به ورود

ارسال مجدد کد یکبار مصرف (00:30)
برگشت به ورود
  • (+98) ایران

دلیل بازگشت وجه

مرورگر شما از HTML5 پشتیبانی نمی کند.