یک برنامه نویس ساده. https://mostafa-hosseini.me
چگونه یک زبان برنامه نویسی یا یک فریم ورک جدید یاد بگیریم
هر روز زبان های برنامه نویسی جدیدی به بازار عرضه میشوند مثل Dart، Go، Kotlin، Elixir و غیره. یاد گرفتن همه این زبان ها کاری دشواری است اما در این مقاله چند نکته ارائه می شود که به شما در طی روند یادگیری کمک خواهد کرد. مراحلی وجود دارد که می خواهید با گذراندن آنها فرآیند یادگیری خود را تسریع کرده و تسلط خود بر زبان برنامه نویسی یا فریم ورکی که در حال یادگیری آن هستید افزایش دهید.
ابتدا بر زبان برنامه نویسی مسلط شوید سپس شروع به یادگیری فریم ورک ها کنید
برخی از افراد تمایل دارند فریم ورک هایی مثل Ruby را یاد بگیرند اما بدون اینکه دانشی در مورد زبان آن که در اینجا Ruby است کسب کرده باشند. این مشکل بزرگی ایجاد خواهد کرد مخصوصا وقتی که صحبت از Rails به میان باشد که با Ruby نقش یک DSL (زبان مخصوص دامین) را ایفا میکنند.
چالش های کد نویسی را حل کنید
وب سایت های فراوانی مثل LeetCode، HackerRank و ProjectEuler وجود دارند که به شما کمک میکنند تا به تسلط خوبی در زبان های برنامه نویسی برسید. در این وب سایت ها اطلاعات بیشتری در مورد نحوه نگارش کد (Syntax)، کتابخانه ها و منطق کدنویسی به دست خواهید آورد. این بهترین روش برای آماده سازی خود برای یک مصاحبه کاری هم محسوب می شود.
هر چقدر می توانید از وب سایت های Stackoverflow و Code Review استفاده کنید
وقتی شروع به حل کردن چالش های کدنویسی می کنید، با مشکلات متعددی رو به رو خواهید شد. برای حل این مشکلات می توانید از وب سایت stackoverflow استفاده کنید که البته نیازی به معرفی هم ندارد. جامعه برنامه نویسان Code Review هم مانند شبکه stackoverflow است. نکته اصلی در مورد code review این است که کارشناسان و متخصصان زبان برنامه نویسی که با آن کار می کنید یا در حال یادگیری آن هستید کدهای شما را بازبینی می کنند. نگاهی به بخش beginners section آن انداخته و به این جامعه فوق العاده از برنامه نویسان ملحق شوید.
کدهای زیادی را مطالعه کنید
وب سایت github یک مکان فوق العاده برای یادگیری است. در این وب سایت کدهای سازنده زبانی که در حال یادگیری آن هستید را خواهید دید. اگر اعتماد به نفس مشارکت در پروژه ها را داشته باشید به یادگیری بهتر شما کمک خواهد کرد.
یک ابزار Linting نصب کنید
ابزار linting در واقع ابزارهای تحلیل کد هستند که باگ ها، کدهای غیر رایج، خطاهای مربوط به استایل و غیره را مشخص می کند. وقتی این ابزار خطاها را مشخص می کند و مجبور می شوید آنها را رفع کنید در واقع فرآینده یادگیری شما آغاز شده است. برای زبان Ruby می توانید از RuboCop به عنوان یک خطایاب (linter) استفاده کنید.
کدهای رایج استفاده کنید
وقتی من در حال یادگیری زبان پایتون (Pythin) بودم، دانش C# خود را به پایتون منتقل کردم. این یک روش فوق العاده برای یادگیری یک زبان برنامه نویسی جدید است اما برای تسلط بر آن زبان کافی نیست چون نمی توانید روش کدنویسی رایج در آن زبان را یاد بگیرید. برای بیشتر مشخص شدن این قضیه، به کد پایتون زیر نگاه کنید:
و با روش کدنویسی رایج پایتون مقایسه کنید:
برای یادگیری نحوه کدنویسی رایج در هر زبان باید کدهای زیادی که توسط افراد حرفه ای نوشته شده اند را مطالعه کنید
یک برنامه بسازید
این یک روش عالی و سرگرم کننده است. هدف اصلی یادگیری یک زبان برنامه نویسی هم ساختن یک برنامه است. وقتی من داشتم زبان Ruby را یاد می گرفتم از فریم ورک rails برای ساختن یک وبلاگ، یک اپلیکیشن todo، شبیه ساز ویکی پدیا و یک وب سایت به نام rotton tomatoes ساختم. ساختن برنامه باعث بهبود یافتن و تکامل تمام جنبه های یادگیری شما خواهد شد.
تسلیم نشوید
یادگیری و شکست دادن مراحل سخت آن کاری طاقت فرسا است. باید زمان بگذارید و تمرکز کنید تا یادگیری خود را کامل کنید. تسلیم نشوید چون شاید از آن چیزی که فکر می کنید به یادگیری کامل نزدیک تر باشید. اگر در جایی از مراحل یادگیری خود گیر کرده اید از کسی کمک بگیرید. منابع زیادی برای یادگیری وجود دارد.
نکته مهم: اگر حتی مسلط شدید باز هم مطالعه کنید
من برنامه نویسی را می شناسم که هنوز هم بعد از بیست سال به مطالعه C# می پردازد و هنوز هم هر روز نکته جدیدی در مورد C# و .NET کشف می کند. این فرد آنتونیو مانیرو است که موثرترین عضو جامعه stackoverflow در پرتغال می باشد. حقیقت این است که ما هیچ وقت همه چیز را در مورد یک زبان یاد نمیگیریم و به همین دلیل است که هر روز بیشتر و بیشتر به یادگیری و مطالعه می پردازیم. شما می توانید در یک زبان یا فریم ورک به دانش خوبی برسید و به عنوان یک مرجع شناخته شوید اما همیشه چیزهای بیشتری برای یادگیری وجود خواهد داشت.
مطلبی دیگر از این انتشارات
چطوری برنامه نویسی رو بهتر یاد بگیریم؟!
مطلبی دیگر از این انتشارات
چرا باید تایپ ده انگشتی یاد بگیریم ؟
مطلبی دیگر از این انتشارات
Dependency Injection (DI)