یک عاشق برنامه نویسی

در این سایت از آموزش ها و تجربیات شخصی قرار خواهم داد و مطمئنا این نکات و تجربیات ب درد خیلیا میخوره :)

یک عاشق برنامه نویسی

در این سایت از آموزش ها و تجربیات شخصی قرار خواهم داد و مطمئنا این نکات و تجربیات ب درد خیلیا میخوره :)

سلام خوش آمدید

۳ مطلب با کلمه‌ی کلیدی «شروع برنامه نویسی» ثبت شده است

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

 

در این نوشته بطور خلاصه مورد های زیر را نوشته ام :

  • برنامه نویسی چیست و برنامه نویس کیست ؟
  • یادگیری برنامه نویسی را از کجا شروع کنیم ؟
  • چطور وارد بازار کار برنامه نویسی شویم ؟ مقایسه حقوق برنامه نویسی و ...
  • مزایای برنامه نویسی نسبت به دیگر شغل ها چیست ؟


برنامه نویسی چیست و برنامه نویس کیست ؟


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

 

برنامه نویسی چیست و چطور برنامه نویسی یاد بگیریم

 

یک مثال ساده :

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

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

برنامه نویس کسی هست که مهارت کدنویسی را یاد میگیره و این کدها را مینویسه تا کامپیوتر متوجه شه چیکار باید بکنه ، تمام اینها رو هم جمع شده و یک محصول نهایی تولید میشود.

برای نوشتن یک سایت فروشگاهی ممکن است نیاز باشه شما چند هزار خط کد بنویسید

یا برای نوشتن یه اپلیکیشن خدماتی ممکنه نیاز باشه شما هزار خط کد بنویسید

کدها به زبان برنامه نویسی نوشته میشن که هر حیطه ای زبان برنامه نویسی مخصوص خودش را داره

 

برای شروع و آشنایی اسم چند زبان برنامه نویسی را در زیر اورده ام که بهتر است در ذهن داشته باشید :

  • سی پلاس پلاس
  • پایتون
  • کاتلین
  • پی اچ پی
  • جاوا
  • جاوااسکریپت
  • سی شارپ

 

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

  1. برنامه نویسی وب
  2. برنامه نویسی موبایل
  3. بازیسازی
  4. هوش مصنوعی
  5. هک و امنیت
  6. برنامه نویسی نرم افزار دسکتاپ
  7. علوم داده
  8. برنامه نویسی میکروپروسسور و رباتیک
  9. برنامه نویسی شبکه
  10. و ...

برای اینکه بفهمید دقیقا چه زبانی مناسب کدام حیطه ی برنامه نویسی است ویدیو زیر را ببینید

 

کدام زبان برنامه نویسی مناسب کدام حوزه هست ؟ بررسی همه ی زبان ها

 

بعد از دیدن ویدیو بالا شما میدونید که کدوم زبان یا زبان ها را باید انتخاب کنید بعد باید برید سراغ یادگیری همون زبان ها و کم کم تخصص اون حوزه را کسب کنید.

 

یادگیری برنامه نویسی را از کجا شروع کنیم ؟


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

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

و اینکه بهتر است ویدیو زیر را هم ببینید :

برنامه نویسی رو از کجا شروع کنم

 

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

در ادامه ی مسیر برنامه نویسی بهتر است در اجتماع برنامه نویسان باشید و انجمن های مختلف برنامه نویسی شرکت کنید مثل انجمن استک اورفلو ( stackoverflow ) و ...

کلید موفقیت در برنامه نویسی به نظر من استمرار است استمرار در هرچیزی استمرار در یادگیری استمرار در کار کردن استمرار در حل مسائل و مشکلات و ... باعث میشود که نتیجه ی کار برای شما راضی کننده باشد.

