সি এবং সি ++ ব্যবহার করে অ্যান্ড্রয়েড বিকাশ [বন্ধ]


47

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

উত্তর:


33

সংক্ষিপ্ত সংস্করণ: অ্যান্ড্রয়েডে সি ++ নিয়ে কাজ করা প্রতিটি অ্যান্ড্রয়েড এসডিকে / এনডিকে সংস্করণ দিয়ে সম্ভব এবং সহজ, তবে জাভা দিয়ে কাজ করা আরও শক্ত er


দীর্ঘ সংস্করণ:

প্রতিটি সংস্করণের জন্য, গুগল অ্যান্ড্রয়েড নেটিভ ডেভলপমেন্ট কিটে আরও কার্যকারিতা যুক্ত করে এবং এটিকে জাভা কোডে আরও বেশি স্বাধীন করে তোলে।

আরও বিশদ জানতে http://developer.android.com/sdk/ndk/overview.html পড়ুন :

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

সমস্যাটি কেবলমাত্র যদি আপনি সর্বাধিক সাম্প্রতিক এনডিকে ব্যবহার করেন তবে আপনি স্থাপন করতে পারবেন না এবং প্রচুর সাম্প্রতিক অ্যান্ড্রয়েড সংস্করণও স্থাপন করতে পারবেন না।

যাইহোক, এমনকি পূর্ববর্তী এনডিকে সংস্করণ সহ, আপনার কাছে ন্যূনতম জাভা কোড (ওএসের সাথে ইন্টারঅ্যাক্ট করার জন্য) এবং সি ++ বা সম্পূর্ণ কিছু স্থানীয় অ্যাপ্লিকেশন কোড থাকতে পারে।

দেশী বিকাশকারীদের এই ভিএস-অ্যান্ড্রয়েডের মতো আইডিই প্লাগইনগুলির মাধ্যমে সি বা সি ++ এ পুরোপুরি কাজ করতে সহায়তা করার প্রচেষ্টা রয়েছে যা আপনার কাছ থেকে সমস্ত সংকলন এবং প্রজন্মের প্রক্রিয়াটি গোপন করে: ভিজুয়াল স্টুডিও 201x জন্য একটি প্লাগইন: http://code.google.com / P / বনাম-অ্যান্ড্রয়েড /

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

বলা হচ্ছে, মোবাইল অ্যাপ্লিকেশনগুলিতে কাজ করা সবচেয়ে সহজ উপায় নয়।


8

গেম ডেভলপমেন্টে যাওয়ার আপনার দৃ plan় পরিকল্পনা থাকলে আমি আপনাকে সি ++ এ যাওয়ার পরামর্শ দেব। তবে যদি তা না হয় তবে আপনি জাভাতে যান। অফিসিয়াল অ্যান্ড্রয়েড ওয়েবসাইটে আপনার জন্য এখানে একটি ভাল প্রাইমার রয়েছে:

অ্যান্ড্রয়েডের জন্য গেম ডেভলপমেন্ট: কুইক প্রাইমার

দ্রষ্টব্য: দয়া করে টিউটোরিয়ালটির দ্বিতীয় ধাপ (দ্বিতীয় ধাপ: একটি ভাষা বাছাই করুন) পড়ুন।

আপনি যদি জাভাটি একেবারেই জানেন না এবং দীর্ঘমেয়াদে অ্যান্ড্রয়েডে অ্যাপ্লিকেশন বিকাশ করতে চান তবে জাভা শিখতে হবে। অফিসিয়াল ওয়েবসাইটে দেওয়া দুর্দান্ত টিউটোরিয়াল আছে। একটি দুর্দান্ত বই রয়েছে যা আপনি বিশেষ করে অ্যান্ড্রয়েড বিকাশের জন্য শেখার জন্য দখল করতে পারেন: এটি এখানে: অ্যান্ড্রয়েড বিকাশের জন্য জাভা শিখুন


যে ব্যক্তি প্রশ্ন পোস্ট করেছেন সে ইতিমধ্যে সি ++ জানে, তাই আপনার পরামর্শের মূল বক্তব্য কী?
অভি

7

আমি কি সি / সি ++ ডেভলপমেন্ট কিটের জন্য যাব বা জাভা শেখা আরও ভাল কারণ তারা ভবিষ্যতে সমস্ত কার্যকারিতা সরবরাহ করতে পারে না?

উত্তর দুটি।

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

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