آزمایشگاه GIS&GIT

مهندسی فناوری اطلاعات مکانی|مهندسی نقشه برداری|GIS|GEOMATICS|GIT
آزمایشگاه  GIS&GIT

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

جهت تماس از طریق ای دی زیر اقدام نمایید.
telegram:@fazel_shahcheragh
تلفن تماس جهت مشاوره:09124320328
برنامه نویسی و اسکریپت نویسی GIS
آموزش و رفع اشکال ARCPY
طراحی وتوسعه اپلیکیشن های موبایل
طراحی و توسعه برنامه های دسکتاپ جی ای اس

سید فاضل شاه چراغ
مدرس دانشگاه
طراح و مجری پروژه های GIS



























آزمایشگاه GIS&GIT

مهندسی فناوری اطلاعات مکانی|مهندسی نقشه برداری|GIS|GEOMATICS|GIT





۱۱ مطلب با موضوع «آموزش آرک انجین» ثبت شده است

نرم افزار آرک جی.آی.اس سرور (ArcGIS Server) نرم افزار اصلی ESRI برای حوزه WebGIS است . نرم افزار ArcGIS Server برای ایجاد و مدیریت وب سرویس های GIS ، برنامه های کاربردی تحت وب، و ارائه داده های GIS برروی وب مورد استفاده قرار می گیرد . نرم افزار ArcGIS Serverrبه طور معمول براساس معماری سرویس گرا (SOA) و یا در یک محیط محاسبات ابری (cloud computing) استفاده می شود.
اکستنشن های نرم افزار ArcGIS سرور امکان ارائه برخی از قابلیت های ArcGIS Desktop را در قالب وب سرویس فراهم می کنند. اکستنشن های نرم افزار ArcGIS سرور عبارتند از : 3D ، Spatial ، Geostatistical ، Network ، Geoportal ، Image ، Data Interoperability ، Workflow Manager ، و Schematics.

نرم افزار ArcGIS Server برای دو پلتفرم دات نت فریم ورک و پلت فرم جاوا در دسترس است. ArcGIS Server در سه نسخه ارائه می شود: Basic ، Standard ، و Advanced. نرم افزار ArcGIS Server نسخه Basic عمدتا برای مدیریت geodatabases های چند کاربره و سرویس های ژئودیتا استفاده می شود. هر دو نسخه استاندارد و پیشرفته از انواع وب سرویس های زیر پشتیبانی می کنند:

p6p2-lg

  •  
  • Feature ( برای ویرایش تحت وب )
  • Geodata ( برای کپی ژئودیتابیس ها)
  • Geocode ( برای پیدا کردن و نمایش آدرس / مکان بر روی نقشه )
  • Geometry ( برای محاسبات هندسی مانند محاسبه مسحاحت و طول)
  • Geoprocessing (برای مدل سازی علمی و تجزیه و تحلیل داده های مکانی )
  • Globe ( برای رندر سه بعدی جهان )
  • Image ( برای ارائه داده های رستری و کنترل بر انتقال تصاویر ، مانند تصاویر ماهواره ای یا اورتوفتو)
  • KML
  • Map ( برای سرویس های نقشه)
  • Mobile ( برای ارائه سرویس در دستگاه های موبایل )
  • Network Analyst ( مسیریابی، یافتن نزدیکترین محل تسهیلات، و یا تجزیه و تحلیل مناطق خدماتی)
  • Search
  • WCS (Web Coverage Service)
  • WFS (Web Feature Service)
  • WFS-T (Transactional Web Feature Service)
  • WMS (Web Map Service)

علاوه بر این، نرم افزار آرک جی ای اس سرور در دو سطح در دسترس است: Workgroup و Enterprise . سطح Workgroup را می توان در یک دستگاه با حداکثر 10 اتصال همزمان به ژئودیتابیس استفاده کرد و ظرفیت ذخیره سازی Geodatabase نیز نمی تواند از ده گیگابایت بیشتر شود. در مقابل در سطح Enterprise این محدودیت ها وجود ندارد.

serverDistributed

همچنین ArcGIS Server برای مدیریت ژئودیتابیس های چندکاربره نیز مورد استفاده قرار می گیرد. نسخه Enterprise امکان دسترسی به IBM DB2، Informix، Oracle، SQL Server، و PostgreSQL و نسخه Workgroup امکان دسترسی به SQL Server Express را فراهم می آورد.

دانلود آرک جی.آی.اس سرور 10.3 ArcGIS Server

دانلود آرک جی.آی.اس سرور 10.4.1 ArcGIS Server

 

