<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://www.multimediaexpo.cz/mmecz/skins/common/feed.css?270"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="cs">
		<id>http://www.multimediaexpo.cz/mmecz/index.php?action=history&amp;feed=atom&amp;title=Objective-C</id>
		<title>Objective-C - Historie editací</title>
		<link rel="self" type="application/atom+xml" href="http://www.multimediaexpo.cz/mmecz/index.php?action=history&amp;feed=atom&amp;title=Objective-C"/>
		<link rel="alternate" type="text/html" href="http://www.multimediaexpo.cz/mmecz/index.php?title=Objective-C&amp;action=history"/>
		<updated>2026-06-19T07:16:33Z</updated>
		<subtitle>Historie editací této stránky</subtitle>
		<generator>MediaWiki 1.16.5</generator>

	<entry>
		<id>http://www.multimediaexpo.cz/mmecz/index.php?title=Objective-C&amp;diff=221942&amp;oldid=prev</id>
		<title>Sysop: 1 revizi</title>
		<link rel="alternate" type="text/html" href="http://www.multimediaexpo.cz/mmecz/index.php?title=Objective-C&amp;diff=221942&amp;oldid=prev"/>
				<updated>2013-07-14T18:44:00Z</updated>
		
		<summary type="html">&lt;p&gt;1 revizi&lt;/p&gt;
&lt;table style=&quot;background-color: white; color:black;&quot;&gt;
		&lt;tr valign='top'&gt;
		&lt;td colspan='1' style=&quot;background-color: white; color:black;&quot;&gt;← Starší verze&lt;/td&gt;
		&lt;td colspan='1' style=&quot;background-color: white; color:black;&quot;&gt;Verze z 14. 7. 2013, 18:44&lt;/td&gt;
		&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Sysop</name></author>	</entry>

	<entry>
		<id>http://www.multimediaexpo.cz/mmecz/index.php?title=Objective-C&amp;diff=221941&amp;oldid=prev</id>
		<title>Sysop: + Nový článek</title>
		<link rel="alternate" type="text/html" href="http://www.multimediaexpo.cz/mmecz/index.php?title=Objective-C&amp;diff=221941&amp;oldid=prev"/>
				<updated>2009-01-02T14:37:00Z</updated>
		
		<summary type="html">&lt;p&gt;+ Nový článek&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nová stránka&lt;/b&gt;&lt;/p&gt;&lt;div&gt;'''Objective-C''', často nazývaný '''ObjC''', je [[objektově orientované programování|objektově orientovaný]] [[programovací jazyk]] implementovaný jako rozšíření jazyka [[Jazyk C|C]]. V současné době je používán v operačním systému [[Mac OS X]] a [[GNU]] projektu [[GNUstep]]. Obě prostředí jsou založena na standardu [[OpenStep]].&lt;br /&gt;
