ক্রস প্ল্যাটফর্ম গেমের জন্য জাভা কি ভাল পছন্দ? [বন্ধ]


13

আমি জাভাতে একটি গেম তৈরি করতে চাই এবং এটি উইন্ডোজ, লিনাক্স এবং ম্যাকের জন্য কাজ করতে চাই। আমি নিশ্চিত যে সি # এটির জন্য খারাপ পছন্দ, এবং সি বা সি ++ তে আমার যথেষ্ট অভিজ্ঞতা নেই। আমি ফ্ল্যাশ থেকে দূরে থাকতে চাই সুতরাং, জাভা কি আমার পক্ষে ভাল পছন্দ? বেশিরভাগ ক্ষেত্রে, আমি সি # ব্যবহার করি এবং মনে করি জাভা অনুরূপ, সুতরাং আমি ধরে নিই যে এটি শিখতে খুব কঠিন হবে না। তবে তা কি যথেষ্ট দ্রুত? জাভা থেকে আমার প্রয়োজনের জন্য আরও উপযুক্ত কোন ভাষা আছে?


8
আপনি কী ধরণের গেমটি করতে চাইছেন তা নির্ভর করে। শৈলীর উপর নির্ভর করে এটি চেয়েছিল যে এটি HTML5 হতে পারে এবং জাভা না হলে কিছু জাভাস্ক্রিপ্ট আপনার জন্য কাজ করবে।
প্যাট্রিক হিউজেস

ওডল্যাব জাভা ভিত্তিক গেমগুলি বিক্রি করে, যেমন উপজাতীয় সমস্যা। আপনি তাদের ইঞ্জিনের বিশদটি oddlabs.com/technology.php

5
জাভাতে লিখিত ক্রস-প্ল্যাটফর্ম গেমের দুর্দান্ত উদাহরণ মাইনক্রাফ্ট। যখন আমাদের ছেলের একটি গুরুতর মাইনক্রাফ্ট সেশনের জন্য তার পালস থাকে তারা ওএসএক্স, উইন্ডোজ এবং লিনাক্সে এটি খেলছে playing
কেভ

দুই বছর পরে, ইউনিটি ইঞ্জিন এবং / বা মনোগেমের সাহায্যে সি # এখন এই জাতীয় জিনিসগুলির পক্ষে বেশ ভাল, উভয়ই আইওএস, অ্যান্ড্রয়েড এবং ডাব্লুপি 8 সমর্থন করে।
ম্যাগাস

উত্তর:


28

ক্রস প্ল্যাটফর্ম গেম লেখার জন্য জাভা অত্যন্ত উপযুক্ত। প্রধান সুবিধা:

  • বহনযোগ্যতা - সাধারণভাবে, আপনি একটি জাভা গেমটি লিখতে পারেন এবং এটি বেশিরভাগ প্ল্যাটফর্মগুলিতে অপরিবর্তিতভাবে চলার আশা করতে পারেন। এটি সম্ভবত কোনও ভাষার সর্বাধিক বহনযোগ্য বিকল্প - সি / সি ++ হ'ল অন্যান্য অত্যন্ত বহনযোগ্য বিকল্প তবে প্রতিটি প্ল্যাটফর্মের জন্য পুনরায় সংকলন করা দরকার এবং অনেক ক্ষেত্রে গ্রন্থাগারগুলিতে প্ল্যাটফর্মের নির্দিষ্ট বৈশিষ্ট্য রয়েছে যা বহনযোগ্যতা সীমাবদ্ধ করে।
  • পারফরম্যান্স - জাভা কোড, যদি ভাল লেখা হয় তবে সি / সি ++ সহ অন্য কোনও ভাষার পাশাপাশি বেশ ভাল পারফর্ম করবে। জেভিএম জেআইটি সংকলক অত্যন্ত ভাল। আপনি জাভাতে একটি শীর্ষ মানের, সফল খেলা লিখতে পারেন (উদাহরণস্বরূপ মাইনক্রাফ্ট)।
  • লাইব্রেরিগুলি - জাভা-র জন্য প্রচুর গ্রন্থাগার রয়েছে যা আপনার গেমগুলিতে নেটওয়ার্কিং থেকে গ্রাফিক্স থেকে এআই পর্যন্ত সাউন্ড করা প্রায় প্রতিটি বৈশিষ্ট্যকে কভার করে। বেশিরভাগ জাভা গ্রন্থাগারগুলি ওপেন সোর্স।