شرکت در دوره ی آموزشی جامع و کامل در ابتدای کار خیلی مهمه و خیلی شما را جلو میندازه پس دنبال یک دوره ی آموزشی خوبی باشید تا با استفاده از آن بتوانید وارد دنیای برنامه نویسی باشید البته دوره ای که برای شروع انتخاب میکنید بهتر است شامل مبانی برنامه نویسی هم باشه مثل دوره ی ۱۲ قدم شروع برنامه نویسی که برای خود من در شروع برنامه نویسی عالی بوده.

 

چطور وارد بازار کار برنامه نویسی شویم ؟ بررسی حقوق و مزایا


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

 

راهنمای شروع یادگیری برنامه نویسی

 

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

 

بصورت کلی شغل های برنامه نویسی دو دسته ان :

  1. دورکاری
  2. حضوری


برنامه نویسی شغلیه که تو اینترنت هست و بخاطر همین تمایل به دورکاری داخلش زیاده و بخاطر همین مهم نیس شما کدوم شهر یا منطقه زندگی کنین به راحتی میتونید شغلی داشته باشین و کسب درآمد کنین کافیه یه لپتاپ داشته باشید و یه اینترنت

بعضیا که برنامه نویسیو شروع میکنن ، نمیتونند پروژه بگیرند این به معنی این نیست که پروژه نباشه ، مشکل اینه که نمیدونند چطوری باید پروژه رو بگیرن !

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

مدت کارآموزی بین سه تا شش ماهه و معمولا هم نباید انتظار حقوق یا مزایا از سمت مدیر اون شرکت داشته باشین

بعد از طی کردن این مدت زمان بازار کار تقریبا دستتون میاد و بصورت دورکاری هم خیلی راحت میتونین کار کنین

 

برنامه نویسانی که بتونن از تخصص خود برای ایجاد کسب و کار شخصی خودشون استفاده کنن و اونو به درآمد برسونن از همه جلوتر هستن و درآمد بیشتری ام دارن ، سعی کنید تو این دسته بندی باشید


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

از نظر درآمد شاید پزشکی ابتدا بهتر باشه چون برای یه متخصص خوب همیشه کار و پول هست ولی برای برنامه نویس مبتدی ممکنه اولش هیچ درآمدی نباشه و باید مدت ها روی مهارت هاش کار کنه ولی اگه برنامه نویس پروژه هاشو عملی بکنه به نظرم درآمدش بعدا خیلی بیشتر از یه متخصص خواهد بود.

شخصیو میشناسم که اپلیکیشن مینویسه و در مارکت کافه بازار منتشر میکنه میزان درآمدش در ماه بین 200 تا 300 میلیون تومان متغیره

شخصی ام هست که استخدام یک شرکت استارتاپی هست بعنوان برنامه نویس لاراول و ماهانه حقوق ثابت 60 میلیون تومان میگیره

قطعا میانگین حقوق برنامه نویسی رو میتونید موارد بالا در نظر داشته باشید ولی خب میتونید مبالغ بیشتری ام کسب کنید و این بستگی به هوش و ذکاوت خودتون داره

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

حقوق برنامه نویسی در ایران چقدر است ؟

میانگین حقوق یک برنامه نویس در کشور ایران چقدر میباشد ؟

 

خب حالا که به انتهای این نوشته رسیدی میخام ببینم قصد داری برنامه نویس بشی یا نه ؟ دنیای برنامه نویسی رشته ای آینده داره ، هر روز به تعداد افرادی که از تکنولوژی استفاده میکنن اضافه میشه

تا حالا دیدید مثلا تعداد گوشی هایی که فروش میره کمتر بشه

یا تعداد کاربرای اینترنت کم بشه ؟

این آمارها همیشه در حال بیشتر شدنه چون جهان در حال حرکت به سمت تکنولوژیه و این تکنولوژی رو برنامه نویسا میسازن

 

منبع این مقاله 

 

  • ۰ نظر
  • ۰۳ شهریور ۰۳ ، ۱۶:۳۷
  • مریم افتخاری

