نکته: من توی فصل قبل از مشکلات برنامه نویسی ویندوزفون گفته بودم:

  1. وقتی شما برنامه ای رو به پایان میرسونید نمیتونید اون رو مستقیم توی گوشیتون نصب کنید، برنامه حتما باید برای استورِ ماکروسافت ارسال بشه و اونها برنامه رو توی استور قرار بدن تا شما بتونید اون رو امتحان کنید!
    که یکی از کاربران سایت خوب وین فون سنتر گفتن که اشتباه میکنم و میشه توی موبایل خودتون با استفاده از کابل موبایلتون برنامه ـتون رو توی موبایل نصب کرد که من حتی امتحان کردم و جواب هم داد. ممنون از جناب pishro67 و iRos عزیز.
    آموزش نصب برنامه های خودمون توی ویندوزفونمون:
    موارد مورد نیاز:
    Windows Phone SDK 8.0 و WindowsPhonePowerTools که SDK 8 رو نصب کردید، چون اگه نکرده بودید برنامه نمیتونستید بنویسید دیگه! اون یکی هم از اینجا میتونید دانلود کنید. (لینک کمکی دانلود)
    یک نکته ی جالب در مورد برنامه WindowsPhonePowerTools اینه که خودش با دات نت نوشته شده! (که یا میتونه سی شارپ باشه یا ویژوال بیسیک دات نت یا سی پلاس پلاس دات نت، که من به جرات میگم که با سی شارپ نوشته شده)
    بریم سراغ آموزش،
    اگه اکانتتون Developer نباشه، اینکار رو انجام بدید:
    اول باید اکانتی که توی تلفونتون به ماکروسافت معرفی کردید رو توی آدرس زیر، لوگین کنید: Windows App Studio - Create free apps for Windows Phone, Surface tablets and PCs | Microsoft
    و اون رو بع عنوان توسعه دهنده (Developer) تغییر بدید.
    برای اینکار فقط لازمه یک برنامه ساده توی سایت بالا بسازید که ماکروسافت بفهمه شما توسعه دهنده هستید.
    پس از لوگین کردن ایمیلتون، مانند شکلِ زیر روی Start New Project کلیک کنید.

سپس روی Empty App کلیک کنید

روی Create کلیک کنید:

مانند عکس عمل کنید

و در آخر:

بعدش یک صفحه باز میشه که میزنه Generated.
الآن توی ماکروسافت شما رو به عنوان توسعه دهنده میشناسن!
خب حالا موبایلتون رو به کامپیوتر وصل کنید، اگه توی محیط استارت باشه که چه بهتر، نزارید صفحه ی موبایلتون خاموش بشه.
توی جستجوی استارت ویندوز 8 یا 8.1 کلمه ی Registrationرو جستجو کنید و برنامه ی Windows Phone Developer Registration رو باز کنید:

راستی باید کامپیوترتون به اینترنت وصل باشه!
خب اگه گوشیتون وصل نباشه یا صفحه ـش قفل باشه، با این صفحه مواجه میشید:

حالا اومدیم و گوشی وصل بود، صفحه ی گوشی هم روشن بود، اما با این خطا روبه رو شدیم، چیکار کنیم؟ واسه ویندوزفون8 نوشته که مطمئن باشید که IpOverUsbSvc حتما در حال اجرا باشه که معمولا هست.
حالا به کنترل پنل برید و گزینه Administrative Tools رو باز کنید:

بعد Services رو باز کنید:

خب حالا به دنبال Windows Phone IP over USB Transport بگردید و روی اون راست کلیک کنید و Restart رو انتخاب کنید.

خب حالا صفحه موبایلتون رو روشن کنید و بعدش به همون برنامه ی Windows Phone Developer Registration برگردید و روی Retry کلیک کنید، بعد با گزینه زیر مواجه میشید:

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

