برنامه نویسی IO Stream برای ویندوز CE
در این موضوع مطالبی درباره ی برنامه نویسی دات نت برای موبایل به شما دوستان ارائه می شود.
ابتدا به این نکات توجه کنید:
1-برنامه نویسی موبایل تحت دات نت در سه بخش طبقه بندی می شود:
Pocket PC یا رایانه ی جیبی
SmartPhone یا تلفن هوشمند
و Windows CE
سایر سیستم عامل ها و پلت فرم به علاوه ی برنامه ی Appforge Crossfire مشمول این بحث نمی شوند.
2-زبان برنامه نویسی پروژه ها VB.Net و C# است.
3-برای ایجاد پروژه های خود باید از زیر مجموعه ی Smart Device استفاده کنید. نوع پروژه ها نیز عموما" Device Application است.
4-برنامه نویسی در سه بخش مذکور به دلیل محدودیت های سخت افزاری با یکدیگر متفاوت است. البته کد نویسی رایانه ی جیبی و Windows CE بسیار شبیه یکدیگر اند و اندک فرق آن ها در کنترل ها و کامپوننت ها است. دقت داشته باشیم Smartphone محدود ترین بخش محسوب می شود.
5-برای اجرای برنامه های دات نتی روی دستگاه های هوشمند باید dotNet Compact Framework روی آن ها نصب شود. نسخه ی فریم ورک برای هر سورس ذکر می گردد.
آخرین نکته مربوط به شبیه ساز ها می شود:
بدیهی است برنامه های Smart Device روی رایانه های دسکتاپ یا لپ تاپ، با ظاهر دلخواه ما قابل اجرا نمی شوند. درنتیجه برای شبیه سازی محیط دستگاه های هوشمند از نرم افزار Emulator استفاده می شود. در زمان کامپایل برنامه باید نوع Emulator را مشخص کنید.
بهتر برای برنامه های Pocket PC و Windows CE از Pocket PC SE Emulator و
برای برنامه های Smartphone از Smartphone SE Emulator استفاده کنید.
در اولین اجرای برنامه برای اشکال زدایی فرآیند Deploy اندکی طول می کشد.
مجموعه ی Visual Studio Remote Tools ، ابزاری برای مدیریت شبیه ساز ها است. به عنوان مثال می تواند رجیستری مجازی شبیه ساز را ویرایش کند و یا پروسه های مجازی شبیه ساز را نمایش دهد. برای استفاده از این ابزار ها باید شبیه ساز خود را اجرا کرده باشید.
تمامی سوالات و پیشنهاد های خود درباره ی کد ها را می توانید در این تاپیک مطرح کنید.:give_rose:
اجرا و بستن برنامه در سی شارپ طبق زمانبندی
در ابتدا نحوه ی کار با پرونده های سیستم فایل را فرا می گیریم:
در پاکت پی سی بخش My.Computer در نظر نمی گیریم و از System.IO استفاده می کنیم.
FileStream نحوه ی دسترسی به فایل را تعیین می کند.
برای خواندن و نوشتن به ترتیب می توانیم از StreamReader و StreamWriter استفاده کینم.
با نسبت دادن فایل استریم به استریم خواندن یا نوشتن می توانیم فرمان ها را اجرا نماییم.
توجه داشته باشید این گونه ی استریم برای داده های باینری نمی باشد.
یکی از مهم ترین فرمان ها به هنگام خواندن ReadToEnd است که کلیه ی محتویات فایل را بر می گرداند.
نوشتن اطلاعات در یک فایل اندکی دردسر دارد: شما با دستور Write داده ها را وارد بافر می کنید و تا زمانی که دستور Close برای استریم نوشتن صادر نشود، مقادیر بافر در فایل تخلیه نمی گردد.
برای شروع و سورس یک دفترچه یادداشت ساده را قرار می دهم. در این برنامه علاوه بر موارد بالا، خطوطی برای کنترل خاصیت گرافیکی برنامه وجود دارد:
17 کیلوبایت - سورس VB.Net 2005
Windows CE 5 یا نسخه ی بالا تر
همراه با نسخه ی dotNet Comapct Framework 2 یا جدیدتر
پاسخ: مباحث برنامه نویسی موبایل تحت چارچوب دات نت
کاربران و دوستان گرامی رو در شرکت در این تاپیک دعوت میکنم .. ایشالا بحث برنامه نویسی موبایل با پلاتفرم جاوا هم شروع خواهد شد . با تشکر
پاسخ: مباحث برنامه نویسی موبایل تحت چارچوب دات نت
ممنون از اطلاعاتی که قرار دادی آرمین عزیز :11():
چند تا سوال:
برنامه نویسی SmartPhone ها شامل چه OS هایی میشه ؟!
نحوه ی کد نویسی یک نرم افزار PC با Mobile فرق داره ؟!
آموزش ها رو قراره چجوری شروع کنید ؟
حتما برای شروع کار نصب Visual Studio کافی است ؟!
در کل اگر متوجه موضوع بشم در زمینه کدنویسی #C می تونم کمک کنم ! :give_rose:
پاسخ: مباحث برنامه نویسی موبایل تحت چارچوب دات نت
علی جان برای برنامه نویسی موبایل دات نت نیاز به برنامه اضافی نیست .. توی Visual Studio پروژه Smart Device رو انتخاب میکنی و خودش براتون اسکرین گوشی رو میزاره تا روش طراحی کنین .. مثل برنامه های معمولی فرمی .. برای اجرا هم خودش Emulatorداره .. Smart Phone ها شامل سیستم عامل های Windows Mobile - Windows CE برای دستگاه های PDA هستند ... برای سیستم عامل Symbian هم میشه توی دات نت برنامه نوشت اما SDK ی مخصوص خودشو میخواد که فعلا پولیه ..
پاسخ: مباحث برنامه نویسی موبایل تحت چارچوب دات نت
نقل قول:
ممنون از اطلاعاتی که قرار دادی آرمین عزیز :11():
چند تا سوال:
برنامه نویسی SmartPhone ها شامل چه OS هایی میشه ؟!
نحوه ی کد نویسی یک نرم افزار PC با Mobile فرق داره ؟!
آموزش ها رو قراره چجوری شروع کنید ؟
حتما برای شروع کار نصب Visual Studio کافی است ؟!
در کل اگر متوجه موضوع بشم در زمینه کدنویسی #C می تونم کمک کنم ! :give_rose:
سلام علی جان!
مبین جان پاسخ کاملی دادند.
-در مورد Smartphone ما فقط با برای مشاهده این لینک/عکس می بایست عضو شوید !برای عضویت اینجا کلیک کنید ] کار می کنیم (از نسخه ی 2003 به بعد با فریم ورک 1.0 یا جدیدتر). برای WinCE هم جدا برنامه می نویسیم.
-به طور کلی کلاس ها و کتابخانه ها تغییر می کنند چون سخت افزار ها متفاوت اند. دستورات همونه. مهم ترین تغییر هم مربوط به کنترل ها و کامپوننت هاست. به مرور به همه چیز میشه آشنا شد. زیاد زمان بر نیست.
-در اول کار آموزش های معادل سازی کد ها، کد های پایه، برنامه های کاربردی و آشنایی با کنترل هاست. بعدا" به امید خدا، سطوح کد نویسی پایین تر + کار با مرجع ها و ساخت کنترل کاربر هستش.:1. (26):
من خودم بیش تر روی WinCE مانور می دم چون سیستم عامل منعطفیه.
هر کدوم از دوستان هر سورسی بذارند ما هم استقبال می کنیم. من یه کد سی شارپ برای PocketPC می ذارم تا با شرایط هماهنگ بشی. دیگه با استعدادی که داری خودت می تونه این جا پروژه بذاری.:1. (10):
موفق باشی
آرمین:11():
پاسخ: مباحث برنامه نویسی موبایل تحت چارچوب دات نت
در عکس زیر مشاهده می کنید که تمامی IDE کار مثل برنامه های معمولی هستند که توی Form Application نوشته می شه :
برای مشاهده این لینک/عکس می بایست عضو شوید !برای عضویت اینجا کلیک کنید ]
پاسخ: مباحث برنامه نویسی موبایل تحت چارچوب دات نت
بهتره این برنامه هارو روی دستگاه PDA هم تست بشه که به عینه ببینیم برنامه رو ( متاسفانه ما که PDA یا موبایلی که Windows رو پشتیبانی کنه نداریم :دی )
پاسخ: مباحث برنامه نویسی موبایل تحت چارچوب دات نت
با سلام!
نقل قول:
بهتره این برنامه هارو روی دستگاه PDA هم تست بشه که به عینه ببینیم برنامه رو ( متاسفانه ما که PDA یا موبایلی که Windows رو پشتیبانی کنه نداریم :دی )
بنده هم با این عمل موافقم. اکثر سورس هایی که این جا می ذارم به طور واقعی روی پاکت پی سی اجرا شده به جز اونایی که نسخه ی ناپایدارند.:1. (26):
ـــــــــــــــــــــــــ ــــــــــ
در این جا چند نکته ای از کلاس گرافیک می گم...!چون این تاپیک با استقبال مواجه نشده، من به شخصه سورس پایه نمی ذارم و سورس ها رو همه رو کاربردی قرار می دم.:1. (28):
کلاس گرافیک در WinCE:
در این کلاس با محدودیت های زیادی مواجه هستیم. بخش Render از خاصیت High Quality پشتیبانی نمی کنه و ترسیم به حالت عادی صورت می گیره.
برای استفاده از برس ها باید به سراغ SolidBrush برید.
خوشبختانه متد های Drawing به طور کامل در دسترس هستند.
موارد مربوط به عمق رنگ هم هیچ تفاوت چندانی نداره.
در پست های آینده یه کامپوننت قرار نی دم که موارد بالا رو واضح نشون بده.:wink:
شاد باشید
آرمین:11():
پاسخ: مباحث برنامه نویسی موبایل تحت چارچوب دات نت
سلام
ممنون استاد آرمین از آموزش هاتون
ولی به آموزش xamarin اشاره ای میشد ، خیلی خوب بود (هر چند در زمان شروع تاپیک ، زامارین وجود نداشت)
من یه سئوال درباره ی زامارین هم داشتم . اینکه خیلی ها و خود گوگل میگه از جاوا و android studio برای برنامه نویسی اندروید استفاده کنید
ولی چه فرقی دارن؟ مهمترین چیزش که sdk شه که اگه اشتباه نکنم ، دقیق همون sdk ای که در android studio برای اندروید هست ، همون هم برای زامارین هم تعبیه شده .
زبان سی شارپ هم که کم از زبان جاوا نداره . پس تفاوت شون چیه؟!
پاسخ: مباحث برنامه نویسی موبایل تحت چارچوب دات نت
نقل قول:
...
من یه سئوال درباره ی زامارین هم داشتم . اینکه خیلی ها و خود گوگل میگه از جاوا و android studio برای برنامه نویسی اندروید استفاده کنید
ولی چه فرقی دارن؟ مهمترین چیزش که sdk شه که اگه اشتباه نکنم ، دقیق همون sdk ای که در android studio برای اندروید هست ، همون هم برای زامارین هم تعبیه شده .
زبان سی شارپ هم که کم از زبان جاوا نداره . پس تفاوت شون چیه؟!
سلام،
سجاد جان منظورت رو از SDK متوجه نمیشم!
اندروید شامل دسته ای از Native API ها هستش که در Android Studio به شکل مستقیم بهشون دسترسی داریم. ولی در Xamarin به واسه ی Mono میشه از Native API ها بهره برد. در نتیجه برنامه ی ساخته شده با Xamarin کند تر از Android Studio عمل میکنه. اما در مقابل Cross-platform هستش و میشه همون برنامه رو برای iOS یا ویندوز هم کامپایل کرد بدون اینکه نیازی به تغییر سورس کد باشه.
تفاوت بالا یک فرق بنیادی بین این دو محسوب میشه. ولی استفاده از هر کدوم بیش تر سلیقه ای...
اطلاعات بیش تر:
برای مشاهده این لینک/عکس می بایست عضو شوید !برای عضویت اینجا کلیک کنید ]
برای مشاهده این لینک/عکس می بایست عضو شوید !برای عضویت اینجا کلیک کنید ]
پاسخ: مباحث برنامه نویسی موبایل تحت چارچوب دات نت
نقل قول:
سلام،
سجاد جان منظورت رو از SDK متوجه نمیشم!
اندروید شامل دسته ای از Native API ها هستش که در Android Studio به شکل مستقیم بهشون دسترسی داریم. ولی در Xamarin به واسه ی Mono میشه از Native API ها بهره برد. در نتیجه برنامه ی ساخته شده با Xamarin کند تر از Android Studio عمل میکنه. اما در مقابل Cross-platform هستش و میشه همون برنامه رو برای iOS یا ویندوز هم کامپایل کرد بدون اینکه نیازی به تغییر سورس کد باشه.
تفاوت بالا یک فرق بنیادی بین این دو محسوب میشه. ولی استفاده از هر کدوم بیش تر سلیقه ای...
اطلاعات بیش تر:
برای مشاهده این لینک/عکس می بایست عضو شوید !برای عضویت اینجا کلیک کنید ]
برای مشاهده این لینک/عکس می بایست عضو شوید !برای عضویت اینجا کلیک کنید ]
سلام
آها ممنون استاد آرمین
یعنی در قدرت برنامه نویسی ، بین پروژه های زامارین و اندروید استودیو فرقی وجود نداره؟
یعنی هر برنامه ای که توی اندروید استودیو بشه نوشت را توی زامارین هم میشه نوشت؟
پاسخ: مباحث برنامه نویسی موبایل تحت چارچوب دات نت
نقل قول:
سلام
آها ممنون استاد آرمین
یعنی در قدرت برنامه نویسی ، بین پروژه های زامارین و اندروید استودیو فرقی وجود نداره؟
یعنی هر برنامه ای که توی اندروید استودیو بشه نوشت را توی زامارین هم میشه نوشت؟
بی شک تو سطح Native دست ما باز تره. اما در Xamarin اکثر قریب به اتفاق توابع Native پوشش داده شده.
با این حال چون بنده تجربه ی چندانی در مورد این دو ندارم، نمی تونم با صراحت بگم که هر برنامه ای که توی اندروید استودیو بشه نوشت را توی زامارین هم میشه نوشت!