تصمیم به شروع یاد گیری برنامه نویسی برای بسیاری از ما از یک جرقه گرفته شد، شاید دوستمان را دیدیم که یک برنامه را نوشته و ما ناگهان علاقه مند شدیم، یا از موفقیت های یک برنامه نویس شنیده ایم و می خواهیم مثل او شویم لذا شروع به یادگیری برنامه نویسی می کنیم و یا صد ها دلیل دیگر که می تواند نسبت به افراد متغیر باشد، ولی در ذات قضیه یک امر مهم خفته استو آن اینکه، همانطور که ییهو علاقه مند به برنامه نویسی شده ایم ممکن است خیلی ییهوتر از آن بیزار شویم، پس توصیه می کنم به توصیه هایی که در ذیل آمده قبل از شروع برنامه نویسی عمل کنید و اگر در میانه راه هستید می توانید با موارد زیر خود را بسنجید تا ببینید کجا قرار دارید.
در مرحله اول، حتما زبان برنامه نویسی مورد علاقه خود را انتخاب کنید. اگر اطلاعات دقیقی از برنامه نویسی ندارید با پاسخ دادن به سوالات زیر مسیر خود را انتخاب کنید: آیا دوست دارید برنامه هایی که تحت اینترنت اجرا می شوند را بنویسید؟(وبسایت ها) یا برنامه هایی که در سیستم کاربر اجرا می شوند؟
آیا دوست دارید برنامه ها یا سایت هایی که می نویسید حال ایستا داشته باشند یا پویا باشند؟ آیا دوست دارید برنامه هایتان تک کاربره باشد یا چند کاربره؟ آیا می خواهید برنامه های بزرگ سازمانی بنویسید یا برنامه های ساده؟ و …
اول از همه مسیر خود را در مسیر گرایش برنامه نویسی مشخص کنید. می خواهید برای وب بنویسید یا برای سیستم کاربر؟
پیشنهادم برای آنهایی که دوست دارند تحت وب بنویسند : PHP, ASP.Net, Java می باشد. دقت کنید برای شروع برنامه نویسی تحت وب حتما با HTML, Java Script و CSS آشنا باشید. بدون این سه مورد شما یک برنامه نویس حرفه ای تحت وب نخواهید بود. دقت کنید انتخاب PHP انتخاب مناسبی است مادامی که به نوشتن برنامه های تحت وب محدود مبادرت بورزید، PHP می تواند در نوشتن سایت ها یا برنامه های تحت وب پیچیده مشکل ساز باشد.
حال آنکه یاد گیری جاوا در نوع خود کمی مشکل می باشد، ولی سایت هایی که با جاوا نوشته شوند واقعا قابل اعتماد و مستحکم هستند، بعلاوه اینکه دستمزد یک سایت نوشته شده با جاوا به مراتب بسیار بیشتر از سایتی نوشته شده با PHP است. این در حالی است که ASP.NET در میان این دو قرار دارد و از ویژگی های هر دو در خود دارد، هم آسان است و هم پایدار، پس می توانید ASP.Net را هم در لیست علاقه مندی های خود برای برنامه نویسی تحت وب قرار دهید. پروژه های نوشته شده با ASP.net هم به مراتب گران می باشند و می توانند دستمزد خوبی برای برنامه نویس داشته باشند.
ولی دانستن نکات فوق زمانی مفید خواهد بود که شما با یک پایگاه داده استاندارد هم آشنا باشید. انتخاب خیلی از برنامه نویسان خلاصه شده در : Oracle, MySQL و MS SQL Server . البته هسته هر سه زبان SQL می باشد، لذا SQL را یاد بگیرید. توجه به این نکته که یادگیری پایگاه داده خیلی کمتر زمان بر خواهد بود، می توانید ابتدا به یاد گیری آن بپردازید و چون در برنامه نویسی حرفه ای باید با دستورات SQL هم برای تولید برنامه آشنا باشید لذا مفاهیم و دستورات SQL را که بسیار آسان هستند را یاد بگیرید.