روش کرک آرک جی.آی.اس سرور 10.3 (ArcGIS Server 10.3)

روش اول: از کیجن ارائه شده در مطلب دانلود آرک جی.آی.اس  ۱۰٫3 (ArcGIS 10.3) برای تولید فایل لایسنس استفاده کنید. در این کیجن کافی است در برگه آخر یعنی برگه سرور نسخه خود را 103 وارد کنید. بقیه مراحل مشابه فرآیند کرک ArcGISS می باشد.

 

روش کرک آرک جی.آی.اس سرور 10.4.1 (ArcGIS Server 10.4.1)

از لایسنس های زیر استفاده کنید.

رمز: gistech.ir

منبع: http://gistech.ir/webgis

۰ نظر موافقین ۰ مخالفین ۰ ۱۵ خرداد ۹۶ ، ۰۴:۲۶
ADMIN

معماری سه لایه چیست؟

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

  • Presentation Layer
  • Business Logic Layer
  • Data Access Layer

همان طور که احتمالا حدس زده اید، لایه Presentation چیزی نیست به جز بخشی از نرم افزار که با کاربر برنامه شما ارتباط برقرار می کند ( اینترفیس برنامه شماست ) نمایش داده ها به کاربر نهایی و اجازه به آنان برای ارتباط داشتن با داده ها، اصلی ترین وظیفه این لایه است.

در بیشتر موارد داده هایی که توسط کاربر وارد می شوند نیاز به اعتبارسنجی یا پردازش اضافی دارند. این مسوولیت لایه Business Logic است.

در نهایت داده های برنامه شما نیاز به ذخیره و بازیابی از طریق یک انبار داده دارند ( مثلا سیستم مدیریت دیتابیس های رابطه ای یا RDBMS و یا XML , .. ) این وظیفه توسط لایه دسترسی به داده انجام می شود.

به طور خلاصه، فرآیند مورد نظر ما این گونه کار می کند:



۰ نظر موافقین ۰ مخالفین ۰ ۲۲ خرداد ۹۴ ، ۰۹:۱۲
ADMIN

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

سلام...

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

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

به محدوده زمانی ایجاد متغیر، تا زمان از بین رفتن آن متغیر، طول عمر متغیر می گویند. (حالا این یعنی چی؟!)

کامپیوترها دو نوع حافظه مهم دارند: عمدا دومی رو اول میگم. 2- حافظه جانبی(مثل هارد دیسک، فلش، دیسک نوری و...) 1- حافظه اصلی (RAM)، این حافظه برعکس حافظه های جانبی ، بصورتی هست که اطلاعات داخلش با قطع شدن برق کامپیوتر، از بین می رود. به اصطلاح حافظه های فرار هستند. متغیرها در داخل این حافظه قرار دارند.

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

متغیرهای در حالت های خاصی طول عمر کمتری دارند. اینجاست که باید مفهوم Scope رو توضیح بدم. به هر بلوکی از کُد که با علامت } شروع، و با علامت { خاتمه پیدا می کند اسکوپ می گوییم. تصویر زیر بخوبی این مطلب را روشن می کند.

در این شکل بلوک مربوط به حلقه for در کادر شماره 1 قرار دارد و بلوک مربوط به رویداد کلیک Button1 در کادر شماره 2 است. بلوک شماره 1 در داخل بلوک شماره 2 قرار گرفته.

  • قانون اول: تمام متغیرهای تعریف شده در هر بلوک، فقط در همان بلوک ، قابل دسترسی هستند. به متغیر نوع صحیح MyVariable که با فلش آبی رنگ مشخص شده، دقت کنید. این متغیر در بیرون بلوک شماره 1 غیرقابل دسترس بوده (فلش قرمز رنگ). بنابراین حتی اگر خودمان اسم این متغیر را تایپ کنیم، زیر آن خط چین قرمز کشیده خواهد شد، که نشانه خطا در برنامه نویسی است.
  • قانون دوم: بلوک های داخلی می توانند به متغیرهای بلوک های بیرونی دسترسی داشته باشند. به همین علت متغیر count در داخل بلوک شماره 1 قابل دسترسی بوده و کامپایلر از این کار اشکالی نمی گیرد.

ثابت چیست؟ برخلاف متغیرها، مقدار ذخیره شده در داخل ثابت ها غیرقابل تغییر می باشد. ثابت ها حتما باید در هنگام تعریف شدن ، مقداردهی اولیه شوند. برای تعریف ثابت از کلمه کلیدی const استفاده می کنیم. به مثال های زیر دقت کنید:

const float PI = 3.14f;
const int SQUARE_SIDES = 4;
const string COUNTRY = "Islamic Republic of Iran (IRI)";

مزیت های استفاده از ثابت ها:

  • کد نویسی سریع تر. مثلا اگر قرار باشه جمله Islamic Republic of Iran رو در 20 جای برنامه بنویسیم، در هر 20 جای برنامه به نوشتن COUNTRY اکتفا می کنیم.
  • تصحیح سریع کُد: کافیست همانجایی که ثابت را تعریف کرده ایم، مقدار آنرا تغییر دهیم. آن مقدار جدید در هر 20 جای برنامه جایگزین می شود.

تبدیل رشته عددی به عدد واقعی: یکی از مواردی که نیاز به تبدیل رشته عددی به عدد واقعی، وجود دارد، زمانی است که بخواهیم از طریق TextBox یک عدد را از کاربر دریافت کنیم. همانطور که میدانید، متنی را که کاربر در داخل TextBox تایپ می کند، در خاصیت Text مربوط به TextBox ذخیره می شود. اما این خاصیت فقط توانایی ذخیره کردن رشته ها را دارد. برای مثال اگر کاربر عدد 18343 را در داخل TextBox وارد کند، این عدد بصورت رشته "18343" ذخیره خواهد شد. روی رشته ها نمی توانیم عملیات ریاضی انجام دهیم. فقط با عملگر + می توان دو رشته را به چسباند. اینجاست که باید رشته ها رو به عدد تبدیل کنیم. کد زیر رشته عددی موجود در TextBox1 رو به عدد تبدیل کرده و در متغیر عددی num ذخیره می کنه:

int num = Convert.ToInt32(TextBox1.Text);

نکته: باید حتما در TextBox یک عدد وارد شده باشه. وگرنه برنامه با خطا مواجه خواهد شد. البته راهی هم هست که از خطای ناگهانی برنامه جلوگیری کنیم. اما حالا زوده که بگم :)