আপনার যে সিদ্ধান্ত নিতে হবে তা হ'ল আপনি যে জিইউআই কাঠামোটি ব্যবহার করছেন। বেশ কয়েকটি ভিন্ন বিকল্প রয়েছে তবে সর্বাধিক বিশিষ্টটি হ'ল:

  • jMonkeyEngine - সম্পূর্ণরূপে 3 ডি ইঞ্জিনযুক্ত। আপনি যদি কোনও 3 ডি গেম বানাতে চান তবে এটি সম্ভবত আপনার সেরা পছন্দ - এতে দৃশ্যের গ্রাফ, টেরেন জেনারেশন ইত্যাদির মতো প্রচুর গেম ইঞ্জিন বৈশিষ্ট্য রয়েছে
  • এলডাব্লুজেজিএল - ওপেনজিএলে সরাসরি অ্যাক্সেস সহ আরও নিম্ন-স্তরের গ্রন্থাগার। আপনি সর্বাধিক পারফরম্যান্স চান এবং আপনার স্ক্র্যাচ থেকে আপনার ইঞ্জিনের অনেক কিছু লিখতে আপত্তি না চান আপনার কাছে আবেদন করার সম্ভাবনা।
  • দোল - অত্যন্ত পোর্টেবল হওয়ার সুবিধা রয়েছে এবং এটি জাভা রানটাইমের অন্তর্ভুক্ত তাই অতিরিক্ত নির্ভরতার প্রয়োজন হয় না। এটি অ-গ্রাফিক-নিবিড় 2 ডি গেমগুলির জন্য কৌশলগত কৌশল (গেমস, কার্ড গেমস ইত্যাদি) ভাল good
  • স্লিক - এলডাব্লুজেজিএল ভিত্তিক একটি 2 ডি গেম লাইব্রেরি। সম্ভবত আপনি 2 ডি গেম লিখতে চান তবে এখনও ভাল গ্রাফিক্স পারফরম্যান্স প্রয়োজন (শুট-এম-আপস, স্ক্রোলিং প্ল্যাটফর্ম গেমস ইত্যাদি))
  • জাভাএফএক্স - প্রায় ফ্ল্যাশের মতো সমৃদ্ধ ইন্টারনেট অ্যাপ্লিকেশনগুলির জন্য ডিজাইন করা। অনেক ঝরঝরে বৈশিষ্ট্য রয়েছে যা গেমগুলির জন্য ভাল হবে যদিও আমি এটি এখনও বেশি ব্যবহার করে দেখিনি। বিশেষ করে জাভাএফএক্স ২.০ দেখতে বেশ আশাব্যঞ্জক দেখাচ্ছে।