&lt;br /&gt;
Objective-C byl původně vyvinut jako hlavní programovací jazyk pro počítače [[NeXT]] s [[operační systém|operačním systémem]] [[NeXTSTEP]]. Počítače NeXT už se nevyrábějí, ale myšlenka softwarového prostředí přetrvala ve standardu [[OpenStep]].&lt;br /&gt;
&lt;br /&gt;
Kompilátor tohoto jazyka je součástí kolekce kompilátorů [[GCC]].&lt;br /&gt;
&lt;br /&gt;
==Historie==&lt;br /&gt;
[[Brad Cox]] vyvinul Objective-C ve společnosti [[Stepstone]] počátkem osmdesátých let minulého století.&lt;br /&gt;
&lt;br /&gt;
==Základy jazyka==&lt;br /&gt;
Objective-C je nadmnožinou jazyka C. Díky tomu je možné přeložit libovolný program jazyka C kompilátorem Objective-C.&lt;br /&gt;
&lt;br /&gt;
===Nové datové typy===&lt;br /&gt;
*BOOL&lt;br /&gt;
*Class (v podstatě totéž co id a je s ním zaměnitelný; umožňuje lepší typovou kontrolu při překladu)&lt;br /&gt;
*id&lt;br /&gt;
*IMP&lt;br /&gt;
*SEL&lt;br /&gt;
&lt;br /&gt;
===Zprávy===&lt;br /&gt;
Syntaxe posílání zpráv (volání metod) objektům je odvozena ze syntaxe jazyka [[Smalltalk]] na rozdíl od [[C++]], které vychází z jazyka [[Simula 67]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
[příjemce zpráva]&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tímto způsobem je možné volat metodu na instanci, statickou metodu na třídě nebo metodu na přímém předkovi pomocí klíčového slova super. Každá instance disponuje proměnou self, což je ukazatel na sebe sama ekvivalentní ''this'' z C++.&lt;br /&gt;
&lt;br /&gt;
===Rozšíření možností preprocesoru===&lt;br /&gt;
Je přidán jednořádkový komentář.&lt;br /&gt;
&lt;br /&gt;
Direktiva #import je pohodlnější verze #include, která zabrání opakovanému vložení hlavičkového souboru.&lt;br /&gt;
&lt;br /&gt;
===Rozhraní a implementace===&lt;br /&gt;
Objective-C vyžaduje oddělení rozhraní a implementace do samostatných bloků, eventuálně souborů.&lt;br /&gt;
&lt;br /&gt;
====Rozhraní====&lt;br /&gt;
Rozhraní třídy je obvykle definováno v hlavičkovém souboru. Je dobrým zvykem pojmenovat soubor dle třídy kterou definuje. V případě jednoduchých tříd není nutné.&lt;br /&gt;
&lt;br /&gt;
Obecný tvar rozhraní&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
@interface jméno_třídy : předek&lt;br /&gt;
{&lt;br /&gt;
	proměnné instance&lt;br /&gt;
}&lt;br /&gt;
+ metoda třídy&lt;br /&gt;
+ metoda třídy&lt;br /&gt;
...&lt;br /&gt;
- metoda instance&lt;br /&gt;
- metoda instance&lt;br /&gt;
...&lt;br /&gt;
@end&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Implementace====&lt;br /&gt;
Vlastní těla metod se nacházejí v bloku implementace. Přípona souboru s implementací je „.m“.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
@implementation jméno_třídy&lt;br /&gt;
+ metoda třídy&lt;br /&gt;
{&lt;br /&gt;
	/* implementation */&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
- metoda instance&lt;br /&gt;
{&lt;br /&gt;
	/* implementation */&lt;br /&gt;
}&lt;br /&gt;
...&lt;br /&gt;
@end&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Protokol===&lt;br /&gt;
Protokol definuje pouze hlavičky metod, které musí třída implementovat. Tímto postupem lze vynutit stejné stejné chování u nepříbuzných tříd.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
@protocol Protokol_1&lt;br /&gt;
- metoda;&lt;br /&gt;
@end&lt;br /&gt;
&lt;br /&gt;
@interface Třída : Rodič &amp;lt;Protokol_1, Protokol_2, ...&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
@end&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Externí odkazy ==&lt;br /&gt;
* [http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/ Introduction to The Objective-C Programming Language (Apple Developer Connection, anglicky)] &lt;br /&gt;
* ''[http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/ObjC.pdf The Objective-C 2.0 Programming Language (PDF, anglicky)]&lt;br /&gt;
* [http://www.toodarkpark.org/computers/objc/ Object-Oriented Programming and The Objective-C Language (anglicky)]&lt;br /&gt;
* [http://www.otierney.net/objective-c.html Beginner’s Guide to Objective-C (anglicky)]&lt;br /&gt;
* [http://objectivelib.sourceforge.net/ ObjectiveLib: variant of a Standard Template Library (anglicky)]&lt;br /&gt;
* [http://virtualschool.edu/objectivec/ Objective-C by Brad Cox (anglicky)]&lt;br /&gt;
* [http://www.cs.indiana.edu/classes/c304/oop-intro.html Object Oriented Programming in Objective-C (anglicky)]&lt;br /&gt;
* [http://www.faqs.org/faqs/computer-lang/Objective-C/faq/ Objective-C FAQ (anglicky)]&lt;br /&gt;
* [http://www.foldr.org/~michaelw/objective-c/ Objective-C: Links, Resources, Stuff (anglicky)]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Článek z Wikipedie}}&lt;br /&gt;
[[Kategorie:Počítačové jazyky]]&lt;/div&gt;</summary>
		<author><name>Sysop</name></author>	</entry>

	</feed>