اثر پروانه ای

برنامه نویسی حرفه ای کامپیوتر به زبان سی شارپ - لیست کامل کلمات کلیدی در ʚĭɞ - ßữʈʨɾflỵ ⓔⓕⓕⓔⓒⓣ

اثر پروانه ای

برنامه نویسی حرفه ای کامپیوتر به زبان سی شارپ - لیست کامل کلمات کلیدی در ʚĭɞ - ßữʈʨɾflỵ ⓔⓕⓕⓔⓒⓣ

اثر پروانه ای

اثر پروانه‌ای نام پدیده‌ای است که به دلیل حساسیت سیستم‌های آشوب‌ناک به شرایط اولیه ایجاد می‌شود. این پدیده به این اشاره می‌کند که تغییری کوچک در یک سیستم آشوب‌ناک چون جو سیارهٔ زمین (مثلاً بال‌زدن پروانه) می‌تواند باعث تغییرات شدید (وقوع توفان در کشوری دیگر) در آینده شود.

ایده‌ٔ این‌که پروانه‌ای می‌تواند باعث تغییری آشوبی شود نخستین بار در ۱۹۵۲ در داستان کوتاهی به نام آوای تندر اثر ری بردبری مطرح شد. عبارت «اثر پروانه ای» هم در ۱۹۶۱ در پی مقاله‌ای از ادوارد لورنتس به وجود آمد. وی در صد و سی و نهمین اجلاس ای‌ای‌ای‌اس در سال ۱۹۷۲ مقاله‌ای با این عنوان ارائه داد که «آیا بال‌زدن پروانه‌ای در برزیل می‌تواند باعث ایجاد تندباد در تکزاس شود؟»

آخرین نظرات
  • ۱۳ بهمن ۰۱، ۱۵:۳۱ - حسنا سادات و سما سادات
    عالی

۴۹ مطلب با کلمه‌ی کلیدی «برنامه سازی» ثبت شده است

  • ۱
  • ۰

سلام.