গেমিংয়ের জন্য জাভাটির প্রধান অসুবিধাগুলি সত্যিই "এজ এজ" এর আশেপাশে রয়েছে যা সম্ভবত আপনাকে প্রভাবিত করবে না তবে গেমের কয়েকটি শ্রেণির জন্য এটি প্রাসঙ্গিক:

  • 3 ডি ইঞ্জিনের উপলভ্যতা - যদিও উপরে তালিকাভুক্ত সরঞ্জাম এবং ইঞ্জিনগুলি ভাল, তারা পেশাদার গেম সংস্থাগুলি দ্বারা ব্যবহৃত অবাস্তব ইঞ্জিনের মতো সি / সি ++ ইঞ্জিনগুলির পর্যায়ে এখনও যথেষ্ট নয়। সুতরাং জাভা আপনার প্রথম পছন্দ হতে পারে না যদি আপনি বহু মিলিয়ন বাজেটের একটি বড় এফপিএস বিকাশের চেষ্টা করছেন - সি / সি ++ এখনও এখানে জিততে পারে।
  • জিসি ল্যাটেন্সি জাভা আবর্জনা সংগ্রহ সামগ্রিকভাবে একটি বিশাল সুবিধা, তবে যখন জিসি চক্র ঘটে তখন এটি সামান্য বিরতি দিতে পারে। এটি নতুন নিম্ন-বিলম্বিত জেভিএমগুলির সাথে আরও ভাল হয়ে উঠছে, তবে এখনও খুব কম বিলম্বিত প্রয়োজনীয়তা (সম্ভবত প্রথম ব্যক্তি শ্যুটারগুলি) গেমসের জন্য সমস্যা হতে পারে। একটি কার্যনির্বাহী হ'ল http://javolution.org/ এর মতো কম বিলম্বিত গ্রন্থাগারগুলি ব্যবহার করা , তবে এগুলি গেমের চেয়ে উচ্চ ফ্রিকোয়েন্সি ট্রেডিং বা রিয়েলটাইম সিস্টেমে বেশি লক্ষ্যবস্তু বলে মনে হয়।
  • নিম্ন স্তরের অপ্টিমাইজেশানগুলি ব্যবহার করার দক্ষতার অভাব - জাভা জেআইটি সংকলকটি অবিশ্বাস্যভাবে ভাল হলেও এটি এখনও কিছু প্রতিবন্ধকতাগুলি কার্যকর করে যা আপনি এড়াতে পারবেন না (উদাহরণস্বরূপ অ্যারেগুলিতে চেকিংয়ের সীমানা)। এই ধরণের জিনিসটিকে অপ্টিমাইজ করতে আপনার যদি সত্যিই নেটিভ মেশিন-কোড স্তরের অ্যাক্সেসের প্রয়োজন হয় তবে আপনি সম্ভবত জাভার চেয়ে সি / সি ++ পছন্দ করবেন।

দ্রষ্টব্য যে বিবেচনা করার জন্য কয়েকটি স্থাপনার বিকল্প রয়েছে:

  • অ্যাপলেট - ব্যবহারকারীদের জন্য খুব সুবিধাজনক একটি ব্রাউজারে চলে, তবে অ্যাপলেটগুলি সুরক্ষার কারণে তারা যা করতে পারে তার পরিবর্তে সীমাবদ্ধ। নোট করুন যে আপনি অতিরিক্ত সুরক্ষা সুবিধার্থে অ্যাপলেটগুলিতে সাইন করতে পারেন, যদিও এটি বেশিরভাগ ব্যবহারকারীর জন্য কিছুটা ভীতিজনক প্রম্পট তৈরি করে।
  • জাভা ওয়েব স্টার্ট - আরও পরিশীলিত গেমগুলির জন্য আরও ভাল যা একটি সম্পূর্ণ স্থানীয় ডাউনলোডের প্রয়োজন এবং স্থানীয় সিস্টেমের সংস্থানগুলি অ্যাক্সেস করতে হবে। এটি একটি সুন্দর প্ল্যাটফর্ম-স্বতন্ত্র উপায়েও কাজ করে। মাঝারি আকারের গেমের জন্য সম্ভবত সেরা রুট বা এমন কিছু যা অ্যাপলেট সুরক্ষা সীমাবদ্ধতা থেকে বাঁচতে হবে।
  • ইনস্টলার ডাউনলোড - আপনি জাভা গেমের জন্য কোনও ইনস্টলার লিখতে পারেন ঠিক তেমন অন্য কোনও ভাষার জন্য। এটি অবশ্যই কনফিগার এবং পরীক্ষা করার জন্য কিছুটা বেশি কাজ, যেহেতু ইনস্টলারগুলির কিছু প্ল্যাটফর্ম-নির্দিষ্ট বৈশিষ্ট্য রয়েছে।
  • ওয়েব - আপনি একটি এইচটিএমএল 5 ওয়েব অ্যাপ্লিকেশন লিখতে এবং জাভার শক্তিটি পুরোপুরি সার্ভারের পাশে ব্যবহার করতে পারেন। একটি মাল্টিপ্লেয়ার ওয়েব গেম জন্য বিবেচনা মূল্য।

