سفارش تبلیغ
صبا ویژن
کسی که تکبّر می ورزد، چیزی فرا نمی گیرد . [امام علی علیه السلام]

علمی ،آموزشی،تحقیقاتی

با سلام . ورود شما را به وبلاگ آموزشی #c راخوش آمد گفته و به زودی با مطالب جدید درخدمت شما خواهیم بود.




مژده فرجی ::: پنج شنبه 87/8/23::: ساعت 6:51 عصر

از پیشرفته ترین زبان های برنامه نویسی ساخت یافته است که قابل انعطاف و بسیار قدرتمند  سی شارپ برنامه است.در این زبان هیچ محدودیتی برای برنامه نویس وجود ندارد .هر آنچه را که فکر می کنید می توانید در این زبان پیاده سازی کنید. زبان برنامه نویسی را می توان به سه دسته تقسیم کرد 1-زبان سطح بالا 2-زبانهای میانی 3-زبانهای سطح پایین علت میانی  بودن زبان سی این است که از طرفی همانند زبان سطح پایین مثل اسمبلی قادر است مستقیما به حافظه دستیابی داشته باشد وبا مفاهیم بیت و بایت و آدرس کار کند واز طرف دیگر برنامه های این زبان همچون زبانهای سطح بالایی مثل پاسکال از قابلیت خوانایی بالایی برخوردارند.به عبارت دیگر دستورالعمل های این زبان محاورهای انسان نزدیک است که این ویزگی مربوط به زبانهای سطح بالا است .

 

اجزای زبان سی شارپ:

1-ثابت ها ومتغیرها:

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

برا ی تعیین نوع متغیراینگونه عمل می کنیم :  :نام متغیر  نوع داده

 ثابت ها :ثوابت مقادیری هستند که در برنامه وجود دارند ولی قابل تغییر نیستند1-استفاده از دستورنامگذاری برای ثوابت از قانون نامگذاری برای متغیرها تبعیت می کند .مقادیری که برای ثابت تعیین می شود نوع ثابت را مشخص می کند

برای تعیین نوع ثبات اینگونه عمل می کنیم:                                <مقدار> = <نام ثوابت> <نوع داده>

 2-شناسه ها :

1-2-کلمات کلیدی:کلماتی هستند که در یک زبان معنا ومفهوم خاصی دارند . قابل انعطاف و بسیار قدرتمنداست در این زبان هیچ محدودیتی برای برنامه نویس وجود ندارد .برنامه های سیستم برنامه هایی هستند که امکان بهره برداری از سخت افزار و سایر نرم افزارها را برآورده می کند بعضی از برنامه های سیستم عبارتند از :

سیستم عامل .مفسر .کامپایلر .ویراستارها .وازه پردازها .مدیریت بانکهای اطلاعاتی واسمبلر – نمونه ای از این کلمات:

If .for. while.const .char .short .break. continue .do .else .switch .void . double . using .console ,….

 2-2-شناسه تعریف شده توسط کاربر:اسامی است که برای ثابت یا متغیر ورودی وخروجی گویند ویا کاماتی است که تعریف شده توسط کاربر هستند




مژده فرجی ::: پنج شنبه 87/8/23::: ساعت 6:49 عصر

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


مژده فرجی ::: پنج شنبه 87/8/23::: ساعت 4:55 عصر

آشنایی با زبان C#

مایکروسافت در مصاف با جاوا، بدنبال ارائه یک زبان کامل بود که سایه جاوا را در میادین برنامه نویسی کم رنگ تر نماید. شاید بهمین دلیل باشد که #C را ایجاد کرد. شباهت های بین دو زبان بسیار چشمگیر است. مایکروسافت در رابطه با میزان استفاده و گسترش زبان فوق بسیار خوشبین بوده و امیدوار است بسرعت زبان فوق گستردگی و مقبولیتی به مراتب بیشتر از جاوا را نزد پیاده کنندگان نرم افزار پیدا کند.

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