سلام دوستان! اگر می‌خواهید یک توسعه‌دهنده بهتر شوید و به دنبال چند نکته کاربردی هستید، جای درستی آمده‌اید. در گذشته نقشه‌های راه زیادی را مثل نقشه راه توسعه‌دهنده جاوا در سال ۲۰۲۴، نقشه راه توسعه‌دهنده وب، نقشه راه مهندس DevOps، و نقشه راه توسعه‌دهنده React.js را به اشتراک گذاشته‌ام. در این مقاله قصد دارم چند نکته عملی برای تبدیل شدن به یک توسعه‌دهنده بهتر و همه‌جانبه در سال ۲۰۲۴ با شما به اشتراک بگذارم.

بسیاری از توسعه‌دهندگان جاوا از من می‌پرسند چطور می‌توانم یک برنامه‌نویس بهتر شوم؟ چطور می‌توانم مهارت‌های برنامه‌نویسی خود را ارتقا دهم؟ یا مثلاً می‌گویند من در جاوا خوب هستم ولی توانایی حل مسئله من چندان قوی نیست و غیره.

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

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

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

 

10 نکته برای تبدیل شدن به یک برنامه‌نویس و توسعه‌دهنده نرم‌افزار بهتر در سال 2024

برای اینکه یک برنامه‌نویس بهتر شوید، باید در زمینه‌هایی مثل ساختار داده‌ها، الگوریتم‌ها، طراحی با استفاده از اصول شیءگرایی (OOP)، چندنخی (multi-threading)، و مفاهیم مختلف برنامه‌نویسی مثل بازگشت (Recursion)، تقسیم و غلبه (divide and conquer)، نمونه‌سازی (prototyping) و تست واحد (unit testing) مهارت داشته باشید. برنامه‌نویسی ترکیبی از مهارت‌های مختلف است، بنابراین نمی‌توان آن را در زمان کوتاهی یاد گرفت؛ بلکه با گذشت زمان و کسب تجربه به دست می‌آید، اما این اتفاق خود به خود نمی‌افتد.

شما می‌توانید پنج سال در شغل برنامه‌نویسی جاوا کار کنید بدون اینکه تبدیل به یک برنامه‌نویس خوب شوید. چون بیشتر مصاحبه‌های شغلی جاوا بر تئوری تمرکز دارند نه بر مهارت‌های برنامه‌نویسی و کدنویسی.

بسیاری از برنامه‌نویسان این مهارت‌های ضروری برنامه‌نویسی را تمرین نمی‌کنند. اگر تست حل مسئله برنامه‌نویسی به عنوان یک الزام بود، مطمئنم که برنامه‌نویسان متوسط عملکرد بهتری داشتند. به هر حال، این لیست من از چیزهایی است که می‌تواند به شما کمک کند تا یک برنامه‌نویس خوب شوید.

 

1 - کدنویسی کدنویسی کدنویسی

چرا کدنویسی را در بالای این فهرست قرار داده‌ام؟ چون این بخش هم دشوارترین و هم اصلی‌ترین بخش برنامه‌نویسی است.

با کدنویسی، شما به اشتباهات خود در طراحی، مدیریت خطاها، و چندنخی (threading) پی می‌برید و سپس به آن مهارت‌ها بازمی‌گردید تا آنها را بهبود دهید. شما نمی‌توانید تنها بر روی طراحی کار کنید؛ کدنویسی خروجی ایجاد می‌کند که برای یادگیری و موفقیت حیاتی است.

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

همچنین می‌توانید دوره "Clean Code" توسط Maximillian Schwarzmuller برای توسعه‌دهندگان جاوا اسکریپت و دوره "Clean Code with Java: Learn Simple Design, Refactoring & TDD" برای توسعه‌دهندگان جاوا را بررسی کنید تا بیشتر در مورد نوشتن کدی با کیفیت تولیدی که بتواند در برابر گذر زمان مقاوم باشد، یاد بگیرید.

 

2- کتاب بخوانید

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

