02-26-2012، 08:09 PM
درود به همه دوستان.
اگر عمری باقی مانده باشه قراره هستش در این تاپیک به آموزش برنامه نویسی برای پلتفرم جاوا (موبایل) در محیط MIDLETPASCAL بپردازیم که Syntax اون مانند دلفی و یا همان پاسکال خودمان است.
MIDletPascal یک IDE جالب برای طراحی برنامه های J2ME برای موبایل می
باشد که کامپایلر آن کدهای نوشته شده به زبان پاسکال را به جاوا تبدیل میکند.پس اگر با یکی ازنسخه های زبان برنامه نویسی پاسکال آشنایی داشته باشید براحتی می توانید برای گوشی های همراه خود برنامه بنویسید.این IDE در ویندوز استفاده می گردد هرچند که می توانید در سیستم عاملهای Linux and MacOS در Wine اجرا نمایید.برنامه های نوشته شده تحت این IDE در تمامی موبایل ها اجرا می شوند و از پلتفرم های MIDP 1.0 and CLDC 1.0 نیز پشتیبانی میکند.
دوست عزیز Niksa Orlic (norlic) سورس برنامه MIDletPascal 2.02 را در سپتامبر 2009 تحت لیسانس GNU پابلیک کرد و در اختیار عموم قرار داد.که در اکتبر 2009 ورژن3 این IDE استارت خورد و روز به روز به امکانات وقابلیت های آن افزوده شد.مانند افزودن حلقه ، پشتیبانی از کامنت چند خطی و ....
آخرین ورژن این محیط برنامه نویسی را می توانید از آدرس زیر دریافت کنید:
در ورژن 3 این IDE امکاناتی افزوده شده که در زیر ذکر شده است :
حداکثر اندازه تعریف برای آرایه ها 32767 است.که بسیار افزایش یافته است. مثال:
الحاق رشته ها بهمدیگر بصورت هوشمند.یعنی دیگراحتیاجی به استفاده از عملگر "+" نیست مانند زیر:
استفاده از عمل های شیفت مانند SHL and SHR .مانند زیر:
از علامت های <> نیز می توانید استفاده نمایید:
برای استفاده از بایت کدها میتوانید با استفاده از دستور inline بطور مستقیم بایت کدها را در پروسیجرها بنویسید :
می توانید از bytecode/end نیز استفاده نمایید:
می توانید برای ایجاد حلقه ها از دستورات REPEAT/FOREVER نیز استفاده نمایید.مثال:
می توانید از کلمه کلیدی result برای برگرداندن مقدار در توابع استفاده نمایید.در مثال زیر طرز استفاده را خواهید دید:
برای انجام عملیات شیفت به راست بدون علامت می توانید بصورت زیر عمل نمایید:
اگر عمری باقی مانده باشه قراره هستش در این تاپیک به آموزش برنامه نویسی برای پلتفرم جاوا (موبایل) در محیط MIDLETPASCAL بپردازیم که Syntax اون مانند دلفی و یا همان پاسکال خودمان است.
MIDletPascal یک IDE جالب برای طراحی برنامه های J2ME برای موبایل می
باشد که کامپایلر آن کدهای نوشته شده به زبان پاسکال را به جاوا تبدیل میکند.پس اگر با یکی ازنسخه های زبان برنامه نویسی پاسکال آشنایی داشته باشید براحتی می توانید برای گوشی های همراه خود برنامه بنویسید.این IDE در ویندوز استفاده می گردد هرچند که می توانید در سیستم عاملهای Linux and MacOS در Wine اجرا نمایید.برنامه های نوشته شده تحت این IDE در تمامی موبایل ها اجرا می شوند و از پلتفرم های MIDP 1.0 and CLDC 1.0 نیز پشتیبانی میکند.
دوست عزیز Niksa Orlic (norlic) سورس برنامه MIDletPascal 2.02 را در سپتامبر 2009 تحت لیسانس GNU پابلیک کرد و در اختیار عموم قرار داد.که در اکتبر 2009 ورژن3 این IDE استارت خورد و روز به روز به امکانات وقابلیت های آن افزوده شد.مانند افزودن حلقه ، پشتیبانی از کامنت چند خطی و ....
آخرین ورژن این محیط برنامه نویسی را می توانید از آدرس زیر دریافت کنید:
کد:
http://sourceforge.net/projects/midletpascal/
در ورژن 3 این IDE امکاناتی افزوده شده که در زیر ذکر شده است :
حداکثر اندازه تعریف برای آرایه ها 32767 است.که بسیار افزایش یافته است. مثال:
کد:
var
AZeroBased : array[0..32766] of char;
AOneBased : array[1..32767] of integer;
الحاق رشته ها بهمدیگر بصورت هوشمند.یعنی دیگراحتیاجی به استفاده از عملگر "+" نیست مانند زیر:
کد:
s := 'this is'#10'a test';
استفاده از عمل های شیفت مانند SHL and SHR .مانند زیر:
کد:
a := $A714;
b := a shl 3;
c := b shr 2;
از علامت های <> نیز می توانید استفاده نمایید:
کد:
a := $714A;
b := a << 3;
c := b >> 2;
برای استفاده از بایت کدها میتوانید با استفاده از دستور inline بطور مستقیم بایت کدها را در پروسیجرها بنویسید :
کد:
procedure DoNothing;
begin
inline(
nop;
);
end;
می توانید از bytecode/end نیز استفاده نمایید:
کد:
procedure DoNothing;
begin
bytecode
nop;
end;
end;
می توانید برای ایجاد حلقه ها از دستورات REPEAT/FOREVER نیز استفاده نمایید.مثال:
کد:
repeat
...
if condition then
break;
...
forever;
می توانید از کلمه کلیدی result برای برگرداندن مقدار در توابع استفاده نمایید.در مثال زیر طرز استفاده را خواهید دید:
کد:
function Return4: integer;
begin
result := 4;
end;
برای انجام عملیات شیفت به راست بدون علامت می توانید بصورت زیر عمل نمایید:
کد:
a := $2704;
b := a ushr 1;
c := b >>> 2;