حال برای شما که کمی مصمم تر شده اید باید توصیه کنم حتما قبل از ورود به مقوله برنامه نویسی سعی کنید مفاهیم IT را فرا بگیرید. مفاهیم IT با اینکه تاثیر مستقیمی در برنامه نویسی ندارند ولی بدون آنها شما هرگز نخواهید توانست یک پروژه را سالم به هدف برسانید. منظور از این مفاهیم، شامل نحوه عملکرد سرورها، امنیت، نحوه عملکرد مشتریان سایت شما و … می باشد. برای مثال شما باید بدانید که چطور کدهایتان در سرور اجرا خواهند شد و اصلا یک سایت با چه پروسه ای برای کاربر نمایش داده می شود؟ مجموع این دانسته ها را مفاهیم IT می گوییم و شما برای برنامه نویسی یک پروژه کاربردی باید در حد متوسط به بالایی با آنها آشنایی داشته باشید. البته برعکس برنامه نویسی که با کسب تجربه رفته رفته اصولی تر می شود، مفاهیم عمدتا قضیه های ثابتی هستند که می تواند از منابع مختلفی مثل اینترنت با آنها آشنا شوید.
بیشتر بخوانید…
این دیگه یکی از «جاواد» ترین بحث های وبلاگستان هست که بیای بشینی خاکستر روی زغال جنگ جاوا و Net. رو فوت کنی دوباره شعله بگیره. با اینکه من خودم رو یک Net. کار می دونم و در تمام تحلیل های سیستم و نیمچه برنامه هایی که می نویسم صرفا از تکنولوژی Net. استفاده می کنم، ولی یه چیزی اون ته دلم همیشه بهم می گه : «پسر، تو اگه یکم بیشتر جاوا رو دنبال می کردی الان یه جاوا کار حرفه ای بودی». حقیقت اینکه استادی که من جاوا رو با اون شروع کردم نتونست زیاد سطح علمی من رو بالا ببره (اکثر چیزهایی رو که می دونستم تکرار کرد) و این باعث شد من کمی از جاوا زده بشم. البته به اعتقاد خود من Net. خیلی حرفه ای تر و نازتر و خوشگل تر از جاوا هست و با اون پلت فرم مامانش به آدم یه جوری القا می کنه که فقط به کاربردی تر و بهتر کردن نرم افزار بیاندیش تا دست و پنجه نرم کردن با انواع Syntax چرت و پرتای دیگه جاوا.
اینجا من از قابلیت بسیار VS براتون گفتم این در حالی است که اصلا IDEهایی که جاوا در اختیار ما قرار می ده خیلی سطح پائین هستند، بعلاوه اینکه پیچیدگی جاوا فوق العاده زیاد هست، شاید یه برنامه ی ساده دفترچه تلفن رو که تو دات نت با دیتابیس 15 دقیقه نوشتنش طول بکشه، تو جاوا بیشتر از نیم ساعت وقت آدم رو بگیره بعلاوه اینکه در ذات جاوا بعد از نوشتن کد و کامپایل اون به یه سری مشکلات عجیبی و غریبی می رسی که دیگه دمار از روزگار آدم در می آره.
جالب اینجاست، من جاوا رو روی Eclipse کار کردم و یک پلاگینی داشت به نام Jigloo که برای طراحی گرافیکی کلاس های GUI به کار می رفت، شنیدم که این Jigloo رو یکی از اساتیدی که زمانی هم C رو برام تدریس کرده بود تولید کرده و کافی بود شما فقط این پلاگین رو نصب کنید. خدا به داد برنامه نویس برسه وقتی که یک اشتباه ساده در سطح طراحی گرافیکی می کرد، کلی کد تولید می شد، اسامی دلبخواهی رو روی کامپوننت ها می زاشت و واقعا موقع خطایابی یا در اصطلاح Debugging دیگه برنامه نویس … !
این در حالی هست که شما طمع واقعی برنامه نویسی رو حتی با چشمان بسته! تو VS تجربه می کنید. محیط هوشمند، بسیار کاربردی و سرعت بسیار بالای کامپایل به همراه امکانا ت بیشماری که در اختیار برنامه نویس قرار می ده واقعا زیبا هستند. اصلا کد نویسی تو VS بیشتر از چت کردن قدرت تایپ آدم رو بالا می بره، ماشالله اونقدر سریع و دقیق هست که آدم کیف می کنه.
البته اینکه من علاقه مفرط به Net. دارم دلیل برتری این تکنولوژی نیست. در حقیقت باید در مورد جاوا بگم که اولا بازار کار جاوا خیلی بیشتر جذب مهندس می کنه تا Net. البته نه تو ایران! (خوشبختانه). ثانیا پروژه های نوشته شده با جاوا دارای ارزش مادی بیشتری هستند و ثالثا اصلا با جاوا برنامه های ریز تولید نمی کنند، جاوا بیشتر به درد برنامه های تحت شبکه سازمانی می خوره، چون قدرتش خیلی بالاست و از همه مهمتر اینکه مستقل از سیستم عامل هست، یا در واقع همون Platform Independence هست. البته مایکروسافت هم چند تا تکنولوژی معرفی کرده که می تونند با این دست آورد های شرکت Sun که بانی Java هست مقابله کنه.
شاید دوستان اعتراض کنند که بابا! جاوا open source هست، این مهمترین ویژگیش هست! ولی من اصلا open source بودن یک زبان رو دلیلی بر برتری اون نمی بینم. اصلا ببینم خودتون کلاهتون رو قاضی کنید، چطور می شه شکم چند هزار مهندس و نابغه نرم افزار رو تو مایکروسافت سیر نگه داشت؟ با اوپن سورس؟ صد البته نه! مایکروسافت حق داره بخاطر تلاش مهندسینش هزینه دریافت کنه و این به هیچ وجه دلیلی بر ضعفش نیست.

خلاصه ما بر خلاف خیلی از دوستان که خیلی نامرد هستند هیچ بدی از مایکروسافت ندیدیم و خیلی هم خاطرش رو می خوایم با #C اش هم برنامه می نویسیم و با SQL Server اش هم دیتا بیس می سازیم. ای اونهایی که ادعای لینوکسی و اوپن سورسی می کنید کودموتون وقتی تازه کامپیوتر خریده بودید لوگوی ویندوز 98 رو که میدید داره بالا میاد قلبتون به تپش نمی افتاد. ای اونهایی که صدای شروع ویندوزایکس پی رو هرروز با شروعش زیر لب زمزمه می کردید، آیا انصافه که الان اینطوری پشت سر مایکروسافت و ویندوز بدبخت غیبت کنید؟
بیشتر بخوانید…
دستهها:مایکروسافت, دنیای کد باز
برچسبها: .net, developing, java, microsoft, open source, programming, technology, مایکروسافت, نات یت, نرم افزار, ویندوز, اوپن سورس, اس کیو ال, بیل گیتس, برنامه نویسی, تکنولوژی, جاوا, دیتابیس, دات نت, سی شارپ, سان, سان مایکروسیستمز