আমার আইওএস অ্যাপ্লিকেশনটির বেশিরভাগ মডেল একটি ওয়েব সার্ভারকে জিজ্ঞাসা করে। আমি সার্ভারের বেস ইউআরএল সংরক্ষণ করে একটি কনফিগারেশন ফাইল রাখতে চাই। এটি দেখতে এরকম কিছু দেখাবে:
// production
// static NSString* const baseUrl = "http://website.com/"
// testing
static NSString* const baseUrl = "http://192.168.0.123/"
একটি লাইন বা অন্যটি মন্তব্য করে, আমি তত্ক্ষণাত্ আমার মডেলগুলি কোন সার্ভারে ইঙ্গিত করে তা পরিবর্তন করতে পারি। আমার প্রশ্ন হ'ল, আইওএসে বিশ্বব্যাপী ধ্রুবক সংরক্ষণের জন্য সেরা অনুশীলন কোনটি? অ্যান্ড্রয়েড প্রোগ্রামিংয়ে আমাদের এই বিল্ট-ইন স্ট্রিং রিসোর্স ফাইল রয়েছে । যে কোনও ক্রিয়াকলাপে (একটি ইউআইভিউউকন্ট্রোলারের সমতুল্য ), আমরা এই স্ট্রিং ধ্রুবকগুলি এর সাথে পুনরুদ্ধার করতে পারি:
String string = this.getString(R.string.someConstant);
আমি ভাবছিলাম যে আইওএস এসডিকে কনস্ট্যান্টগুলি সঞ্চয় করার জন্য কোনও অভিন্ন জায়গা রয়েছে কিনা। যদি তা না হয় তবে এটি করার জন্য অবজেক্টিভ-সি এর সেরা অনুশীলনটি কী?
"constants.h"
পদ্ধতির ব্যবহার করে ,static
ভেরিয়েবলের ভিত্তিতে ঘোষণা করে#ifdef VIEW_CONSTANTS ... #endif
। সুতরাং আমার কাছে একটি অ্যাপ্লিকেশন-ওয়াইড কনস্ট্যান্ট ফাইল রয়েছে, তবে আমার প্রতিটি কোড ফাইলের#define
কনস্ট্যান্টগুলির ফাইল- এর আগে অন্তর্ভুক্ত করার জন্য#include
কনস্ট্যান্টগুলির বিভিন্ন সেট রয়েছে (সমস্ত "সংজ্ঞায়িত তবে ব্যবহৃত নয়" সংকলক সতর্কতা বন্ধ করে দেয়)।