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

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.

主站蜘蛛池模板: 南投市| 林甸县| 陆河县| 库尔勒市| 克拉玛依市| 万载县| 景德镇市| 万年县| 布尔津县| 恩平市| 广平县| 崇文区| 福泉市| 漯河市| 湘西| 民县| 改则县| 文登市| 石林| 吉安市| 轮台县| 吴江市| 鄂州市| 綦江县| 柏乡县| 安溪县| 柏乡县| 房山区| 泽州县| 明水县| 卢氏县| 临澧县| 来宾市| 湄潭县| 遂宁市| 陕西省| 朝阳区| 油尖旺区| 广灵县| 高碑店市| 高尔夫|