اما قسمت عملی درس:

یک پروژه جدید بسازید و روی فرم آن کنترل های زیر را قرار دهید:

  • یک عدد TextBox
  • یک عدد دکمه
  • یک عدد ListBox
  • یک عدد ProgressBar
  • یک عدد Timer (از زیر مجموعه Components پیداش می کنید) - خصوصیت Enabled تایمر رو True کنید. به خصوصیت Interval دقت کنید. بعدا این خصوصیت رو تغییر دهید.

شکل فرم بصورت زیر خواهد شد:

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

if (textBox1.Text != "")
{
    listBox1.Items.Add(textBox1.Text);
}

این کد به این معنی هست که اگر TextBox خالی نبود محتویات آنرا به ListBox اضافه کن! (خطاب به کامپیوتر)

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

progressBar1.Value++;
if (progressBar1.Value==100)
{
    Application.Exit();
}

این کد یعنی: مقدار ProgressBar را یکی افزایش بده! اگر مقدار ProgressBar برایر با 100 شد، برنامه را خاتمه بده!

خوب امیدوارم هنوز پر انرژی باشید.

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

التماس دعا...


 برگرفته شده از butterfly.blog.ir
۰ نظر موافقین ۰ مخالفین ۰ ۱۰ فروردين ۹۴ ، ۲۱:۴۷
ADMIN


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

سلام...

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

متغیر های رشته ای یا string برای ذخیره سازی (موقت) یک متن بکار می روند. متغیرهای عددی ، از جمله int ، float ، byte و... برای ذخیره سازی اعداد مورد استفاده قرار می گیرند. اما نوشتن بعضی برنامه ها نیازمند تعداد زیادی متغیر است. برای مثال فرض کنید بخواهیم برنامه ای بنویسیم که نمرات یک دانشجو را گرفته و معدل او را محاسبه کند. یکی از راه حل ها می تواند این باشد که برای هر درس یک متغیر جداگانه بسازیم. بصورت زیر: (در کد زیر سعی کرده ام که روش های مختلف تعریف و مقدار دهی اولیه متغیرها رو نشان دهم)

float riazi=18.25f;
float fizik=16.5f,shimi,farsi=20.0f;
float miyangin=(riazi+fizik+shimi+farsi)/4;

برنامه محاسبه میانگین نمرات، یک برنامه با تعداد متغیرهای کم است. هرچند ما از بعضی دروس صرف نظر کردیم. اما تصور کنید بخواهید برنامه ای برای سرشماری یک شهر بزرگ را بنویسیم! که در آن نیاز به ذخیره اسم شهروندان داشته باشیم. چون می خواهیم بعدا تعداد افرادی را که نامشان "علی" هست را بفهمیم. از آن گذشته شاید بخواهیم نام ها را بر اساس حروف الفبا مرتب کنیم.

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

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