اینجاست که کتاب‌ها به کمک می‌آیند؛ بیشتر اوقات، نویسندگان خودشان برنامه‌نویسان بزرگی هستند و تجربه‌شان را به شکل کتاب ارائه می‌دهند. من کتاب‌ها را دوست دارم، اما یکی از کتاب‌هایی که به طور خاص به من کمک کرد، کتاب "Clean Code" اثر عمو باب بود.

 

کتاب clean code برای یادگیری برنامه نویسی

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

کتاب دیگری که مشابه این است، Effective Java نوشته جاشوا بلاچ است که پر از توصیه‌های خوب است. همچنین با خواندن کتاب‌ها، از تجربه دیگران یاد می‌گیرید، و فقط دو راه برای بهبود خودتان وجود دارد: یا از تجربه خودتان یاد بگیرید (که بسیار محدود است) یا از تجربه دیگران (که نامحدود است).

کتاب برای تقویت مهارت برنامه نویسی

 

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

 

3- تمرین مسائل مربوط به ساختار داده‌ها، الگوریتم‌ها و طراحی سیستم


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

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

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

می‌توانید در یک دوره جامع مثل "Data Structure and Algorithms: Deep Dive Using Java" شرکت کنید تا بیشتر با ساختارهای داده‌ای پایه، ویژگی‌های آنها و زمان استفاده از آنها در برنامه‌های خود آشنا شوید. این یکی از بهترین دوره‌هایی است که من در اینترنت پیدا کرده‌ام.

آموزش تقویت مهارت برنامه نویسی

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

یکی دیگر از موارد مهم برای تبدیل شدن به یک توسعه‌دهنده بهتر، یادگیری طراحی سیستم و معماری نرم‌افزار است. این چیزی است که می‌تواند تفاوت بین یک برنامه‌نویس با ۱۰ سال تجربه و یک برنامه‌نویس باتجربه را ایجاد کند.

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

اگر به منابعی نیاز دارید، من دوره "Grokking System Design Interview" را در وب‌سایت Educative به شدت توصیه می‌کنم. این دوره تعاملی و بخش دوم آن که درباره مسائل پیشرفته طراحی است، می‌تواند چیزهای مفیدی درباره طراحی و بهینه‌سازی سیستم به شما بیاموزد.

 

4- مشارکت در پروژه‌های اوپن سورس


مشارکت در کدهای متن‌باز، به‌ویژه از پروژه‌هایی مانند Apache، Google و برخی پروژه‌های دیگر، روش دیگری برای بهبود مهارت‌های برنامه‌نویسی و تبدیل شدن به یک برنامه‌نویس بهتر است. تنها عضویت در فهرست پستی آنها و دنبال کردن بحث‌ها، به شما چیزهای زیادی می‌آموزد.

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

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

 

5- خواندن وبلاگ‌های خوب درباره ی برنامه نویسی


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

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

بارها پیش آمده که در یک پست وبلاگی کوتاه، نکات ظریف یا چیزهایی را از بخشی شناخته‌شده از جاوا که ممکن است از قلم افتاده باشد، دیده‌ام. وقتی به دنبال مقالات خوب توسعه هستم، ترجیح می‌دهم به وب‌سایت‌هایی مثل Dev.to، FreeCodeCamp و Medium، به‌ویژه نشریات متمرکز بر توسعه‌دهندگان، مراجعه کنم.

 

6- خواندن نمونه کدها


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

به کد پروژه‌های متن‌باز، کد برنامه‌نویسان همکار، کدهای موجود در کدهای اختصاصی خود، کدهای SDK جاوا نگاه کنید و سعی کنید بفهمید چگونه کار می‌کنند؛ سعی کنید ببینید آنها چه کارهایی انجام می‌دهند و چرا این کارها را انجام می‌دهند.

الگوها را پیدا کنید، مهارت‌های ناوبری را توسعه دهید؛ در ابتدا ممکن است این کار خسته‌کننده و دشوار به نظر برسد، اما با گذشت زمان حس کد خوبی پیدا خواهید کرد که به شما در شناسایی اشتباهات خود، پیدا کردن اشتباهات و کاستی‌ها و بوی بد کد کمک می‌کند.

