PDA

View Full Version : Killer Framework



javaphantom
جمعه 30 آذر 1386, 12:01 عصر
کسانیکه دوست دارن کارها براشون آسون باشه. یک نفر ایرانی کار رو براتون آسونترم کرده.
یک FrameWork ایرانی http://sourceforge.net/projects/killer.

saeed_Z_F
دوشنبه 03 دی 1386, 11:29 صبح
سلام
منم در مورد این Framework شنیدم یه کم در مورد امکاناتش توضیح می دید .

javaphantom
سه شنبه 04 دی 1386, 11:30 صبح
داستان این بابا اینکه این محصول توسط یک ایرانی که از آمریکا به ایران اومده و در چند کانال تلویزونی (کانل چهار و یک) مصاحبه داشته . اسم این شخص امیر سام بهادری هست.
چند وقت در J2EE List که یکی از گروهای سایت yahoo هست که من عضو این گروه هستم از طرف این شخص ایملی برای کل گروه ارسال شده که من بخشی از اون رو توی همین جا آوردم که شامل یک آدرس هست برای تست محصول. بگذریم از ادعاهای این فرد و سوال وجوابهایی که رد و بدل شد. اما در سوال بسیاری از دوستان که از این شخص شده است من متنی از گفته ایشون را در همین جا می گذارم که اگر دوست دارید محصول ایشون را تست و نظر خودتون رو به خود ایشون یا در همین جا مطرح کنید.
به نام خدا



ابتدا لازم میدانم که پروژه Killer را باز کنم ، Killer به معنای کشنده تمام Framework های آژاکسی است ، این Framework یعنی Killer به شما کمک میکند تا سطح کاری گسترش دهنده و طراح وب را کاملا از هم تفکیک کنید

طراحان به طراحی صفحات درخواست میپردازند و گسترش دهندگان به پیاده سازی صفحات پاسخ که ابته در این Framework فقط و فقط یک صفحه پاسخ وجود دارد به عبارتی دیگر فقط یک صفحه مسئول پاسخ دهی به تمام صفحات در خواست است

این Framework تنها Framework است که به شما امکان میدهد UI را در سطح سرور های مختلف توزیع کنید به تصویر زیر دقت کنید





همانطور که مشاهده میکنید در Killer میتوانید صفحات در خواست را در یک سرور ، صفحه پاسخ را در سرور دیگر و موتور Killer را بر روی یک سرور دیگر جای دهید Killer توانایی دارد تا با همه تکنولوژی های تحت وب کار کند از جمله JSF , JSP , PHP , ASP , …

در Diagram فوق همانطور که مشاهده میکنید شما N صفحه Request دارید و فقط یک صفحه Response در ضمن یادتان باشد که آن صفحه Response میتواند بر روی یک Server دیگر باشد.

NRequest Page * Time + NResponse Page *Time
شرح فرمول :

اگر شما N صفحه Request داشته باشید نیاز است که N صفحه Response را پیاده سازی کنید در صورتی که در Killer فقط یک صفحه Response پیاده سازی میکنید.

شروع به کار :

Killer.jar را به کتابخانه پروژه خود اضافه کنید.

4 فایل Ajax.js و KillerParser.jsp و Killer.jsp و TestPage.jsp را به پروژه خود اضافه کنید.





فایل Killer.jsp مربوط به پاسخ های صفحات میباشد.



در این فایل صفحات پاسخ شما پیاده سازی میشود ،2 تگ UserDeclare , KillerDeclare صفحات شما محسوب نمیشوند نوشتن آنها اجباری نیست ! KillerDeclare متغیری به نام tagname تعریف میکند که نشان میدهد در خواست از کدام صفحه پاسخ انتظار پاسخ دارد ! تگ UserDeclare هم به شما کمک میکند تا بوسیله متغیر firstname پارامتر firstname صفحه ی در خواست را دریافت کنید در این تگ شما میتوانید سایر پارامتر ها را دریافت کرده و در سایر صفحات پاسخ استفاده کنید. تگ HomePage و ContactPage 2 صفحه پاسخ شما هستند محتویات آنها میتواند ASP و یا PHP و یا JSP و یا ...

باشد.

تذکر : اگر از سایر تکنولوژی ها به جز JSP استفاده میکنید ApplicationServer حتما باید آنرا Suport کند.

تذکر : هیچ گاه از Session در سطح صفحات پاسخ استفاده نکنید.

همانطور که میبینید در تگ صفحه HomaPage خروجی ذیل را دریافت خواهید کرد.

Welcome To Home Page UserName : Amirsam

البته Amirsam از صفحه درخواست ارسال شده است. فایل درخواست نمونه یا همان TestPage.jsp





در این فایل شما درخواست خود را ارسال میکنید Function killerWriter پاسخ شما را چاپ میکند میتوانید از دستورات دیگر JavaScript برای خروجی استفاده کنید همانند Alert و ... در sender Function در خواست خود را ارسال میکنید killerparam پارامتر ها را به صفحه پاسخ ارسال میکنید.