string[] names=new string[100];

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

names[5]="Ali";
names[0]="Mohammad";
names[99]="Mahdi";
names[100]="saeed"; //خطا - این خانه از آرایه وجود ندارد

میتوانیم در هنگام تعریف آرایه، آنرا مقداردهی هم بکنیم. به کد زیر دقت کنید که چگونه آرایه rates را مقداردهی اولیه می کند:

int rates=new int[5]{3,1,5,2,4};

خانه های 0 تا 5 آرایه rates به ترتیب مقادیر 3 ، 1 ، 5 ، 2 ، 4 به خود خواهند گرفت. حتی می توانیم آرایه را بصورت زیر هم تعریف کنیم. در این صورت تعداد خانه های آرایه بر حسب تعداد مقادیر موجود در آکولاد، تعیین خواهد شد:

byte myArray={10,36,158,220,18,110};

آرایه myArray دارای 6 خانه خواهد بود که مقادیر اولیه آن خانه ها مابین آکولاد ها بیان شده اند.

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

MessageBox.Show(names[5]+" "+names[0]);

آرایه ها رو می تونید از هر نوعی و با هر تعداد خانه ای بسازید. شماره خانه های آرایه از 0 شروع میشه. شما نمی تونید از خونه هایی که در محدوده طول آرایه نیستند استفاده کنید. در کد بالا یه توضیح فارسی می بینید. هرجا بخواهیم برای کدمون توضیح بنویسیم باید قبل توضیح دوتا اسلش (//) قرار بدیم. کامپایلر تمام متنی رو که بعد از // باشه رو نادیده می گیره. انگار نه انگار که نوشتین. اما این توضیحات فایده های زیادی داره...

خوب بریم سراغ حلقه for

حلقه for هم مثل حلقه while دستورهای داخل بلوک خودش رو تکرار میکنه. اما این حلقه یه سری امکانات رو در اختیارمون قرار میده که خیلی بدرد بخور هستن. شما در این حلقه یک متغیر شمارنده تعیین می کنید و بر اساس همین متغیر (یا حتی متغیری دیگر) تصمیم به خروج از حلقه می گیرید. ساختار کلی حلقه for بصورت زیر می باشد:

for(Initial-Expression;Conditional-Expression;Loop-Expression){
    Commands set
}

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

  • Initial-Expression : در این قسمت یک متغیر عددی ساخته و مقدار دهی می کنیم. این قسمت فقط یک بار در اولین دور حلقه اجرا می شود. بنابراین در اولین دور حلقه یک متغیر عددی ساختیم.
  • Conditional-Expression : در این قسمت یک عبارت شرطی می نویسم. در واقع این عبارت، شرط ادامه کار حلقه می باشد. اگر این عبارت برابر false شود، اجرای حلقه متوقف خواهد شد. معمولا در این بخش ، متغیری را که در قسمت قبل ساختیم با یک عدد دیگر مقایسه می کنیم. Condition-Expression اولین دستوری هست که در هر دور حلقه اجرا می شود. منظورم رو در عمل متوجه خواهید شد. نگران نباشید.
  • Loop-Expression : معمولا در این قسمت عبارتی نوشته می شود که مقدار متغیر تعریف شده در بخش Initial-Expression را تغییر دهد. در عمل ، Loop-Expression آخرین دستور اجرا شونده در هر دور حلقه است.

خوب وقتشه که مطالب گفته شده رو در عمل آزمایش کنیم.
بیایید با هم برنامه محاسبه معدل رو بنویسیم. ما در این برنامه یک آرایه می سازیم برای ذخیره کردن نمره ها، سپس با استفاده از حلقه for میانگین نمرات دروس را محاسبه کرده و نمایش می دهیم.
یک پروژه جدید بسازید و اشیاء زیر را به فرم آن اضافه کنید:

  • یک عدد TextBox . خاصیت Name آن را به txtAvg تغییر دهید.
  • یک عدد Label . خاصیت Text آن را به "میانگین" تغییر دهید.
  • یک دکمه.

شکل ظاهری برنامه:

فرمول ما برای محاسبه میانگین: مجموع نمرات، تقسیم بر تعداد نمرات. فرض کنید 10 درس بیشتر نداریم. برای دکمه (رویداد کلیک دکمه) برنامه زیر را بنویسید:

float[] marks = new float[10] { 15, 14, 18, 20, 8, 19.5f, 12.25f, 16, 16.75f, 20 };
float sum = 0;
float avg = 0;
for (int i = 0; i < 10; i++)
{
    sum = sum + marks[i];
}
avg = sum / 10;

txtAvg.Text = Convert.ToString(avg);

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

  • عبارت ++i در قسمت Loop-Expression حلقه for به معنای اضافه کردن عدد 1 به متغیر i است و با عبارت زیر تفاوت چندانی ندارد:
i=i+1;
  • هر متغیر فقط توانایی ذخیره کردن مقادیر همنوع خودش را دارد؛ مگر اینکه آن متغیر با روش هایی تبدیل نوع داده شود. شما فقط می توانید در خاصیت Text شیئ TextBox ، یک رشته ذخیره کنید. چون در واقع خاصیت Text یک متغیر رشته ای است. هر دو دستور زیر با هم برابر هستند. هر دوی آنها متغیر avg را به رشته تبدیل می کنند. این کار برای این است که بتوانیم مقدار متغیر avg را در داخل TextBox به نمایش در آوریم.
txtAvg.Text = Convert.ToString(avg);
txtAvg.Text = avg.ToString();
  • در هر دور حلقه for ، مقدار i ام آرایه marks با مقدار sum جمع می شود، سپس جواب در خود sum قرار می گیرد. همانطور که گفتم آخرین دستور در حلقه for همان Loop-Expression است، بنابراین در هر دور اجرای حلقه ، یکی به مقدار قبلی i اضافه می شود. همچنین قبل از اینکه دستورات داخل بلوک حلقه اجرا شوند، درستی عبارت شرطی بررسی می شود؛ اگر این عبارت برابر با false شود، از حلقه خارج خواهیم شد و دستور های بعد از بلوک حلقه اجرا می شوند.

خدا قوت دوستان :)

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


 برگرفته شده از butterfly.blog.ir