الآن گوشیه شما آنلاک شده و میتونید با برنامه WindowsPhonePowerTools چهار برنامه رو روی موبایلتون نصب کنید، چون ما فقط واسه تست روی گوشیمون برنامه هامون رو میریزیم، بعد از هر باز تست کردن، اون ها رو حتما Unistall کنید تا برنامه WindowsPhonePowerTools نگه که شما فقط دوتا برنامه میتونید نصب کنید(البته میگن واسه کاربرای معمولی دوتاست اما واسه توسعه دهنده ها 10تاست)!

خب توی فصل قبل ما تونستیم SDK 8 رو نصب کنیم، کار با ویژوال استودیو رو یاد گرفتیم و حتی تونستیم یک برنامه کوچولو هم برای ویندوزفون بسازیم. امیدوارم تا اینجا برنامه نویسی ویندوزفون توسط زبان سی شارپ، واستون سخت نبوده باشه(کلا یک خط کد که بیشتر استفاده نکردیم!).
توی این فصل ما به کلمات کلیدی و ساخت متغیر و ... بیشتر توجه میکنیم و با همدیگه برنامه ی جدیدی رو میسازیم.

راه حلهای ویژوال استودیو:

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

داده ﻫﺎ و اﻃﻼﻋﺎت:
اﻃﻼﻋﺎت ﺑﻪ ﺗﻮﺿﻴﺤﺎتی ﮔﻔﺘﻪ ﻣﻴﺸﻮد ﻛﻪ راﺟﻊ ﺑﻪ واقعیتی ﺑﻴﺎن ﻣﻲ ﺷﻮد، اﻳﻦ اﻃﻼﻋﺎت در ﻫﺮ ﻗﺎلبی ﺟﻤﻊ آوری و ﻳﺎ اراﺋﻪ ﺷﻮﻧﺪ، ﺑﻪ ﮔﻮﻧﻪ ای ﻛﻪ ﺑﺮاي درك ﺗﻮﺳﻂ ﻛﺎﻣﭙﻴﻮﺗﺮﻫﺎ و ﻳﺎ اﻧﺴﺎﻧﻬﺎ ﻣﻨﺎﺳﺐ ﺑﺎﺷﺪ، ﻣﺜﻼ اﮔﺮ ﺷﻤﺎ ﭼﻨﺪ ﻧﻔـﺮ را ﺑـﺮای ﺑﺮرسی وﺿـﻌﻴﺖ ﺗﺮاﻓﻴـﻚ ﺑـﻪ ﭼﻨﺪﻳﻦ ﭼﻬﺎرراه ﻣﺨﺘﻠﻒ ﺑﻔﺮﺳﺘﻴﺪ، در ﭘﺎﻳﺎن ﻛﺎر ﺑﺎ ﭼﻨﺪ ﮔﺰارش دﺳﺖ ﻧﻮﻳﺲ ﻛﻪ وﺿﻌﻴﺖ ﻋﺒﻮر ﻣﺎﺷﻴﻨﻬﺎ را در ﭼﻬﺎرراه ﻫﺎي ﻣﺨﺘﻠـﻒ ﺑﻴـﺎن ﻣﻲ ﻛﻨﺪ روﺑﺮو ﻣﻲ ﺷﻮﻳد. اﻳﻦ ﮔﺰارﺷﺎت را ﻣﻴﺘﻮان اﻃﻼﻋﺎتی در ﻧﻈﺮ ﮔﺮﻓﺖ ﻛﻪ ﺑﺮای اﻧﺴﺎن ﻗﺎﺑﻞ ﻓﻬﻢ هستند.
ﺑﻪ اﻃﻼﻋﺎت ﺟﻤﻊ آوري ﺷﺪه، ﻣﺮﺗﺐ ﺷﺪه و ﻗﺎﻟﺐ ﺑﻨﺪی ﺷﺪه، ﺑﻪ ﻧﺤﻮی ﻛﻪ ﺗﻮﺳﻂ قسمتی از ﺑﺮﻧﺎﻣﻪ ﻫﺎی ﻛﺎﻣﭙﻴﻮﺗﺮی ﻗﺎﺑﻞ اﺳﺘﻔﺎده ﺑﺎﺷﺪ، داده می ﮔﻮﻳﻨﺪ. اﻃﻼﻋﺎتی ﻛﻪ ﺷﻤﺎ دارید (ﭼﻨﺪﻳﻦ دﻓﺘﺮ ﭘﺮ از ﻣﺘﻨﻬﺎی دﺳﺖ ﻧﻮیس) به وسیله نرم افزار های ویندوزفونی قابل استفاده نیستند برای تبدیل آنها به داده های قابل استفاده توسط موبایل، باید چندین نفر روی آنها کار کنند و قالب آن را تغییر دهند.

