ناشخرد یلع هدنسیون - gisplus · c# یسیون همانرب نابز شزومآ...

13
ویسنده: ن علی درخشان

Upload: others

Post on 20-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 2: ناشخرد یلع هدنسیون - GISPlus · C# یسیون همانرب نابز شزومآ ،تمسق نیا | Web GIS یسیون همانرب همدقم ملیف دولناد

2

#C زبان برنامه نویسی این قسمت، آموزش | Web GISبرنامه نویسی

فهرست

3 .......................................................................................................... مقدمه

3 ................................................................................................... ست؟یزبان چ

4 ..................................................................................... ست؟یچ یسیزبان برنامه نو

4 ............................................................................................................... یسیبرنامه نو یهازبان یبند میتقس

6 ......................................................................................................................................... ست؟یچ تمیالگور

7 .................................................................................. ست؟یچ #C یسیزبان برنامه نو

.NET Framework ............................................................................................. 8

Visual Studio ................................................................................................. 9

C# ........................................................................... 01 یسیادامه آموزش زبان برنامه نو

00 ................................................................................................................................................ یانیسخن پا

00 ................................................................................................................................................. ژهیو زهیجا

Page 3: ناشخرد یلع هدنسیون - GISPlus · C# یسیون همانرب نابز شزومآ ،تمسق نیا | Web GIS یسیون همانرب همدقم ملیف دولناد

3

#C زبان برنامه نویسی این قسمت، آموزش | Web GISبرنامه نویسی

مقدمه فیلم دانلود و پیشین هایآموزش مشاهده برای. است Web GIS آموزش رایگان کالس از آموزش ششمین این

.نمایید مراجعه ،Web GIS کالس صفحه به توانیدمی ها،آن PDF و

مفاهیم با شما و رفتیم جلو jQuery آموزش :پنجم جلسه تا را Web GIS سازیپیاده پیشین، هایآموزش در ما

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

Web سامانه اصلی صفحه و کاربران ورود صفحه HTM, CSS, JavaScript, jQuery از استفاده با

GIS کنید طراحی را مدنظرتان.

نویسی برنامه زبان بر مروری و شویدمی آشنا Visual Studio نویسی برنامه یکپارچه محیط با جلسه، نایدر

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

فقط جلسه نایدر ما و نیست #C نویسی برنامه زبان کامل آموزش ما قصد. نمایید کوچک هایبرنامه نوشتن به

برای که است بدیهی. داشت خواهید مبرم نیاز هاآن به وب، تحت GIS سازیپیاده در که کنیممی بیان را مواردی

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

آن از استفاده با را ییهابرنامه توانیدمی و دایفراگرفته را #C زبان با نویسی برنامه نحوه شما آموزش نایانتهای در

.نمایید اجرا و نوشته

چیست؟ زبان وردم ها،انسان سایر با ارتباط برقراری برای که باشدمی نوشتاری یامی کال یهانشانه و آواها از ایمجموعه زبان،

بندیتهدس خاص، فرهنگی و اجتماعی یهاویژگی با ییهاگروه در هاانسان کنون، تا دیرباز از. گیرندمی قرار استفاده

آمدن وجود به باعث گستردگی نایکه اندکرده استفاده ییهانشانه و آواها از یکدیگر، با ارتباط برقراری برای و اندشده

.است شده دنیا در مختلف یهازبان

Page 4: ناشخرد یلع هدنسیون - GISPlus · C# یسیون همانرب نابز شزومآ ،تمسق نیا | Web GIS یسیون همانرب همدقم ملیف دولناد

4

#C زبان برنامه نویسی این قسمت، آموزش | Web GISبرنامه نویسی

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

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

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

استفاده کدیگری با ارتباط برای پارسی شیرین زبان واژگان از ما که صورت همان به دقیقاً. کنیم صحبت کامپیوترها با

!فهمیممی را همدیگر حرف و کنیممی

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

ویسین برنامه که پرسندمی ما از دوستانی شود،می دیده گاهی. دارند وجود متعددی نویسی برنامه یهازبانی امروزه،

GIS رنامهب یهازبان انواع چرا که بدانیم بایستمی پرسش نایبه پاسخ برای دهیم؟ انجام باید زبانی چه با را

دارند؟ وجود نویسی

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

