CodeGym /وبلاگ جاوا /Random-FA /10 راه برای بهبود کد، که از طریق تجربه شخصی ثابت شده است
John Squirrels
مرحله
San Francisco

10 راه برای بهبود کد، که از طریق تجربه شخصی ثابت شده است

در گروه منتشر شد
سلام به همه اعضای انجمن CodeGym! 10 راه برای بهبود کد، که از طریق تجربه شخصی ثابت شده است - 1امروز قصد داریم در مورد کیفیت کد صحبت کنیم. بله دوستان عزیز هیچکس کامل نیست همه در یک نقطه متوجه می شوند که کد می تواند بهتر باشد ... اما در این شرایط چه باید کرد؟ حداقل شروع به تحقیق در مورد این موضوع کنید. اما شما در حال حاضر اینجا هستید، به این معنی که موضوع باید مورد علاقه شما باشد، پس بیایید برویم. امروز روش‌هایی را شرح می‌دهیم که می‌توانید کد خود را بهتر و تمیزتر کنید. بنابراین در آینده از کد فعلی خود شرمنده نخواهید شد! :) همه این روش ها به یک برنامه نویس کمک می کند تا به یک برنامه نویس خوب تبدیل شود.10 راه برای بهبود کد، که از طریق تجربه شخصی ثابت شده است - 2

1. اگر می خواهید کد خود را بهبود ببخشید، کد شخص دیگری را بخوانید

اگر می خواهید مهارت های برنامه نویسی خود را به طور چشمگیری بهبود بخشید، باید کدهای نوشته شده توسط برنامه نویسان دیگر را بخوانید. باور کن یا نکن اما اگر ریسک کنید، قول می دهم: برای زمان صرف شده پاداش خواهید گرفت. به عنوان مثال، در medium.com در مورد نحوه کار HashMap، ArrayList، LinkedList و غیره مطالعه نکنید. در عوض، کد منبع آنها را بخوانید و خودتان آن را بفهمید. در اینجا لیستی از کلاس ها برای خواندن آمده است:
  • بیشترین سوالاتی که در مصاحبه ها پرسیده می شود در مورد HashMap است. شما می توانید دو پرنده را با یک سنگ بکشید: رمز را خواهید فهمید و دانش مورد نیاز خود را به دست خواهید آورد.
  • همین موضوع در مورد ArrayList نیز صادق است. هیچ چیز پیچیده ای وجود ندارد، اما کد منبع واقعا ارزش خواندن و درک را دارد.
  • رشته یک مثال عالی است. درک کنید که چرا تغییر ناپذیر است.
  • AtomicInteger یک کلاس جالب است: عملیات اتمی را روی اشیاء عدد صحیح تعریف می کند.
  • پس از آن، خوب، ما می توانیم هر کلاس را یکی پس از دیگری لیست کنیم :)
جدی تر، باید کدهای Pivotal را بخوانید. مردم آنجا پر تقاضاترین اکوسیستم در جهان جاوا را نوشته اند. کد آنها قطعا ارزش خواندن را دارد. توصیه می کنم با Spring Core شروع کنید . خواندن کد منبع ناآشنا کار دشواری است اما مفید است. :)

2. از قراردادهای کد پیروی کنید

10 راه برای بهبود کد، که از طریق تجربه شخصی ثابت شده است - 3کنوانسیون های کدگذاری مجموعه ای از دستورالعمل ها هستند که توسط تیم های توسعه ایجاد شده اند. آنها شامل دستورالعمل هایی برای سبک و تکنیک های کدنویسی برای هر جنبه از کد هستند. این قراردادها ممکن است برای کل شرکت یا برای یک پروژه خاص نوشته شود. قراردادهای کدنویسی عموماً مختص هر زبان برنامه نویسی هستند و سازماندهی فایل، تورفتگی، نظرات، اعلان ها، عملگرها، فضاها، قراردادهای نامگذاری، تکنیک ها و اصول برنامه نویسی، قوانین برنامه نویسی، بهترین شیوه ها برای معماری و غیره را پوشش می دهند. مزیت اصلی استانداردهای خاص این واقعیت است که کد یکسان به نظر می رسد و به یک سبک نوشته می شود. این باعث خوانایی بیشتر آن می شود و به برنامه نویسان کمک می کند تا کدهای نوشته شده توسط برنامه نویس دیگر را درک کنند. اگر استانداردهای کدنویسی به طور مداوم در طول فرآیند توسعه دنبال و اعمال شوند، در آینده حفظ و گسترش کد، اصلاح آن و رفع تضادهای یکپارچه سازی آسان تر خواهد بود. قراردادهای کدنویسی به چند دلیل برای برنامه نویسان مهم هستند:
  • 40 تا 80 درصد هزینه نرم افزار صرف نگهداری آن می شود.
  • به ندرت هیچ نرم افزاری توسط نویسنده خود در طول عمر خود نگهداری می شود،
  • قراردادهای کدنویسی خوانایی کد منبع را با اجازه دادن به برنامه نویسان برای درک سریعتر کدهای جدید بهبود می بخشد.
