هشت راه برای تبدیل شدن به یک کد نویس بهتر

هشت راه برای تبدیل شدن به یک کد نویس بهتر 267 230 شهاب اسکندری


هشت راه برای تبدیل شدن به یک کد نویس بهتر

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

زمان آن رسیده است که برای بهبود قابلیت های برنامه نویسی خود، گامی جدی بردارید و به یک کد نویس بهتر تبدیل شوید، پس با مدرسه اشتغال همراه باشید.

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

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

۱-به خودتان یادآوری کنید که مجبورید چه مقدار بیاموزید

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

کد نویس بهتر

۲- دست از اثبات کردن خود بردارید

برای بهترین بودن -نه تنها خوب بودن- شما باید از تجربیات، درس بگیرید. اما مراقب باشید، تجربیات میتوانند رفتار های ضعیف و عادت های بد را برای ما به همراه داشته باشند. اکثر ما با برنامه نویسانی مواجه شده ایم که ۸ سال سابقه برنامه نویسی دارند. در اصل، هشت بار، همان سال اول را تکرار کرده اند. برای جلوگیری از این سندرم، به هر کاری که انجام میدهید نگاه کنید و از خود بپرسید که “چگونه میتوانم این کار را بهتر انجام دهم؟”

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

۳-“کد کار میکند” این تازه آغاز کار است

بله، همیشه اولین قدم شما این است که یک نرم افزار با کیفیت که انتظارات را براورده میکند، بنویسید. اکثر برنامه نویسان، در این مرحله کار را تمام کرده و به سراغ کار بعدی میروند.

نوشتن کدی که کار میکند، مثل آن است که شما فقط یک عکس از خودتان بگیرید و انتظار داشته باشید که سرشار از افکت های هنری باشد. برنامه نویسان بزرگ میدانند که اولین مرحله، فقط اولین مرحله است. کد شما کار میکند؟؟ تبریک میگویم، اما کار شما تمام نشده است، “کدت رو بهتر کن”.

قسمتی از این پروسه، این است که تعریف کنیم معنای “بهتر” چیست؟ بهتر است که سریع تر شود؟ بهتر مستند سازی شود؟ بیشتر قابل استفاده مجدد باشد؟ قابل اعتماد تر باشد؟
پاسخ این سوالات برای هر برنامه متفاوت است، اما این پروسه همیشه ثابت است.

۴- سه بار بنویسش

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

  1. در ابتدا، شما برنامه را مینوسید که به خودتان (یا مشتری) ثابت کنید که نوشتن این برنامه، امکان پذیر است. دیگران تشخیص نمیدهد که این فقط یک اثبات است، اما شما این را میدانید.
  2. بار دوم، شما کاری میکنید که برنامه تان، کار کند.
  3. و در آخر، شما کاری میکنید که برنامه تان، صحیح کار کند.

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

هیچ سودی که نداشته باشد، “سه بار بنویسش” به شما می آموزد که چندین روش برای رویارویی با مشکلات موجود است و شمارا از افتادن در چاه، نجات میدهد.

۵- کد بخوانید، کدهای زیادی را بخوانید!

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

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

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

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

تبدیل شدن به برنامه نویس بهتر

۶- کد بنویسید اما نه فقط به عنوان یک تکلیف

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

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

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

۷-به هر شکلی که میتوانید با بقیه توسعه دهندگان کار کنید

گوش دادن به بقیه افراد، سودمند است. خواه یک برنامه نویسی مشارکتی، رفتن به یک رویداد و یا پیوستن به گروه های برنامه نویسی باشد. زمانی که شما در یک پروژه متن باز مشارکت میکنید، به بازخورد هایی که از باقی توسعه دهندگان دریافت میکنید، دقت کنید. چه نقاط مشترکی در انتقاداتشان میبینید؟

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

برنامه نویس بهتر

۸- تکنیک هارا یاد بگیرید، نه ابزار را

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

من میتوانستم نکات بیشتری را برای تبدیل شدن به یک کد نویس بهتر، برایتان بگویم، اما یکی از اصول خود شناسی این است که بفهمی چه زمانی باید متوقف شوی!

 

منبع: newrelic.com