این حس کد یکی از نشانه‌های یک برنامه‌نویس بهتر است؛ آنها معمولاً به دنبال چیزهایی هستند که شما از دست داده‌اید.

 

7- نوشتن تست‌های واحد


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

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

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

اگر می‌خواهید تست واحد را در جاوا یاد بگیرید، پیشنهاد می‌کنم با JUnit و Mockito آشنا شوید، که دو فریم‌ورک ضروری برای تست واحد در جاوا هستند. و اگر به دوره آموزشی نیاز دارید، پیشنهاد می‌کنم به دوره "JUnit 5 in 20 steps" از Ranga Karnan در Udemy بپیوندید.

 

اگر میخواهید مفاهیم پایه ای برنامه نویسی را بصورت کامل و اصولی درک کنید بهتر است یک دوره مثل دوره ی 12 قدم برنامه نویسی را طی کنید تا بتوانید منطق برنامه نویسی را بخوبی درک کنید.

 

دوره ی مناسب برای شروع برنامه نویسی دوره ی 12 قدم برنامه نویسی

این دوره توسط مهندس سام نیک زاد در آموزشگاه برنامه نویسی آواسام برگزار شده است که با سرچ گوگل به راحتی میتوانید در آن شرکت کنید.

 

8- انجام تست های مختلف کد


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

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

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

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

 

9- صحبت با دیگر برنامه نویسان همکار


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

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

فقط ننشینید و کدنویسی کنید؛ صحبت کنید، گوش دهید، فکر کنید و با برنامه‌نویسان همکار خود وقت بگذرانید. شرکت در رویدادها نیز مفید است. شما ممکن است نکات مفید و تمرین‌هایی برای تبدیل شدن به یک توسعه‌دهنده بهتر شبانه پیدا کنید، مانند این :-)

 

راه های تقویت مهارت برنامه نویسی

 

10- شرکت در StackOverflow و انجمن‌ها، کامنت گذاشتن در وبلاگ‌ها


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

شرکت در StackOverflow، پاسخ دادن به سوالات دیگران، کامنت گذاشتن در وبلاگ‌ها و انجمن‌ها راهی خوب برای مرور دانش و اصلاح تصورات نادرست شماست.

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

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

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

 

 

  • ۰ نظر
  • ۰۲ شهریور ۰۳ ، ۰۲:۰۶
  • مریم افتخاری

فرض کنید میخواهیم یک کاری را شروع کنیم مثلا ساختن یک آپارتمان ، آیا امکان دارد بدون اینکه پی ریزی خوبی انجام دهیم دیوارهای مستحکمی را روی آن بنا کنیم؟ قطعا نه ! در شروع آموزش برنامه نویسی نیز یک سری مبانی و مقدمات نیاز هست که بدون یاد گرفتن آنها شما نمیتوانید برنامه نویس خوبی بشید.

 

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

اهمیت الگوریتم در شروع یادگیری برنامه نویسی

الگوریتم در برنامه نویسی چیست ؟

به زبان ساده الگوریتم یعنی انجام کارها بصورت مرحله به مرحله و کاملا مشخص و اگر بخوام مثال بزنم فرض کنیم میخواهیم خانه را رنگ آمیزی کنیم. از زمانی که این تصمیم را میگیریم دقیقا کارهایی که میکنیم به شکل زیر است:

 

  1. رفتن به مغازه رنگ فروشی و خرید رنگ
  2. جمع کردن وسایل خانه
  3. آماده کردن مواد اولیه
  4. شروع کردن به رنگ کردن دیوار شماره 1
  5. اگر دیوار شماره 1 تمام شد برو دیوار 2
  6. بعد از رنگ کامل خانه باز کردن در و پنجره ها برای اینکه رنگ خشک شود

 

خطوط بالا که مرحله به مرحله و بصورت خیلی ساده شیوه ی انجام یک کار را به شما نشان میدهد در کامپیوتر و برنامه نویسی ، الگوریتم نامگذاری شده است.

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