راستش من از طرفداران استانداردهای کدنویسی هستم. برای من منطقی است که وقت خود را صرف بحث و مجادله در مورد آنها کنید، زیرا این یک فعالیت ارزشمند است که در زمان و تلاش شما در آینده صرفه جویی می کند. قراردادهای کد باید به طور مکرر مورد بازبینی قرار گیرند. قوانین را می توان از "الزامی" به "اختیاری" و بالعکس تغییر داد. اگر برخی از آنها مطابق انتظار عمل نکردند، باید بازنگری یا از دستورالعمل حذف شوند.

3. از بررسی کد استفاده کنید

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

4. تست های واحد را بنویسید

روش مورد علاقه من برای بهبود کد قطعا نوشتن تست های واحد است. هر چه تعداد آنها را بیشتر بنویسید، بهتر است. در برنامه نویسی کامپیوتر، تست واحد یک فرآیند توسعه نرم افزار است که در آن کوچکترین کد منبع قابل آزمایش، به نام واحد، به صورت جداگانه و مستقل آزمایش می شود تا ببینیم آیا مطابق انتظار عمل می کند یا خیر. این به شما کمک می‌کند تا قبل از انتشار کد، نقص‌های الگوریتم و/یا منطق خود را کشف کنید. از آنجایی که تست واحد نیاز به ساختار مناسب کد شما دارد، کد باید به توابع کوچکتر و متمرکزتر تقسیم شود. هر کدام به جای توابع بزرگی که چندین عملیات مختلف را انجام می دهند، مسئول یک عملیات واحد در یک مجموعه داده است ( اصل مسئولیت واحد می گوید سلام...). دومین مزیت نوشتن کد خوب تست شده این است که می توانید هنگام ایجاد تغییرات کوچک در عملکرد موجود از شکستن کد جلوگیری کنید. وقتی تست های واحد شکست بخورند، به شما خواهند گفت که چیزی اشتباه نوشته شده است. در نگاه اول، زمان توسعه که برای نوشتن تست های واحد صرف می شود هزینه اضافی به نظر می رسد. با این حال، تست های واحد باعث صرفه جویی در زمان در رفع اشکال در آینده می شود. این باید یک فرآیند گام به گام باشد. پس بیایید بیشتر با لبخند جلو برویم - برای هر روش و کلاس تست می نویسیم :D

5. از ابزارهایی برای بهبود کیفیت کد استفاده کنید

هیچ توسعه دهنده ای وجود ندارد که هرگز اشتباه نکرده باشد. به طور معمول، کامپایلر مشکلات نحوی و حسابی را می گیرد و ردیابی پشته را نمایش می دهد. اما برخی از مشکلات ممکن است همچنان ظاهر شوند که کامپایلر آنها را نگیرد. به عنوان مثال، الزامات اجرا شده نادرست، الگوریتم های نادرست، کدهای ساختار نادرست، یا برخی مشکلات احتمالی دیگر که جامعه از تجربه آن را می داند. تنها راه برای یافتن چنین خطاهایی این است که از یک توسعه دهنده ارشد بخواهید کد شما را بررسی کند، درست است؟ اما این رویکرد نوشدارویی نیست و تغییر زیادی نخواهد کرد. برای هر توسعه دهنده جدید در تیم، باید یک جفت چشم اضافی داشته باشید که به کد او نگاه می کند. خوشبختانه، ابزارهای زیادی وجود دارد که می تواند به شما در کنترل کیفیت کدتان کمک کند. من از Checkstyle، PMD، FindBugs و SonarQube در پروژه های مختلف استفاده کرده ام. و دیگران نیز هستند. همه آنها معمولاً برای تجزیه و تحلیل کیفیت کد و ایجاد برخی گزارش های مفید استفاده می شوند. اغلب این گزارش ها توسط سرورهای یکپارچه سازی مداوم مانند جنکینز منتشر می شوند.

6. کد ساده و سرراست بنویسید