۰ نظر موافقین ۰ مخالفین ۰ ۰۸ فروردين ۹۴ ، ۲۱:۴۵
ADMIN

بسم الله الرحمن الرحیم.

سلام...


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

کامپیوتر تک دستور ها رو یکی پس از دیگری اجرا می کنه. اگر برنامه ای که نوشته ایم مثلا 5 خط باشه، اول خط 1 ، بعد خط 2 ، بعد خط 3 و همینطور تا آخر برنامه دستورات اجرا خواهند شد.

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

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

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

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

نتیجه می گیریم که فضاهای خالی توسط کامپایلر نادیده گرفته می شوند. فضاهای خالی رو با دکمه های Space ، Tab (همون دکمه درازه  :)  ) و Enter می توان ایجاد کرد.

در زبان سی شارپ حروف کوچک و بزرگ با هم متفاوت هستند. مثلا MessageBox.Show با messagebox.SHow فرق می کند.

بقیه قوانین رو در جلسات بعد خواهم گفت.

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

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

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

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

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

این حافظه حجم بسیار کمتری نسبت به هارد دیسک دارد.

این حافظه سرعتی بسیار زیاد تری نسبت به هارد دیسک دارد.

این حافظه خیلی گران قیمت است.

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

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

هرگاه که شما برنامه ای را اجراء می کنید، داده های مربوط به آن برنامه در حافظه RAM قرار می گیرد. مثلا" در برنامه ساده خودمان، نام و نام خانوادگی ای را که در TextBox نوشتیم بصورت موقت در RAM ذخیره می شود و دستور MessageBox.Show از آنها استفاده کرده و در خروجی نمایش میدهد.

ما می توانیم داده ها را در RAM ذخیره کرده یا آنها را از RAM بخوانیم. برای اینکار به روشی که در سطور بعد توضیح داده ام ، به کامپایلر دستور می دهیم که محلی در حافظه RAM را رزرو کند و به آن مکان رزرو شده یک نام دلخواه (که خودمان مشخص کرده ایم) اختصاص دهد. ما به این نام برای دسترسی به آن مکان رزرو شده در حافظه نیاز داریم. به این مکان رزرو شده حافظه متغیر می گوییم.

در این درس فقط به بررسی متغیرهایی می پردازیم که می توانند یک متن و یا نوشته را در خود ذخیره کنند. با دستور زیر یک متغیر که توانایی ذخیره متن را دارا می باشد، در حافظه ساخته می شود:

string strName;

strName صرفا یک نام هست و شما می توانید به دلخواه خود این نام را تغییر دهید.

اگر بخواهیم یک متن را در strName ذخیره کنیم بصورت زیر عمل می کنیم:

strName="In the name of Allah";

دقت داشته باشید که متن را باید بین دو علامت " قرار دهیم. به نوشته هایی که بین دو علامت " قرار دارند، اصطلاحا رشته می گوییم و به متغیری که توانایی ذخیره رشته ها را داشته باشد، متغیر رشته ای می گوییم.

