01-03-2012، 10:30 AM
در اين مقاله به سراغ روش سختتر، يعني استفاده از كد بومي ويندوز موبايل ميرويم. روش آسانتر (كار با داتنت فشرده) در مقاله جداگانهاي در همين شماره از مجله توضيح داده شده است. زبان اصلي كد بومي ويندوز ++C است. اين زبان فوقالعاده دشوار و پيچيده است؛ زيرا با منطق و زباني نزديك به زبان ماشين كار ميكند، اما چرا كد بومي ويندوز موبايل با اين زبان نوشته شده است؟ علت اين است كه ويندوز CE اساساً براي وسايل ديجيتالي كوچك طراحي شده است و چون اين وسايل جاي كمي براي پردازش و ذخيرهسازي دادهها دارند، بايد زيربناي نرمافزارها (footprint) بسيار كوچك باشد.
بنابراين لازم بوده است از زباني نزديك به زبان ماشين استفاده شود تا برنامهها با حداقل حجم و حداكثر كارايي و سرعت اجرا شوند. خالي از لطف نيست كه بدانيد حجم اغلب برنامههايي كه با اين روش براي ويندوز موبايل توليد ميكنيد، به كوچكي ويروسهاي كامپيوتري هستند كه روي پيسيها پرسه ميزنند! متأسفانه بار اصلي اين مدل برنامهنويسي به دوش سازنده نرمافزار است و راه گريزي وجود ندارد.
کد 1
در اين مقاله ميكوشيم فضاي پيچيده برنامهنويسي ++C را كمي ساده كنيم و با حال و هواي كدنويسي در اين محيط مأنوس شويم. براي اجراي مثالي كه در ادامه مقاله تشريح شده است، بايد از ابزار Visual C++ 2005 استفاده كنيد كه همراه ويژوال استوديوي 2005 نصب ميشود.
توصيه ميكنم براي محكمكاري، SDK ويندوز موبايل 5 را نيز دانلود و نصب كنيد تا مشكلي پيش نيايد. نزديك به هشتاد مثال برنامهنويسي با كد بومي ويندوز موبايل نيز در اين SDK موجود است. نصب داتنت 2 يا SQL Mobileدغدغه اين مقاله نيست.
کد 2
برنامههاي تحت ويندوز موبايل عمدتاً پنج نوع هستند: Win32 Exe ،Win32 DLL ،MFC ،ATL و يك نوع Console Application را نيز ميتوان اضافه كرد. نوع اول مهمترين است و مثال اين مقاله نيز از همين نوع است. نوع دوم براي توليد سرويسهاي سيستمعامل (مانند پلاگينهاي قابل نصب روي دسكتاپ كوچك ويندوز موبايل) مناسب است.
معماري MFC در حقيقت براي كساني در نظر گرفته شده است كه مايلند از متدولوژي شيءگرا و مزاياي آن در ويندوز موبايل راحتتر استفاده كنند وATL نيز براي توليد كامپوننتها يا استفاده از كامپوننتهاي پيشساخته در نظر گرفته شده است.
کد 3
صرفنظر از گرامر خاص زبان ++C، گفتمان اصلي حاكم بر اين زبان، مديريت حافظه است. هنگامي كه با اين زبان برنامه مينويسيد، پنجاه درصد كد شما چيزي نيست جز مديريت بيتها و بايتها در حافظه و تنها نيمي از سورس كد واقعاً به كار اصلي مد نظر شما اختصاص دارد. بنابراين در اغلب مواقع، علت كار نكردن يا درست كار نكردن برنامهِ شما اشتباهات سهوي برنامهنويسي در مديريت حافظه است، نه چيز ديگر.
اصولاً دشواري گرامر ++C نيز به عناصر و گزارههاي مرتبط با حافظه مربوط ميشود. معروفترين آنها، «اشارهگرها» هستند كه به «كابوس برنامهنويسان» مشهورند. بنابراين خوب است قبل از ورود به دنياي برنامهنويسي موبايل، حتماً به تكنيكهاي اساسي مديريت حافظه مسلط شويد.
شکل 3
بنابراين لازم بوده است از زباني نزديك به زبان ماشين استفاده شود تا برنامهها با حداقل حجم و حداكثر كارايي و سرعت اجرا شوند. خالي از لطف نيست كه بدانيد حجم اغلب برنامههايي كه با اين روش براي ويندوز موبايل توليد ميكنيد، به كوچكي ويروسهاي كامپيوتري هستند كه روي پيسيها پرسه ميزنند! متأسفانه بار اصلي اين مدل برنامهنويسي به دوش سازنده نرمافزار است و راه گريزي وجود ندارد.
کد 1
توصيه ميكنم براي محكمكاري، SDK ويندوز موبايل 5 را نيز دانلود و نصب كنيد تا مشكلي پيش نيايد. نزديك به هشتاد مثال برنامهنويسي با كد بومي ويندوز موبايل نيز در اين SDK موجود است. نصب داتنت 2 يا SQL Mobileدغدغه اين مقاله نيست.
کد 2
برنامههاي تحت ويندوز موبايل عمدتاً پنج نوع هستند: Win32 Exe ،Win32 DLL ،MFC ،ATL و يك نوع Console Application را نيز ميتوان اضافه كرد. نوع اول مهمترين است و مثال اين مقاله نيز از همين نوع است. نوع دوم براي توليد سرويسهاي سيستمعامل (مانند پلاگينهاي قابل نصب روي دسكتاپ كوچك ويندوز موبايل) مناسب است.
معماري MFC در حقيقت براي كساني در نظر گرفته شده است كه مايلند از متدولوژي شيءگرا و مزاياي آن در ويندوز موبايل راحتتر استفاده كنند وATL نيز براي توليد كامپوننتها يا استفاده از كامپوننتهاي پيشساخته در نظر گرفته شده است.
کد 3
اصولاً دشواري گرامر ++C نيز به عناصر و گزارههاي مرتبط با حافظه مربوط ميشود. معروفترين آنها، «اشارهگرها» هستند كه به «كابوس برنامهنويسان» مشهورند. بنابراين خوب است قبل از ورود به دنياي برنامهنويسي موبايل، حتماً به تكنيكهاي اساسي مديريت حافظه مسلط شويد.
از امام هادی(ع) بشنوید/ مسخره کردن، تفریح چه کسانی است؟
1- اعتبار مردم در دنیا به مال آن هاست و در آخرت به اعمال آنها.
2- فروتنی در آن است که با مردم چنان کنی که دوست داری با تو چنان باشند .
3- نارضایتی پدر و مادر ، کم توانی را به دنبال دارد و آدمی را به ذلت می کشاند .
4- مسخره کردن تفریح آدم های بی خرد و کار جاهلان است.
5- اگر همه مردم مسیری را انتخاب کنند و در آن گام نهند ، من به راه کسی که تنها خدا را خالصانه می پرستد خواهم رفت .
1- اعتبار مردم در دنیا به مال آن هاست و در آخرت به اعمال آنها.
2- فروتنی در آن است که با مردم چنان کنی که دوست داری با تو چنان باشند .
3- نارضایتی پدر و مادر ، کم توانی را به دنبال دارد و آدمی را به ذلت می کشاند .
4- مسخره کردن تفریح آدم های بی خرد و کار جاهلان است.
5- اگر همه مردم مسیری را انتخاب کنند و در آن گام نهند ، من به راه کسی که تنها خدا را خالصانه می پرستد خواهم رفت .