পরিশেষে, অন্যান্য কিছু জেভিএম ভাষা বিবেচনা করাও মূল্যবান - এগুলির উপরে বর্ণিত জাভা প্ল্যাটফর্মের সমস্ত সুবিধা রয়েছে তবে কিছু তাদের এটিকে জাভার চেয়ে ভাল ভাষা হিসাবে বিবেচনা করে। স্কালা, ক্লোজার এবং গ্রোভি সর্বাধিক বিশিষ্ট হবে এবং তারা সকলেই উপরে বর্ণিত জাভা সরঞ্জাম এবং লাইব্রেরি ব্যবহার করতে পারে।


1
আপনার অ্যাপ্লিকেশনটিকে ব্রাউজার থেকে পৃথক করা ছাড়া জেডাব্লুএস সত্যই অ্যাপলেটগুলির চেয়ে বেশি কিছু যোগ করে না। উভয় ক্ষেত্রেই আমি মনে করি আপনি যদি ওপেনজিএল লাইব্রেরি ব্যবহার করেন তবে আপনি আপনার কোডটিতে স্বাক্ষর করতে চাইবেন।
পিটার টেলর

2
আমি বলব যে স্থানীয় সিস্টেম অ্যাক্সেস অনেক গুরুতর গেমস, বিশেষত মাল্টিপ্লেয়ারের জন্য অ্যাপলেট বিধিনিষেধের চেয়ে সত্যই বড় "অনেক"। এইচটিএমএল 5 ঝরঝরে, তবে এটি স্পটিটি সমর্থন এবং জিএল এবং সকেটের মতো গুরুত্বপূর্ণ বিটগুলি সহ অনেকগুলি ব্রাউজার বন্ধ করে দিয়েছে, এছাড়াও অডিওটি এখনও গেম ব্যবহারের পক্ষে উপযুক্ত নয়।
প্যাট্রিক হিউজেস

1
@ পেট্রিক হিউজেস, আপনি যদি বড় ভয়ঙ্কর সংলাপ ছাড়াই JWS থেকে স্থানীয় সিস্টেমের অ্যাক্সেস চান তবে আপনার কোডটিতে সাইন ইন করতে হবে - এবং একটি স্বাক্ষরিত অ্যাপলেটটিতে সাধারণত স্থানীয় সিস্টেম অ্যাক্সেস থাকতে পারে।
পিটার টেলর

আপনার জাভা গেমগুলি বিতরণ করতে আপনি ইনো সেটআপও ব্যবহার করতে পারেন ।
মাহমুদ হোসাম

1
আপনি আপনার নিজের ইঞ্জিন লেখার ক্ষেত্রে সাহায্যকারী প্যাকেজগুলির তালিকায় এলআইবিজিডিএক্স যুক্ত করতে পারেন; এটিতে বিভিন্ন প্ল্যাটফর্ম এবং এমনকি অ্যান্ড্রয়েডের জন্য ওপেনজিএল ইএস-এর সেটআপ এবং জেএনআই অপ্টিমাইজেশন রয়েছে।
প্যাট্রিক হিউজেস

4

মাইনক্রাফ্ট এবং ব্লকগুলি যে দুটি বিষয়ই জাভাতে নির্মিত, তাই হ্যাঁ গেমস তৈরির পক্ষে এটি বেশ ভাল। জাভা ব্যবহার করার সময় আপনি যে মুখ্য বিষয়টি চালাতে যাচ্ছেন সেটি হ'ল মোবাইল প্ল্যাটফর্মগুলিতে পোর্টিং করা যদি আপনি সেই পথে যেতে চান এবং কোনও স্থানীয় অ্যাপ্লিকেশন লেখেন। অ্যান্ড্রয়েড একটি পৃথক লাইব্রেরি সহ এক ধরণের স্পষ্টবাদী জাভা এসই। রিমের ব্ল্যাকবেরি জাভা এমই ব্যবহার করে। আইওএসকে তাত্ত্বিকভাবে জাভা দিয়ে প্রোগ্রাম করা যেতে পারে যদিও অবজেক্টিভ-সি সম্ভবত এই প্ল্যাটফর্মের জন্য আরও ভাল পছন্দ হতে পারে।