الگوریتم ها:
ﺻﻨﻌﺖ موبایل ﺑﻪ اﻳﻦ ﻣﻌﺮوف اﺳﺖ ﻛﻪ ﺑﺎ ﺳﺮﻋﺘﻲ ﺑﺎورﻧﻜﺮدﻧﻲ در ﺣﺎل ﺗﻐﻴﻴﺮ اﺳﺖ.
ﺑﻴﺸﺘﺮ ﻣﺘﺨﺼﺼﺎن اﻳﻦ رﺷﺘﻪ در ﺗﻤﺎم دوران ﻓﻌﺎﻟﻴـﺖ ﺧﻮد، داﺋﻤﺎ در ﺣﺎل ﻫﺴﺘﻨﺪ ﺗﺎ اﻃﻼﻋﺎت ﺧﻮد را ﺑﻪ روز ﻧﮕﻪ دارند.
ﺑﺮاي ﻛﺎر ﻛﺮدن ﻳﻚ ﻧﺮم اﻓﺰار، ﻳﻚ ﺳﺮي داده ﻧﻴﺎز اﺳﺖ ﻛﻪ روی آﻧﻬﺎ ﭘﺮدازش اﻧﺠﺎم ﺷﻮد. ﻧﺮم اﻓﺰار اﻳﻦ داده ﻫﺎ را درﻳﺎﻓﺖ ﻣﻴﻜﻨﺪ و ﺑـﻪ ﻓﺮمی دﻳﮕﺮ ﺗﺒﺪﻳﻞ ﻣﻴﻜﻨﺪ و اراﺋﻪ می دهد. .ﺑﺮاي ﻣﺜﺎل، ﻳﻚ ﺑﺮﻧﺎﻣﻪ ﺑﺎﻧﻚ اﻃﻼﻋﺎتی، اﻃﻼﻋﺎت ﻣﺸﺘﺮﻳﺎن ﺷﻤﺎ را ﻛﻪ ﺑﻪ ﺻﻮرت ﺻﻔﺮ و ﻳﻚ ﻧﻮﺷﺘﻪ ﺷﺪه اﺳﺖ درﻳﺎﻓﺖ ﻣﻲ ﻛﻨﺪ و آﻧﻬﺎ را ﺑﺮاي ﺷﻤﺎ در صفحه نمایش، ﻧﻤﺎﻳﺶ ﻣﻲ دهد، یا سرویس تلفن شما، مدت زمان تماسهای شما را ذخیره کرده و صورت حساب ها را بر اساس این اطلاعات تولید میکند.
اﻣﺎ اﺳﺎس ﻓﻌﺎﻟﻴﺖ ﻫﻤﻪ اﻳﻦ ﻧﺮم اﻓﺰارﻫﺎ، اﻟﮕﻮرﻳﺘﻢ آﻧﻬﺎ است. ﻗﺒﻞ از اﻳﻨﻜﻪ ﺷﻤﺎ ﺑﺘﻮاﻧﻴﺪ برنامه ای ﺑﻨﻮﻳﺴﻴﺪ ﺗﺎ ﻣﺴﺌﻠﻪ ای را ﺣﻞ ﻛﻨﺪ، اﺑﺘـﺪا ﺑﺎﻳﺪ آن را ﺑﻪ ﭼﻨﺪ ﻣﺴﺌﻠﻪ ﻛﻮﭼﻜﺘﺮ ﺗﻘﺴﻴﻢ کنید و ﭼﮕﻮنگی ﺣﻞ اﻳﻦ ﻣﺴﺎﻳﻞ را ﻗﺪم ﺑﻪ ﻗﺪم ﺗﻮﺿـﻴﺢ دﻫﻴـد. اﻟﮕـﻮرﻳﺘﻢ ﺑﺮﻧﺎﻣـﻪ ﻫـﺎ ﻛـﺎﻣﻼ ﻣﺴﺘﻘﻞ از زﺑﺎن ﺑﺮﻧﺎﻣﻪ ﻧﻮیسی اﺳﺖ ﻛﻪ ﺑﺮای ﻧﻮﺷﺘﻦ ﺑﺮﻧﺎﻣﻪ از آن اﺳﺘﻔﺎده میکنید. بنابراین شما میتوانید الگوریتم یک برنامه را به هر نحوی که به شما کمک میکند تا مسئله را درک کنید بازگو کنید. مثلا میتوانید آن را به زبانی که با آن صحبت میکنید برای خودتان توضیح دهید و یا آنکه به وسلیه شکل ها و نمودارها رسم کنید.
ﻓﺮض ﻛﻨﻴﺪ ﺷﻤﺎ ﺑﺮاي ﻳﻚ ﺷﺮﻛﺖ ﺧﺪﻣﺎت تلفنی ﻛﺎر ﻣﻴﻜﻨﻴﺪ و ﻣﻴﺨﻮاﻫﻴﺪ ﺻﻮرت ﺣﺴﺎب ﻣﺸﺘﺮﻛﻴﻦ را ﺑﺮ اﺳﺎس ﺗﻤﺎﺳﻬﺎیی ﻛﻪ ﮔﺮﻓﺘﻪ اﻧﺪ ﻣﺸﺨﺺ ﻛﻨﻴﺪ. اﻟﮕﻮریتمی ﻛﻪ ﺑﺮای ﺣﻞ ﻣﺴﺌﻠﻪ ﺑﺎﻻ ﻣﻴﺘﻮاﻧﻴﺪ ﺑﻪ ﻛﺎر ﺑﺒﺮﻳﺪ، ﻣﻴﺘﻮاﻧﺪ ﻣﺸﺎﺑﻪ اﻟﮕﻮرﻳﺘﻢ زﻳﺮ ﺑﺎﺷﺪ:

  1. در اﺑﺘﺪای ﻫﺮ ﻣﺎه ﺷﻤﺎ ﺑﺎﻳﺪ ﺻﻮرت ﺣﺴﺎب ﻫﺮ ﻳﻚ از ﻣﺸﺘﺮﻛﻴﻦ ﺧﻮد را ﻣﺤﺎﺳﺒﻪ ﻛﻨﻴﺪ.
  2. ﺑﺮای ﻫﺮ ﻣﺸﺘﺮك، ﺷﻤﺎ ﻟﻴﺴﺖ ﺗﻤﺎﺳﻬﺎیی ﻛﻪ آن ﻣﺸﺘﺮك در ﻣﺎه ﻗﺒﻞ ﮔﺮﻓﺘﻪ اﺳﺖ را دارﻳﺪ.
  3. ﺷﻤﺎ ﻣﺪت ﻫﺮ ﺗﻤﺎس و ﺳﺎﻋﺘﻲ ﻛﻪ آن ﺗﻤﺎس ﮔﺮﻓﺘﻪ ﺷﺪه ﺑﻮد را ﻣﻴﺪاﻧﻴﺪ و ﺑﺮ اﺳﺎس اﻳﻦ اﻃﻼﻋﺎت ﻣﻴﺘﻮاﻧﻴﺪ ﻫﺰﻳﻨﻪ ﻫﺮ ﺗﻤﺎس را ﻣﺸﺨﺺ ﻛﻨﻴﺪ.
  4. ﺑﺮاي ﻫﺮ ﻣﺸﺘﺮك، ﺻﻮرت ﺣﺴﺎب او ﺑﺮاﺑﺮ اﺳﺖ ﺑﺎ ﻣﺠﻤﻮع ﻫﺰﻳﻨﻪ ﺗﻤﺎم ﺗﻤﺎﺳﻬﺎﻳﻲ ﻛﻪ داﺷﺘﻪ اﺳﺖ.
  5. ﻣﺎﻟﻴﺎت ﻫﺮ ﺻﻮرت ﺣﺴﺎب را ﻣﺤﺎﺳﺒﻪ ﻣﻲ ﻛﻨﻴﺪ.
  6. ﺑﻌﺪ از اﻳﻦ ﻛﻪ ﺻﻮرت ﺣﺴﺎب ﻧﻬﺎﻳﻲ ﻣﺤﺎﺳﺒﻪ ﺷﺪ، ﺑﺎﻳﺪ آن را ﭼﺎپ ﻛﻨﻴﺪ.