به طور مثال : firstname=amirsam&lastname=bahador

و در killertag نام صفحه پاسخ را درج میکنید تا توسط killerWriter چاپ شود به طور مثال نام HomePage را تایپ کنید واما فایل آخر یا همان KillerParser





این فایل به شما کمک میکند تا آدرس فایل Killer.jsp را مسیر دهی کنید سایر محتویات فایل را تغییر ندهید فقط آدرس Killer.jsp را مسیر دهی کنید به طور مثال اگر فایل در Server دیگری است مثلا در Yahoo.com است به شکل ذیل آدرس دهی کنید :

http://www.yahoo.com/Killer.jsp

اجرا کنید لذت ببرید

حال صفحه درخواست خود را Run کنید یا همان TestPage





بر روی Make a request کلیک کنید.





جالب است نه ؟

شما از Ajax استفاده کردید ؟ فکر نمیکنم چیزی یادتان بیاد ! ولی استفاده کردید.

مزایا

شما میتوانید در Killer.jsp از سایر Technology های تحت وب از جمله Php استفاده کنید.

هر کدام از فایل های درخواست TestPage.jsp ، منطق Killer یا همان KillerParser.jsp و پاسخ یا همان Killer.jsp را در سرور های مختلف قرار دهید.

WebDesigner فقط باید با TestPage کار کند که این TestPage.jsp میتواند بیش از یکی باشد (درخواست ها)

WebDeveloper فقط باید با Killer.jsp کار کند (پاسخ ها)

Application در سطح UI کاملا میتواند توزیع شود.

امنیت کاملا پیاده سازی میشود چون User فقط از Address منطق Killer با خبر میشود. نه از صفحه پاسخ.

سرعت پاسخ بالا میرود چون فقط یک صفحه Buffer میشود.



قبل از اینکه به توضیح در مورد J2SOS بپردازم لازم است که شما متن داخل سایت JAVA2ORACLE.COM را کامل بخوانید متن فوق در شاخه J2SOS Demo وجود دارد البته در کتابی که نوشته ام به طور کامل J2SOS و Killer را توضیح داده ام به امید خدا هر جه زود تر این کتاب چاپ خواهد شد



J2SOS به 2 صورت میتواند مورد استفاده قرار گیرد



1- به عنوان سیستم عامل

2- به عنوان یک Web Application بر روی یک سیستم عامل

در صورتی که از J2SOS به عنوان سیستم عامل استفاده شود شما فقط میتوانید از فایل های JAR استفاده کنید

Application Server این سیستم عامل یک AS یا همان Application Server ساده است که بر روی آن تغیراتی اعمال شده است این AS توسط ابزارها و تکنولوژی های J2ME Toolkit بار گزاری میشود دلیل این امر آن است که نمیتوان یک AS را به صورت مستقل اجرا کرد ! پس از بارگزاری این OS شما میتوانید از سخت افزار کامپیوتر خود در سایر ابزار های الکترونیکی استفاده کنید به طور مثال برنامه ای با موبایل بنویسید ، ترجمه کنید ، اجرا کنید البته هر 3 مرحله در سرور یا همان جایی که OS نصب شده است اجرا میشود و نیازی نیست که موبایل یا هر وسیله الکترونیکی شما قابلیت این کار را داشته باشد تنها قابلیت موبایل شما آن است که بتواند به شبکه WAP یا Internet متصل شود



این سیستم عامل اگر به صورت مستقل با گزاری شود نمیتواند UI برنامه های کاربردی را نمایش دهد اما شما میتوانید به صورت پارامتریک به برنامه های کاربردی مقادیر ارسال کنید مثلا



Ora9.jar open testrep



در صورتی که این سیستم عامل بر روی window سوار شود شما میتوانید دستوراتی همچون



Notepad “amirsam”



CMD FORMAT C: /Y



OracleHome.exe



OraHome.jar



را اجرا کنید دلیل استفاده از WINDOWS در این مثال لمس رابطه J2SOS و API درون سیستم عامل های گوناگون و فایل های اجرایی وابسته به API است

یکی از خصوصیات J2SOS آن است که چندین کاربر میتوانند در یک زمان از سخت افزار یک کامپیوتر استفاده کنند "مثلا 3 موبایل در کنار هم با سیستم عامل کار کنند"



البته لایه Run Time به صورت مشترک عمل نمیکند و برای هر کاربر یک Instance مستقل ایجاد میکند



در صورتی که این سیستم عامل به عنوان یک Web Application مورد استفاده قرار گیرد نیازی به تغیر چندانی در AS وجود ندارد.



امید وارم که کوتاهی نکرده باشم و اطلاعات کلی را داده باشم



تکنولوژی ها و Framework ها و ابزار های مورد استفاده در این سیستم عامل :



UI :



JSP

Killer (Ajax)

WML



Net App And Protocol :



WAP

Web



Engine And Core :



Socket Programming

J2ME Technology

Mini CORABA AND RMI

JMF

Tomcat AS But Customize !

AND …



به شما عشق میورزم گرچه خود را لایق این عشق نمیدانم