এক্সকোড আপনাকে নির্দিষ্ট সংকলক সতর্কতার জন্য সেটিংস পরীক্ষা করতে (আন) মঞ্জুরি দেয় যা আপনাকে কিছু ধরণের অব্যবহৃত কোড সম্পর্কে সতর্ক করতে পারে। (উত্স তালিকায় প্রকল্পটি নির্বাচন করুন এবং ফাইল> তথ্য পান, তারপরে বিল্ড ট্যাবটি নির্বাচন করুন)) এখানে কয়েকটি (যা আমার জন্য কলং এবং জিসিসি ৪.২ এর জন্য প্রদর্শিত হয়) আগ্রহী হতে পারে:
- অব্যবহৃত ফাংশন
- অব্যবহৃত পরামিতি
- অব্যবহৃত মান
অব্যবহৃত আমদানি শনাক্ত করার জন্য আমি কোনও বিকল্প দেখতে পাচ্ছি না, তবে এটি কিছুটা সহজ - স্বল্প প্রযুক্তির পদ্ধতিরটি কেবল একটি সঙ্কলনের ত্রুটি / সতর্কতা না পাওয়া পর্যন্ত আমদানির বিবৃতিগুলি মন্তব্য করা।
অব্যবহৃত অবজেক্টিভ-সি পদ্ধতিগুলি অব্যবহৃত সি ফাংশনগুলির চেয়ে সনাক্ত করা অনেক বেশি কঠিন কারণ বার্তাগুলি গতিশীলভাবে প্রেরণ করা হয়েছে। একটি সতর্কতা বা ত্রুটি আপনাকে বলতে পারে যে আপনার একটি সম্ভাব্য সমস্যা রয়েছে, তবে একটির অভাব গ্যারান্টি দেয় না যে আপনার রানটাইম ত্রুটি হবে না।
সম্পাদনা: অব্যবহৃত পদ্ধতিগুলি (সম্ভাব্য) সনাক্ত করার আরেকটি ভাল উপায় হ'ল প্রকৃত মৃত্যুদণ্ড থেকে কোড কভারেজ পরীক্ষা করা। এটি স্বয়ংক্রিয়ভাবে ইউনিট টেস্টিংয়ের সাথে প্রায়শই করা হয়, তবে তা হওয়ার দরকার নেই।
এই ব্লগ পোস্টটি এক্সকোড ব্যবহার করে ইউনিট টেস্টিং এবং কোড কভারেজের একটি শালীন ভূমিকা। বিভাগটি gcov
(যা কেবলমাত্র জিসিসি দ্বারা উত্পাদিত কোডের সাথে কাজ করে, উপায় দ্বারা) কীভাবে এক্সকোডকে উইন্ডোমেটেড কোড বানাতে হবে তা এটি কতবার কার্যকর করা হয়েছে তা রেকর্ড করতে পারে explains যদি আপনি সিমুলেটারে কোনও স্পিনের জন্য আপনার অ্যাপ্লিকেশনটির একটি চালিত বিল্ড নেন তবে তার উপর gcov চালান, আপনি কভারস্টেরির মতো একটি সরঞ্জাম (মোটামুটি সরল জিইউআই) বা lcov
(এইচটিএমএল রিপোর্ট তৈরি করতে পার্ল স্ক্রিপ্ট ) ব্যবহার করে কী কোডটি কার্যকর করা হয়েছিল তা দেখতে পাবেন what ।
আমি ব্যবহার gcov
এবং lcov
জন্য CHDataStructures.framework এবং স্বত-জেনারেট কভারেজ প্রতিবেদন প্রতিটি SVN পর কমিট। আবার, মনে রাখবেন যে কোডটি "মৃত" কীসের একটি নির্ধারিত পরিমাপ হিসাবে মৃত্যুদন্ড কার্যকর করা কভারেজকে আচরণ করা বুদ্ধিমানের নয়, তবে এটি অবশ্যই আরও পদ্ধতিগুলি চিহ্নিত করতে সহায়তা করতে পারে যা আপনি আরও তদন্ত করতে পারেন।
শেষ অবধি, যেহেতু আপনি মৃত কোডটি সরিয়ে দেওয়ার চেষ্টা করছেন, আমি মনে করি আপনি এই এসও প্রশ্নটি আকর্ষণীয়ও পেয়ে যাবেন:
id
বা রানটাইমের সময় কল করার জন্য কোনও নির্বাচক তৈরি করেন তবে স্ট্যাটিক বিশ্লেষক গ্যারান্টি দিতে পারবেন না কোডটি সত্যই অব্যবহৃত। যদি এখনও প্রয়োজনীয় কোডটি অপসারণ করা হয় তবে আপনি রানটাইম ত্রুটি পাবেন। আমি কিছু অনুপস্থিত করছি?