اﻳﻦ ﺷﺶ ﻣﺮﺣﻠﻪ، اﻟﮕﻮرﻳﺘﻢ قسمتی از ﻧﺮم اﻓﺰاری اﺳﺖ ﻛﻪ ﻫﺰﻳﻨﻪ ﻣﺎﻫﻴﺎﻧﻪ ﻣﺸﺘﺮﻛﻴﻦ ﻳﻚ ﻣﺮﻛﺰ ﺧﺪﻣﺎت تلفنی را ﻣﺤﺎﺳﺒﻪ ﻣﻴﻜﻨﺪ، تفاوتی ندارد شما این نرم افزار را با چه زبان برنامه نویسی مینویسید(سی شارپ، ویژوال بیسیک یا C++.NET) الگوریتمِ کلی برنامه تغییری نمیکند. (البته این شش مرحله هم خیلی کلی هستند و باید قبل از این که به وسیله یک زبان برنامه نویسی نوشته شوند به مراحل کوچکتر شکسته شود و جزئیات بیشتری از آن شرح داده شود.
ﺣﺎﻻ ﺑﺮاي اﻓﺮادي ﻛﻪ ﺗﺎزه وارد ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﻲ ﺷﺪه اﻧﺪ، یک خبر خوب و یک خبر بد دارم، ﺧﺒﺮ ﺧﻮب اﻳﻦ اﺳﺖ ﻛﻪ ﻣﻌﻤـﻮﻻ اﻳﺠـﺎد ﻳـﻚ اﻟﮕﻮرﻳﺘﻢ ﺑﺴﻴﺎر ﺳﺎده اﺳﺖ. ﻣﺜﻼ در اﻟﮕﻮرﻳﺘﻢ قبلی، ﻓﻜﺮ ﻧﻜﻨﻢ قسمتی ﺑﻪ ﻧﻈﺮ ﺷﻤﺎ ﮔﻨﮓ ﺑﺎﺷﺪ و واﺿﺢ ﺑﻪ ﻧﻈﺮ نرسد. ﻣﻌﻤﻮﻻ اﻟﮕﻮرﻳﺘﻢ ﻫﺎ از ﻳﻚ ﺳﺮی اﺳﺘﺪﻻل ﻫﺎیی ﭘﻴﺮوی ﻣﻴﻜﻨﻨﺪ ﻛﻪ از ﻧﻈﺮ ﻣﺮدم ﻋﺎدی درﺳﺖ است. اﻟﺒﺘﻪ ﻣﻤﻜﻦ اﺳﺖ ﻛﻪ ﺷﻤﺎ ﺑﺎ اﻟﮕـﻮرﻳﺘﻢ ﻫـﺎیی ﺑﺮﺧـﻮرد ﻛﻨﻴﺪ ﻛﻪ دارای ﻓﺮﻣﻮﻟﻬﺎی ﭘﻴﭽﻴﺪه رﻳﺎضی و ﻳﺎ ﻓﺮﻣﻮﻟﻬﺎی دﻳﮕﺮ ﻋﻠﻮم ﺑﺎﺷﻨﺪ و ﺗﺼﻮر ﻛﻨﻴﺪ ﻛﻪ اﻳﻦ ﻓﺮﻣﻮل ﻫﺎ ﺑﺎ اﺳﺘﺪﻻل ﻫﺎی ﺷﻤﺎ درﺳﺖ ﺑﻪ ﻧﻈﺮ نمی رﺳﻨﺪ، اﻣﺎ ﺧﻮب اﻳﻦ ﻓﺮﻣﻮل ﻫﺎ ﻫﻢ از ﻧﻈﺮ اﻓﺮاد دﻳﮕﺮی ﻛﻪ آﻧﻬﺎ را ﻣﻴﺪاﻧﻨﺪ درﺳﺖ ﺑﻪ ﻧﻈﺮ ﻣﻴﺮﺳﺪ. .اﻣﺎ ﺧﺒﺮ ﺑﺪ اﻳـﻦ اﺳـﺖ ﻛـﻪ ﻣﻌﻤﻮﻻ ﺗﺒﺪﻳﻞ ﻳﻚ اﻟﮕﻮرﻳﺘﻢ ﺑﻪ ﻛﺪ ﺑﺮﻧﺎﻣﻪ ﻛﺎر مشکلی اﺳﺖ. بنابراﻳﻦ ﺑﻪ ﻋﻨﻮان ﻳﻚ ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺲ اﻳﻦ ﻛﻪ ﺑﺪاﻧﻴﺪ ﭼﮕﻮﻧﻪ ﻳﻚ اﻟﮕـﻮرﻳﺘﻢ را ﺗﻮﺳﻂ ﻳﻚ زﺑﺎن ﺑﺮﻧﺎﻣﻪ ﻧﻮیسی ﭘﻴﺎده ﻛﻨﻴﺪ ﻣﻬﻢ است.
ﻫﻤﻪ ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﺎن ﺣﺮﻓﻪ ای ﺑﺮ اﻳﻦ اﺻﻞ ﻋﻘﻴﺪه دارﻧﺪ ﻛﻪ ﺗﻘﺪم ﻳﻚ زﺑﺎن ﺑﺮﻧﺎﻣﻪ ﻧﻮیسی ﺑﺮ زﺑﺎن ﺑﺮﻧﺎﻣﻪ ﻧﻮیسی دیگر، ﻛـﺎﻣﻼ بی رﺑـﻂ اﺳﺖ. زبانهای برنامه نویسی متفاوت میتوانند کارهای مختلفی را راحت تر و سریعتر انجام دهند، مثلا C++ به برنامه نویسان قدرت زیادی در کنترل نحوه ی اجرای برنامه میدهد و همچنین برنامه های آن نیز از سرعت اجرای بالایی برخوردار هستند، اما بدی آن این است که برنامه نویسی به این زبان بسیار مشکل است و یادگیری آن برای مبتدیان معمولا بسیار سخت است. در مقابل برنامه نویسی و یادگیری زبان ویژوال بیسیک بسیار راحت تر است، اما برنامه نویس در این زبان کنترل کافی بر روی برنامه ندارد(منظور Visual Basic است نه Visual Basic.NET) (زبان C# همانطور که ادعا شده است، زبانی است که از سادگی زبانی مانند ویژوال بیسیک و قدرت زبانی مانند C++ برخوردار است). چیزی که شما باید به عنوا یک برنامه نویس یاد بگیرید این است که بتوانید برای حل یک مسئله، زبانهای برنامه نویسی مختلف را بررسی کنید. البته زمانی که شروع به یادگیری اولین زبان برنامه نویسی میکنید، در آن پیشرفت کندی خواهید داشت، اما معمولا زبانهای برنامه نویسی در نحوه اجرا و پیاده کردن الگوریتم ها تفاوتی ندارند. بنابراین زمانی که یک زبان برنامه نویسی را یاد گرفتید، میتوانید از تجربه خود در الگوریتم ها و یا حتی کد زبان قبلی در زبان جدید نیز استفاده کرده و چندین زبان را به سرعت یاد بگیرید.(این چند خط درباره ی برنامه نویسی کامپیوتر بود.) {در کل اینجا اگه شما سی شارپ یاد بگیرید، میتونید جاوا، اندروید، سی پلاس پلاس رو هم به سرعت یاد بگیرید، چون تقریبا کدهای مشابهی دارند)
این فصل 32 برگه هست و اینجا جا نمیشد. کتاب رو دانلود کنید یا اینکه توی سایتِ خودم متن رو بخونید.

دانلود کتاب فصل دوم

منبع: رامتینک