زمانی که می‌خواهید چیز جدیدی را مانند کتابخانه ReactJS یاد بگیرید، مهمترین کار انجام دادن تمرین‌های کاربردی است. در این مطلب قصد داریم تمرین‌ها و ایده‌هایی برای ساختن پروژه را بررسی کنیم.

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

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

در واقع زمانی که شما مفاهیم اصلی مانند نحوه کار Stateها یا انتقال اطلاعات بوسیله Props در ReactJS را به درستی متوجه نشوید، در توسعه نرم افزار دچار مشکل خواهید شد. قطعا برای درک بهتر این مفاهیم، باید تمرین‌های بیشتری را انجام داد.

با جست و جو در اینترنت می‌توانید لیستی از پروژه‌های پیشنهادی که می‌توان با ReactJS پیاده سازی کرد را پیدا کنید. اما شاید موضوع‌های جذابی برای شما نباشند یا مهارت‌هایی که شما تصمیم دارید یاد بگیرید را شامل نشوند.

بنابراین چگونه می‌توانیم ایده یک پروژه را مطرح کنیم؟

انتخاب تکنولوژی‌های اصلی

در ابتدا باید هدف اصلی مشخص شود. به عنوان مثال کدام تکنولوژی‌ها را می‌خواهیم یاد بگیریم. ReactJS، Redux، NodeJS یا هر ابزار دیگری. نکته مهم این است که نباید به صورت همزمان روی طراحی، تجربه کاربری و توسعه محصول باهم کار کرد. باید تمرکز ما بر روی یک موضوع خاص باشد. دقیقا موضوعی که مربوط به مهارت اصلی ما می‌شود.

به عنوان مثال اگر می‌خواهید ReactJS را یاد بگیرید، در ابتدا باید فقط روی خود این کتابخانه تمرکز کنید. فعلا نیازی به درک مفاهیم Redux یا SSR نیست.
یا زمانی که می‌خواهید Redux را یاد بگیرید، باید قبل از آن مفاهیم اصلی ReactJS را متوجه شده باشید. می‌توانید یک برنامه ساده با ReactJS بسازید و Redux را به پروژه اضافه کنید. بعد از آن روی مفاهیم پیشرفته‌تر Redux مانند Store، Reducer و Thunks تمرکز کنید.
اگر می خواهید NodeJS را یاد بگیرید، مطمئن شوید که جاوااسکریپت را کاملا متوجه شده‌اید. برای تسلط بر جاوااسکریپت، دوره جامع و پیشرفته جاوااسکریپت و مستندات وب‌سایت MDN را پیشنهاد می‌کنیم. سپس می‌توانید با استفاده از چهارچوب Express یک برنامه ساده بسازید. Express به شما کمک می‌کند تا یک برنامه استاندارد داشته باشید.

در دوره جامع MERN Stack با استفاده از تکنولوژی‌های ReactJS و NodeJS یک شبکه اجتماعی را توسعه داده‌ایم. در طول این دوره تلاش می‌کنیم تا ارتباط این دو باهم به عنوان قسمت‌های بک‌اند و فرانت‌اند یک نرم افزار را کامل درک کنیم.

ساده سازی و به حداقل رساندن

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

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

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

ایده‌هایی برای ساختن پروژه

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

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

در این جا لیستی از ایده‌ها را داریم. شما هم سعی کنید ایده‌های خودتان را پیشنهاد کنید.

سعی کنید در پروژه خودتان حتما از API استفاده کنید. در این صورت پروژه شما کاربردی‌تر خواهد بود.

 بعد از پیدا کردن یک موضوع خوب، تنها کار باقی مانده پیاده سازی نمونه اولیه است. اولین نسخه نرم افزار شما نیاز نیست به بهترین شکل کار کند. کافی است نسخه اولیه را منتشر کنید، زمانی که کاربران از این نرم افزار استفاده کنند، با استفاده از نظرات آنها می‌توانید نرم افزار را بهتر توسعه دهید. همین طور قابلیت‌هایی که واقعا لازم هستند به آن اضافه کنید.