حالا که با موفقیت نرم افزار Visual Studio 2010 رو نصب کردید. می خواهیم اولین برنامه رو بنویسیم. در آموزش برنامه نویسی همیشه اولین برنامه، برنامه سلام دنیا (Hello world) رو آموزش می دهند. به نظر من اینکار کاملا بجا و درست هست. در قالب همین برنامه ساده، کلی نکته برای یادگیری وجود داره. حداقلش اینه که یاد می گیریم چطور در اون زبان برنامه نویسی یک پیغام ساده رو به کاربر نشون بدیم. شاید به نظرتون خیلی مسخره باشه! آخه که چی؟! این برنامه چه مشکلی رو حل می کنه! من با شما موافقم! این کار مسخره هست و این برنامه هیچ مشکلی رو حل نمی کنه! اما این همه کار مسخره توی زندگیمون انجام دادیم اینم روش! (البته بعدا" متوجه خواهید شد که اونقدرا هم که فکر می کردید مسخره نیست). خوب دست بکار می شیم...

How to Run visual studio

اول از همه نرم افزاری رو که نصب کردید رو باید اجرا کنید. برای اینکار به منوی Start رفته و از زیر مجموعه All Programs به پوشه Microsoft Visual Studio 2010 رفته و برنامه Microsoft Visual Studio 2010 رو اجرا کنید. آیکن این برنامه بصورت علامت بی نهایت در ریاضی هست.

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰
سلام.

امیدوارم که اون نرم افزاری که بهتون گفته بودم رو تهیه کرده باشید. جهت یادآوری باید بگم که اون نرم افزار Microsoft Visual Studio 2010 هست. قرار بود که در این درس روش نصب این برنامه رو توضیح بدم.

این برنامه، مجموعه ای از کامپایلرها رو دربر داره. شما با همین نرم افزار می تونید به زبان های مختلفی برنامه نویسی کنید. از جمله این زبان ها می توان به ++C و #F و Visual Basic هستند که ما با اون زبان ها کاری نداریم.

دیسک نرم افزار رو داخل درایو قرار دهید. بعد از چند لحظه بصورت خودکار پنجره زیر به نمایش در خواهد اومد. اگه چنین اتفاقی نیوفتاد می تونید روی درایوی که دیسک رو داخلش گذاشتید راست کلیک کنید و گزینه Open رو انتخاب کنید. در پنجره باز شده فایل autorun.exe یا Setup.exe رو اجرا کنید. پنجره زیر فقط با اجرای Setup دیده می شود. با اجرای فایل autorun ممکنه این پنجره رو نبینید. اما نگران نباشید. مطمعنا" دکمه ای در این پنجره برای اجرای پنجره زیر وجود دارد. (کنجکاو باشید)


pic01

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

سلام.

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

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

قبل از هر چیز!

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

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

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

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

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

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

سلام...

همونطوری که قول داده بودم امروز می خوام روش های اجرای برنامه های اندرویدی نوشته شده در Eclipse رو خدمتتون توضیح بدم.

برای این کار باید یک دستگاه اندرویدی مجازی رو در کامپیوترمون درست کنیم. به این دستگاه ها اصطلاحا AVD یا Android Virtual Device می گوییم. بعد از اینکه یک AVD رو ساختید، کافیه روی دکمه Run (یه دایره کوچولوی سبز رنگ که وسطش یه مثلث سفیده) کلیک کنید. همچنین می تونید دکمه F11 صفحه کلیدتون رو فشار بدید.


روش ساختن AVD:

در نرم افزار Eclipse به منوی Window رفته و گزینه Android Virtual Device Manager کلیک کنید. در پنجره باز شده، در برگه Android Virtual Devices دکمه New را بزنید.

در پنجره Create new Android Virtual Device جلوی AVD Name ، نام وسیله مجازی رو وارد کنید. از لیست بازشو Device یک مورد را بسته به نیاز خود انتخاب کنید. دقت کنید که هرچه رزولوشن وسیله انتخابی شما از این لیست بالاتر باشد نیاز به قدرت پردازشی بیشتری خواهید داشت و برنامه شما ممکن است در سیستم های با قدرت پردازشی پایین، به کندی اجرا شود.

از قسمت Target هم یکی از گزینه ها رو انتخاب کنید. احتمالا اگه از بسته پیشنهادی ما استفاده کرده اید، فقط یک گزینه دارد (Android 4.2 - API Level 17).

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

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

سلام...

توی درس قبل دستور android create project رو تا اونجایی که لازمش داشتیم توضیح دادم. توی این درس یکسری مطالب پراکنده اما بدرد بخور رو بررسی خواهیم کرد. مثلا اینکه چطور شکل ظاهری برنامه رو دستکاری کنیم. اینکه چطور برای رویداد کلیک یک دکمه برنامه نویسی کنیم. چطور به اجزای برنامه (مثلا دکمه -Button- یا کنترل نمایش دهنده متن -TextView- و...) دسترسی داشته باشیم.

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

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

سلام دوستان...

بدون هیچ معطلی ادامه میدیم...

android create project -n firstProject -t 1 -p c:\firstProject -k ir.blog.butterfly.firstProject -a mainActivity

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

از قسمت اول دستور که کاملا مشخص هست که کار این دستور ساخته یک پروژه جدید اندروید هست.

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

سلام.

امیدوارم به اندازه کافی با بسته برنامه نویسی اندروید که بهش ADT (ابزارهای توسعه اندروید) هم می‌گن وَر رفته باشید!

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

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

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

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

همونطور که احتمالا می دونید، اندروید یک سیستم عامل متن باز بر پایه لینوکس هست. سیستم عامل هم نرم افزاری هست که مابین کاربر و سخت افزار کامپیوتر (یا هر وسیله کامپیوتری دیگه ای) قرار می‌گیره و باعث میشه تا برنامه نویس ها با سختی های برنامه نویسی برای سخت افزارها مختلف مواجهه کمتری داشته باشند و کاربران عادی از وسیله کامپیوتری خودشون لذت فوق العاده بیشتری ببرند. در کامپیوترهای PC مهمترین سیستم عامل ها، ویندوز و لینوکس هست. اما در میان تلفن های همراه می توان به سیستم عامل های اپل iOS برای گوشی ها اپل (این شرکت همیشه دوست داشته سخت افزار و نرم افزارش متعلق به خودش باشه!!) ، سیمبین که معمولا روی گوشی های نوکیا دیده می شد. (سیستم عامل های دیگه ای هم هست که بیخیال)

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

ما در این سلسله تاپیک ها بر روی برنامه نویسی این سیستم عامل با استفاده از زبان برنامه نویسی جاوا تمرکز می کنیم. هرچند می توان با زبان های دیگری از جمله خانواده C هم برای این سیستم عامل برنامه نویسی کرد.

برای دانلود ابزار مورد نیاز برای برنامه نویسی اندروید به ادامه مطلب بروید...

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

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

مدتی هست که برنامه نویسی اندروید رو شروع کرده بودم، ولی متأسفانه با درگیری‌هایی که بر سر پروژه پایانی پیدا کردم، مجال ادامه ی این کار به من نداد. البته اول قصد داشتم موضوع پروژه ام رو در همین مسیر (اندروید) انتخاب کنم که به علت یکسری بی برنامگی ها، نتونستم این کارو انجام بدم. بگذریم...

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

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

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

از این پس شما می توانید تمام مباحث مربوط به اندروید رو در موضوع اندروید مطالعه بفرمایید.

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

عبارت های لامبدا (Lambda Expressions)

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

در نگارش متدهای بی‌نام، کلمه کلیدی delegate مازاد بر احتیاج است؛ به این علت که خود کامپایلر می بیند که شما درحال انتساب متد به delegate هستید. شما می توانید با انجام کارهای زیر، بسادگی، یک متد بی‌نام را به یک عبارت لامبدا تبدیل کنید:

  • کلیدواژه delegate را حذف کنید.
  • عملگر لامبدا ( <= ) را مابین لیست پارامترها و بدنه متد بی نام قرار دهید. عملگر لامبدا بصورت "می رود به" (goes to) خوانده می‌شود.

تکه کد زیر این تبدیل را نشان می دهد. خط اول یک متد بی نام را که به متغیر del انتساب داده شده را نشان می دهد. خط دوم همان متد بی نام را بعد از آنکه به عبارت لامبدا تبدیل شده را نشان می دهد که به متغیر le1 منتسب شده است.

  • غلامعلی حسینی بهجانی