در مسیر ساخت SCORM Manifest Editor نیاز به تبدیل xml به object و برعکس بود که با استفاده از xmlConverter این مسئله در پروژه حل شد. xmlConverter برای تبدیل یک object به xml و برعکس استفاده میشود، تنها مشکلی که به نظر من رسید این بود:
خروجی که از کد اصلی بهدست میآید اینگونه است:
<order id="1234"> <orderDate>2008-01-11</orderDate> <subTotal>9.95</subTotal> <tax>0.99</tax> <total>10.94</total> <orderLines> <orderLine orderLine="1"> <productId>ABC</productId> <quantity>1</quantity> <unitPrice>5</unitPrice> </orderLine> <orderLine orderLine="2"> <productId>DEF</productId> <quantity>1</quantity> <unitPrice>4.95</unitPrice> </orderLine> </orderLines> </order>
اما چیزی که من لازم داشتم، اینگونه بود:
<order id="1234"> <orderDate>2008-01-11</orderDate> <subTotal>9.95</subTotal> <tax>0.99</tax> <total>10.94</total> <orderLines> <orderLine orderLine="1"> <productId>ABC</productId> <quantity>1</quantity> <unitPrice>5</unitPrice> </orderLine> <orderLine orderLine="2"> <productId>DEF</productId> <quantity>1</quantity> <unitPrice>4.95</unitPrice> </orderLine> </orderLines> </order>
با تغییراتی که روی کد دادم، قابل استفاده شد
این هم کد تغییر کرده.
سلام. امروز بالاخره توانستم برنامهای برای نمایش پیشرفت طرح سه پرسش از خاتمی بنویسم. میتوانید از اینجا ببینیدش. برای این کار از flare استفاده کردم.
حدود یک ماه است که کار بر روی نوشتن یک viewer و editor را برای SCORM برای “استفاده از محتوای آموزشی و تغییر استراتژی ارائهی محتوا در حین پیشرفت آموزش” شروع کردم. برای این کار استفاده از Flare به نظرم بسیار منطقی آمد. Flare یک کتابخانهی کدباز actionScript است که برای visualization اطلاعات به کار میرود و گسترهی وسیعی از ابزارها را (از chart های ساده تا گرافهای پیچیده و…) در اختیار برنامهنویس قرار میدهد. مثال زیر گراف ارتباطی کلاسهای Flare را نشان میدهد:
برای دیدن هرآنچه که Flare انجام میدهد، دیدن این مثال از سایت Flare واقعاً توصیه میشود. :دی
CoCoMo در مرحله beta این محدودیتها را دارد :
۲۵ کاربر همزمان
۱۵۰۰۰ کاربر-دقیقه در ماه
۲۵۰۰۰۰ پیغام publish شده در ماه
۳ گیگابایت پهنای باند (ورودی-خروجی) در ماه
adobe یک پروتکل جدید برای ارتباطات P2P بین دو کاربر که از FleshPlayer 10 یا AdobeAIR 1.5 استفاده می کنند، وضع کرده است :
RTMFP = RealTime Messaging Flow Protocol
این پروتکل بر خلاف شباهت اسمی که با RTMP دارد یک تفاوت اساسی با آن دارد: RTMP از TCP استفاده می کند (چیزی که در نگاه اول برای کسی که درس شبکه را گذرانده، غیرمنطقی به نظر می رسد) اما RTMFP از UDP استفاده می کند و به همین دلیل تأخیر را کاهش و کیفیت صدا و تصویر را افزایش می دهد.
فرق دوم و اساسی این دو پروتکل این است که در RTMP هر اتفاقی که می افتاد اول به Server می رفت و سپس به همه subscriberها اطلاع داده می شد اما در RTMFP هر Client در ابتدا به یک Server که RTMFP را پشتیبانی می کند متصل می شود و پس از آن می تواند به صورت مستقیم با Client های دیگر که به آن server متصلند در ارتباط باشد.
پشتیبانی از RTMFP در سمت Client در FlashPlayer 10 و AdobeAIR 1.5 پیش بینی شده است اما هنوز serverی که این پروتکل را پشتیبانی کند عرضه نشده است. البته مسئولین Adobe قول داده اند تا انتهای سال جاری (همین یک ماهه) نسخه ی beta ی این سرویس رو تحت نام Stratus عرضه کنند و گفته میشه که در نسخه ی بعدی FlashMediaServer هم این قابلیت اضافه می شه.
البته cocomo هم از RTMFP استفاده می کنه یعنی گفته شده که cocomo از هر دو پروتکل TCP و UDP برای ارتباط استفاده می کنه اما من خودم هنوز حالت دومش رو ندیدم.
در نوشته های قبلی در مورد کلّیت Cocomo صحبت کردم. Cocomo مجموعه ای از API ها برای برنامه نویسان Flex است که به همراه کدهای server-side لازم (که در Acrobat ConnectNow قرار دارند) این امکان را به آنها می دهد تا به راحتی برنامه های ساده Collaborative بسازند.
( Cocomo = Common Collaboration Model )
با استفاده از Cocomo، برنامه نویسان نیازی به درگیری با FlashMediaServer ندارند (البته دست آنها را هم تا حدی می بندد چون cutomization موجود در FMS را در اختیار ندارند) و همچنین شرکت ها نیازی به فراهم کردن host ویژه (و معمولاً گران قیمت) برای FMS ندارند زیرا همه منطق مورد نیاز در سمت server در اختیار Adobe است.
نکته مهم این است که اگرچه برنامه نویس دسترسی به منطق serverSide ندارد اما با معماری زیبای Cocomo، امکان extend کردن API موجود و رشد دادن API توسط برنامه نویسان مختلف وجود دارد. و به نظر من دلیل Adobe برای open Source کردن بسیاری از محصولاتش همین است.
یک شرکت بزرگ با بی نهایت برنامه نویس در سراسر دنیا
این هم whiteboardی که من برای تست cocomo نوشتم :دی
یکی از کارهایی که در Adobe Labs در حال انجامه پروژه ی Thermo هست که الآن به Catalyst تغییر نام داده:
این پروژه ظاهراً قراره بشه چیزی شبیه Microsoft Expression که در وقع یک پل بین برنامه نویس و گرافیست برقرار می کنه. البته هنوز این پروژه در دسترس نیست ولی از presentation هایی که برای اون دیدم به نظر می رسه چیز بسیار جذابی باشه. یعنی شما محیطی مثل photoshop خواهید داشت و در آن محیط گرافیک سایتتون رو طراحی می کنید و به راحتی در همان محیط skin رو برای component های مختلف طراحی می کنید.
می تونید از این آدرس برای عضویت در خبرنامه برای اخبار مربوط به زمان عرضه ی catalyst اقدام کنید
این هم چند تا لینک از presentationهای مربوط به Catalyst و Flex4 :
امروز در سایت adobe labs به SDK جالبی از Adobe برخوردم که قبلاً اون رو ندیده بودم: Cocomo
به نظر می رسه که Adobe هر روز حرف جدیدی برای گفتن داشته باشه. این SDK به developer های Flex امکان اضافه کردن آسان امکانات realtime نظیر chat, Video Confrence, Whiteboard, FileSharing و … به برنامه ها را می دهد.
البته از ظاهر ماجرا بر میاد که کارهای server-side که برای پیاده سازی این امکانات نیازه، روی سرور Adobe Connect وجود داره.
البته من خودم هنوز با اون کار نکردم و الآن تازه دارم downloadش می کنم اما بنا به استقرا میشه نتیجه گرفت این محصول Adobe هم محصول خوبی از آب در اومده (البته اگه مثل استثناهایی مثل Adobe Captivate نباشه)
واقعاً وقتی بعضی سایتهای flash رو میبینم به وجد میام. نمونه اش این سایت که کار یک گروه ژاپنیه:
نمونه ای بسیار جالب از استفاده ی کلاس های ۳D در Flash. توضیح بیشتری لازم نیست بدم. دیدن خود سایت بهترین توضیحه (:دی)
مدتها بود که از Tweener برای ساختن افکت های Tween در Actionscript استفاده می کردم. قبلاً موارد مشابه Tweener رو دیده بودم اما به نظرم رسیده بود Tweener از بقیه قویتر است. اما در بسیاری موارد Tweener جواب درستی نمی داد. مثلاً در Tween کردن دو رنگ به یکدیگر، بد عمل می کرد. امروز TweenMax رو پیدا کردم که علاوه بر حل این مشکل، بسیاری امکانات دیگر هم در اختیارم گذاشت. مثلاً امکان حفظ جهت object با جهت منحنی bezier (یا همان orientToBezier) یا تغییر مشخصات یک عکس (از قبیل treshold، Hue، saturation و …) و اعمال tween روی آن و …
با تشکر از این کامپوننت که من رو مجبور کرد سراغ TweenMax بروم (:دی)