آرشیو آذر ماه 1398

برنامه نویسی

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

۲۱۵ بازديد

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

 

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

 

فرض کنیم که شما هم می‌خواهید وارد علم و شغل برنامه نویسی شوید و اولین گام‌های آن را بردارید. مطمئنأ پرسشی که برای شما پیش می‌آید این است که از کجا شروع کنیم؟ با ما همراه باشید تا تصمیم گیری را برای شما آسان کنیم.

 

شروع تصمیم گیری 

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

 

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

 

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

 

*دستکاپ

* تحت وب

* موبایل

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

 

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

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

 

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

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

 

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

 

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

 

برنامه نویسی موبایل

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

 

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

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

 

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

*اگر تصمیم شما برنامه نویسی تحت وب است، باید بگوییم که کار زیادی در پیش دارید، این حوزه بسیار گسترده و در عین حال شیرین است. حال سوال “چگونه برنامه نویسی را شروع کنیم؟” تبدیل  می‌شود به “چگونه برنامه نویسی تحت وب را شروع کنیم”.

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

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

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

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

منبع: بمب کد

پنج پیش‌بینی از متخصصان؛ برنامه نویسی در ده سال آینده چه تغییری می‌کند؟

۲۰۵ بازديد

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

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

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

programming-2.jpg - 59.54 kB

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

صاحب نظران حوزه برنامه‌نویسی معتقدند که در آینده استفاده از فناوری‌هایی نظیر واقعیت مجازی (VR) و واقعیت افزوده (AR) در بخش Front End از برنامه‌ها بسیار بیشتر خواهد شد و به همین دلیل برنامه‌نویسان باید مهارت‌های مربوط به پیاده‌سازی این دو فناوری در برنامه‌ها را هرچه سریعتر فرا بگیرند. این کارشناسان همچنین اعتقاد دارند در طی سال‌های آینده زبان‌های برنامه‌نویسی که پیاده‌سازی این دو فناوری در دو پلتفرم وب و برنامه‌های موبایل در آن‌ها ساده‌تر است، با پیشرفت‌های بسیاری همراه خواهند بود و با اقبال بسیاری از سوی کاربران روبرو می‌شود.

2. هوش مصنوعی به یک ابزار اصلی برای برنامه‌نویسان تبدیل می‌شود اما جای آن‌ها را نمی‌گیرد
این روزها هوش مصنوعی قدم‌های اولیه برای ورود به مجموعه ابزارهای مورد استفاده توسط برنامه‌نویسان را برداشته است؛ به عنوان مثال هم‌اکنون در بسیاری از تراشه‌ها، یک یا چند هسته‌ اختصاصی برای پردازش‌های مربوط به این فناوری در نظر گرفته می‌شود. از سویی دیگر مایکروسافت اخیراً برای این فناوری یک پلتفرم اختصاصی را در سیستم عامل ویندوز 10 گنجانده است که برنامه‌نویسان می‌توانند در هنگام تولید برنامه‌های مختلف، از کدها و مدل‌های آماده و مبتنی بر Machine Learning  (یادگیری ماشین) در آن بهره بگیرند.

انتظار می‌رود با استفاده از این پلتفرم، در آینده‌ی نزدیک هوش مصنوعی به یک جزء جدانشدنی از برنامه‌های ویندوزی تبدیل شود. محققان دانشگاه Rice نیز چندی پیش از اپلیکیشنی با عنوان BAYOU رونمایی کردند که با استفاده از هوش مصنوعی می‌تواند کدنویسی به زبان جاوا را بسیار ساده‌تر کند. BAYOU قادر است به عنوان یک موتور جستجوی هوشمند عمل کند و با دریافت چند کلمه‌‌ی کلیدی از سوی کاربران، کدهای آماده و مناسب با نیازهای آن‌ها را تولید و به نمایش بگذارد.

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

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

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

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

4. تمام برنامه‌نویسان ملزم به استفاده از دیتا و آنالیز آن‌ها هستند
بخش دیگری از کارشناسان معتقدند که برنامه‌نویسانی که قصد دارند در آینده در این حوزه کاری پردرآمد به فعالیت بپردازند، نیاز خواهند داشت که مهارت بیشتری در بخش بررسی و آنالیز دیتا کسب کنند. آن‌ها اعلام کرده‌اند که این مهارت‌ها شامل آنالیز اطلاعات آماری، خطی، غیرخطی، Machine Learning (یادگیری ماشین) و حتی هوش مصنوعی می‌شود. بر اساس این پیش‌بینی‌‌ها در طی سال‌های آینده مهارت‌های بررسی و آنالیز اطلاعات همچون روش‌های کدنویسی مهم خواهند بود.

programming-4.jpg - 51.80 kB

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

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

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

شهر سخت افزار