Appleã¯ããµãã¹ã¯ãªãã·ã§ã³ãæã€éçºè
åãã«Xcode 4éçºç°å¢ã®ãã¬ãã¥ãŒããŒãžã§ã³ã®ãªãªãŒã¹ãçºè¡šããŸããã
以äžã¯ãå
¬åŒããŒãžã«æ²èŒãããŠããæ
å ±ã®ç¿»èš³ã§ãã
Xcodeã¯ãMacãiPhoneãiPadçšã®ã¢ããªã±ãŒã·ã§ã³ãäœæããããã®å®å
šãªããŒã«ã»ãããæäŸããŸãã Xcode 4ã®æ°ããããŒãžã§ã³ã®ãªãªãŒã¹ã«äŒŽããããŒã«ãããã¯ããéãã䜿ããããããã€ãŠãªãã»ã©äŸ¿å©ã«ãªãããã«åèšèšãããŸããã çµ±åéçºç°å¢ïŒIDEïŒXcodeã¯ããããžã§ã¯ãã®ãããããã¥ã¢ã³ã¹ãçè§£ããæ§æãšããžãã¯ã®äž¡æ¹ã®ãšã©ãŒãç¹å®ããããã«ã³ãŒããä¿®æ£ããŸãïŒ ç°¡åã«èšãã°ãXcode 4ã¯ã³ãŒãã®èšè¿°ãæ¹åããã®ã«åœ¹ç«ã¡ãŸãã
Xcode 4ã«ã¯ãMac OS Xããã³iOSãæ§ç¯ããããã«Appleèªèº«ã䜿çšãããå®èšŒæžã¿ã®æè¡ã«åºã¥ãããŸã£ããæ°ãããŠãŒã¶ãŒã€ã³ã¿ãŒãã§ã€ã¹ããããŸãã MacãiPhoneãiPadçšã®25äžä»¥äžã®ã¢ããªã±ãŒã·ã§ã³ããããã®ãã¯ãããžãŒã«åºã¥ããŠããŸãã
ã·ã³ã°ã«ãŠã£ã³ããŠ
Xcode 4ã§çµéšè±å¯ãªãŠãŒã¶ãŒãæåã«æ°ä»ãã®ã¯ãæ¥ã
ã®éçºè
ã®äœæ¥ã¿ã¹ã¯ã解決ããããã«äœ¿çšãããå€ãã®ãŠã£ã³ããŠã1ã€ã®ãŠã£ã³ããŠã«çµ±åãããŠããããšã§ãã Xcode 4ã®ã¯ãŒã¯ã¹ããŒã¹ã«ã¯ãã¯ãŒã¯ã¹ããŒã¹ãæ£ããããã«å€ãã®ã¿ã¹ã¯ïŒããã«ã¯è€æ°ã®ãããžã§ã¯ãïŒã§ã®äœæ¥ãç°¡çŽ åããããã€ãã®ãŠããŒã¯ãªãŠãŒã¶ãŒã€ã³ã¿ãŒãã§ã€ã¹èŠçŽ ãå«ãŸããŠããŸãã ããªãã®ç·šéè
ã¯åžžã«äžå¿ã«ããŸãã
ããã²ãŒã¿ãŒ
å·ŠåŽã«ã¯ã以äžãå«ãäžé£ã®ããã²ãŒã¿ãŒããããŸãã
- ãããžã§ã¯ããã¡ã€ã«ã®ãªã¹ãã
- ãœãŒããããæåã
- éäžæ€çŽ¢;
- ã¿ã¹ã¯ã¢ã«ãŠã³ãã£ã³ã°;
- æãããã¿å¯èœãªã¹ã¿ãã¯ãã¬ãŒã¹ã䜿çšããŠããŒã¿ããããã°ããŸãã
- ã¢ã¯ãã£ãããã³éã¢ã¯ãã£ãã®ãã¬ãŒã¯ãã€ã³ãã
- ãã°ã®ã»ããã
çµ±åãããããã²ãŒã·ã§ã³ã€ã³ã¿ãŒãã§ã€ã¹ã¯ãã³ã³ãã³ããšæ€çŽ¢çµæã®ãã£ã«ã¿ãªã³ã°ããªã³ã¶ãã©ã€ã§æäŸãããããçŸåšã®ã¿ã¹ã¯ã«éäžã§ããŸãã
ãžã£ã³ãããŒ
åããã²ãŒã¿ãŠã£ã³ããŠã®äžéšã«ã¯ãçŸåšã®ãã¡ã€ã«ã®çžå¯Ÿäœçœ®ã瀺ããã¹ããŒããããŸãã ãã¹å
ã®ä»»æã®äœçœ®ãã¯ãªãã¯ããŠãé©åãªã¬ãã«ã®ä»ã®ãã¡ã€ã«ã«ããã«ãžã£ã³ãããŸãã ã¯ã€ãã¯ãžã£ã³ãããã«ã¯éåžžã«å¹æçã§ããããããããžã§ã¯ããã¡ã€ã«éã®ã¯ã€ãã¯ãžã£ã³ãããã«ã䜿çšããŠããã¹ãŠã®ã¯ãŒã¯ã¹ããŒã¹ããœãŒã¹ã³ãŒãã«å²ãåœãŠãããšãã§ããŸãã
ã€ã³ã¿ãŒãã§ã€ã¹ãã«ããŒ-å
éš
Interface Builderã¯Xcode 4 IDEãšå®å
šã«çµ±åãããŠããŸã-å¥ã®ã¢ããªã±ãŒã·ã§ã³ã¯ãããããŸããã
ãããžã§ã¯ãã§ã€ã³ã¿ãŒãã§ãŒã¹ãã¡ã€ã«ïŒ.nib / .xibïŒãéžæãããšãã€ã³ã¿ãŒãã§ãŒã¹ãšãã£ã¿ãŒãXcodeå
ã§éããŸãã [ãŠãŒãã£ãªãã£]ãŠã£ã³ããŠãéããšãã€ã³ã¿ãŒãã§ã€ã¹ã€ã³ã¹ãã¯ã¿ãŒã®å®å
šãªãªã¹ããããã³ã³ã³ãããŒã«ãšãŠãŒã¶ãŒã€ã³ã¿ãŒãã§ã€ã¹ãªããžã§ã¯ãã®ã©ã€ãã©ãªã衚瀺ãããŸãã å°æ¥ã®ã¢ããªã±ãŒã·ã§ã³ã®ã€ã³ã¿ãŒãã§ã€ã¹ã圢æããã«ã¯ãã©ã€ãã©ãªããã³ã³ãããŒã«ããã©ãã°ãããŠã£ã³ããŠã®äžã§é¢ããŸãã
çŽ æŽãããã¢ã€ãã¢ïŒãŠãŒã¶ãŒã€ã³ã¿ãŒãã§ã€ã¹èŠçŽ ãšãœãŒã¹ã³ãŒãã®éã®æ¥ç¶ãçŽæ¥ãã©ãã°ã¢ã³ãããããã§ããŸãã Xcode 4ãšãã£ã¿ãŒã®æ°ããåå¥ã®é
眮ã«ãããæ¥ç¶ãæ¢åã®ã³ãŒãã«ãã©ãã°ã¢ã³ãããããããã ãã§ãã¢ã¯ã·ã§ã³ãšã¢ãŠãã¬ãããç°¡åã«ãªã³ã¯ã§ããŸãã1ã€ã®ãžã§ã¹ãã£ãŒã§å®äºã§ãã æ¥ç¶ããã³ãŒãã¯ãŸã ãããŸãããïŒ Xcodeã¯æ°ããã¹ããããŸãã¯ã¢ã¯ã·ã§ã³ãäœæããŸãã 空ã®ã¹ããŒã¹ã«ãã©ãã°ã¢ã³ãããããããã ãã§ãXcodeãã³ãŒããçæããŸãã
婿
ã³ãŒããæžãããã€ã³ã¿ãŒãã§ãŒã¹ãèšèšãããã«é¢ä¿ãªããçŸåšäœæ¥ã¹ããŒã ã«å€æŽã¯ãããŸããã ã»ãã®ããããªç·šéã§ãããããžã§ã¯ãå
šäœã«ã«ã¹ã±ãŒã广ãããããå¯èœæ§ããããŸãã å€ãã®å ŽåãçŸåšã®ãã¡ã€ã«ä»¥äžã®ãã®ãèŠãå¿
èŠããããŸãã ãŸããé¢é£ããã¥ã¡ã³ããåç
§ããå¿
èŠãããå ŽåããããŸãã
æ°ããXcode Assistantã䜿çšãããšããšãã£ã¿ãŒå
ã®ãŠã£ã³ããŠã®2ãŠã£ã³ããŠã¬ã€ã¢ãŠããããæ©èœçã«ãªããŸãã ã¢ã·ã¹ã¿ã³ããæå¹ã«ãããšãéçºç°å¢ã¯ãäœæ¥äžã«è¡šç€ºããå¿
èŠã®ããä»ã®ãã¡ã€ã«ãäºæž¬ããŸãã æ°ããæŽŸçã¯ã©ã¹ãç·šéããŸããïŒ ã¢ã·ã¹ã¿ã³ãã¯ãç¶æ¿ãå®è¡ãããã¯ã©ã¹ã³ãŒãã衚瀺ããŸãã æ°ããå®è£
ã³ãŒããæžããŠããŸããïŒ ã¢ã·ã¹ã¿ã³ãã¯ã察å¿ããããããŒãã¡ã€ã«ãèªåçã«è¡šç€ºããŸãã ã€ã³ã¿ãŒãã§ã€ã¹ãèšèšãããšããã¢ã·ã¹ã¿ã³ãã¯å¯Ÿå¿ããã³ã³ãããŒã©ãŒã衚瀺ãããã©ãã°ã¢ã³ãããããã«ããã³ãŒããžã®æ¥ç¶ã®äœæãéåžžã«ç°¡åã«ããŸãã ããŒã¿ã¢ãã«ãèšèšãããšãã¢ãã«ã«äžèŽããã¯ã©ã¹ã衚瀺ããããã¹ãŠèªåçã«è¡šç€ºãããŸãã
LLVM 2.0ã³ã³ãã€ã©
LLVMã³ã³ãã€ã©ã¯ãäžçäžã®é«æ§èœãããžã§ã¯ãã§äœ¿çšãããŠããæ°äžä»£ã®ãªãŒãã³ãœãŒã¹ã³ã³ãã€ã©ãã¯ãããžã§ãããã³ã³ãã€ã©ããŒã ã®ã¢ããã«ãšã³ãžãã¢ã®æå°ã®äžã§éçºãããŸããã LLVM 2.0ã³ã³ãã€ã©ã§ã¯ãããŒãµãŒããã³ãŒããªããã£ãã€ã¶ãŸã§ã®å®å
šãªã³ã³ãã€ã©ã¹ã¿ãã¯ããCãObjective-Cãããã³C ++ãå®å
šã«ãµããŒãããŸãã
LLVMã¯é«éã³ã³ãã€ã©ã§ãã GCCã®2åã®éãã§ã³ãŒããã³ã³ãã€ã«ãããšåæã«ãããé«éã«åäœããã¢ããªã±ãŒã·ã§ã³ãäœæããŸãã ããã¯ãã³ã³ãã€ã©ãæåããé«åºŠã«æé©åãããã©ã€ãã©ãªã®ã»ãããšããŠèšèšãããŠããã容æã«æ¡åŒµå¯èœã§ãç°¡åã«æé©åãããææ°ã®ãããã®ã¢ãŒããã¯ãã£åãã«èšèšãããŠããããã§ãã
Xcode 4ã§ã¯ãã³ã³ãã€ã©ã¯ã³ãã³ãã©ã€ã³ãŠãŒãã£ãªãã£ä»¥äžã®ãã®ã§ãã LLVMã¯IDEã«å®å
šã«çµ±åãããŠããŸãã æ§æã®åŒ·èª¿è¡šç€ºãèªåã³ãŒãè£å®ãããã³ã€ã³ããã¯ã¹ã³ãŒãã«ãã£ãŠå¶åŸ¡ããããã®ä»ã®æ©èœã¯ãLLVMããŒãµãŒã«ãã£ãŠåŠçãããããã«ãªããŸããã ã³ã³ãã€ã©ãã·ã³ãã«ã«ã€ããŠç¥ã£ãŠããå ŽåãIDEã¯ããã«ã€ããŠç¥ã£ãŠããŸãã CãC ++ãObjective-Cã¯ãã¹ãŠãç·šéãããæç¹ã§ããŸãã§ããããæ§ç¯ãããŠãããã®ããã«æç¢ºã«çè§£ãããŸãã
ä¿®æ£
ãã«ãã€ã³LLVMãšã³ãžã³ã䜿çšãããšãXcode 4ã¯åãªãã³ãŒãè£å®ãæ§æã®åŒ·èª¿è¡šç€ºä»¥äžã®ããšãã§ããŸãã æ°ããFix-itæ©èœã¯ãå
¥åäžã®ãšã©ãŒãèŠåããŸãã ã¯ãŒãããã»ããµãã¹ãã«ãã¹ã匷調衚瀺ããããã«ãXcode 4ã¯ãæåã«[ãã«ã]ãã¿ã³ãã¯ãªãã¯ããããšãªããå
žåçãªã³ãŒãã£ã³ã°ãšã©ãŒã匷調衚瀺ããŸãã
ãããããªãèŠåã ãã§åæ¢ããã®ã§ããïŒ
IDEã¯ãã³ãŒããçè§£ããŠãããããäœããã¹ãã§ãªãããèªèããŠããŸãã 圌女ã¯ãããããçè§£ããŠããã®ã§ãããªãã®ããã«ãããä¿®æ£ããããšããã§ããŸãã åäžã®ããŒã¹ãããŒã¯ã§ãæ¯èŒã®ããã«å²ãåœãŠãä¿®æ£ããããæ¬ èœããŠããã»ãã³ãã³ã远å ãããã§ããŸãã
Fix-itã¯ãBuild and Analyzeæ©èœã«ãã£ãŠå®è¡ãããå³å¯ãªãã¹ãã«ããã¹ããå
¥åããéã®çŽ æŽãããè¿œå æ©èœã§ãã Xcodeéçã¢ãã©ã€ã¶ãŒã¯ãã³ãŒããäºæããªãæ¹æ³ã§åäœããå Žæãæ¢ããŠãæ°åã®æœåšçãªãã©ã³ãã調ã¹ãŸãã ããšãã°ãã¡ã¢ãªå²ãåœãŠãšã©ãŒã倱æããã±ãŒã¹ãã©ã³ãããŸãã¯äžæ£ãªã«ãŒããªã©ã®ãšã©ãŒã
ãFix-itãæ©èœãšãBuild and Analyzeãæ©èœãçµã¿åãããããšã§ããŠãŒã¶ãŒããããã£ãšåã«ãšã©ãŒãæ€åºã§ããŸãã
ããŒãžã§ã³ãšãã£ã¿ãŒ
æ°ããXcode 4ããŒãžã§ã³ãšãã£ã¿ãŒã䜿çšãããšããšãã£ã¿ãŒã§çŽæ¥ã2ã€ã®ããŒãžã§ã³ã®ãœãŒã¹ã³ãŒãã䞊ã¹ãŠè¡šç€ºããããšã容æã«ãªããŸãã ããã«éèŠãªããšã«ãããŒãžã§ã³ãšãã£ã¿ã¯ã³ãŒã管çã«ã€ããŠã®æ°ããèãæ¹ã§ãã æ¯èŒãŠã£ã³ããŠã¯æé軞ã§ããããŸãã äžå€®ã®ã¹ã©ã€ããŒããã©ãã°ãããšã2ã€ã®ããŒãžã§ã³ãæ¯èŒããŠããããžã§ã¯ãã«æéãããã®ãŒããŸãã
ããŒãžã§ã³ãšãã£ã¿ã¯ãéå»ã®ã€ãã³ãã®è©³çްãªãã°ã衚瀺ãããããžã§ã¯ãã®ä»¥åã®ããŒãžã§ã³ã®åå ã远跡ããããšãã§ããŸãã æ§æç®¡çãŠãŒãã£ãªãã£ã®è€éãªã³ãã³ãã¯ãèåŸã§åŠçãããŸãã åãXcode 4ã¯ãŒã¯ã¹ããŒã¹ã§è€æ°ã®ãããžã§ã¯ãã管çããããšãå¯èœã§ãã1ã€ã®ãããžã§ã¯ãã¯Subversionã§ããã1ã€ã®ãããžã§ã¯ãã¯Gitã§ãäž¡æ¹ãèªåæŽæ°ããŸãã
æ°ãããããã¬ãŒ
Xcode 4ã¯LLDBãå°å
¥ããŸããLLDBã¯ãã¢ããã«ãLLVM.orgãããžã§ã¯ãïŒãªãŒãã³ãœãŒã¹ïŒã«æäŸããæ°ãããããã°ãšã³ãžã³ã§ãã LLVMãšåæ§ã«ãæ°ããLLDBãšã³ãžã³ã¯æåããèšèšãããŠãããã¡ã¢ãªã®æ¶è²»éã倧å¹
ã«åæžãããããã©ãŒãã³ã¹ã«é¢ããŠã¯ãã±ããã®ããã«ãªããŸãã
æ°ããLLDBãããã°ãšã³ãžã³ã¯ãæ°ããXcode 4ãããã°ã€ã³ã¿ãŒãã§ã€ã¹ã«æé©ã§ãã¢ããªã±ãŒã·ã§ã³ãå®è¡ãããŠããå Žåãããã²ãŒã¿ãŒã¯ããããã°äžã«ã¹ã¿ãã¯ãã¬ãŒã ã衚瀺ããããã«æããããã ãå±éãããã§ããã¹ã¿ãã¯ãã¬ãŒã¹ã衚瀺ããŸãã é²è¡ããã«ã€ããŠãåäžã®ã¹ã¬ããïŒã¹ã¬ããïŒã®ãããã°ã«éäžãã[ç¶è¡]ãã¯ãªãã¯ããŠç¹å®ã®å®è¡ã¹ã¬ãããç£èŠã§ããŸãã Xcode 4ã®ãã«ãã³ã¢ãããã°ã¯ããããã¯ãšGrand Central Dispatchã䜿çšãããã«ãã³ã¢ããã°ã©ãã³ã°ãšåããããç°¡åã«ãªããŸããïŒ
泚ïŒããã¯äœã§ããïŒ ïŒã
Xcode 4ã®ããŒã«
ãã¹ãŠã®ããŒã«ã«ã¯ãXcode 4ã®æ°æ©èœãšå®å
šã«äºææ§ã®ãããŠãŒã¶ãŒã€ã³ã¿ãŒãã§ã€ã¹ããããŸããæ°ããXcode 4ã®èµ·åã¹ããŒã ã䜿çšãããšãããŒã«ã§ã¢ããªã±ãŒã·ã§ã³ãå®è¡ãããã¹ãç°å¢ããããŸã§ã«ãªãç°¡åã«äœæã§ããŸãã ããã«ã¯ããé
å»¶ã¢ãŒããã§ã®ããŒã«ã®èµ·åããªãã¹ã¯ãªãŒã³ããŒã¿åéã€ã³ã¿ãŒãã§ã€ã¹ã®ä¿åãã¢ããªã±ãŒã·ã§ã³ã®èµ·åãšæž¬å®ã®ããã®ã·ã¹ãã ãªãœãŒã¹ã®ä¿åãå«ãŸããŸãã
iPhoneã®ã°ã©ãã£ãã¯ããã©ãŒãã³ã¹ã远跡ããããã®OpenGL ESãã¡ã¢ãªæ¶è²»ã®äºæããªãå¢å ãæ€åºããã®ã«åœ¹ç«ã€æ°ããã¡ã¢ãªå²ãåœãŠç£èŠãŠãŒãã£ãªãã£ãå°ããªãªãŒããŒãããæ¶èåã§ãµã³ãã«ãåéããããã®iOSã®Time Profilerãããã³å®å
šãªãã¬ãŒã¹ã·ã¹ãã ãªã©ãæ°ããããŒã¿åéããŒã«ãå©çšã§ããŸãã·ã¹ãã ãã¬ãŒã¹ïŒãã¹ãŠã®ã·ã¹ãã ããã»ã¹éã®çžäºäœçšãã©ã®ããã«çºçããããæ·±ãçè§£ããŸãã
çŸåšãããŒã«ã䜿çšãããšããããŸã§ã«ãªãäœã³ã¹ãã§ããã«å€ãã®åé¡ã解決ã§ããŸãã
PSåçã®äžéšã«ã€ããŠã¯ãå
ã®ãµã€ãã«å€§ããªããŒãžã§ã³ããããŸãã