تاکنون مقالات متعددی حول موفقیت در کدنویسی منتشر نمودهایم اما در این مقاله سعی داریم توصیههایی را مطرح کنیم که هرچند کمی عجیبوغریب به نظر میرسند، اما این در حالی است که میتوانند مهارتهای کدنویسی شما را از جنبههای دیگری ارتقاء دهند (لازم به ذکر است که این توصیهها به منزلۀ تمرینهایی هستند که نیاز به صرف زمان و دقت دارند؛ بنابراین از انجام آنها در پروژههایی که فرصت محدودی برای تحویل آنها در اختیار دارید خودداری نموده و تنها در پروژههای شخصی و یا در اوقات فراغت به این تمرینات بپردازید.)
فریمورک اختصاصی خود را بنویسید!
امروزه در اکثر پروژهها از فریمورکهای آمادهای از قبیل لاراول، ریئکت نِیتیو و ... استفاده میشود. هرچند ممکن است نوشتن یک فریمورک ساعتها، روزها و حتی ماهها زمان ببرد، اما برای تمرین هم که شده بهتر است استفاده از فریمورکهای آماده را برای مدتی کنار بگذارید و فریمورکی مطابق با نیازهای خود بنویسید. واقعیت امر آن است که شاید فریمورکی که مینویسید را هرگز در پروژههای واقعی به کار نبرید و شاید در نوشتن آن عملکرد بسیار ضعیفی داشته باشید، اما در نهایت چیزهایی یاد خواهید گرفت که مسلماً ارزشش را خواهد داشت.
برای این منظور، میتوانید کار را با نوشتن یک فریمورک کوچک جاوااسکریپت با چند ماژول محدود شروع کنید. همچنین میتوانید این تمرین را به عنوان یک پروژۀ ادامهدار در نظر گرفته و هر زمان که وقت آزاد داشتید یا چیز جدیدی آموختید، به بهبود و توسعهٔ فریمورک خود بپردازید (در همین راستا، توصیه میکنیم به مقالهٔ مزایا و معایب استفاده از یک Framework در توسعهٔ نرمافزار مراجعه نمایید.)
از ابزارهای توسعه استفاده نکنید!
امروزه توسعهدهندگان از ابزارهایی استفاده میکنند که کدنویسی را برای آنها سریعتر و راحتتر میکند. به عنوان مثال، در کدنویسی فرانتاند با CSS ابزارایی مانند Developer Tools مرورگرهایی همچون گوگل کروم به کمک دولوپرها میآیند.
برای اینکه بتوانید مهارت واقعی خود را در کدنویسی و دیباگ کردن کدها ارتقاء دهید، استفاده از این ابزارها را موقتاً کنار بگذارید. بدون شک با این کار سرعت شما در کدنویسی و دیباگ کردن کدها بسیار کم خواهد شد؛ اما در عوض بر ساختار کدها تسلط بیشتری خواهید یافت و در آینده اشتباهات کمتری مرتکب خواهید شد.
از مرورگر استفاده نکنید!
مگر میشود وبسایتی را بدون تست کردن در محیط نمایش آن توسعه داد! همانطور که از عنوان این مقاله مشخص است، توصیههای ارائه شده قرار است که عجیبوغریب باشند. روند معمول این است که مثلاً در حین توسعۀ یک وبسایت، پس از هر مرحله آن را در مرورگر بررسی نموده و عیوب آن را مجدداً در ادیتور برطرف مینمایند؛ اما توصیۀ ما به شما این است که مرورگر را کنار بگذارید و سعی کنید صفحهٔ وب را بدون چک کردن آن در مرورگر کامل کنید و پس از اینکه کار را به پایان رساندید، نتیجۀ نهایی را در مرورگر ببینید.
این تمرین باعث میشود تا در تمام مدت حواس خود را جمع کنید و مطمئن شوید که خط به خط کدها را درست و اصولی نوشتهاید. همچنین با این کار مجبور خواهید شد تا خروجی کدهایی که مینویسید را در ذهن خود مجسم کنید. اگر بتوانید نتیجهٔ هر کدی که مینویسید را تجسم نمایید، یعنی توانستهاید آنها را کاملاً درک کنید. مهم نیست چند بار اول که این تمرین را انجام میدهید چه نتیجهای میگیرید، این تمرین به مرور باعث میشود تا به کدهایی که مینویسید بیشتر دقت کنید و در نهایت درک شما نسبت به کدها را افزایش میدهد.
از هِلپرها استفاده نکنید!
وقتی در حال تایپ کردن کدها هستید، ابزارهای کمکی یا هِلپرها میتوانند با در اختیار گذاشتن لیستی از کدهای تکمیلی مورد نظر، شما را از تایپ کردن ادامۀ دستور به صورت دستی بینیاز کنند. درست است که این ابزارها مفید هستند و سرعت کدنویسی شما را بالا میبرند، اما استفاده نکردن از آنها نیز منافعی دارد؛ در واقع، اگر وقت بگذارید و کد مورد نظر خود را به طور کامل با دست تایپ کنید، خود به خود با بخشهای مختلف زبان مد نظر و سینتکس آن آشنا شده و در نهایت درک و تسلط بهتری نسبت به زبان پیدا خواهید کرد.
مثالهای سورس آموزشی را خودتان تایپ کنید!
امروزه تقریباً همراه با همۀ کتابهای آموزش کدنویسی، یک آرشیو از سورسکد شامل مثالهای کتاب به صورت فایلی برای دانلود و یا به صورت یک سیدی در اختیار خریدار قرار میگیرد. در اختیار قرار دادن مثالها، خیلی خوب است اما انتظار ندارید که با کپی/پیست کردن آنها، کدنویسی یاد بگیرید؟
آرشیو کدها را فراموش کنید و مثالهای کتابی را که میخوانید، خودتان تایپ کنید و سپس چیزی که نوشتهاید را امتحان کنید تا مطمئن شوید درست کار میکند. وقتی کدها را شخصاٌ تایپ میکنید، به احتمال خیلی زیاد در بخشهایی از آن دچار اشتباه شده و با ارورهایی مواجه میشوید و این خیلی خوب است چرا که شما را وادار خواهد کرد تا کلمه به کلمۀ کدها را با کتاب چک کنید و این کار باعث افزایش دقت و تسلط شما خواهد شد.
اشتباه کردن در هنگام یادگیری باعث میشود با روشهای دیباگ کردن کدها که معمولاً در منابع آموزشی مطرح شده است نیز به صورت عملی آشنا شوید؛ در حالی که اگر مثالها را کپی/پیست میکردید، مشکلی پیش نمیآمد، کدها کاملاً درست کار میکردند و دیباگ نمودن کدهایی که درست کار میکنند عملاً بیمعنا بود.
از سادهترین ادیتوری که در اختیار دارید استفاده کنید!
اگر میخواهید ذهن خود را وادار به تمرکز و نگهداری نکات بیشتر کنید، بهتر است ویراشگرهایی که دستورات را برای شما کامل نموده یا ایرادات احتمالی را برای شما نمایش میدهند فراموش کرده و به جای آن از ویرایشگر سادهای مانند نوتپد ویندوز، جیادیت لینوکس و یا تکستمیت مکینتاش استفاده کنید. کار دشواری است اما با این تمرین، به تدریج ذهن شما فعالتر شده و کدهای بیشتری را در خود نگاه خواهد داشت. از طرف دیگر، با تمرین بیشتر، عیبیابی و دیباگ نمودن کدها نیز برای شما سادهتر خواهد شد.
چرخ را دوباره اختراع کنید!
هرچند ممکن است پروژهای که مشغول کار بر روی آن هستید قبلاً میلیونها بار نوشته شده باشد (این پروژه میتواند چیزی مانند گالری عکس، اسلایدر و یا هر چیز تکراری دیگری باشد) اما سعی کنید آن را دوباره بنویسید. شاید نوشتن کدهایی که قبلاً نوشته شدهاند به نظر خیلیها بیمورد و یا حتی احمقانه باشد؛ اما یک لحظه در مورد نحوهٔ عمکرد مثلاً یک گالری تصاویر در جاوااسکریپت فکر کنید. آیا واقعاً میدانید هر کدام از قابلیتهای چنین پلاگینی را چگونه باید نوشت (که اگر نمیدانید، پس نمیتوانید ادعا کنید که نیازی به دوباره نوشتن آنها ندارید.)
سخن پایانی
همانطور که در ابتدای مقاله گفتیم، این توصیهها برای استفاده در پروژههای مهم و فوری نیستند بلکه تمرینهایی هستند که نیاز به صرف وقت و دقت کافی داشته و مناسب اوقات فراغت و پروژههای شخصی هستند. این تمرینها دقت، تمرکز، حافظه و در نهایت مهارت شما را در کدنویسی بهبود بخشیده و در طولانی مدت موجب موفقیت حرفهای شما خواهند شد.
دیدگاه شما چیست؟ تا به حال هیچیک از این تمرینها را انجام داده و نتیجهای گرفتهاید؟ روشهای عجیبوغریب دیگری سراغ دارید که بتوانند مهارتهای کدنویسی را بهبود دهند؟ نظرات، دیدگاهها و تجربیات خود را با سایر کاربران سکان آکادمی به اشتراک بگذارید.