官术网_书友最值得收藏!

Why do we need memory management in Objective-C?

It does not matter what programming language is being used; the question of memory management always persists. In general, it is a question of resource management that cannot be avoided because memory is always a limited resource.

The scripting languages and Java, where memory management is handled by the virtual machine or application (where it is hidden from the code), are not always effective enough. While it is easier for the programmer this way, it can have a negative impact on resources, since you don't have an absolute control of it and there are objects still "living" when we don't need them anymore, plus these "living" objects still occupy precious memory space, which can be used by other objects. Additionally, depending on what you ask, another opinion is that an automatic memory management is the only right way to go.

Such talks usually start discussions like "Which is the best programming language?" and" What is the best way of memory management?". Let's leave that meaningless business for blogs' and forums' "Holy-Wars". Every tool has it's use in the correct context and Objective-C memory management concept is quite efficient in terms of both time cost savings and resource saving.

The memory in Objective-C, is managed in a different way from some of the widespread languages such as C/C++, Java, or C#, which are typically taught in schools as it introduces new concepts such as object ownership. Memory management is crucial for devices that run on a limited amount of memory such as mobile phones, smart watches, and so on, since effective memory management will allow you to squeeze every ounce of performance needed to run efficiently on these small devices, where memory is scarce on these devices.

主站蜘蛛池模板: 天长市| 顺昌县| 修文县| 洱源县| 济阳县| 当阳市| 察隅县| 霞浦县| 墨脱县| 瑞金市| 陵川县| 永昌县| 汤原县| 浏阳市| 鸡泽县| 竹溪县| 温泉县| 通许县| 合川市| 克拉玛依市| 大悟县| 眉山市| 梅州市| 金秀| 永和县| 舞阳县| 满城县| 扬中市| 怀仁县| 昔阳县| 德格县| 桐乡市| 宜兰县| 新疆| 隆化县| 长春市| 黔西县| 宁化县| 临漳县| 新丰县| 瓦房店市|