نمایش نتایج 1 تا 9 از 9

نام تاپیک: روش مناسب برای پیاده سازی نرم افزار چند لایه

  1. #1

    روش مناسب برای پیاده سازی نرم افزار چند لایه

    سلام دوستان. میخواستم ببینم برای طراحی و پیاده سازی یک سیستم چند لایه با استفاده از دلفی 2010 شما چی رو پیشنهاد میدید و به چه دلیلی؟
    آیا استفاده از Datasnap خود دلفی به همراه Dbexpress یا استفاده از ابزار RemobjectsSDK ؟
    آیا این دو ابزار از لحاظ امکانات و بازدهی در یک سطح قرار دارند یا خیر؟ممنون میشم دلیلشو بفرمائید.
    باتشکر.

  2. #2

    نقل قول: روش مناسب برای پیاده سازی نرم افزار چند لایه

    آیا این دو ابزار از لحاظ امکانات و بازدهی در یک سطح قرار دارند یا خیر؟
    نه، RemObjects SDK یک سر و گردن از DataSnap بالاتر هست. هم امکانات بسیار بیشتری داره، هم از DataSnap 2010 جا افتاده تر هست، هم بیشتر میشه براش منابع و مستندات پیدا کرد.
    برای نوشتن برنامه های چند لایه مبتنی بر بانک اطلاعاتی هم RemObjects DataAbstract بر روی RemObjects SDK قرار میگیره، و قابلیت های آن با DataSnap + dbExpress قابل مقایسه نیست! البته DataAbstract وابسته به کامپوننت های اتصال به بانک اطلاعاتی خاصی نیست، و می تونید مثلا از dbExpress یا ADO یا هر چیز دیگه به عنوان منبع اتصال به بانک اطلاعاتی در اون استفاده کنید. خودِ RemObjects یک محصول به نام AnyDAC داره که کارکردش مثل Devart UniDAC هست، و از اونجایی که محصول RemObjects هست، با DataAbstract هم بهتر کار میکنه.

    در ضمن، RemObjects SDK و DataAbstract را می تونید هم در دلفی و هم در دات نت استفاده کنید.


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

  3. #3

    نقل قول: روش مناسب برای پیاده سازی نرم افزار چند لایه

    سلام.علی جان ممنون.پس شما توصیه میکنی که از Remobjects استفاده کنم؟ و برای اتصال به بانک اطلاعاتی از خود anydac ؟
    حالا سوال اینه که در Datasnap 2010 دلفی میاد با استفاده از پروتکل Tcp به سرور متصل میشه.در remobjects از چه روشهایی برای ارتباط بین لایه ها استفاده میشه؟؟
    من امروز در خود wiki remobjects نگاه میکردم ظاهرا نحوه پیاده سازیش هم مثل datasnap میمونه که یک proxy class ایجاد میکنه و با استفاده از اون با لایه سرور ارتباط برقرار میکنه.
    نکته دیگه اینکه ایا امکاناتی مثل load balancing رو میشه با استفاده از این پیاده سازی کرد یا حتما خود db هم باید این قابلیت رو داشته باشه؟

  4. #4

    نقل قول: روش مناسب برای پیاده سازی نرم افزار چند لایه

    پس شما توصیه میکنی که از Remobjects استفاده کنم؟
    بله.

    برای اتصال به بانک اطلاعاتی از خود anydac ؟
    من خودم با AnyDac کار نکردم، و معمولا از UniDAC یا ADO استفاده می کنم، ولی تعریف AnyDAC رو شنیدم، و معمولا بین بهتر بودن AnyDAC یا UniDAC بحث هست.

    حالا سوال اینه که در Datasnap 2010 دلفی میاد با استفاده از پروتکل Tcp به سرور متصل میشه.در remobjects از چه روشهایی برای ارتباط بین لایه ها استفاده میشه؟؟
    DataSnap 2010 از Indy استفاده میکنه و برای اتصال از TCP و HTTP (که روی TCP سوار میشه) پشتیبانی میکنه. RemObjects SDK هم از Indy میتونه استفاده کنه، هم از یک کتابخانه دیگه (فکر کنم اسمش Synapsis بود)، هم مستقیما از WinInt میتونه استفاده کنه. RemObjects از پروتکل های انتقال متعددی پشتیبانی میکنه، مثل TCP, HTTP, UDP, Named Pipes, Email، حتی Windows Messages. اینها رسانه انتقال هستند. که در RemObject SDK به آنها Channels گفته میشه.

    سرور شما میتونه روی یک Channel داده ها را با یک فرمت مشخص ارسال کنه. فرمت داده های ارسالی و دریافتی هم در RemObjects SDK متنوع هست، و بهش Messages گفته میشه؛ شما می تونید پیام ها را با فرمت باینری اختصاصی RemObjects ارسال کنید، یا با فرمت SOAP، یا XML-RPC، و غیره.

    همچنین RemObjects SDK قابلیت هایی برای مدیریت Session، و Authentication به شما ارائه میکنه. قابلیت رمزنگاری داده ها با الگوریتم های مختلف را هم داره.

    RemObjects قابلیت هایی برای پیدا کردن خودکار سرور در شبکه توسط کلاینت ها هم ارائه میکنه.

    یک Server Builder هم داره که تقریبا مشابه Type Library Editor در دلفی، می تونید باهاش به صورت ویژوال رابط برنامه نویسی سرور، و کلاس های مربوطه را تعریف کنید. برای ساخت سرور و کلاینت هم ویزاردهایی ارائه میکنه، و یک ابزار Test هم برای تست سرور در شرایط مختلف در اختیار شما قرار میده.

    ایا امکاناتی مثل load balancing رو میشه با استفاده از این پیاده سازی کرد یا حتما خود db هم باید این قابلیت رو داشته باشه؟
    درباره اینکه آیا به طور اختصاصی قابلیت هایی برای Load Balancing ارائه میکنه، یا نه، اطلاعی ندارم. البته بحث Database به RemObjects SDK مربوط نمیشه. RemObjects SDK فقط یک بستر ارتباطی فراهم میکنه، که از طریق این بستر میشه لایه های مختلف یک نرم افزار را به هم متصل کرد، و بین شان داده رد و بدل کرد. حالا این داده هر چی می خواد باشه. بحث Database به DataAbstract مربوط میشه؛ DataAbstract میاد روی این بستر ارتباطی که RemObjects SDK بوجود آورده، انتقال داده های Database را با قابلیت های مختلف فراهم میکنه.


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

  5. #5

    نقل قول: روش مناسب برای پیاده سازی نرم افزار چند لایه

    ایا امکاناتی مثل load balancing رو میشه با استفاده از این پیاده سازی کرد
    امروز یک نگاهی به قابلیت هاش انداختم، دیدم امکان Load Balancing هم وجود داره؛ به این صورت که با استفاده از قابلیت Olympia، چند سرور می تونند داده های کلاینت ها را بین خودشان به اشتراک بزارند؛ و با استفاده از ROZeroConf، کلاینت ها می تونند لیست سرورهای موجود در شبکه را به طور خودکار پیدا کنند، و اطلاعاتی از قبیل میران لودن هر سرور را از آن بگیرند، و به یکی از سرورها متصل بشند. از آنجایی که داده های کلاینت بین سرورها Share شده، پس فرقی نمیکنه که کلاینت به کدوم سرور وصل شده باشه، این میتونه حتی به نوعی قابلیت Fault Tolerance رو هم به سرورهای شما اضافه کنه، چون اگر سروری Down بشه، کلاینت میتونه بلافاصله به سرور دیگه ایی متصل بشه، و کارش را با سرور دوم ادامه بده، بدون اینکه نیاز باشه اطلاعات مربوط به خودش را مجددا به سرور ارسال کنه.

    لیست قابلیت های RemObjects SDK، و RemObjects DataAbstract:

    http://www.remobjectssdk.com/features.aspx
    http://www.dataabstract.com/features.aspx


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

  6. #6
    کاربر دائمی آواتار gbg
    تاریخ عضویت
    اردیبهشت 1384
    محل زندگی
    تهران
    سن
    46
    پست
    691

    نقل قول: روش مناسب برای پیاده سازی نرم افزار چند لایه

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

  7. #7
    کاربر دائمی آواتار gbg
    تاریخ عضویت
    اردیبهشت 1384
    محل زندگی
    تهران
    سن
    46
    پست
    691

    نقل قول: روش مناسب برای پیاده سازی نرم افزار چند لایه

    نشد که بشه واقعا!!!
    من هرچی سعی کردم remobject رو یاد بگیرم و جایگزین DataSnap و dbExpress کنم نشد.
    منابع کمی برای یاد گیریش پیدا کردم و اکثرا مثال هایی هست که زیاد به کار من نمیاد

  8. #8

    نقل قول: روش مناسب برای پیاده سازی نرم افزار چند لایه

    من هرچی سعی کردم remobject رو یاد بگیرم و جایگزین DataSnap و dbExpress کنم نشد.
    منابع کمی برای یاد گیریش پیدا کردم و اکثرا مثال هایی هست که زیاد به کار من نمیاد
    اگر برای DataAbstract منابع کم هست، برای DataSnap و DBX وضعیت وخیم تر هست! بخصوص اگر بخواید باهاشون کار درست و حسابی انجام بدید. بسیاری از قابلیت های پایه را که ندارند، و باید خودتون براشون بنویسید. منابع درباره شون هم فقط چندتا ویدئوی آموزشی هست، و یکی دو فصل از کتاب های مارکو کانتو. البته کتاب Bob Swart هم هست، ولی من محتواش رو ندیدم. غیر از اینها، باید برای کارهای درست و حسابی برید خودتون کدهای DBX یا بعضی کلاس های DataSnap رو بخونید، و با سعی و خطا نکته های مختلفش را یاد بگیرید.

    برای DataAbstract منبع اصلی همون Wiki اش هست. چندتا مقاله هم براش در سایتش هست که بعضی ها شون قدیمی هستند، ولی بعضی هاشون خوب هستند. مثال ها رو اگر خوب بررسی کنید، به نتایج خوبی می رسید. چندتا ویدئوی محدود هم درباره اش در سایت Embarcadero و سایت خودش می تونید پیدا کنید. Newsgroup اش فعال هست، و اگر سوالی بپرسید، معمولا یکی دو روزه جواب میگیرید. بهتره یک نسخه همراه با سورسش را پیدا کنید، و سعی کنید جاهایی که توضیح درست و حسابی داده نشده را از طریق مطالعه سورسش و رابطه کلاس هایش با هم، تا حدودی متوجه بشید.


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

  9. #9
    کاربر دائمی آواتار gbg
    تاریخ عضویت
    اردیبهشت 1384
    محل زندگی
    تهران
    سن
    46
    پست
    691

    نقل قول: روش مناسب برای پیاده سازی نرم افزار چند لایه

    ممنون در مورد DataSnap به کتاب حدود 50 صفحه از مارکو دارم که کارم رو راه میندازه ولی با توجه به تعاریفی که از remobject شنیدم می خواستم برم سمتش با ویزاردش میشه راحت برنامه رو نوشت ولی نمی دونم چرا زیاد داکیومنتش برای جالب به نظر نمیاد ولی باز اون سایت wiki ش رو پرینت کردم دارم مطالعه می کنم

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •