ç§ã®ãã¤ãã£ãã¢ããªããã°ã©ãã¨ãã¦ã®ä¸ç¨®ã®ç¥å¨
ä¸ç¨®ã®ç¥å¨ã¨ããã¤ã¤ãåé¡æ¯ã«åãã¦ãã®ã§ä¸ã¤ä»¥ä¸ããã¾ããåææ¡ä»¶ã¨ãã¦ã¯ããã«ããã©ãããã©ã¼ã ã«å¯¾å¿ãããã¤ãã£ãã¢ããªã±ã¼ã·ã§ã³ãéçºãããã¨ããæãã§ãã
- OS
- è¨èª
- IDE
- ãã«ããã¼ã«
- ãã¹ã
- CUnit ã¾ã㯠CppUnit
- gcov + lcov
- google-perftools
- GUI ãã¼ã«ããã
- ã¤ã³ã¹ãã¼ã©
- ãããã¯ã¼ã¯ã©ã¤ãã©ãª
- å§ç¸®ã©ã¤ãã©ãª
- ã°ã©ãã£ãã¯ã©ã¤ãã©ãª
OS
Mac OS X ããã¼ã¹ã«ãã¾ããçç±ã¯ Mac OS X åãã®éçºã Mac OS X ã§ããã§ããªããã¨ã¨ãæ¯è¼ç軽快ã«åä½ããã¨ãããã¨ã§ãã軽快ãã«ããã¦ã¯ Linux ã¨ããã Ubuntu ãæ°ã«å ¥ã£ã¦ããã®ã§ãMac OS X ãåä½ããªããã¼ãã¦ã§ã¢ã§ã¯ Ubuntu ã使ãã¾ããWindows ã¯ãªãã¨ãã£ã¦ã PC ã§æã大ããªã·ã§ã¢ãããã®ã§å¤ãã¾ãããWindows ã¯åºæ¬çã« VirtualBox ã§ä»®æ³åãããã®ã使ãã¾ãã
è¨èª
C ããã¼ã¹ã«ãã¾ããC ã使ãçç±ã¯ãOn Loving C.. 日本語訳ã«ããã¾ããæãå¼·ãåæ©ä»ãã¨ãªã£ã¦ããé¨åãå¼ç¨ãã¦ããã¾ãã
C ã¯éæãªã®ã§ããã®ã¢ãã©ã¼ãã³ã¹ã«æ³¨æããªãã¦ã¯ãªããªãã注æã㦠C ã®ã³ã¼ãã«åãçµã¾ãªãã¨ããã©ãã«ã«å·»ãè¾¼ã¾ãããC ã®æ¦å¿µçãªåç´ãã¨ãã®éæãã¯å¼·åãªçµã¿åãããªã®ã ã
Android 㧠NDK ã使ã£ã¦ C ã³ã¼ããæ¸ãã¦ããããä»ã®ãã©ãããã©ã¼ã åãã«ç§»æ¤ããã¨ãã«ãããå¼·ãæãã¾ãããC++ ã¯ãã¢ããªã±ã¼ã·ã§ã³å±¤ã«è¿ãã³ã¼ãã§ä½¿ããã¨ãããã¾ããObjective-C ã¯ãMac OS X ã iOS åãã«ä½¿ãã¾ããLua ã¯ããµã¼ãã¢ããªã±ã¼ã·ã§ã³ã®è¨å®ãã¡ã¤ã«åãã«ä½¿ãã¾ããXML ã¯æ¸ãã®ã«åé·ã§ãããç¬èªå½¢å¼ã®è¨å®ãã¡ã¤ã«ã¯å¥½ãã§ã¯ããã¾ãããLua ã¯ã¹ã¯ãªããè¨èªãªã®ã§ååãã¡ããã¨ã¤ãããã¨ãã§ãã¾ããããã¼ãã«ã使ãã°é層æ§é ãé åã容æã«è¡¨ç¾ã§ãã¾ãã
IDE
Eclipse ããã¼ã¹ã«ãã¾ããEclipse ã¯ç§ã使ã£ã¦ããéçºç°å¢ã®ä¸ã§ã¯æãã¹ãã¬ã¹ãªãéçºãã§ãã¾ããç¹ã«ãã³ã¼ãè£å®ããªãã¡ã¯ã¿ãªã³ã°ãåªç§ãªãã¨ã¨ããã«ããã©ãããã©ã¼ã ã§åä½ããã¨ããç¹ãæ°ã«å ¥ã£ã¦ãã¾ãããã©ãããã©ã¼ã éä¾åãªéçºã Eclipse ã§ãã£ã¦ããã¨ã¯ãã©ãããã©ã¼ã ã«ä½µã㦠Xcode ã Visual Studio ã使ããã¨ããå ·åã§ãã
ãã«ããã¼ã«
éå»ã®è¨äºã§ããC/C++ 開発のストレスを軽減する - DELPHIER@はてなã«å¤§ä½æ¸ãã¾ããããã«ãããã»ã¹ä¸ã«æååå¦çãå¤ããªãã¨ç§ã¯ Python ããã Ruby ã好ãã«ãªãã®ã§ãããããã¨ã㯠Rake ã使ãã¾ãã
ãã¹ã
CUnitãCppUnit ããã¼ã¹ã«ãã¾ããåä½ãã¹ããéãããã«ãã¦ããã¦ãgcov + lcov ã§ã«ãã¬ãã¸ã確èªããã³ã¼ãç¶²ç¾ çã確èªããã¨ããæãã§ããæ§è½é¢ã§ã®ãã¹ãã«ã¤ãã¦ã¯ãgoogle-perftools ã® CPU ãããã¡ã¤ã©ã使ããæå¤ãªããã«ããã¯ãæ¢ãã¾ãã
GUI ãã¼ã«ããã
ç§ã¯ GUI éçºããã¾ãå¾æã§ã¯ãªãã®ã§ã詳ããã¯ããã¾ãããã»ã»ã»ããµã³ãã«ããã°ã©ã ç¨åº¦ãªããQt ã§ãã«ããã©ãããã©ã¼ã ã«å¯¾å¿ã§ããããã«ãã¦ããã¾ããWindows ãªãå¿ è¦ã«å¿ã㦠MFC ã WTL ã使ãã¾ãããªãã ããã 㧠MFC ã®æ¹ãå¼·åã§ããMac OS X ã iOS ã§ã¯ Cocoa ã§ååãªã®ã§ãç¹ã«è¿½å ã®ã©ã¤ãã©ãªã¯ä½¿ãã¾ããã
ã¤ã³ã¹ãã¼ã©
Windows ã§ã¯ MSI ãä½ãã¨ã㯠WiXãããã§ãªãã¨ã㯠InnoSetup ã使ãã¾ããInnoSetup ã¯æè¿ã§ã¯ Unicode ã«å¯¾å¿ãã¦ãããã¨ãããªãä»ä¸ãã£ã¦ãã¦ãã¾ããNSISã使ã£ã¦ã¿ãããã®ã®ãæãåºãã¦ãã¾ãããMac OS X ã§ã¯ mpkg ãä½ãã¨ãã«ã¯ PackageMaker ã使ãã¾ããPackageMaker 㯠Xcode ã«ã¤ãã¦ã¾ããdmg ãä½ãã¨ãã«ã¯ hdiutil ã使ãã®ã§ç¹ã«è¿½å ã®ãã¼ã«ã¯ä½¿ãã¾ããã
ãããã¯ã¼ã¯ã©ã¤ãã©ãª
ã½ã±ããéä¿¡ãããããã°ã©ã ãä½ãã¨ãã« c-ares ã使ãã¾ããéåæåå解決ã¯å¤§ããé åã§ããlibcurl ã¯ããã©ãããã©ã¼ã ä¾åã®è¨¼ææ¸ã¹ãã¢ã«ä¾åããªã HTTPS éä¿¡ãããã¨ãã«ä½¿ãã¾ããããã§ãªãå ´åã¯ãç´ ç´ã«ãã©ãããã©ã¼ã ãæä¾ãã¦ãã HTTP ã©ã¤ãã©ãªã使ãã¾ããããã§ãªãã¨ä½è¨å¤§å¤ã§ããOpenSSL 㯠SSL/TLS ã½ã±ããéä¿¡ãããã¨ãã«ä½¿ãã¾ããä»ã®é¸æè¢ã«ã¤ãã¦ã¯èãããã¨ãããã¾ãããWindows ã§ã¯ SSPI ã使ãã°åçã®ãã¨ãã§ããã¨æãã¾ãããWindows ã®ããã ãã«è¤éãªã³ã¼ããæ¸ãã®ã¯å²ã«åããªãã¨èãã¦ãã¾ãããã ããããã«ãããã¤ããªãµã¤ãºãå°ãããããã¨ãã§ããã®ã§ãããã ãã¯ãã£ã¨å¿æ®ãã§ãã
å§ç¸®ã©ã¤ãã©ãª
ã¡ã¢ãªå å§ç¸®ã«ã¯ zlib ã bzip2ããã¡ã¤ã«å§ç¸®ã«ã¯ Info-ZIP ã使ãã¾ãã
ã°ã©ãã£ãã¯ã©ã¤ãã©ãª
å¤§æµ libpng 㨠libjpeg ã§äºè¶³ãã¦ã¾ããä»ã«ä½¿ã£ã¦ãããã®ããªãã®ã§ããã㦠WebP ãæãã¦ã¿ã¾ãããlibjpeg ã¯ãé«éçãäºç¨®é¡ã»ã©ããã¾ãããã©ã¤ã»ã³ã¹çã« libjpeg with x86 SIMD extension ã®æ¹ã使ã£ã¦ãã¾ããã¡ãªã¿ã«ããã²ã¨ã¤ã¨ã¯ãlibjpeg-turbo ã§ãã
ã¨ããããã§ã身è¿ãªãã®ãã²ã¨éãæãã¦ã¿ã¾ãããä½ãããã®ããåç¥ã§ãããæ¯éæãã¦ãã ããã