کاش قبل از شروع برنامه‌نویسی این 7 مورد را می‌دانستم!

کاش قبل از شروع برنامه‌نویسی این 7 مورد را می‌دانستم!

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

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

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

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

جاوااسکریپت را یاد بگیر نه جی‌کوئری را!
این بخش مثالی مهم از مورد پیشین است. در این جا نیاز بود تا به جاوااسکریپت توجه ویژه‌ای شود چرا که یکی از محبوب‌ترین و پرکاربردترین زبان‌های دنیای برنامه‌نویسی است و هر دولوپری تنها با کمک یک مرورگر می‌تواند کدهای نوشته شده با این زبان را اجرا نماید (برای شروع یادگیری این زبان، به دورهٔ آموزش جاوا اسکریپت در سکان آکادمی مراجعه نمایید).

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

در حقیقت، jQuery یکسری از توابع است که با جاوااسکریپت نوشته شده‌اند و تنها دلیلی که دولوپرها از آن استفاده می‌کنند این است که با استفاده از jQuery تعداد خطوط کد کمتری خواهید نوشت. البته جدیدترین نسخه‌های جاوااسکریپت (ES6)، سینتکس خود را ساده‌تر و قابل‌فهم‌تر کرده‌اند که بدین ترتیب خیلی نیازی به استفاده از جی‌کوئری و یا دیگر لایبرری‌های جاوااسکریپت نخواهیم داشت. در اینجا نمی‌خواهیم بگوییم که استفاده از jQuery اشتباه است بلکه تنها راه و مسیر صحیح یادگیری را به شما نشان خواهیم داد. 

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

برای نمونه، اگر می‌خواهید که Ruby on Rails را فرا بگیرید، بهتر است که پروژهٔ کوچکی را شروع کرده و در حین یادگیری و مطالعهٔ مباحث RoR، آن دستورات را بر روی پروژهٔ خود اعمال کنید. مطمئن باشید روشی سریع‌تر و بهتر از این برای یادگیری وجود ندارد.

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

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

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

از دیگران بخواهید که کد شما را ارزیابی کنند
اگر کدهای شما توسط یک فرد آگاه و باتجربه بررسی شود، مشکلات و ایراداتی که شاید تا مدت‌ها متوجه آن‌ها نمی‌شدید، به راحتی نمایان خواهند شد. البته یک ارزیابی دقیق و صحیح ممکن است زمان زیادی از شخص بررسی کننده بگیرد اما می‌توانید از همکاران و یا دوستانی که تجربهٔ بیشتری در زمینهٔ کدنویسی دارند کمک بگیرید.

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

همچنین هرگز انتقادات دیگران از کدهایتان را به خودتان نگیرید! کدنویسی یک هنر است؛ هنگامی که کسی مشکلات و کاستی‌های سازهٔ هنری شما را بیان می‌کند، تحمل آن شاید کمی ناخوشایند باشد اما به یاد داشته باشید که ارزیابی کد از بهترین روش‌های موجود برای یادگیری سریع‌تر و دراز مدت است.

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