برنامه نويسي را از كجا شروع كنيم؟ مسير يادگيري برنامه نويسي
اگر قصد ورود به دنياي برنامه نويسي را داريد سوالاتي از قبيل برنامه نويسي را از كجا شروع كنيم، چگونه برنامه نويس شويم، مسير يادگيري برنامه نويسي چيست، با چه دوره اي برنامه نويسي را شروع كنيم؟ گرايش هاي مختلف برنامه نويسي چه چيزهايي هستند؟ تفاوت برنامه نويسي موبايل و دسكتاپ در چيست؟ تفاوت برنامه نويسي موبايل و وب در چيست؟ تفاوت طراحي وب و برنامه نويسي وب در چيست ذهن شما را درگير كرده! در اين مطلب قصد داريم پاسخ شما به اين سوالات رو بديم و بگيم چجوري بايد وارد دنياي برنامه نويسي بشيم و بهترين مسير يادگيري برنامه نويسي چيه؟
يكي از مشاغل پر درآمد و البته بسيار پر طرفدار در ميان فارغ التحصيلان رشته هاي مرتبط با فناوري و البته ساير رشته ها، برنامه نويسي هست. تمام اين فراد قبل از ورود به دنياي برنامه نويسي، سوالات زيادي در ذهن خود دارند، سوالاتي مانند اينكه برنامه نويسي رو از كجا شروع كنم؟ بهترين زبان برنامه نويسي چه زباني هست؟
چقدر بايد براي يادگيري برنامه نويسي زمان بزاريم و سوالاتي از اين قبيل. خيلي از دوستان و اطرافيان اين سوال رو از من ميپرسن كه كار تو دقيقاً چي هست يا براي برنامه نويس شدن از كجا بايد شروع كنيم؟ در اين مطلب قصد دارم تا تجربه هاي شخصي خودم رو كه در طول 12 سال كار برنامه نويسي با اون ها روبرو بودم رو در اختيار دوستان قرار بدم تا شايد به خيلي از اين سوالات جواب داده شود. البته سوالات و ابهامات در اين زمينه بسيار هست، اما سعي مي كنم كه به مهمترين اون ها در اين زمينه اشاره اي داشته باشم.
علاقه و صبر
در اولين قدم بايد مشخص كنيم كه با چه هدفي قصد داريم وارد دنياي برنامه نويسي شويم؟ معمولاً افراد با دو هدف وارد اين حرفه مي شوند، يكي بحث علاقه اي هست كه به موضوع برنامه نويسي دارند و ديگري بحث مالي. همانطور كه در ابتدا گفتم، برنامه نويسي يكي از مشاغل پردرآمد به حساب مي آيد (البته نه به اندازه يك سوپر استار سينما يا يك فوتباليست) و شخصي كه به صورت حرفه اي وارد اين شغل مي شود بعد گذشت مدتي مي تواند به سطح درآمدي بالايي برسد.
اما صرفاً داشتن هدف مالي كافي نيست. طبيعي هست كه هر شخصي براي پيشرفت در هر كاري، قبل از هر چيز بايد نسبت به اون كار علاقه داشته باشد. مخصوصاً كار برنامه نويسي كه نيازمند صبر و حوصله زيادي است و شما به عنوان يك برنامه نويس گاهي بايد چندين ساعت از وقت گرانبهاتون رو براي حل يك مسئله يا نوشتن يك الگوريتم اختصاص بديد.
برنامه نويسي شب و روز نداره، اكثر برنامه نويس ها شب زنده دار هستن (به قول معروف كه من مرد تنهايي شبم :دي). موقعيت هايي پيش مياد كه شايد تو 48 ساعت بيشتر از 5 ساعت نتونيد بخوابيد. پس يادتون باشه، مهمترين موضوع اينه كه به برنامه نويسي علاقه مند باشيد و اين علاقه هست كه توي كار به شما صبر ميده و كمك ميكنه تا بتونيد با بي خوابي ها و مشكلات يك برنامه نويس كنار بياييد.
تعيين مسير
شما در ابتدا بايد مشخص كنيد كه در چه حوزه اي قصد فعاليت داريد، شغل برنامه نويسي به شاخه هاي گوناگوني تقسيم ميشه، از طراحي برنامه هاي سيستمي تا طراحي وب و نوشتن برنامه هاي موبايل، همگي زير شاخه برنامه نويسي قرار دارند. روحيات شما تاثير زيادي در راهي كه انتخاب مي كنيد دارد. اجازه بديد مثالي بزنم، اگر شما به طبيعت و هنر علاقه زيادي داريد، مطمئن باشيد تو زمينه طراحي وب و همينطور طراحي واسط كاربري برنامه ها مي تونيد موفق بشيد.
كد نويسي Back-End (نوشتن كدهاي مربوط به يك برنامه كه توسط كاربر نهايي قابل ديدن نيست)، صبر و حوصله ميخواد، برعكس كار طراحي واسط كاربري و طراحي وب كه بيشتر خلاقيت و هنر در اون حرف اول رو ميزنه. براي مثال، افرادي كه علاقه زيادي به حل مسائل پيچيده دارند تو زمينه برنامه نويسي Back-End و البته برنامه نويسي سيستمي ميتونن موفق باشند، همچنين اين دسته از افراد تو زمينه نوشتن Framework هاي نرم افزاري موفق خواهند بود.
مطالعه دائم
شك نكنيد كه بايد مطالعه داشته باشيد. دنياي برنامه نويسي دائماً در حال تغيير است و سالانه تكنولوژي ها و نسخه هاي جديد از زبان هاي برنامه نويسي به بازار عرضه مي شوند. براي مثال، براي زبان برنامه نويسي سي شارپ تا اين لحظه 6 نسخه عرضه شده و هر نسخه شامل قابليت هاي جديد است. بايد زماني رو براي مطالعه كتاب ها اختصاص بديد و اين زمان هميشگي است. مطالعه دائمي شرط موفقيت شما است.
بايد بتوانيد از منابع موجود در اينترنت به بهترين شكل استفاده كنيد. بالا بردن توانايي جستجو در اينترنت كمك زيادي به پيشرفت شما مي كند. خيلي وقت ها به مشكلاتي برخورد مي كنيد كه تنها راه حل اين مشكلات مراجعه به منابع موجود در اينترنت هست. مقالات زيادي در وب سايت هاي مختلف منتشر مي شوند كه بايد به صورت مكمل در كنار كتاب ها آن ها را مطالعه كنيد.
شخصي كه مطالعه نمي كند مثل آب داخل يك بركه است كه جريان ندارد. سعي كنيد تا حد امكان از منابع به زبان انگليسي استفاده كنيد. (البته ITPRO رو از اين مورد فاكتور بگيريد :دي) خيلي افراد با مطالعه كتاب ها با زبان انگليسي مشكل دارند، اما در صورت اتمام يك كتاب، مطالعه كتاب هاي بعدي براي شما خيلي راحت مي شود. اكثر منابعي كه به زبان فارسي وجود دارند به دليل وجود اشتباه در ترجمه يا حتي زياده روي در ترجمه تنها باعث سردرگمي شما مي شوند.
انتخاب زبان درست
خيلي از افراد در انتخاب زبان برنامه نويسي دچار مشكل مي شوند. اينكه چه زباني را انتخاب كنيد كه مبتني بر علايق شما باشد بسيار مهم است. همانطور كه گفتيم شاخه برنامه نويسي به زير شاخه هاي بسياري تقسيم مي شود، مانند Desktop Application و Web Application يا برنامه هاي موبايل و همچنين برنامه هاي تحت وب. هر يك از اين شاخه ها نيازمند يادگيري يك يا چند زبان برنامه نويسي هستند.
- برنامه نويسي موبايل : برنامه هاي موبايل مبتني بر چندين پلاتفرم مختلف نوشته مي شوند. براي مثال براي Android شما مي بايست حتماً زبان برنامه نويسي جاوا را ياد بگيريد. نوشتن برنامه هاي Android شديداً وابسته به زبان جاوا هستند. البته فرم ورك هاي ديگري نيز وجود دارند مانند Ionic يا Apache Cordova و همينطور Xamarin كه بوسيله آن ها مي توانيد برنامه هايي براي Android بنويسيد.اما برنامه هاي Android به صورت مستقيم با زبان جاوا نوشته مي شوند كه اصطلاحاً به آن ها برنامه هاي Native مي گويند. براي برنامه هاي IOS، شما بايد با Swift كه رابطه مستقيمي با زبان Objective-C دارد آشنا باشد. يا براي برنامه هاي Windows Phone امكان نوشتن برنامه ها با زبان سي شارپ يا HTML و CSS و JavaScript وجود دارد.
- برنامه نويسي وب : اگر قصد داريد كار برنامه نويسي وب انجام دهيد ابتدا بايد مشخص كنيد كه از چه تكنولوژي مي خواهيد استفاده كنيد. معروف ترين ها در حوزه برنامه نويسي وب PHP و ASP.NET هستند، البته تكنولوژي هاي ديگري مانند JSP نيز وجود دارند، اما به انداه PHP و ASP.NET بازار كار ندارند. خيلي ها سر اينكه PHP بهتر است يا ASP.NET دائماً در حال بحث كردن هستند. اما اين نكته رو بگم كه شما چه ASP.NET و چه PHP رو به صورت حرفه اي ياد بگيريد، مي توانيد هر سايتي را طراحي كنيد. در حال حاضر سايت هاي بزرگي وجود دارند كه با PHP نوشته شدند، براي مثال Facebook كاملاً مبتني بر PHP و MySQL مي باشد يا سايت هايي مانند ITPRO و StackOverflow با ASP.NET نوشته شده اند. به نظر شخص خود من، مزيتي كه يادگيري ASP.NET نسبت به PHP دارد اين است كه دست شما براي نوشتن برنامه هاي ديگر مانند Desktop Application باز خواهد بود، زيرا با يادگيري ASP.NET مي بايست زبان سي شارپ را نيز فرا بگيريد. هم PHP و ASP.NET ريشه در زبان سي دارند.در كنار PHP و ASP.NET نيز بايد با HTML و CSS و JavaScript نيز آشنايي داشته باشيد. همچنين شما بايد با بانك هاي اطلاعاتي نيز آشنا شويد، معمولاً برنامه نويسان PHP از بانك MySQL و برنامه نويسان ASP.NET از بانك SQL Server استفاده مي كنند. البته شما در ASP.NET مي توانيد از بانك MySQL استفاده كنيد و بالعكس.تكنولوژي جديد ديگري نيز كه معرفي شده NodeJS مي باشد كه كاملاً مبتني بر JavaScript است و خيلي از برنامه نويسان، NodeJS را انتخاب خود براي برنامه نويسي وب قرار مي دهند و بسيار هم محبوب است.
برچسب: آموزش سي شارپ، آموزش C# ،دوره سي شارپ، دوره آموزشي سي شارپ آمو،زش جاوا، آموزش Java، آموزش زبان برنامه نويسي جاوا، آموزش زبان برنامه نويسي سي شارپ، آموزش جنگو ،دوره آموزشي جنگو،