10 راه برای بهبود کد شما که از طریق تجربه شخصی ثابت شده است - 5همیشه کدهای ساده، قابل فهم و منطقی بنویسید. مردم تمایل به نوشتن کدهای پیچیده دارند تا ثابت کنند که می توانند این کار را انجام دهند. کد ساده و منطقی همیشه خوب کار می کند، مشکلات کمتری را به دنبال دارد و توسعه پذیرتر است. کد خوب بهترین سند است. اگر فکر می کنید نظری اضافه کنید، از خود بپرسید: "چگونه می توانم کد را بهبود بخشم تا این نظر ضروری نباشد؟" - استیو مک کانل.

7. اسناد را بخوانید

10 راه برای بهبود کد، که از طریق تجربه شخصی ثابت شده است - 6یکی از مهم ترین عادت های برنامه نویسان خوب خواندن اسناد زیاد است. خواه مشخصات آن، JSR ها، اسناد API، آموزش ها یا چیزهای دیگر، خواندن اسناد به شما کمک می کند پایه ای محکم برای بهترین برنامه نویسی خود بسازید. نکته آخر اینکه، خودتان را با دیگران مقایسه نکنید. مقایسه خود با دیگران تنها منجر به احساسات منفی و رقابت ناسالم می شود. هر فردی نقاط قوت و ضعف خود را دارد. این بدان معناست که شناخت آنها و کار کردن با آنها مهم است. موجودی خود را تهیه کنید - نقاط قوت خود را فهرست کنید و روی آنها کار کنید. برنامه نویسی یک لذت واقعی است: از آن لذت ببرید.

"ثابت یک انسان، متغیر مرد دیگر است."

آلن جی پرلیس

8. وبلاگ نویسان جالب را دنبال کنید

هزاران نفر از علاقه مندان در سراسر جهان با همین فناوری ها کار می کنند و در مورد آنها می نویسند. وبلاگ ها اغلب توسط خود برنامه نویسان نوشته می شوند و اکثر آنها نظرات و تجربیات شخصی خود را به اشتراک می گذارند. از طریق وبلاگ ها، می توانید دیدگاه های مختلفی را در مورد یک فناوری مشاهده کنید. در وبلاگ ها می توانید فناوری های خوب و بد را ببینید. حداقل، مقالاتی در مورد وبلاگ Coding Dojo و CodeGym بخوانید :) وبلاگ های خوب را دنبال کنید و در مورد پست ها نظر دهید، نظر خود را به اشتراک بگذارید.

9. کتاب های مربوط به این حرفه را بخوانید

هیچ چیز نمی تواند جای یک کتاب خوب را بگیرد. یک کتاب خوب مفاهیم اولیه را به شکلی بسیار ساده‌تر آموزش می‌دهد و برای چیزهایی در دنیای واقعی کاربرد دارد. نویسندگان آنها خود برنامه نویسان بزرگی هستند. با خواندن کتاب می توانید از تجربه دیگران درس بگیرید. پیشنهاد می کنم جاوای موثر جاشوا بلوخ را بخوانید. این کتاب هفتاد و هشت قانون اساسی ضروری را برای برنامه نویسان ارائه می دهد: بهترین راه حل های کاری برای مشکلات برنامه نویسی که هر روز با آن مواجه می شوید. این شامل عملی ترین و معتبرترین دستورالعمل ها برای نوشتن برنامه های موثر و خوب طراحی شده است. اگر به تازگی کار با جاوا را شروع کرده اید و تجربه برنامه نویسی ندارید، می توانید "Sams Teach Yourself Java 2 in 24 Hours" را بخوانید. و برای نوشتن کد پاک، یک کتاب عالی به نام "کد پاک" از رابرت مارتین وجود دارد. پس از خواندن آن، "احساس زیبایی" را در رابطه با کد تجربه خواهید کرد.

10. کد! کد! کد!

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

بیایید خلاصه کنیم

کسی که هیچ اشتباهی نمی کند کسی است که هیچ کاری انجام نمی دهد. به همین دلیل است که ما صبر خود را به کار می گیریم و مانند یک ملخ سخت کوش، مهارت های کدنویسی خود را تقویت می کنیم. برای انجام این کار، فراموش نکنید:
  • کد دیگران را بخوانید
  • ارائه و درخواست بررسی کد
  • تست های واحد را بنویسید
  • از ابزارهایی برای بهبود کد خود استفاده کنید
  • کد ساده و قابل فهم بنویسید
  • اسناد نوشته شده توسط کسانی که می توانند را بخوانید
  • برنامه نویسان جالب را دنبال کنید
  • کتاب های مربوط به این حرفه را بخوانید
  • کد! کد! کد!
نظرات
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION