PDA

View Full Version : استفاده از JAVA برای برنامه‌های دسکتاپ



diapason
شنبه 06 تیر 1394, 01:46 صبح
سلام.
بنده مدت مدیدی از Visual C برای نوشتن برنامه‌های دسکتاپ استفاده می‌کردم (تفریحی و شخصی)؛ اما مدتیه که به دلیل درگیر شدن با برنامه‌نویسی آندروید به جاوا روی آوردم و زمان بسیاری رو صرف یادگیری این زبان کردم. به خصوص این که شیفتۀ کار با java FX شدم. و از اونجایی که چند سالیه که از VC فاصله گرفتم برگشتن به اون برام کمی سخته و این که نسبت به C، در جاوا تسلط بیشتری پیدا کردم. در حال حاضر با دو پروژۀ کاری برای دسکتاپ و سیستم عامل ویندوز بر خوردم. هر دو برنامه برنامه‌هایی هستن که بیشتر با بانک اطلاعاتی سروکار دارن. حالا سوالی که برای بنده ایجاد شد اینه که
1. آیا در واقعیت و در برنامه‌های تجاری از جاوا استفاده می‌شه؟
2. آیا از نظر هک شدن برنامه، از امنیت کافی برخورداره؟ برای مثال این که بخوام برای بررسی لایسنس برنامه از سمت سرور کمک بگیرم، این موضوع در جاوا به راحتی قابل دور زدن هست یا نه؟
3. پیرو بند قبل، برای مثال زمانی که برنامه obfusicate شده باشه، آیا امکان نغییر و اصلاح الگوریتم‌ها برای نفوذ و تغییر کدها وجود داره؟
4. آیا این امکان که در روند اجرای الگوریتم تغییراتی داده بشه وجود داره؟
5. در نهایت آیا به طور کلی، استفاده از جاوا برای برنامه‎های دسکتاپ پیشنهاد می‌شه یا نه؟

با تشکر

pbm_soy
شنبه 06 تیر 1394, 02:40 صبح
من چند نمونه برنامه بانک اطلاعاتی دیدم که در ارگانهای دولتی استفاده میشدند که با جاوا نوشته شده بودند

در کل بله شما هم میتوانید چنین برنامه هایی را با جاوا بنویسید از لحاظ امنیتی که فرمودید بله لایسنس و دیگر موارد قابل دور زدن هستند صرفا بخاطر اینکه قابل دیکامپایل شدن هستند
البته ناگفته نماند برنامه های نوشته شده با C# هم شرایط فوق را دارد و دیکامپایل میشود (درصد عمده ای از برنامه های بازار ایران درحال حاضر با C# نوشته شده اند)
میخوام این نتیجه را بگیرم که استفاده از جاوا و سی شارپ در موارد امنیتی که گفتید تقریبا در یک حد هستند

diapason
شنبه 06 تیر 1394, 04:14 صبح
بسبار ممنون از توضیحات شما.
بنده هم در مورد شباهت سی شارپ و جاوا در این مورد، چنین احساسی داشتم که با توضیحات شما مطمئن شدم. حس می‌کنم با اضافه کردن کدهای حساس برنامه و ترکیب اونها با بخشی از کدهای محاسباتی مهم برنامه توسط کدهای native بشه تا حدودی امنیت رو بالا برد. هرچند به قیمت از دست رفتن پرتابل بودن برنامه تموم می‌شه که با توجه به این که هدف اصلی بستر ویندوزه، این موضوع از اهمیت چندانی برخوردار نیست.
پس در نهایت، استفاده از جاوا صرفاً برای برنامه‌های دسکتاپ عمل غیرمنطقی و اشتباهی نیست. درسته؟ چون بنده خودم با برنامه‌های اینچنینی با جاوا مواجه نشدم این سؤال برام مطرح شد.