জাভা সি # এর সাথে বেশ মিল। আমি প্রায়শই জাভা জানার পরেও সি # কোড বোধগম্য মনে করি। তাদের আলাদা নকশার দর্শন রয়েছে তবে সর্বনিম্ন ঝামেলাতে বিস্তৃতভাবে ডিপোয়েবল উভয়ই বিলটি ফিট করে। গেমের জন্য সি # কোনও প্রকারের জন্য ভয়াবহ পছন্দ নয় যদিও আপনার মোবাইল স্থাপনা আরও শক্ত হবে এবং উইন্ডোজবিহীন প্ল্যাটফর্মগুলিতে মোতায়েন করা আরও নির্দিষ্ট সময়সীমার বা কঠিন হতে পারে কোন নির্দিষ্ট বাহ্যিক লাইব্রেরিগুলির উপর নির্ভর করে এবং এর ফলে আপনি কী ব্যবহার করবেন না।


1
মোবাইলে জাভা: একবার সংকলন করুন, সর্বত্রই ডিবাগ করুন: '(।
ডেডালনিক্স

0

সবচেয়ে স্পষ্ট এবং সর্বনিম্ন প্রতিরোধী উপায় হ'ল এইচটিএমএল 5 + জাভাস্ক্রিপ্ট কম্বো ব্যবহার করা। এটি ব্যবহার করে তৈরি করা যে কোনও অ্যাপ্লিকেশন বা গেমটি প্রায় প্রতিটি ডিভাইস এবং ব্রাউজারে চলবে।

সুবিধা : - আপনার গেমটি বিভিন্ন প্ল্যাটফর্ম এবং ডিভাইসে চালিত করার জন্য আপনার শূন্য কনফিগারেশন প্রয়োজন।

দ্রষ্টব্য: - আমি কয়েকটি গেম দেখেছি যা উপরের বর্ণিত প্রযুক্তিগুলি ব্যবহার করে তৈরি হচ্ছে তবে সেগুলি দৈর্ঘ্যে ছোট ছিল। তবে, আমি মনে করি যদি কেউ দুধ থেকে মাখন তৈরি করতে পারে তবে পনির অসম্ভব নয়


0

আপনার জাভা গেমের অভ্যন্তরে স্ট্রেসড কোড বা সমান্তরাল ক্রিয়াকলাপের জন্য জেভিএম ব্যবহার করতে আপনি Eclipse এ স্কালা এবং স্কিম বিগলু ব্যবহার করতে পারেন ।

প্যাটার্ন ডিজাইন এবং ইউএমএল 2 এর সাহায্যে আপনি ওসিএলের সাথে কোডও সুরক্ষিত করতে পারেন, সবগুলি টপক্যাসেড.org এ রয়েছে।

এই সরঞ্জামগুলিতে দক্ষতা অর্জনে সময় লাগে, তবে সেগুলি জাভার পটভূমি, সেই ভিত্তি যা আপনাকে শীর্ষে ঠেলে দেবে।


-10

সংক্ষিপ্ত উত্তর: না।

জাভা বাইনারি এক্সিকিউটেবল তৈরি করে না তবে কেবল সি # ডু (সিএলআই) হিসাবে বাইটকোড তৈরি করে এবং দুটি প্রধান কারণে "খোলা পরিবেশে" গুরুতর ব্যবসায়ের পক্ষে এটি ভাল জিনিস নয়:

  • বিপরীত এনজিনিয়ারিংয়ে আটকা পড়ার সম্ভাবনা খুব বেশি, বিশেষত জাভা এর মতো পুরানো এবং সত্যই সুপরিচিত ভাষাগুলির সাথে
  • আপনি মেশিনের পারফরম্যান্সের উপর সম্পূর্ণ নিয়ন্ত্রণে নন, জাভার ক্ষেত্রে জেভিএম সম্পূর্ণ নিয়ন্ত্রণ গ্রহণের ক্ষেত্রে একটি বড় ভূমিকা পালন করে।

অবশ্যই প্রতিটি ভাষার নিজস্ব গ্রন্থাগার রয়েছে তবে প্রতিটি ভাষার জন্য তাদের প্রচুর পরিমাণের কারণে এটি আসল সমস্যা নয় এবং আমি মনে করি না এই বিষয়টির উদ্দেশ্য।

