VaKeR CYBER ARMY
Logo of a company Server : Apache/2.4.41 (Ubuntu)
System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Directory :  /usr/share/GNUstep/Documentation/Developer/CodingStandards/gs-standards/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //usr/share/GNUstep/Documentation/Developer/CodingStandards/gs-standards/ObjectiveC.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>ObjectiveC (Coding Standards for GNUstep Libraries)</title>

<meta name="description" content="ObjectiveC (Coding Standards for GNUstep Libraries)">
<meta name="keywords" content="ObjectiveC (Coding Standards for GNUstep Libraries)">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<link href="index.html" rel="start" title="Top">
<link href="index.html" rel="up" title="Top">
<link href="Memory-Management.html" rel="next" title="Memory Management">
<link href="Coding-Style.html" rel="prev" title="Coding Style">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>


</head>

<body lang="en">
<span id="ObjectiveC"></span><div class="header">
<p>
Next: <a href="Memory-Management.html" accesskey="n" rel="next">Memory Management</a>, Previous: <a href="Coding-Style.html" accesskey="p" rel="prev">Coding Style</a>, Up: <a href="index.html" accesskey="u" rel="up">Top</a> &nbsp; </p>
</div>
<hr>
<span id="ObjectiveC-1"></span><h2 class="chapter">4 ObjectiveC</h2>

<p>Since GNUstep is primarily written in ObjectiveC the C language coding
standards largely apply with modifications as specified in the previous
section.
</p>
<p>Most code is expect to be written in traditional ObjectiveC, but classes
implementing newer APIs designed by Apple will sometimes need to be written
using ObjectiveC-2.0, though compatibility with old compilers should be
maintained wherever possible, and preprocessor macros must be used to at
least conditionally build new code without breaking old code.
</p>
<p>One ObjectiveC-2.0 feature (the dot (&rsquo;.&rsquo;) operator) is forbidden though.
One problem is that, while apparently simple, the actual operation of this
feature in unusual cases is actually undefined and varies between compiler
versions.  
The more serious problem is that the feature is simply very bad style
because it looks like a simple structure field access and yet the code
is really doing something very different and much more expensive, so use
of the feature tends to lead to performance problems, bugs, and less
explicit/readable code.
</p>




</body>
</html>

VaKeR 2022