هرجایی از برنامه که نام متغیر نوشته شود، آن نام در هنگام اجرای برنامه، با مقدار موجود در خود جایگزین خواهد. برای مثال می توانید بعد از اینکه متغیر strName را تعریف کردید دستور MessageBox.Show را بصورت زیر باز نویسی کنید:

MessageBox.Show(strName + "\n Butterfly.blog.ir");

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

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

 برگرفته شده از butterfly.blog.ir
۰ نظر موافقین ۰ مخالفین ۰ ۰۲ فروردين ۹۴ ، ۲۱:۴۰
ADMIN

با نام و یاد خدا... سلام.

در جلسات قبل یاد گرفتیم که چطور برای دکمه برنامه بنویسیم، طوری که اگر در هنگام اجرای برنامه روی دکمه کلیک کنیم، کاری رو برامون انجام بده. به غیر از دکمه چند شیئ دیگه رو هم روی فرم قرار دادیم و از شیئ TextBox در برنامه خودمون استفاده کردیم و متوجه شدیم که چطور از خصوصیت Text مربوط به این شیئ استفاده کنیم. در مورد شیئ گرایی هم خیلی کوتاه صحبت کردیم و مفهوم کلاس و وراثت رو بصورت غیر آکادمیک! و خودمونی توضیح دادیم.

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

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

خطوط 1 تا 7 : تمام این خطوط با کلمه using شروع شدن. رنگ این کلمه با بقیه کلمات متفاوته و آبی هست. کلمات با رنگ آبی ، کلماتی هستند که برای زبان برنامه نویسی سی شارپ (#C) مفهوم خاصی دارند. به این کلمات، کلیدواژه ، کلمه کلیدی یا کلمه رزرو شده می گن. قبل از اینکه ما برنامه مقدماتی خودمون رو شروع کنیم، یک عده برنامه نویس زحمت کشیدند و قسمت های زیادی از برنامه رو ساخته و در اختیار ما قرار داده اند. مثلا" اینکه یک دکمه به چه شکلی باشه، ظاهر جعبه پیام (MessageBox) به چه صورت باشه ، روش تعامل فرم و... رو برنامه نویسی کرده اند. برنامه ای که این عزیزان نوشته اند در یکسری فایل ها ذخیره شده و ما با استفاده از کلمه کلیدی using اون فایل های مهم رو به برنامه خودمون متصل می کنیم و ازشون سو استفاده می کنیم :)

خط 11 : در این قسمت از برنامه یک کلاس به نام Form1 نوشته شده که از کلاس Form که برنامه نویسان عزیزمون اون رو قبلا" برنامه نویسی کردن داره ارث‌بَری می کنه! این بحث رو فعلا" خیلی جدی نگیرید. کمی سطحش از مقدماتی بالاتره.

خط 13 تا 16 : به این قسمت هم "متد سازنده کلاس Form" می گن. فقط بدونید که Method یا "روش" در برنامه نویسی #C ، به مجموعه ای از کدهای مرتبط به هم می گن که کار خاصی رو برای ما انجام می دهند و دارای یک نام می باشند.  ما در این برنامه (تصویر بالا) یک متد دیگه هم داریم که اسمش Button1_Click هست.

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

و بعد از اون یک علامت آکولاد ( } ) قرار گرفته. برنامه ای که قراره متد، اون رو اجرا کنه، بعد از علامت آکولاد قرار گرفته. بعد از آخرین خط برنامه متد، یک علامت آکولاد بسته داریم که نشان دهنده پایان متد هست. از حالا به فاصله مابین آکولاد باز و آکولاد بسته "بلوک" می گوییم. مثلا" بلوک متد Button1_Click یا بلوک namespace FirstProject که از خط 9 شروع شده و تا خط 23 ادامه پیدا کرده.

خط 20 : این خط در بلوک متد Button1_Click نوشته شده. خط 20 رو ما در دروس قبل نوشتیم. اما خود بلوک متد Button1_Click بصورت اتوماتیک در زمانی که روی دکمه دابل کلیک کردید ساخته شده.

ما در این خط از متد Show مربوط به کلاس MessageBox استفاده کردیم. به اون چیزی که ما داخل پرانتز متد Show می نویسیم آرگومان می گن. اما به جای خالی ای که برنامه نویس عزیزمون برای ما گذاشته که داخلش مثلا" بنویسیم:

"Salam "+textBox1.Text+" "+textBox2.Text

پارامتر می گن.

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

