وبلاگ

6 خطایی که هر توسعه دهنده مرتکب شده است


Sara Jabbari Sara Jabbari

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

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

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

کسی که هرگز اشتباه نکند، چیز جدیدی یاد نمی‌گیرد.

آلبرت اینشتین

1. بدتر ساختن کد

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

احتمالاً همه ما در این شرایط بوده‌ایم. اگرچه انتخاب راه حل سریع و کثیف وسوسه انگیز است، اما واقعاً نباید چنین باشد. هر وقت مجبورید با کد آشفته برخورد کنید، آن را بدتر نکنید. سعی کنید از منظر دیگری نگاه کنید و به دراز مدت فکر کنید. هر وقت که خودتان را در یک کد شلوغ یافتید، سعی کنید آن را بهتر کنید. قانونی به نام قانون Boy Scout وجود دارد که می‌توانید در اینجا کاملاً اعمال کنید: همیشه کد را کمی تمیزتر از زمانی که کار روی آن را شروع کرده‌اید، پایان دهید. اضافه کردن کدهای کثیف به این نامرتبی و درهم بودن، باعث خواهد شد که کد شما ناخوانا شود و در نهایت پروژه از بین می رود زیرا غیرقابل نگهداری است.

2. بدون دانستن راه حل، برنامه نویسی را شروع کنید

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

برنامه نویسی را بدون برنامه شروع نکنید.

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

سؤال کردن از خودتان می‌تواند شما را از این واقعیت آگاه سازد که قبل از نوشتن کد باید در مورد آن فکر کنید.

3. بعدا درستش می‌کنیم

نوشتن کد غیر بهینه، کاری است که قبلاً انجام داده‌ایم. بهانه شماره یک که برای توجیه کد غیر بهینه مورد استفاده قرار می گیرد این است که "بعداً آن را برطرف خواهم کرد". نه ، شما اینکار را انجام نمی‌دهید. همه می‌دانند که این اتفاق نخواهد افتاد.

شما احتمالاً فهمیدید که بهترین راه حل برای کد شما این است که بخشی از کد خود را پالایش کنید و آن را حس نکنید. یا ممکن است کار زیادی باشد. لحظاتی که دید کلی به پروژه پیدا نکرده‌اید و بیش از حد روی جزئیات تمرکز کرده‌اید، معمولاً لحظاتی هستند که دارید اهمال کاری می‌کنید. میزان کارهایی که باید انجام شود به قدری زیاد است که منجر به عدم انجام هر کاری می‌شود.

معمولاً شکستن کار در بخش‌های کوچکتر به پیشرفت شما کمک می‌کند. هنگامی که این روش کار نکرد، سعی کنید یک استراحت کوتاه برای تازه کردن ذهن خود داشته باشید.

چیزی که باید نهایتا اتفاق بیفتد، باید سریعا اتفاق بیفتد.

هنری کسینجر

4.کاهش تست‌ها

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

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

5. کامنت‌های بدیهی

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

// Loop over all products
foreach ($products as $product) {
       ...
}

کد بالا نیازی به توضیح ندارید و حتی برنامه‌نویسان تازه کار نیز به راحتی متوجه می‌شوند.

6. کامنت کردن کدها

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

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

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

جمع بندی

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

مطالب مرتبط

Emmet: ابزاری برای کدنویسی سریعتر

Emmet پلاگینی است که به شما سرعت بیشتری در کدنویسی HTML و CSS و البته XML می‌دهد، نحوه استفاده بدین صورت است که بعد از نصب پلاگین در IDE یا ویرایشگر متن مورد نظرتان می توانید کد خلاصه را بنویسید و با زدن کلید tab صفحه کلید، کدهای مورد نظرتان تولید خواهد شد.

چگونه یک توسعه دهنده وب شویم؟

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

راهنمای مستندسازی با phpdoc

کامنت‌نویسی کاربردهای زیادی دارد، که می‌توان از مهمترین موارد استفاده آن به خطایابی و راهنمای برنامه‌نویسان برای توسعه و تحلیل کدها اشاره نمود. در ادامه به طور کامل به بررسی phpdoc که چارچوبی برای توسعه و تحلیل راحت‌تر کدهاست می‌پردازیم، مثلا یک فانکشن داریم و می‌خواهیم از آن در بخش دیگری از برنامه استفاده کنیم، پس تنها دانستن کار آن کافیست و نیازی به دانستن نحوه کار آن نداریم، phpdoc اینکار را برای ما راحت‌تر می‌کند.

کد خود را به خوبی کامنت‌گذاری کنید

بسیاری از توسعه دهندگان PHP کامنت‌هایی را برای کدهایشان می‌نویسند، اما این زبان خودش هیچ قوانینی برای اینکه چگونه اینکار را انجام دهید ندارد. بنابراین دقیقا چه چیزی را باید در بلاک‌های کامنت بنویسید تا آنها کاربردی و سودمند باشند؟ چه بخش‌هایی از کد باید مستندسازی شود و چه بخش‌های نباید؟ در ادامه به برخی نکات مهم برای نامگذاری صحیح، مشخص کردن محدوده دسترسی و Type hinting پرداخته شده که رعایت آن‌ها به شما در قابل فهم شدن و مستندسازی بهتر کدهای PHP تان کمک خواهد کرد.

دیدگاه‌ها