نویسیبرنامه هایروش( الف

:داریم نویسی برنامه زبان نوع چهار ما نویسی برنامه یهاروش لحاظ از

روالی زیر

یافته اختس

دوالرم

گرا شی

ماشین زبان به نزدیکی( ب

سیارب زبان نای .گویندمی یک و صفر کامپیوتر، زبان به اصطالحا. دارد را 1 و 0 حرف دو فقط ،هاکامپیوتر زبان الفبای

همان نویسی برنامه زبان اولین. شودمی شناخته "01000001" صورت به A حرف رایانه، در کنید تصور. است سخت

Page 5: ناشخرد یلع هدنسیون - GISPlus · C# یسیون همانرب نابز شزومآ ،تمسق نیا | Web GIS یسیون همانرب همدقم ملیف دولناد

5

#C زبان برنامه نویسی این قسمت، آموزش | Web GISبرنامه نویسی

لذا( کننده یوانهد تقریبا) بود سخت بسیار روش نای با کامپیوتری یهابرنامه نوشتن آنجاییکه از. بود یک و صفر زبان

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

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

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

پایین سطح

میانی سطح

باال سطح

ترجمه نوع( ج

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

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

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

:هستیم

مفسری

کامپایلری

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

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

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

هد یک متن را به زبان دیگر ترجمه کند. یک مترجم مبتدی ممکن است این متن را به صورت واژه یک مترجم بخوا

د، دانیطور که میدهد. همانای، عملیات ترجمه را با توجه به کل متن انجام میبه واژه ترجمه کند. یک مترجم حرفه

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

تر برای خواننده است. در دنیای تر و بسیار قابل فهمایدهد بسیار حرفهای که مترجم دوم انجام میاست، ترجمه

یرند، از گهای برنامه نویسی نیز با همین مقوله مواجه هستیم. مفسرها که امروزه کمتر هم مورد استفاده قرار میزبان

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

لذا ممکن است برنامه را اجرا کرده و در حین اجرا با مشکالتی مواجه شوید. برای پیچیده نشدن و فنی نشدن مباحث،

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

Page 6: ناشخرد یلع هدنسیون - GISPlus · C# یسیون همانرب نابز شزومآ ،تمسق نیا | Web GIS یسیون همانرب همدقم ملیف دولناد

6

#C زبان برنامه نویسی این قسمت، آموزش | Web GISبرنامه نویسی

نویسیبرنامه رابط( د

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

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

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

.بنویسند زیادی کدهای نیست نیاز نویسان برنامه و شوندمی جادای اتوماتیک

متن بر مبتنی

گرافیک بر مبتنی (انگلیسی به Visual)

چیست؟ الگوریتم

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

رستد چایی یک گوییممی وقتی مثال. دهید انجام باید را کارهایی چه مساله، هر حل برای که کنید درک منطقی

در تبایسمی راآن و دارید خشک چایی به نیاز سپس بیاورید، جوش به را آب باید ابتدا که داندمی شما ذهن کن،

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

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

.کنیم ترساده را مساله یک

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

مراحل کندمی کمک ما به الگوریتم. کندمی ارایه آن برای مناسبی حلراه و قرارداده بررسی مورد منطقی، و ریاضی

.کنیم تبدیل کامپیوتر فهم قابل کدهای به را آن نهایت در و کرده ترنزدیک رایانه، زبان به را مساله حل

همرحل به مرحله صورت به را شدن بیدار زمان از دانشگاه به رفتن مراحل خواهیممی کنید فرض مثال، عنوان به

:بنویسیم

شروع -1

خواب از بیدارشدن -2

Page 7: ناشخرد یلع هدنسیون - GISPlus · C# یسیون همانرب نابز شزومآ ،تمسق نیا | Web GIS یسیون همانرب همدقم ملیف دولناد

7

#C زبان برنامه نویسی این قسمت، آموزش | Web GISبرنامه نویسی

صورت و دست شستن -3

صبحانه خوردن -4

مناسب لباس پوشیدن -5

نیاز مورد وسایل برداشتن -6

خانه از خروج -7

خانه روبروی ستگاهایدر اتوبوس به سوارشدن -8

دهم ستگاهایدر شدن پیاده -9

دانشگاه به ورود -10

برق مهندسی دانشکده به رفتن -11

101 شماره کالس به ورود -12

پایان -13

.دارد جودو مشکل بروز امکان صورتنایغیر در شوند، انجام ترتیب به باید کارها نای کنید،می مشاهده که گونههمان

تهیه و نویسی یتمالگور مبحث البته. باشدمی آن الگوریتم نوشتن کامپیوتری، برنامه یک نوشتن در گام ترینمهم پس

مساله، کی با مواجهه هنگام که رسیدمی جایی به نویسی برنامه در تکرار و تمرین با. است گسترده میک فلوچارت

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

.نویسیدمین را هاآن انجام مراحل گاههیچ شما ،روزمره ساده کارهای

چیست؟ #C نویسی برنامه زبانC# از. است شده ساخته مایکروسافت شرکت توسط که است نویسی برنامه زبان یک C# ساخت برای توانمی

رنامهب یهازبان بندیتقسیم لحاظ از. کرد استفاده هابازی و موبایل یهابرنامه وب، تحت ویندوز، تحت یهابرنامه

.باشدمی ویژوالو گرا شی، کامپایلریمیانی، سطح زبان یک #C نویسی برنامه زبان نویسی،

Page 8: ناشخرد یلع هدنسیون - GISPlus · C# یسیون همانرب نابز شزومآ ،تمسق نیا | Web GIS یسیون همانرب همدقم ملیف دولناد

8

#C زبان برنامه نویسی این قسمت، آموزش | Web GISبرنامه نویسی

.کندمی استفاده است، شده ساخته قبل از اجزای از بزرگی مجموعه شامل که NET Framework. از #Cزبان

نآ با و است قدرتمند بسیار نویسی برنامه زبان یک #C .کنندمی کمک هابرنامه ترسریع چه هر ساخت به اجزا نای

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

.شود نصب NET Framework. باید ابتدا #C برنامه یک اجرای برای. است فهم قابل و آسان

.NET Framework :شویم آشنا مفاهیم یکسری با است الزم بپردازیم NET Framework. معرفی به که نایاز قبل

Framework :

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

دبتوانن تا کندمی جادای نویسان برنامه برای را چارچوبی ،Framework یک. نمایدمی کلی اصول سری یک رعایت

را امکاناتی ،Framework یک همچنین. دهند انجام مشخص استانداردهای و اصول بر مبتنی را نویسی برنامه

داده پایگاه به الاتص برای مثال. بنویسند کمتری کدهای برنامه، یک تولید برای تا کندمی فراهم نویسان برنامه برای

دهدمی قرار شما اختیار در امکاناتی ،Framework زیرا بنویسید، را زیادی کدهای نیست نیاز آن، یهاداده با کار و

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

:Compiler

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

کامپیوترها. ستا متفاوت ما زبان با نیز کامپیوترها زبان. کنیم استفاده مترجم یک از یا و بفهمیم را او زبان بایستمی

حرف مثال. دارد معنا دیجیتالی بصورت هاآن برای چیز همه یعنی. شوندمی متوجه 1 و 0 قالب در را اطالعات همه

A نای نوشتیم، برنامه یک نویسی، برنامه زبان هر با ما وقتی لذا. دارد معنا 1000001 بصورت کامپیوتر یک برای

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

Compiler، حقیقت، در. گیردمی صورت Compiler، نزدیک ما ایمحاوره زبان به و ماینوشته ما که را ایبرنامه

.کند اجرا راآن بتواند کامپیوتر تا کرده ترجمه ،(ستهایک و صفرها همان که) کامپیوتر زبان به را است

Page 9: ناشخرد یلع هدنسیون - GISPlus · C# یسیون همانرب نابز شزومآ ،تمسق نیا | Web GIS یسیون همانرب همدقم ملیف دولناد

9

#C زبان برنامه نویسی این قسمت، آموزش | Web GISبرنامه نویسی

.NET Framework :

در و اجراست قابل مایکروسافت ویندوز عاملسیستم هایویرایشمیتما روی بر که است افزارینرم چارچوب یک

یهازبان از ایمجموعه شامل چارچوب نای .است شده وارد نیز Mac و Linux جمله از دیگر هایعاملسیستم

کمک جهت غنی بسیار هایخانهکتاب از ایمجموعه. باشندمی هاآن ترینمهم VB و #C که است نویسی برنامه

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

ASP.NET رمحدودت با همگام اخیر هاینسخه در هاآن تعداد که شوندمی ارائه دیگر خاص هایفناوری بسیاری و

.است شده بیشتر مایکروسافت اهداف شدن

جدید نویسی برنامه زبان یک همراه به ،NET. افزارینرم چارچوب جادای، مایکروسافت شرکت ،2000 سال ژوئن در

NET. کلی طور به .است نویسیبرنامه امکانات از وسیع مجموعه یک NET. چارچوب. کرد اعالم را #C نام به

Framework مختلف یهانسخه با همگام مختلف یهاسال طی در 4 و 3 ،2 ،1 مختلف یهانسخه در

Visual Studio رینآخ و هگردید عرضه قبلی، یهانسخه مشکالت برخی اصالح با و جدید یهاقابلیت همراه به

.است شده عرضه 2017 آوریل در باشدمی 4.7 که آن نسخه

Visual Studio حین در. نوشتندیم متنی محیط یک در را برنامه ابتدا نویسان، برنامه. بود پیچیده بسیار گذشته در برنامه یک نوشتن

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

برنامه متن بررسی به اقدام Compiler زمان، نایدر. کردندمی Compile آنرا بایستمی برنامه، اتمام از پس

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

ه،امروز. بود کننده خسته و پیچیده بر،زمان بسیار فرآیند، نای .کند Compile را برنامه مجدد و نماید هاآن رفع

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

قرار Integrated Development Environment یا IDE به موسوم ییهامحیط در ابزارها و امکانات

.اندگرفته

Page 10: ناشخرد یلع هدنسیون - GISPlus · C# یسیون همانرب نابز شزومآ ،تمسق نیا | Web GIS یسیون همانرب همدقم ملیف دولناد

10

#C زبان برنامه نویسی این قسمت، آموزش | Web GISبرنامه نویسی

اولین از افزارنرم نایاصلی تمرکز. است کرده جادای Visual Studio نام با IDE یک نیز، مایکروسافت شرکت

کاربردی هایبرنامه تا دهدمی اجازه نویسبرنامه به که است آن بودن IDE خصوصیت برروی کنون تا آن هاینسخه

.نماید جادای راحتی به را وب هایسرویس یا و وب کاربردی هایبرنامه گاه،وب مستقل،

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

کنیم تا نوشته آموزشی ما کوتاه باشد و مخاطب در یک دید بداند که در این ها در ادامه این نوشته، خودداری میآن

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

، نوشته هایی را منتشر کنیم که برنامه Web GISکالس رایگان آموزش برنامه نویسی ما قصد داریم، در

، ثبت Web GISآموزش برنامه نویسی را به شما آموزش دهیم. اگر هنوز در کالس رایگان Web GISنویسی

#Cآموزش فیلم رایگان دانلود

Page 11: ناشخرد یلع هدنسیون - GISPlus · C# یسیون همانرب نابز شزومآ ،تمسق نیا | Web GIS یسیون همانرب همدقم ملیف دولناد

11

#C زبان برنامه نویسی این قسمت، آموزش | Web GISبرنامه نویسی

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

زیر، در این کالس رایگان، ثبت نام نمایید.

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

، آگاه خواهید شد.هاآخرین نوشته

سخن پایانی

#Cچنین شما زبان برنامه نویسی گذشته، به شما یاد دادیم که چگونه یک وب سایت ایجاد کنید. همجلسه 5ما در

زبان سمت سرویس دهنده را با استفاده از Web GISاید تا بتوانید در جلسات بعدی، برنامه نویسی را یاد گرفته

انجام دهید. #Cبرنامه نویسی

سامانه به شما کمک شایانی خواهد کرد تا یک #C، دانستن زبان برنامه نویسی Web GISپیاده سازی برای

Web GIS .قوی طراحی نمایید

هنده انجام دبایست بتوانید برای قدرت بخشیدن به وب سایت خود، برنامه نویسی سمت سرویساز این به بعد می

Web GISسامانه ASP.NET MVCنولوژی گیرید که چطور با استفاده از تکیاد میدهید. لذا در جلسه آتی،

شما . سازی کنیدپیاده و... دهنده مثل احراز هویت کاربرانهایی را سمت سرویسو قابلیت تقویت کردهمدنظرتان را

را برداشتید. Web GISاز این جلسه، سومین گام بلند در برنامه نویسی

جایزه ویژه

کدامند؟ Web GISسازی یک سامانه های اساسی در طراحی و پیادهگام

Web GISعضویت رایگان در کالس

Page 12: ناشخرد یلع هدنسیون - GISPlus · C# یسیون همانرب نابز شزومآ ،تمسق نیا | Web GIS یسیون همانرب همدقم ملیف دولناد

12

#C زبان برنامه نویسی این قسمت، آموزش | Web GISبرنامه نویسی

ای جواب دهند، هدایایی شامل، پیکسل یا دقیقه 1به افرادی که به پرسش فوق در یک فایل صوتی و یا ویدیویی

، تقدیم Web GISبسته آموزش برنامه نویسی خریدهزارتومانی 200و یا کد تخفیف GISPlusلیوان

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

نمایید.

بیشتر بدانم Web GISبسته آموزش می خواهم درباره

Page 13: ناشخرد یلع هدنسیون - GISPlus · C# یسیون همانرب نابز شزومآ ،تمسق نیا | Web GIS یسیون همانرب همدقم ملیف دولناد

13

#C زبان برنامه نویسی این قسمت، آموزش | Web GISبرنامه نویسی

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

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

با ما تماس بگیرید. GISزمینه آموزش

مشاوره رایگان

)بر روی تصاویر کلیک کنید( پیشنهاد ما برای خواندن

w w w ● G I S P l u s ● i r