হতে পারে একটি পেশাদার স্তরে আপনি এমন কিছু আবিষ্কার করতে পারেন যা একটি দেব-কিটের মতো নিয়মকে ভেঙে ফেলতে পারে যা সমস্ত সি # বিবৃতিকে আসল ওয়ার্ল্ড মেশিনের জন্য অ্যাসেম্বলি কোডে অনুবাদ করতে পারে, তবে এই ধরণের পদ্ধতির যদি এটি কার্ডগুলিতে না হয় তবে আপনাকে প্রাসঙ্গিকভাবে বাধ্য করা হয় যখন আপনি উন্মুক্ত পরিবেশে আপনার পণ্য বিক্রয় করার লক্ষ্য রাখেন তখন আপনার বিকাশের জন্য কেবলমাত্র সি এবং সি ++ বিবেচনা করুন।

মোবাইল ডিভাইসগুলির জন্য জিনিসগুলি কিছুটা আলাদা কারণ তারা "বদ্ধ পরিবেশ" হওয়ায় এমনকি অ্যান্ড্রয়েডও বাস্তব বিশ্বের রমগুলির উত্স সাধারণত জনসাধারণের কাছে উপলব্ধ হয় না, এই বিষয়টি বিবেচনা করে বন্ধ করে দেওয়া হয়, অ্যান্ড্রয়েডকে ওপেনসোর্স হিসাবে বিবেচনা করা যেতে পারে তবে 99 অ্যাকচুয়াল ডিভাইসে রম এর%% নেই n't এই ক্ষেত্রে আপনি খুব বেশি তর্ক করতে পারবেন না, আপনার জন্য সবকিছু ইতিমধ্যে সেট করা আছে এবং প্রতিটি প্ল্যাটফর্মের নিজস্ব ভাষা রয়েছে যা সবাই জানেন।

শেষ পর্যন্ত যদি আপনি এই পণ্যগুলি একটি উন্মুক্ত পরিবেশে বিক্রি করতে চলেছেন তবে আমি কেবল সেই ভাষাগুলিরই পরামর্শ দিতে পারি যা সংকলিত এবং বাইনারি / এসেম্বলি কোড তৈরি করতে পারে, বদ্ধ পরিবেশে সিদ্ধান্ত টিপিকভাবে বিভিন্ন কারণে করা আরও সহজ।


7
আপনি মনে করেন যে সংকলিত বাইনারিগুলি বাইটকোড বাইনারিগুলির তুলনায় প্রকৌশলীকে রিভার্স করা শক্ত। এতে সামান্য সত্যতা থাকতে পারে তবে অনেকটা নয়। আসলে সম্ভবত সিএলআই বা জাভা বাইটকোডের চেয়ে আরও বেশি লোক x86 এবং x64 বিচ্ছিন্নতার সাথে কাজ করতে পারে, এবং আপনি অবাক হবেন যে আইডিএ প্রো এর মতো একটি সরঞ্জাম কতটা সহায়ক হতে পারে (অস্বীকৃতি - আমি বিনামূল্যে সংস্করণ থেকে এটি ব্যবহার করি নি বেশ কিছুটা বছর আগে - এটি সম্ভবত এখন আরও সহজ)। একটি অপ্রচলিত বাইটকোড ফাইল এমনকি প্রকৃত বিপরীত প্রকৌশলী হতে পারে এবং যে কোনও ক্ষেত্রে, বেশিরভাগ লোকের যত্ন নেওয়ার খুব কম কারণ থাকবে।
স্টিভ 314

2
কেন যত্ন নেওয়ার সামান্য কারণ? ভাল, কত লোক তাদের নিজস্ব নিম্ন-স্তরের মালিকানাধীন গেম ইঞ্জিনগুলি লেখেন? এমনকি যদি আপনি তা করেন তবে বৈধতা কী কী যে কেউ আপনার পরিবর্তে চুরি করবে (বিপরীত প্রকৌশল প্রয়োজন, কোনও প্রকারের ডকুমেন্টেশন ইত্যাদির অভাব ইত্যাদি - সেখানে প্রচুর সময় নষ্ট হয় না, উন্নয়নের ভাষাটি যাই হোক না কেন) আইনত ব্যবহার না করে ভাল ডকুমেন্টেড ফ্রি ওপেন সোর্স ইঞ্জিন? সম্পূর্ণ প্রোগ্রামের জলদস্যুতা কোড ধারণাগুলি চুরি করতে রিভার্স ইঞ্জিনিয়ারিংয়ের চেয়ে অনেক বেশি সম্ভবত প্রকৃত উদ্বেগ এবং জলদস্যুরা দেশীয় সংকলিত কোডের দ্বারা সামান্যতম বিটকে বঞ্চিত মনে হয় না।
স্টিভ 314