مطرح شدن بعنوان یک استاندارد صنعتی
انجمن تولیدکنندگان کامپیوتر اروپا (ECMA) زبان #C را در سوم اکتبر سال 2001 بعنوان یک استاندارد پذیرفته (ECMA-334) و بدنبال آن تلاش های وسیعی برای کسب گواهی ISO نیز انجام شده است. زبان فوق در ابتدا توسط شرکت مایکروسافت و بعنوان بخشی از دات نت پیاده سازی و بلافاصله پس از آن توسط شرکت های اینتل، هیولیت پاکارد و مایکروسافت مشترکا، جهت استاندارسازی پیشنهاد گردید.

زبان #C بگونه ای طراحی شده است که نه تنها وابستگی به یک Platform خاص را ندارد، بلکه در اغلب موارد وابستگی RunTime نیز ندارد. کامپایلر #C می تواند بر روی هر نوع معماری سخت افزاری طراحی و اجرا گردد. در برخی از نسخه های اولیه کامپایلر زبان فوق که توسط برخی از شرکت های جانبی ارائه شده است، کدهای #C را به بایت کدهای جاوا کمپایل می کنند. یکی از چنین کامپایلرهائی را می توان در سایت Halcyonsoft.com مشاهده نمود. بنابراین کدهای #C براحتی قابلیت حمل بر روی محیط های متفاوت را دارا خواهند بود.

مشخصات تعریف شده زبان #C با سایر استاندارهای تعریف شده ECMA نظیر (ECMA-335) CLI (Common Language Infrastructure) بخوبی مطابقت می نمایند. CLI قلب و روح دات نت و CLR(Common Language Runtime) است. اولین نسخه از کامپایلر زبان #C که از CLI استفاده می کند، NET Framwork. مایکروسافت است.

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

#C چیست ؟
طراحان زبان #C با تاکید و الگوبرداری مناسب از مزایای زبانهائی نظیر ++C، C و جاوا و نادیده گرفتن برخی از امکانات تامل برانگیز و کم استفاده شده در هر یک از زبانهای فوق، یک زبان برنامه نویسی مدرن شی گراء را طراحی کرده اند. در مواردی، برخی از ویژگی های استفاده نشده و درست درک نشده در هر یک از زبانهای گفته شده، حذف و یا با اعمال کنترل های لازم بر روی آنها، زمینه ایجاد یک زبان آسان و ایمن برای اغلب پیاده کنندگان نرم افزار بوجود آمده است. مثلا C و ++C می توانند مستقیما با استفاده از اشاره گرها عملیات دلخواه خود را در حافظه انجام دهند. وجود توانائی فوق برای نوشتن برنامه های کامپیوتری با کارائی بالا ضرورت اساسی دارد. اما در صورتیکه عملیاتی اینچنین بدرستی کنترل و هدایت نگردند، خود می تواند باعث بروز مسائل (Bugs) بیشماری گردد.

طراحان زبان #C، با درک اهمیت موضوع فوق، این ویژگی را کماکان در آن گنجانده ولی بمنظور ممانعت از استفاده نادرست و ایجاد اطمینان های لازم مسئله حفاظت نیز مورد توجه قرار گرفته است. جهت استفاده از ویژگی فوق، برنامه نویسان می بایست با صراحت و به روشنی خواسته خود را از طریق استفاده از Keyword های مربوطه اعلان نمایند( فراخوانی یک توانائی و استفاده از آن).

#C بعنوان یک زبان شی گراء عالی است. این زبان First-Class را برای مفهوم Property (Data Member) بهمراه سایر خصائص عمومی برنامه نویسی شی گراء حمایت می کند. در C و ++C و جاوا یک متد get/set اغلب برای دستیابی به ویژگی های هر Property استفاده می گردد. CLI همچنان تعریف Property را به متدهای get/ser ترجمه کرده تا بدین طریق بتواند دارای حداکثر ارتباط متقابل با سایر زبانهای برنامه نویسی باشد. #C بصورت فطری Events ، Declared Value، Reference Type ، Operator Overloading را نیز حمایت می کند.