الگوریتم و فلوچارت در برنامه نویسی چیست

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

کمی که جلوتر میرویم میبینیم که بعضی اوقات قرار است ما چیزی بعنوان ورودی و چیزی به عنوان خروجی داشته باشیم همچنین ما میتوانیم شرط گذاری کنیم. به مثال زیر توجه کنید.

 

سوال :

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

جواب : 

1-شروع
2-یک عدد از کاربر دریافت کن
3-باقیمانده عدد بر 2 را حساب کن
4-اگر باقیمانده صفر بود یعنی زوج است برو خط 5 وگرنه عدد فرد است برو خط 6
5-عبارت " عدد زوج است " را چاپ کن و برو خط 2
6-عبارت " عدد فرد است " را چاپ کن
7-پایان

 

همانطور که میبینید در پاسخ به سوال بالا ورودی داریم که یک عدد است و خروجی دو عبارت است که نشان میدهد عدد فرد بوده یا زوج و همچنین شرط گذاری کردیم ( در خط 4 )

 

فلوچارت در برنامه نویسی چیست ؟

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

فلوچارت همون الگوریتم هست ولی بصورت تصویری و با استفاده از چند شکل ساده که هر کدام به منزله ی یک چیز از الگوریتم است که در زیر بهش میپردازیم

 

  • شروع و پایان الگوریتم با شکل دایره یا بیضی است
  • شرط ها با استفاده از شکل لوزی است
  • محاسبات و مقداردهی ها درون مستطیل است
  • دریافت ورودی و نمایش خروجی در داخل متساوی الاضلاع است

فلوچارت در برنامه نویسی چیست ؟

اهمیت فلوچارت در برنامه نویسی خیلی زیاد است اگر شما بصورت تصویری و با اشکال بتوانید شیوه ی حل مسائل کوچک را یاد بگیرید ، ذهن شما آماده ی حل مسائل بزرگتر در آینده خواهد بود.

 

شبه کد چیست ؟

بعد از یادگیری الگوریتم و فلوچارت ، اگر بخواهید آنها را بصورت کدهای برنامه نویسی دربیارید باید برنامه نویسی بلد باشید اما همیشه نیاز نیست شما تخصص برنامه نویسی داشته باشید و شما میتوانید با استفاده از شبه کد الگوریتم یا فلوچارت خود را به کد تبدیل کنید.

شبه کد را میتوانید در لپتاپ یا حتی روی کاغذ بنویسید زیرا هرگز نیاز به اجرا ندارد.

شبه کد که نام انگلیسیش Pseudocode در تقویت یادگیری برنامه نویسی بسیار موثر هست و شما میتوانید نحوه ی نوشتن شبه کد را از دوره های مختلفی یاد بگیرید.

شبه کد در شروع یادگیری برنامه نویسی چیست

 

از چه دوره ی آموزشی برنامه نویسی را شروع کنیم ؟

یکی از بهترین دوره های آموزشی در وب فارسی که من شخصا ازش راضی بودم دوره ی 12 قدم شروع برنامه نویسی با تدریس مهندس سام نیکزاد بود چون برخلاف دیگر دوره ها توش الگوریتم فلوچارت و... کامل پوشش داده شده و کسی که با این دوره شروع میکند بعدا به مشکلات دیگری که مربوط به مبانی باشد برخورد نمیکنه

همچنین تمام مفاهیم بالا درون دوره به زبان برنامه نویسی سی پلاس پلاس هم تدریس میشه

دوره ی آموزش شروع برنامه نویسی با دوره ی 12 قدم برنامه نویسی

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

 

تهیه دوره ی آموزش 12 قدم شروع برنامه نویسی 

 

موفق باشین

 

  • ۰ نظر
  • ۲۶ مرداد ۰۳ ، ۱۷:۴۴
  • مریم افتخاری

در این سایت از آموزش ها و تجربیات شخصی قرار خواهم داد و مطمئنا این نکات و تجربیات ب درد خیلیا میخوره :)