1
বিমূর্ততার স্তরে, জেভিএম নির্দেশাবলী অত্যন্ত নিম্ন স্তরের - হার্ডওয়্যার হিসাবে সুনির্দিষ্টভাবে নয়, তবে মূলত অ্যাপ্লিকেশন স্তর বিমূর্ততা থেকে ঠিক যতটা সরানো হয়েছে। যেখানে বিমূর্ত গণনার স্তরগুলি স্ট্যান্ডার্ড জাভা লাইব্রেরিতে রয়েছে অর্থাত্ প্ল্যাটফর্ম এবং চূড়ান্ত অ্যাপ্লিকেশনটির মধ্যে সত্যিই কয়েকটি স্তর রয়েছে। সাধারণত সি এবং সি ++ এ সাধারণত ঘটে থাকে তা ব্যতীত (কেন রিবেন্ট লাইবপং ইত্যাদি) - বেশিরভাগ লোক সাধারণ লাইব্রেরি ব্যবহার করবেন যা কার্যকরভাবে বহুল পরিচিত প্ল্যাটফর্মগুলির একটি সেট তৈরি করে, এবং ভাল বিপরীত প্রকৌশল সরঞ্জামগুলি তাদের সনাক্ত করতে পারে।
স্টিভ 314

3
প্রয়োজনীয়তাগুলি পূরণ করার জন্য সমস্ত কোড এফপিজিএতে প্রেরণ করতে হবে এবং ইপোক্সিতে অন্তর্ভুক্ত থাকবে। আশ্চর্য, এমনকি ব্ল্যাক-বক্স চিপ প্যাকেজগুলি সর্বদা বিপরীত ইঞ্জিনিয়ারিং করতে পারে। তারপরেও ইন্টেলের মতো শক্তিশালী জায়ান্টরা তাদের সিপিইউ প্যাকেজগুলিতে বাগগুলি প্রবর্তন করে যাতে আপনার ইপোক্সি এম্বেড করা হয়, হার্ডওয়্যার ব্ল্যাক বাক্সটি এখনও হার্ডওয়্যার লাইব্রেরির সংস্পর্শে ভুগতে চলেছে। অবশেষে সুরক্ষার জন্য অস্পষ্টতার আহ্বান, এটি কার্যকর হয় না। অজ্ঞাতসারে হ্রাস, আমি জানি, তবে মূল উত্তরটিও তাই।
প্যাট্রিক হিউজেস

3
দুর্ভাগ্যক্রমে আমার কাছে আপনাকে নামিয়ে দেওয়ার যথেষ্ট সুনাম নেই। আপনার সমস্ত যুক্তি ব্যর্থ হয়েছে। সি, সি ++ বা যে কোনও ভাষায় উত্পাদিত গেমগুলি ডিকোডিং, ডিসকম্পিলিং এবং হ্যাকিংয়ের লোক রয়েছে, সুতরাং বাইনারি প্যাকেজ হওয়ার কারণে অতিরিক্ত অতিরিক্ত সুরক্ষা দেওয়া হবে না। তদ্ব্যতীত, যদি ওপি এই বিষয়ে উদ্বিগ্ন হয় তবে সেখানে খুব ভাল জবা ওফুসেটর রয়েছে। মেশিনের পারফরম্যান্সের সম্পূর্ণ নিয়ন্ত্রণ সম্পর্কে, বেশিরভাগ সি এবং সি ++ প্রোগ্রামারগুলির এগুলি নেই, কেবল ভাল কোড লিখুন এবং সংকলকটি অপ্টিমাইজ করবে যা প্রয়োজন is এমনকি যদি সমস্যা হয় তবে আপনি জেএনআই বা জেএনএ ব্যবহার করতে পারেন।
ভিক্টর স্টাফুসা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.