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

نام تاپیک: نحوه کامپایل در دلفی prism

  1. #1

    نحوه کامپایل در دلفی prism

    با سلام
    میخواستم بدونم آیا دلفی prism هم مانند دلفی Native فایل exe تولید میکند یا مانند برنامه های دات نت بزبان IL تبدیل می کند ؟

    با توجه به اینکه دلفی امنیت بالاتری از VS دارد آیا این امنیت شامل دلفی داتنت هم می شود یا دلفی native امنیت بالاتری دارد ؟

    با تشکر

  2. #2

    نقل قول: نحوه کامپایل در دلفی prism

    میخواستم بدونم آیا دلفی prism هم مانند دلفی Native فایل exe تولید میکند یا مانند برنامه های دات نت بزبان IL تبدیل می کند ؟
    وقتی حرف از Net. به میان میاد یعنی کد باید به زبان میانی ترجمه بشه و وظیفه تولید فایل اجراییی نهایی با Net. هست .

    با توجه به اینکه دلفی امنیت بالاتری از VS دارد آیا این امنیت شامل دلفی داتنت هم می شود یا دلفی native امنیت بالاتری دارد ؟
    خیر ؛ کدهای تولید شده توسط Delphi Prism کدهای Managed هستن و امنیتشون قابل مقایسه با فایل های اجرایی تولید شده با نسخه Native دلفی نیست .

  3. #3

    نقل قول: نحوه کامپایل در دلفی prism

    با تشکر از جوابتون
    میبخشید managed که فرمودید را میشه یکم بیشتر توضیح بدید ؟ و اینکه بالاخره native امنیت بالایی داره با prism ؟

    با تشکر

  4. #4

    نقل قول: نحوه کامپایل در دلفی prism

    میبخشید managed که فرمودید را میشه یکم بیشتر توضیح بدید ؟
    به عبارتی بسیار ساده باید بدانید که برنامه هایی که به صورت مدیریت شده هستند توسط یک مفسر اجرا می شوند.
    و اینکه بالاخره native امنیت بالایی داره با prism ؟
    native

  5. #5

    نقل قول: نحوه کامپایل در دلفی prism

    به عبارتی بسیار ساده باید بدانید که برنامه هایی که به صورت مدیریت شده هستند توسط یک مفسر اجرا می شوند.
    لزوما همچین چیزی نیست! کدهای پلت فرم هایی مثل دات نت یا جاوا JIT میشند، نه اینکه یک مفسر اونها رو اجرا کنه!

    میبخشید managed که فرمودید را میشه یکم بیشتر توضیح بدید ؟
    managed یعنی اینکه کدهای تولید شده از روی سورس کد شما به جای اینکه برای ماشین مقصد مورد نظر شما کامپایل بشند، برای یک ماشین مجازی کامپایل میشند، و این ماشین مجازی باید در سیستم مقصد مورد نظر شما نصب باشه؛ در اون صورت، کدهای شما در ماشین مقصد در یک محیط مجازی کنترل شده (managed) اجرا میشند، و اون محیط مجازی هست که دستوران برنامه شما را به معادل قابل فهم برای ماشین حقیقی مورد نظر شما ترجمه میکنه، و امکان دسترسی مستقیم برنامه شما به منابع ماشین مقصد حقیقی را به برنامه شما نمیده. این نوع معماری مزایا و معایبی داره که در اکثر سناریوها مزایای آن از معایبش بیشتر هست.

    بالاخره native امنیت بالایی داره با prism ؟
    امنیت در چه چیزی؟ به طور کلی عامل اصلی تعیین کننده میزان امنیت برنامه شما طراحی برنامه و نحوه پیاده سازی شما ست. به طور کلی، محیط های مدیریت شده امنیت بیشتری برای کاربر نهایی به وجود میارند، چون امکان خرابکاری برنامه ایی که داره در یک محیط ایزوله مجازی اجرا میشه و دسترسی مستقیم به منابع سیستم نداره، از یک برنامه ایی که دسترسی های متنوعی به منابع سیستم داره، بسیار کمتر هست، و محیط مجازی مربوطه میتونه در حین اجرای اون برنامه، پارامترهای امنیتی مختلفی رو بررسی کنه.
    امنیت در محافظت از سورس کد یک برنامه یک مقوله دیگه هست؛ به طور کلی در محیط های Managed با توجه به استفاده از یک زبان میانی، و نتا دیتا های مختلف، در صورتی که از مکانیزم های محافظتی مناسبی استفاده نشه، احتمال دزدیده شدن الگوریتم به کار رفته، یا بازسازی بخشی از کد برنامه بیشتر از برنامه های Native هست، ولی این مسئله فاکتور چندان مهمی محسوب نمیشه، چون برای برنامه های Native فقط کار کرکر، با توجه به مهارت وی، کمی سختر میشه؛ و در هر دو حالت استفاده از محیط های Managed و Native، اگر از مکانیزم های محافظتی مناسبی استفاده نشه، امکان کرک کردن نرم افزار مربوطه با درصد احتمال بسیار بالا وجود داره.


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

  6. #6

    نقل قول: نحوه کامپایل در دلفی prism

    لزوما همچین چیزی نیست! کدهای پلت فرم هایی مثل دات نت یا جاوا JIT میشند، نه اینکه یک مفسر اونها رو اجرا کنه!
    عقیده ها در این رابطه متفاوت هست. به عنوان مثال در کتاب Sams teach yourself C++‎ in 21 days نوشته آقای جسی لیبرتی نوشته شده که مواردی که شما گفته اید نیز به نوعی مفسر به حساب می آیند. این مورد در همان درس اول کتاب نوشته شده است و در همان صفحات ابتدایی هم هست.

  7. #7

    نقل قول: نحوه کامپایل در دلفی prism

    عقیده ها در این رابطه متفاوت هست. به عنوان مثال در کتاب Sams teach yourself C++‎‎ in 21 days نوشته آقای جسی لیبرتی نوشته شده که مواردی که شما گفته اید نیز به نوعی مفسر به حساب می آیند. این مورد در همان درس اول کتاب نوشته شده است و در همان صفحات ابتدایی هم هست.
    عقیده ها متفاوت نیست، دنیا در حال تغییر و تحول هست، و کتاب مورد اشاره شما مربوط به حداقل 7 سال قبل!

    دات نت و جاوا از JIT استفاده می کنند.


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

  8. #8

    نقل قول: نحوه کامپایل در دلفی prism

    راستش من هم بعد از این که کمی فکر کردم به این نتیجه رسیدم که بهتره به غیر از برنامه های مفسری و کامپایلری، دسته سومی از برنامه ها یعنی برنامه های مدیریت شده که توسط VM اجرا می شوند را نیز به این طبقه بندی ها اضافه کنم.
    عقیده ها متفاوت نیست، دنیا در حال تغییر و تحول هست، و کتاب مورد اشاره شما مربوط به حداقل 7 سال قبل!
    نه، این کتاب خیلی هم قدیمی نیست و در مورد دات نت و جاوا هم در آن صحبت شده است و همانی را نوشته که در بالا گفتم. مگر نحوه اجرای برنامه های دات نت نسبت به نسخه های اولیه اون تغییر کرده؟

  9. #9

    نقل قول: نحوه کامپایل در دلفی prism

    این کتاب خیلی هم قدیمی نیست
    آخرین ویرایشش در سال 2004 منتشر شده؛ الان 2011 هم دو ماه دیگه تموم میشه!

    مگر نحوه اجرای برنامه های دات نت نسبت به نسخه های اولیه اون تغییر کرده؟
    بله

    --------


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

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

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