সাধারণ ডিভাইসের চেয়ে বিকাশকারী ডিভাইসগুলি কেন আপনাকে আরও সংস্থান দেয়?


9

আমি একটি অ্যাপ তৈরি করেছি যা আমার চতুর্থ প্রজন্মের আইপড টাচ এবং আমার সংস্থার ৫ ম প্রজন্মের আইপড স্পর্শে কাজ করে।

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

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

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

টিএল; ডিআর - কেন লক্ষ্য প্ল্যাটফর্মের তুলনায় উন্নয়ন কিটগুলির বেশি সংস্থান রয়েছে?

* একটি অ-বিকাশকারী ডিভাইস কোনও> তৃতীয় জেনের সাথে রয়েছে। আইওএস ডিভাইস যা অ্যাপ্লিকেশনটি ডাউনলোড করে আমাদের সার্ভার থেকে, সরাসরি অ্যাপ এবং এক্সকোড ইনস্টল করা কম্পিউটার থেকে নয়।

নোট করুন এখানে আরও একটি প্রশ্ন রয়েছে যা একই রকম পড়ে, তবে এটি আসলে আলাদা, কারণ অন্য প্রশ্নটি সিমুলেটার সম্পর্কে জিজ্ঞাসা করছে এবং আমি বুঝতে পারি যে সিমুলেটর এবং একটি আসল ডিভাইস ব্যবহারের মধ্যে প্রচুর পার্থক্য রয়েছে।


7
@gnat - আমার আইফোন অ্যাপটি কেন পরীক্ষা করা প্রয়োজন তা এই পোস্টটির সদৃশ নয় । আমি বুঝতে পারি যে একটি সিমুলেটর এবং একটি আসল ডিভাইস ব্যবহার করার মধ্যে প্রচুর পার্থক্য রয়েছে ...
কাঠামারিটাকো

উত্তর:


8

বিকাশের পরিবেশ (যে কোনও কিছুর জন্য - এটি একা একা জাভা অ্যাপ্লিকেশন, বা একটি মোবাইল পরিবেশ, বা এম্বেডড ডিভাইস) সাধারণত রিমোট ডিবাগিং, বর্ধিত লগিং এবং এনভায়ারোমেন্টের অন্যান্য প্রকারের অন্তঃকরণের ক্ষমতা রাখার ক্ষমতা রাখে (একটি সাধারণত এটি চায় না কোনও প্রোডাকশন এম্বেড থাকা ডিভাইসে লজিক অ্যানালাইজারের জন্য সমস্ত হুক যুক্ত করতে )।

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

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


1
হ্যাঁ, কিউএর সর্বদা শেষ-ব্যবহারকারীর পরিবেশে পরীক্ষা করা দরকার, উন্নয়ন পরিবেশ নয়।
26

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

@ জনআর.স্ট্রোহম একটি উন্নয়নের জন্য, অনুসন্ধান করা ভাল। আমি সমস্তই বলার চেষ্টা করছি যে এটি যদি এমন একটি প্রোডাকশন বোর্ড তৈরির জন্য তৈরি করা হয়েছিল যা উন্নয়ন বোর্ডের চেয়ে আলাদা হয়, তবে উন্নয়নের সাথে সাফল্যের পরে একটিকেও আবার প্রোডাক্টের সাথে পরীক্ষা করতে হবে (এবং প্রয়োজনে অনুসন্ধান করা হবে)।

এটি একটি সাধারণ 'ডেভ কিট' এর জন্য প্রচুর অর্থবোধ করে। কৌতূহলের বাইরে, আইওএসের ক্ষেত্রে কোনও আইডিভাইসকে 'বিকাশকারী ডিভাইস' হিসাবে ব্যবহার করা যেতে পারে। একই হার্ডওয়্যার দুটি টুকরা সঙ্গে কিভাবে পার্থক্য থাকতে পারে?
কাঠামারিটাচো

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

5

এটি আপনাকে একটি রিসোর্স-লোভী প্রমাণ-ধারণাটি তৈরি করতে সহায়তা করে যা আপনি পরে অনুকূলিত করতে পারেন।

এটি কোনও অ্যাপ্লিকেশন ক্রাশ করার কোনও অর্থ রাখে না কারণ এটি মেমরির সীমা চেয়ে 5 বাইট (মুক্তির স্থান সংরক্ষণের জন্য অপ্টিমাইজার সেট করে সমাধান করা যেতে পারে তবে আপনি একটি ডিবাগ সংস্করণ চালাচ্ছেন),

পরীক্ষার সময় আপনি যখন ভোক্তার সীমা অতিক্রম করবেন তখন লগটিতে একটি সতর্কতা পপ আপ হওয়া এখানে দুর্দান্ত।


1

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

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

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

এজন্য আপনাকে এটি প্রয়োগ করার আগে আপনার অ্যাপ্লিকেশনটি একটি নন-বিকাশকারী ডিভাইসে পরীক্ষা করতে হবে, এটি নিশ্চিত করা হয়েছে যে এটি ভাল আচরণ করেছে make :)


0

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

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

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