کد مدیریت یافته
با استفاده از نسخه پیاده سازی شده #C توسط مایکروسافت، می توان همواره کد مدیریت یافته ای را تولید کرد. یک برنامه #C پس از کامپایل، بصورت برنامه ای در خواهد آمد که شامل دستورالعمل های تلفیق شده ( CIL (Common Intermediate Language است (درست بر خلاف دستورالعمل های مختص یک ماشین خاص). CIL (گاها با نام MSIL(Microsoft Intermediate Language) با به اختصار IL نیز نامیده می شود ) ، در مفهوم مشابه بایت کدهای جاوا بوده و شامل مجموعه ای از دستورالعمل های سطح پایین قابل فهم توسط تکنولوژی مبتنی بر CLI نظیر CLR مایکروسافت خواهد بود. این برنامه ها بدین دلیل کد مدیریت یافته، نامیده می شوند که CLR مسئولیت تبدیل این دستورالعمل ها به کدهای قابل اجرا برروی ماشین و ارائه اغلب سرویس های اساسی برای کدینگ نظیر : Garbage Collection، مدیریت Heap و عمر مفید یک و یا Type Verification را فراهم می کند.

روش یادگیری #C
یادگیری این زبان برای افرادیکه دارای سابقه آشنائی با یکی از زبانهای برنامه نویسی ++C، C و یا جاوا باشند کار مشکلی نخواهد بود، حتی افرادیکه دارای آشنائی اولیه با جاوااسکریپت و یا دیگر زبانهای برنامه نویسی نظیر ویژوال بیسک می باشند، امکان پذیر و راحت خواهد بود. برخی از برنامه نویسان حرفه ای بر این باور هستند که #C نسبت به VB.NET با اقبال بیشتر و سریعتری مواجه خواهد شد، چراکه #C نسبت به ویژوال بیسک خلاصه تر است. حتی برنامه های بزرگ و پیچیده ای که توسط #C نوشته می گردند خواناتر، کوتاه و زیبا خواهند بود. برخی از ویژگی های ارائه شده در #C نظیر Unsigned Integer، Operator OverLoading و امنیت بیشتر Type ها، در VB.NET وجود نداشته و این امر می تواند دلیلی بر فراگیرتر شدن #C نسبت به VB.NET نزد برنامه نویسان با تجربه باشد.

برای یادگیری هر یک از زبانهای حمایت شده در دات نت، می بایست از BCL (Basic Class Library) مربوط به NET Framework. شروع کرد. #C خود صرفا دارای ?? کلمه کلیدی یا Keyword بوده که برای اکثر برنامه نویسان غریب نخواهند بود. در مقابل BCL، دارای ???? کلاس و تعداد بیشماری متد و Property است که برنامه نویسان #C، می توانند از آنها برای انجام عملیات دلخواه خود استفاده نمایند. شاید یکی از مسائل قابل توجه جهت یادگیری این زبان برای برخی از برنامه نویسان حرفه ای عدم وجود برخی از ویژگی ها و امکاناتی باشد که در گذشته و از طریق سایر زبانهای استفاده شده، بخدمت گرفته می شدند. مثلا عدم وجود امکاناتی جهت توارث چندگانه (MI) سلسله مراتبی یک شئ.

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


مژده فرجی ::: پنج شنبه 87/8/23::: ساعت 4:34 عصر

<   <<   6   7   8   9      
>> بازدیدهای وبلاگ <<
بازدید امروز: 34


بازدید دیروز: 1


کل بازدید :61103
 
 >>اوقات شرعی <<
 
>> درباره خودم<<
مدیر وبلاگ : مژده فرجی[85]
نویسندگان وبلاگ :
سمانه طالبی (@)[0]

مژده فرجی (@)[0]


 
 
>>موسیقی وبلاگ<<
 
>>اشتراک در خبرنامه<<
 
 
>>طراح قالب<<