زمانی که در یک شرکت برنامهنویسی کار میکنید، گاهی اوقات پیش خواهد آمد که مجبور باشید تا کدهای دیگران را در دست گرفته و آنها را ویرایش بکنید یا توسعه دهید. ممکن است این کدها را یک هم تیمی نوشته باشد، ممکن است آنها را از سورس یک پروژه گرفته باشید و هزاران ممکن دیگر، اما در نهایت باید این واقعیت را پذیرفت که حال شما صاحب کدهایی هستید که خودتان آنها را ننوشتهاید اما مجبور هستید که آنها را مطالعه کرده و ویرایش نمایید.
زمانیکه چنین اتفاقی میافتد، ذهنیتی منفی به شما وارد میشود. وقتی کدها را مطالعه میکنید قسمتهایی را مشاهده میکنید که با آنها آشنایی ندارید، کدهایی را مشاهده میکنید که به شدت نامرتب هستند و تصحیح کردن آنها سال ها زمان میخواهد؛ صدها سناریو دیگر نیز ممکن است برایتان اتفاق بیافتد.
با خودتان میگویید: «این که مشکل من نیست، این کدها همینجوریش هم مشکل دارن» شاید شما درست بگویید اما داشتن چنین نگرشی و تکرار کردن آن با خود، ممکن است در نهایت یک هیولای بزرگ از یک برنامه بسازد. بعضی وقتها استفاده کردن از یک رویکرد متفاوت در کدنویسی میتواند کار با آن را برای دیگران غیر قابل انجام بکند. حال تصور بکنید که چند فرد با چند رویکرد متفاوت مشغول کار روی یک پروژه هستند و حال آن پروژه در اختیار شماست! رویکردها میتوانند به هرچیزی در برنامهنویسی گفته شوند، نامگذاری برای متغیرها، شیوه ساخت توابع، ایجاد کلاسها و… .
در زیر قصد داریم به شما چند نکتهای را بگوییم که کمک میکنند تا برای چنین سناریوهایی آمادگی داشته باشید و خودتان را به کشتن ندهید!
۱. مستندات پروژه را درخواست کنید
معمولا برای یک پروژه -مخصوصا وبسایتها- همیشه یکسری مستندات در قالبهای مختلفی وجود دارد، ممکن است مستندات قدیمی باشد اما بهتر از هیچ است. بنابراین زمانی که یک فایل از کدهای مختلف را دریافت کردید مطمئن شوید که همراه با آن مستندی وجود دارد یا خیر. اگر نبود حتما آن را درخواست کنید.
۲. وقت بگذارید
برای درک کدها وقت کافی بگذارید. تنها در یک چشم به هم زدن آن را قضاوت نکنید. با نگاه دقیق به هر قسمت سعی کنید تا ساختارها فایلها، وظایفی که انجام میدهد و… را به خوبی درک کنید. ببینید که وبسایت ساخته شده دقیقا از چه سیستم مدیریت محتوایی استفاده میکند، آیا در آن از Template Engine استفاده شده یا خیر، کتابخانههای جاوااسکریپتی که در آن قرار گرفتهاند را بررسی کنید، ببینید که از کتابخانههای معتبری استفاده شده یا خیر؛ قسمتهای بسیار دیگری نیز وجود دارد که میتوانید با نگاه کردن به کدها از وجود آنها مطمئن شوید.
در صورتی که کدها مستندسازی نشده باشند، این زمان خوبی برای ساخت مستندات خواهند بود. شما میتوانید یادداشتهای خودتان را روی این پروژه داشته باشید.
اگر بخواهید در یک مجموعه کد تغییری ایجاد کنید، قبل از هر کاری باید هدف اصلی آن کدها را درک کنید و درست همه بخشهای آن را متوجه شوید.
۳. توابع ناشناخته را بررسی کنید
منتظر بسته شدن برنامه توسط یک خطای ناشناخته نباشید، سعی کنید تمام توابع و مخصوصا توابعی که پیچیده هستند را پیدا و درک کنید. بعد از آن به دنبال راهی منطقیتر و بهینهتر برای پیادهسازی آنها باشید.
سعی کنید در تغییر دادن کدها، حتما مستنداتی را لحاظ کنید. برای بخشهایی از کامنتهای روشن و واضح استفاده کنید. حتی تغییر دادن کامنتها به پیامهایی واضحتر میتواند بخشی از فرایند تغییر کدها باشد.
۴. سازگار باشید
سیستم و رویکرد اصلی که کدها با آن نوشته شدهاند را یاد بگیرید و سعی کنید که عادتهای کدنویسی خود را با آنها منطبق کنید. اگر با کلاسها و توابع موجود آشنایی داشته باشید دیگر نیازی به تکرار آنها نخواهید داشت، میتوانید بدون نوشتن دوباره آنها، از تواناییها و کارکردشان استفاده کنید. اینگونه میتوانید بهرهوری کدهایتان را بالا ببرید.
اگر شما از رویکرد منحصر به فرد خودتان در این دست کدها استفاده کنید، خواندن و استفاده از آنها بعدا برای دیگر توسعهدهندگان بسیار سخت خواهد بود. به همین دلیل باید با اکثریت قالب کدها، سازگار باشید و کلاسها و متدهای خودتان را با کلاسهای موجود سازگار کنید.
۵. خروجی را آنالیز کنید
خروجی کدهایی که به شما داده میشود را آنالیز کنید. برای مثال اگر یک وبسایت است، دستگاههایی که پشتیبانی میکند را آنالیز کنید. از توانایی پشتیبانی از مرورگرها در آن اطلاع پیدا کنید. بدانید که آيا در کدها فرایندهای تستینگ و… در نظر گرفته شده یا خیر.
با استفاده از یک ابزار تست سرعت، میزان زمان مورد نیاز برای بارگذاری وبسایت را بررسی کنید، ببینید که آیا مشکلی جدی در کارایی آن وجود دارد یا خیر.
۶. از بهانه «یکی دیگر آن را نوشته» استفاده نکنید
سعی نکنید به دلیل آنکه کدهای موجود به خوبی نوشته نشدهاند شما هم کدهای مناسبی ننویسید. مطمئنا زمانی که یک پروژه بد نوشته میشود بدین معنا نیست که غیر قابل اصلاح است. این موضوع را نیز در نظر بگیرید که همه ما در بخشی از سابقه کاریمان کدهایی نوشتهایم که واقعا افتضاح بودهاند.
دنبال مقصر نگردید و بجای آن تمام تمرکز خودتان را روی این موضوع بگذارید که کدها را بهتر کنید. به این فکر کنید که اگر وبسایت یا به صورت کلیتر پروژهای به خوبی کدنویسی شود میتواند برای خودتان نیز در آینده فایده داشته باشد چرا که در آینده ممکن است دوباره روی آنها کار بکنید.
در پایان
اگر یک بار دیگر با کدهایی روبرو شدید که خودتان آنها را ننوشته بودید ولی مجبور بودید که با آنها کار بکنید، سراغ این مطلب بیایید و موضوعات گفته شده را روی کدها اعمال کنید.
دیدگاه و پرسش
در حال دریافت نظرات از سرور، لطفا منتظر بمانید
در حال دریافت نظرات از سرور، لطفا منتظر بمانید