موفق باشید.


 برگرفته شده از butterfly.blog.ir
۰ نظر موافقین ۰ مخالفین ۰ ۰۱ فروردين ۹۴ ، ۱۱:۲۱
ADMIN


با سلام

از این لینک می توانید ارک انجین 10.1 را دانلود و نصب نمایید.اگر در روند نصب بر نامه مشکل داشتید در قسمت نظرات مطرح کنید -بزودی راهنمای تصویری نصب را در وبلاگ خواهم گذاشت. در ضمن اگر به هر دلیلی نتوانستید دانلود کنید می توانید دی وی دی آن را سفارش دهید تا برای شما ارسال نماییم.

دانلود ArcGIS Engine (ArcEngine) v10.0 + v10.1 - مجموعه ای از کامپوننت های GIS برای توسعه دهندگان نرم افزار

لینک دانلود: دانلود ارک انجین 10.1


۰ نظر موافقین ۰ مخالفین ۰ ۲۸ اسفند ۹۳ ، ۰۰:۴۲
ADMIN


سلام.

قصد دارم برنامه نویسی #C رو بصورت کاملا" مقدماتی منتشر کنم. قراره این آموزش ها از 0 باشه. اما قول نمی دم که تا 100 بتونم بهتون برنامه نویسی یاد بدم. اون دیگه تلاش و پشتکار خودتون رو می طلبه. این سلسله آموزش ها با همکاری گروه افسران برنامه نویس انجام خواهد گرفت.

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

قبل از هر چیز!

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

من دوست دارم تمام تعاریف رو با مثال (البته در مثال مناقشه نیست) انجام بدم. فرض کنید شما فرزندی فرمانبردار برای مادرتون هستید و هرچه ایشون به شما بگن بدون کم و کاست و بدون نق زدن انجام می‌دهید (ان‌شاءالله در واقع هم همینطوره!!). همچنین فرض کنید مادرتون بهتون یه لیست از اقلام رو داده اند تا از بازار تهیه کنید. شما موظف هستید که تمام اقلام داخل لیست رو تهیه کنید. اگر بخواهیم این مثال رو به کامپیوتر ربط بدیم، شما همون کامپیوتر هستید. مادر شما در نقش کاربر و لیستی از اقلام رو که از مادر عزیزتون دریافت کرده اید، برنامه کامپیوتری است.

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

شاید شنیده باشید که زبان کامپیوتر 0 و 1 هست. این یک جمله کاملا درست است. با این اوصاف شما باید این زبان رو یاد بگیرید! شما باید توانایی این رو داشته باشید که حرف خودتون رو در قالب 0 ها و 1 ها برای کامپیوتر بیان کنید. اما صبر کنید، دانشمندان علوم کامپیوتر، سالها قبل این کار رو برای ما راحت کرده اند. به این ترتیب که برنامه هایی رو طراحی کرده اند (با همون 0 ها و 1 ها) که زبان انگلیسی (البته نه دقیقا انگلیسی) رو به همون 0 ها و 1 ها تبدیل می کنند. مسلما" یادگیری زبان انگلیسی خیلی خیلی خیلی راحت تر از یادگیری زبان ماشین (همون 0 و 1) هست. دستشون درد نکنه واقعا" که کار ما رو ساده کردند. روحشون هم شاد!

به برنامه ای که زبان خاصی رو به زبان ماشین تبدیل میکنه، اصطلاحا Compiler (مترجم) می گن. چی میگن؟ کامپایلر!!

کامپیوتر با استفاده از همین کامپایلر ها زبان های زیادی رو متوجه میشه! چون این زبان ها دقیقا" انگلیسی نیستند، سازنده این زبان ها برای زبانی که ساخته اند به دلخواه خودشون اسمی رو انتخاب کرده اند. از جمله زبان های برنامه نویسی می تونیم به موارد زیر اشاره کنیم.

  • اسمبلی: خیلی قدیمی هست. فقط 0 و 1 یک نیست! خیلی سخته یادگرفتنش! اما به سختی زبان ماشین نیست.
  • فورترن: یه زبان قدیمی هست که برای کار بر روی فرمول های ریاضی ساخته شده بوده.
  • آدا: زبانی برای کارهای دولتی و سیاسی امنیتی بوده ظاهرا
  • سی (C)
  • سی پلاس پلاس (++C)
  • جاوا
  • پاسکال
  • بیسیک
  • سی شارپ (#C)
  • ...
ما قراره با همدیگه زبان برنامه نویسی "سی شارپ" رو یاد بگیریم. پرحرفی بسته. برای امروز کافیه.

توی درس بعدی با همدیگه کامپایلر زبان #C (سی شارپ) رو نصب می کنیم و یه برنامه ساده می نویسیم. تا اون موقع از بازار نرم افزار Microsoft Visual Studio 2010 رو تهیه کنید.
موفق باشید...

برگرفته شده از butterfly.blog.ir
۰ نظر موافقین ۰ مخالفین ۰ ۲۵ اسفند ۹۳ ، ۱۰:۵۵
ADMIN

سلام

در درس اول تا این سوال پیش رفتیم که ارک آبجکت چیست و به چه کار می آید؟

ارک ابجکت کتابخانه ای از (com) هاست که خود این کام ها سازنده نرم افزار ارک جی ای اس هستند

حدس می زنم در این قسمت برای شما سوال پیش آمده یعنی یک علامت سوال ؟ بالای سر شماست که کام (com)  چیست؟
Component Object Model (COM)
اگر شما مثل من علاقه مند به برنامه نویسی بوده باشید و با ویژوال استدیو اشنایی داشته باشید این سوال برایتان پیش نمی آید اما از آنجا که  اکثر دوستانی که علاقه مندند به یاد گیری ارک ابجکت از فارغ التحصیلان نقشه برداری می باشند قطعا یکی از ضعف های انها در فهم و یادگیری بخش مربوط به نرم افزار و برنامه نویسی  و اصطلاحات مربوط به آن می باشد
بنده در این اموزش ها سعی میکنم هر  جا که به اصطلاحات تخصصی بر خوردم توضیحات لازم را بدهم اما توصیه موکد میکنم حتما این ضعف خود را بر طرف نمایید و مطالعات خود را در زمینه مهندسی نرم افزار-توسعه نرم افزار-برنامه نویسی تحت دات نت- و یکی از زبان های سی شارپ و ویژوال استدیو بالا ببرید.

خب حالا کامپوننت ابجکت مدل چیه؟
در بر نامه نویسی شی گرا مینای برنامه نویسی ما شی یا ابجکت می باشد یعنی عنصر پایه ما شی می باشد. حال ارک مپ را در نظر بگیرید که خود مجموعه ای از  ابجکت ها مثل ;map viewver و لایه و ...

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


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

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


سفارشی سازی محیط ارک جی ای اس یعنی چی؟

جواب این سوال باشد برای پست بعد...
فعلا...
۰ نظر موافقین ۰ مخالفین ۰ ۲۳ اسفند ۹۳ ، ۲۳:۲۰
ADMIN
Custom mapping with ArcGIS Engine


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

قبل از این که بپردازیم  به موضوع مورد بحث بگذارید در همین پست یک گله بکنم از همه کسانی که در زمینه جی ای اس  فعالیت دارند به خصوص فارغ التحصیلان رشته مهندسی جی ای اس  اون اینه که:
تفاوت یک مهندس جی ای اس و یک نفر که در رشته هایی که از آرک جی ای اس  و نرم افزار های مشابه استفاده می شود از زمین تا آسمان است یعنی یک مهندس جی ای اس علاوه بر مسلط بودن بر نرم افزار های حوزه جی ای اس از موتور و انجین این ابزار ها نیز مطلع است یعنی محاسبات هندسی را بلد است-محاسبات عددی-گرافیک کامپیوتری-برنامه نویسی و...حـــــــــــــــالا
با ذکر یک مثال سوال گله را مطرح میکنم
آیا کسی که با یک ماشین رانندگی میکند
با شخصی که علاوه بر رانندگی از موتور و انجین ماشین سر در می آورد می تواند آن را توسعه دهد-از فلسفه ی قطعات و ... آن اطلاع دارد و ... آیا این دو یکسان اند؟ آیا؟
قطعا پاسخ شما خیر است ولی چرا به گونه ای عمل میکنید که کسی بین این دو در کشور ما تمایز قایل نیست؟ واقعا چرا؟
چرا جایگاه خودتونو به دیگران نمی شناسانید!؟ :|


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


خب
ارک انجین چیست؟

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



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

اگه ارک انجین اینه پس ارک ابجکت چیه؟(سوال خوبی پرسیدین :D)
ارک ابجکت کتابخانه ای از کامپننت ابجکت مدل های جی ای اس می باشد(حتما می پرسید اینکه گفتی یعنی چه؟  کامپننت آبجکت مدل)

Component Object Model (COM) چیست؟




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

ادامه باشه برای بعد خسته شدم
تا پست بعدی...بدرود

۱ نظر موافقین ۰ مخالفین ۰ ۲۳ اسفند ۹۳ ، ۲۱:۵۴
ADMIN