ã¯ããã«...
...æ§æãç¶æ¿ãã³ãŒãã¯ãããŸããã§ããã
ãããŠãã³ãŒãã¯äžåšçšã§ãç¹°ãè¿ãããããåé¢ã§ãããæ²æšã§ãåé·ã§äœ¿ãå°œããããŠããŸããã
ã³ãŒãã®åå©çšã®äž»ãªããŒã«ã¯ãã³ããŒããŒã¹ãã§ããã æç¶ããšæ©èœã¯ãã£ãã«ãªããçãããæ°ãããã®ã§ãã æ²»çãåŒã³åºãããšã¯é«äŸ¡ãªåã³ã§ããã ã¡ã€ã³ããžãã¯ããåé¢ãããã³ãŒãã®äžéšã¯å°æããŠããŸããïŒ
æ²èŠ³çãªæ代ããã£ãã
ãããããã®åŸãOOPã®å
ç·ãäžçäžã«èŒããŸãã...確ãã«ãæ°å幎é1誰ãããã«æ°ã¥ããŸããã§ããã GUI 2ãç»å ŽãããŸã§ã¯ãçµå±ã®ãšãããOOPãéåžžã«äžè¶³ããŠããŸããã ãŠã£ã³ããŠå
ã®ãã¿ã³ãã¯ãªãã¯ãããšããã¿ã³ïŒãŸãã¯ãã®ä»£è¡šïŒã«ã¡ãã»ãŒãžãPressingã 3ãéä¿¡ããŠçµæãååŸãããããç°¡åãªããšã¯äœã§ããïŒ
ãããŠãOOPãå§ãŸããŸããã å€ãã®4åã®æ¬ãæžãããŠãããæ°ãåããªãã»ã©ã®5ã€ã®èšäºã飌è²ãããŠããŸãã ããã§ä»æ¥ã誰ã§ããªããžã§ã¯ãæåããã°ã©ãã³ã°ãè¡ãããšãã§ããŸãããïŒ
æ²ããããªãã³ãŒãïŒããã³ã€ã³ã¿ãŒãããïŒã¯ãããééã£ãŠãããšèšã£ãŠããŸã
æãç±çãªè°è«ãšæ倧ã®èª€è§£ã¯ããã°ãã°ã ç¶æ¿ãããåæã奜ã ããšãããã³ãã©ã«ãã£ãŠè¡šããããæ§æãšç¶æ¿ã®éã®éžæãåŒãèµ·ããããã§ãã ããã«ã€ããŠã話ããŸãã
ãã³ãã©ã害ãåãŒããšã
ç§ã¯ãã³ãã©ã®ãã¡ã³ã§ã¯ãããŸããããæ¥åžžç掻ã§ã¯ããç¶æ¿ãããæ§æãåªå
ãããããšã¯äžè¬ã«æ®éã§ã ã 圌ãã¯ãã°ãã°çå®ã®ç²ãæã£ãŠãããšããäºå®ã«ãããããããèªæã«å±ããã¹ããŒã¬ã³ã«ç¡é çã«è¿œããããããšã¯ããŸãã«ãç°¡åã§ããããã®èåŸã«é ãããŠãããã®ãç解ããŠããŸããã ãããŠãããã¯åžžã«æšªã«åºãŠããŸãã
ãInheritance is Evilã 6ã®ãããªèŠåºãã®ããé»undã®èšäºããç¹ã«èè
ãæåã«ç¶æ¿ã誀ã£ãŠé©çšããããããã¹ãŠã®ããã ãšçµè«ã¥ããããšã«ãã£ãŠäžæžããæ£åœåããããšããå Žåãç§ã«ã¯åããŠããŸããã ãŸããããã³ããŒãåžãã®ã¯ã圌ããããããã蟌ãããšãã§ããªãããã§ããã®ããã«ã
åºæ¬ããå§ããŸãããã
å®çŸ©
èšäºã®åŸåã§ãOOPã¯ãããããã£ãã¡ãœãããããã³åçŽãªïŒåäžã®ïŒç¶æ¿ãæã€ã¯ã©ã¹ããµããŒããããã¯ã©ã·ãã¯ããªããžã§ã¯ãèšèªãšããŠç解ããŸãã ã€ã³ã¿ãŒãã§ã€ã¹ãäžçŽç©ãã¢ã¹ãã¯ããå€éç¶æ¿ãããªã²ãŒããã¯ããŒãžã£ãã©ã ãã¯ãããŸãã-æãã·ã³ãã«ãªãã®ã ãã§ãïŒ
- ã¯ã©ã¹ïŒãã£ãŒã«ããšã¡ãœããã®ã»ãããšããŠå®çŸ©ããããããããç¥å
ïŒã¹ãŒããŒã¯ã©ã¹ïŒãæã€ãã¡ã€ã³ããã®ååä»ããšã³ãã£ãã£ã
- ãã£ãŒã«ãïŒç¹å®ã®ã¿ã€ãã®ååä»ãããããã£ãç¹ã«ãå¥ã®ãªããžã§ã¯ããåç
§ããå ŽåããããŸãïŒæ§æãåç
§ïŒã
- ã¡ãœããïŒã¯ã©ã¹ã®åäœãå®è£
ããååä»ãé¢æ°ãŸãã¯ããã·ãŒãžã£ïŒãã©ã¡ãŒã¿ãŒãããŸãã¯ãã©ã¡ãŒã¿ãŒãªãïŒã
- ç¶æ¿ïŒã¯ã©ã¹ã¯ç¶æ¿ããããšãã§ããŸã-ããã©ã«ãã§äœ¿çš-ãã®ç¥å
ã®ãã£ãŒã«ããšã¡ãœããã ç¶æ¿ã¯æšç§»çã§ããã¯ã©ã¹ã¯ã3çªç®ããç¶æ¿ããå¥ã®ã¯ã©ã¹ããç¶æ¿ã§ããåºæ¬ã¯ã©ã¹ïŒéåžžã¯
Object
ïŒãŸã§ç¶æ¿ã§ããŸããããããæé»çã§ãã çžç¶äººã¯ãããã©ã«ãã®åäœãå€æŽããããã«ããã€ãã®ã¡ãœãããšãã£ãŒã«ãããªãŒããŒã©ã€ãã§ããŸãã - æ§æïŒãã£ãŒã«ãã®ã¿ã€ããClassã®å Žåããã®ã¯ã©ã¹ã®å¥ã®ãªããžã§ã¯ããžã®ãªã³ã¯ãå«ããããšãã§ããããã2ã€ã®ãªããžã§ã¯ãéã®æ¥ç¶ãäœæãããŸãã åçŽãªé¢é£ä»ããéçŽãæ§æã®éãã®ãžã£ã³ã°ã«ã«å
¥ãããšãªããæã§å€æããŸããããæ§æãšã¯ããããªããžã§ã¯ããä»ã®æ©èœãéšåçãŸãã¯å®å
šã«æäŸããããšã§ãã
- ã«ãã»ã«åïŒãªããžã§ã¯ããåå¥ã®ãã£ãŒã«ããã¡ãœããã®ã»ãããšããŠã§ã¯ãªããåäžã®ãšã³ãã£ãã£ãšããŠæ±ããã¯ã©ã¹ã®å®è£
ãé ããŠä¿è·ããŸãã ã¯ã©ã€ã¢ã³ãã³ãŒãããããªãã¯ã€ã³ã¿ãŒãã§ã€ã¹ããç¥ããªãå Žåãå®è£
ã®è©³çŽ°ã«äŸåããããšã¯ã§ããŸããã
ç¶æ¿ã¯åºæ¬ã§ã
ç¶æ¿ã¯ãOOPã®åºæ¬æŠå¿µã§ãã ããã°ã©ãã³ã°èšèªã«ã¯ãªããžã§ã¯ããšã¡ãã»ãŒãžããããŸãããç¶æ¿ããªããã°ãªããžã§ã¯ãæåã§ã¯ãããŸããïŒãªããžã§ã¯ãã®ã¿ã«åºã¥ããŠããŸãããããªã¢ãŒãã£ãã¯ã®ãŸãŸã§ãïŒã
...æ§æã®ããã«
æ§æã¯ãããããèšèªã®åºæ¬çãªç¹æ§ã§ããããŸãã èšèªãæ§æããµããŒãããŠããªãå Žåã§ãïŒããã¯æè¿ã§ã¯çããããšã§ããïŒã人ã
ã¯äŸç¶ãšããŠéšåãã³ã³ããŒãã³ãã®èŠ³ç¹ããèããã§ãããã æ§æããªããã°ãéšåã®è€éãªåé¡ã解決ããããšã¯äžå¯èœã§ãã
ïŒã«ãã»ã«åãåºæ¬çãªããšã§ãããä»ã§ã¯åœŒå¥³ã«ã€ããŠã§ã¯ãããŸããïŒ
ããã§ã倧éšãã¯äœããã§ããïŒ
ããŠãæ§æãšç¶æ¿ã®äž¡æ¹ãåºæ¬ã§ãããåé¡ã¯äœã§ããïŒ
ããããå®éã«ã¯ãäžæ¹ãä»æ¹ãåžžã«çœ®ãæããããšãã§ããããŸãã¯æåã®æ¹ã2çªç®ãããè¯ããŸãã¯æªããšèãããããããŸããã ãœãããŠã§ã¢éçºã¯åžžã«åççãªãã©ã³ã¹ã劥åã®éžæã§ãã
æ§æã¯å€ããå°ãªããåçŽã§ãç§ãã¡ã¯äººçã§çµ¶ããééããŠããŸããæ€
åã«ã¯èããããå£ã«ã¯ã¬ã³ã¬ãã»ã¡ã³ããªã©ããããŸãã ããããç¶æ¿ã¯ããã®åçŽãªå®çŸ©ã«ãããããããé©çšæ¹æ³ã«ã€ããŠæ
éã«èããªããšããã¹ãŠãè€éã«ããæ··ä¹±ãããå¯èœæ§ããããŸãã ç¶æ¿ã¯éåžžã«æœè±¡çãªãã®ã§ãããããã«ã€ããŠè©±ãããšã¯ã§ããŸããã觊ããªãã§ãã ããã ãã¡ãããã³ã³ããžã·ã§ã³ã䜿çšããŠç¶æ¿ãæš¡å£ããããšãã§ããŸãããããã¯éåžžã¯å€§éšãã§ãã åæã®ç®çã¯äœã§ããïŒæãããªããšã¯ãéšåããå
šäœãçµã¿ç«ãŠãããšã§ãã ããããç¶æ¿ã¯ããå°é£ã§ãããªããªããããã¯äžåºŠã«çŽ2ã€ã®ããšã ããã§ãïŒæå³ãšã¡ã«ããºã ã«ã€ããŠã
æå³çç¶æ¿
çç©åŠã®ããã«ãåé¡çŸ€ã®åé¡ã¯ããããéå±€ã«ç·šæãããããç¶æ¿ã¯äž»é¡é åããã®æŠå¿µã®éå±€ãåæ ããŸãã äžè¬çãªãã®ããç¹å®ã®ãã®ãŸã§ããããæŽçããé¢é£ããã¢ã€ãã¢ãéå±€ããªãŒã®ãã©ã³ãã«åéããŸãã ã¯ã©ã¹ã®æå³ïŒã»ãã³ãã£ã¯ã¹ïŒã¯ãã»ãšãã©ã®éšåãã€ã³ã¿ãŒãã§ãŒã¹ã§è¡šçŸãããŸã-ã¯ã©ã¹ãç解ã§ããã¡ãã»ãŒãžã®ã»ããã§ãããã¯ã©ã¹ãå¿çããã¡ãã»ãŒãžã«ãã£ãŠã決å®ãããŸãã ç¥å
ããç¶æ¿-ç¥å
ãç解ã§ãããã¹ãŠã®ã¡ãã»ãŒãžãç解ããã ãã§ãªããç¥å
ã®æ¯ãèããä¿æããããã«ïŒçŽPerãïŒçããããšãã§ããããã«èŠªåã«ããŠãã ãããã³ã³ããŒãã³ããšããŠã®ç¥å
ã€ã³ã¹ã¿ã³ã¹ã ã¯ã©ã¹ãå®å
šã«ã·ã³ãã«ã§ãã»ãšãã©ããžãã¯ãæããããã®ååã«å€§ããªæå³çè² è·ãããã£ãŠããå Žåã§ããéçºè
ã¯ãµããžã§ã¯ãé åã«é¢ããéèŠãªçµè«ãå°ãåºãããšã«æ³šæããŠãã ããã
æ©æ¢°çç¶æ¿
ç¶æ¿ã«ã€ããŠæ©æ¢°çã«èšãã°ãç¶æ¿ã¯åºæ¬ã¯ã©ã¹ã®ããŒã¿ïŒãã£ãŒã«ãïŒãšåäœïŒã¡ãœããïŒãåãåããããããåå©çšããããç¶æ¿è
ã«è¿œå ãããã§ããããšãæå³ããŸãã ã¡ã«ããºã ã®èŠ³ç¹ãããåå«ãç¥å
ã®å®è£
ïŒã³ãŒãïŒãç¶æ¿ããå Žåããã®ã€ã³ã¿ãŒãã§ã€ã¹ã¯å¿
ç¶çã«åä¿¡ãããŸãã
ã»ãšãã©ã®ãªããžã§ã¯ãæåèšèªã«ãããç¶æ¿7ã®ãã®äºéã®æ§è³ªã¯ã誀解ã®ããã ãšç¢ºä¿¡ããŠããŸãã å€ãã®äººã
ã¯ãç¶æ¿ã¯ã³ãŒããåå©çšããããšã ãšä¿¡ããŠããŸãããããã¯ããã ãã§ã¯ãããŸããã åå©çšã®ããã«éå°äœ¿çšãäžããããå Žåãã¢ãŒããã¯ãã£ã®çœå®³ãåŸ
ã¡ãŸãã 以äžã«äŸãããã€ã瀺ããŸãã
ç¶æ¿ããªãæ¹æ³ã äŸ1
class Stack extends ArrayList { public void push(Object value) { ⊠} public Object pop() { ⊠} }
ã¯ã©ã¹Stack
ããã«èŠããŸããããã¹ãŠé 調ã§ãã ãããããã®ã€ã³ã¿ãŒãã§ãŒã¹ã泚ææ·±ãèŠãŠãã ããã StackãšåŒã°ããã¯ã©ã¹ã«ã¯äœãå¿
èŠã§ããïŒ push()
ããã³pop()
ã¡ãœããããã®ä»ã ãããŠç§ãã¡ãšïŒ get()
ã set()
ã add()
ã remove()
ã clear()
ãããã³ArrayList
ããç¶æ¿ãããArrayList
ã®ãžã£ã³ã¯ããããŸãããããã¯ã¹ã¿ãã¯ã«ã¯ãŸã£ããå¿
èŠãããŸããã
æãŸãããªããã¹ãŠã®ã¡ãœãããåå®çŸ©ããããšã¯å¯èœã§ãããŸããäžéšïŒããšãã°clear()
ïŒã¯ããŒãºã«åãããŠèª¿æŽããããšãã§ããŸããã1ã€ã®èšèšãšã©ãŒã®ããã«å°ãæéãããããŸãããïŒ å®éã3ã€ïŒ1ã€ã®ã»ãã³ãã£ãã¯ã1ã€ã®æ©æ¢°çããã³1ã€ã®çµã¿åããïŒ
- ã¹ããŒãã¡ã³ããStack is ArrayListãã¯åœã§ãã
Stack
ArrayList
ãµãã¿ã€ã㧠Stack
ãŸãã ã ã¹ã¿ãã¯ã®ã¿ã¹ã¯ã¯ãLIFOã«ãŒã«ïŒlast comeãfirst goïŒã®å®è£
ã確å®ã«ããããšã§ããããã¯ãããã·ã¥/ãããã€ã³ã¿ãŒãã§ã€ã¹ã§ã¯ç°¡åã«æºããããŸããã ArrayList
ã€ã³ã¿ãŒãã§ã€ã¹ã§ã¯å°éãããŸããã ArrayList
ããæ©æ¢°çã«ç¶æ¿ãããšãã«ãã»ã«åãArrayList
ãŸãã ã¯ã©ã€ã¢ã³ãåŽã®ã³ãŒãã¯ã ArrayList
ã䜿çšããŠã¹ã¿ãã¯èŠçŽ ãæ ŒçŽããããšã決å®ããããšãèªèããªãã§ãã ããã- æåŸã«ã
ArrayList
ãä»ããŠã¹ã¿ãã¯ãå®è£
ããã«ã¯ã2ã€ã®ç°ãªããµããžã§ã¯ãé åãæ··åšãããŸãArrayList
ã¯ã©ã³ãã ã¢ã¯ã»ã¹ã®ã³ã¬ã¯ã·ã§ã³ã§ãããã¹ã¿ãã¯ã¯å³å¯ã«å¶éãããïŒä»»æã§ã¯ãªãïŒã¢ã¯ã»ã¹ãæã€ãã¥ãŒã®äžçã®æŠå¿µã§ã
æåŸã®ç¹ã¯äžèŠéèŠã§ã¯ãããŸããããéèŠãªããšã§ãã ããã詳ããèŠãŠã¿ãŸãããã
ç¶æ¿ããªãæ¹æ³ã äŸ2
ç¶æ¿ã§ããããééãã¯ããã¡ã€ã³ããã¢ãã«ãäœæããå®æããå®è£
ããã¢ãã«ãç¶æ¿ããããšã§ãã ãããã£ãŠãç¹å®ã®ãµãã»ããã§é¡§å®¢ã®äžéšïŒ Customer
ã¯ã©ã¹ïŒãéžæããå¿
èŠããããšããŸãããã ç°¡åïŒ ArrayList<Customer>
ãç¶æ¿ãã CustomerGroup
ãšåŒãã§ã©ãã·ã¥ããŸãã
ããã«ãã£ãã ããããããšã§ã2ã€ã®äž»é¡é åãåã³æ··åããŸãã ãããé¿ããããã«ããŠãã ããïŒ
ArrayList<Customer>
ã¯ãã§ã«ãªã¹ãã®ç¶æ¿è
ã§ãããã³ã¬ã¯ã·ã§ã³åãŠãŒãã£ãªãã£ã§ãããæ¢æã®å®è£
ã§ããCustomerGroup
ã¯å®å
šã«ç°ãªããã®ã§ã-ãµããžã§ã¯ããšãªã¢ïŒãã¡ã€ã³ïŒããã®ã¯ã©ã¹ã- ãµããžã§ã¯ãé åã®ã¯ã©ã¹ã¯å®è£
ã䜿çšããå¿
èŠããããããããç¶æ¿ããªãã§ãã ããã
ãã¡ã€ã³å±€ã¯ãå
éšã®ãã¹ãŠãããã§è¡ãããæ¹æ³ãç¥ããªãã¯ãã§ãã ç§ãã¡ã®ããã°ã©ã ãäœãããŠããã®ãã«ã€ããŠè©±ããšããç§ãã¡ã¯äž»é¡åéã®æŠå¿µã§éå¶ããŠãããå
éšæ§é ã®ãã¥ã¢ã³ã¹ã«æ°ãåãããããããŸããã ç¶æ¿ã«ã³ãŒãåå©çšããŒã«ã®ã¿ãå«ãŸããŠããå Žåããã®ãã©ããã«äœåºŠãé¥ããŸãã
åäžã®ç¶æ¿ã§ã¯ãããŸãã
åäžç¶æ¿ã¯ãäŸç¶ãšããŠæã人æ°ã®ããOOPã¢ãã«ã§ãã å¿
ç¶çã«å®è£
ã®ç¶æ¿ãå¿
èŠã«ãªããã¯ã©ã¹éã®åŒ·åãªãªã³ã¯ïŒã«ãããªã³ã°-çŽPerãïŒã«ã€ãªãããŸãã åé¡ã¯ãã»ãã³ãã£ãã¯ãšã¡ã«ãã«ã«ã®äž¡æ¹ã®äž¡æ¹ã®ããŒãºã«å¯Ÿå¿ããç¶æ¿ã®ãã©ã³ãã1ã€ãããªãããšã§ãã äžæ¹ã«äœ¿çšãããšãããäžæ¹ã«ã¯äœ¿çšã§ããªããªããŸãã ãããããªããå€éç¶æ¿ã¯ãã¹ãŠãä¿®æ£ã§ããŸããïŒ
ãã ç¶æ¿é¢ä¿ã¯ãã€ã³ã¹ãã«ã¡ã³ã¿ã«ïŒããŒã¿æ§é ãã¢ã«ãŽãªãºã ããããã¯ãŒã¯ïŒãšé©çšïŒããžãã¹ããžãã¯ïŒã®ãµããžã§ã¯ãé åéã®å¢çãè¶ããŠã¯ãªããŸããã CustomerGroupãArrayList<Customer>
ãç¶æ¿ãããšåæã«ãããšãã°DemographicSegmentã®å Žåã2ã€ã®ãµããžã§ã¯ãé åã絡ã¿åãããªããžã§ã¯ãã®ãçš®ã®æå±ãã¯æããã«ãªããŸããã
ïŒå°ãªããšãç§ã®èŠ³ç¹ããã¯ïŒããããããšãæãŸããã§ãã èšèªã§äœ¿çšå¯èœãªã€ã³ã¹ãã«ã¡ã³ã¿ã«ã¯ã©ã¹ãæå°éã«ç¶æ¿ããŸããããã¯ãããžãã¯ã®ãæ©æ¢°çãéšåãå®è£
ããã®ã«ååã§ãã 次ã«ãçµæã®ããŒããã³ã³ããžã·ã§ã³ã§æ¥ç¶ããŸãããç¶æ¿ã§ã¯æ¥ç¶ããŸããã èšãæããã°ïŒ
ä»ã®ããŒã«ã®ã¿ãããŒã«ããç¶æ¿ã§ããŸãã
ããã¯åå¿è
ã«ãšã£ãŠéåžžã«ããããééãã§ãã ããã¯é©ãããšã§ã¯ãããŸããããªããªããããã¯ãšãŠãç°¡åã«ç¶æ¿ã§ããããã§ãã ãããééã£ãŠããçç±ã«ã€ããŠã®è°è«ã«åºãããããšã¯ãŸãã§ãã ç¹°ãè¿ããŸãããããžãã¹ãšã³ãã£ãã£ã¯ããŒã«ã§ã¯ãªããããŒã«ã䜿çšããå¿
èŠããããŸãã ããšïŒããŒã«ïŒ-åå¥ãã«ãã¬ãïŒããžãã¹ã¢ãã«ïŒ-åå¥ã
ã§ã¯ããã€ç¶æ¿ãå¿
èŠã§ããïŒ
ç¶æ¿ãã
ã»ãšãã©ã®å Žå-ãããŠåæã«æ倧ã®ãªã¿ãŒã³-ç¶æ¿ã¯ãäºãã«ãããã«ç°ãªããªããžã§ã¯ããèšè¿°ããããã«äœ¿çšãããŸãïŒå
ã®çšèªã¯ãå·®åããã°ã©ãã³ã°ããšããçšèªã䜿çšããŸã-ãããïŒãããšãã°ãå°ããªè¿œå ã®ç¹å¥ãªãã¿ã³ãå¿
èŠã§ãã éåžžãæ¢åã®Buttonã¯ã©ã¹ããç¶æ¿ããŸãã æ°ããã¯ã©ã¹ã¯ãŸã ãã¿ã³ãªã®ã§ãButtonã¯ã©ã¹ã®APIããã®åäœãå®è£
ãå®å
šã«ç¶æ¿ããŸãã æ°ããæ©èœã¯æ¢åã®ãã®ã«ã®ã¿è¿œå ãããŸãã ãã ããæ©èœã®äžéšãçžç¶äººããåé€ãããå Žåãããã¯ç¶æ¿ãå¿
èŠãã©ãããèããæ©äŒã§ãã
ç¶æ¿ã¯ãé¡äŒŒã®ãšã³ãã£ãã£ãšæŠå¿µãã°ã«ãŒãåããã¯ã©ã¹ã®ãã¡ããªãå®çŸ©ããå Žåãããã³äžè¬çã«ãµããžã§ã¯ãé åã説æããçšèªãšæŠå¿µãæŽçããå Žåã«æã圹ç«ã¡ãŸãã å€ãã®å Žåããµããžã§ã¯ãããžãã¯ã®å€§éšåãæ¢ã«å®è£
ãããŠãããšãæåã«éžæãããç¶æ¿éå±€ãæ©èœããªããªããŸãã ãã¹ãŠé 調ã«é²ãã å Žåããããã®éå±€ãå解ããŠåã¹ã¿ãã¯ããããšãæããªãã§ãã ãã9 ã
æ§æãŸãã¯ç¶æ¿ïŒäœãéžæããŸããïŒ
äž¡æ¹ãé©åãšæãããç¶æ³ã§ã¯ã2ã€ã®å¹³é¢ã§èšèšãèŠãŠãã ããã
- ããžãã¹ãªããžã§ã¯ãã®æ§é ãšæ©æ¢°çãªå®è¡ã
- æå³ãšããããã©ã®ããã«çžäºäœçšãããã«ãã£ãŠããããã¯äœãæå³ããŸãã
ç¶æ¿ãåããã¬ãŒã³å
ã«ããéãããã¹ãŠãæ£åžžã§ãã ããããéå±€ãäžåºŠã«2ã€ã®ãã¬ãŒã³ãééããå Žåãããã¯æªãçç¶ã§ãã
ããšãã°ããããªããžã§ã¯ããå¥ã®ãªããžã§ã¯ãã®äžã«ãããšããŸãã å
éšãªããžã§ã¯ãã¯ãå€éšã®åäœã®éèŠãªéšåãå®è£
ããŸãã å€éšãªããžã§ã¯ãã«ã¯ãå
éšãªããžã§ã¯ãã«ãã©ã¡ãŒã¿ãæãã«è»¢éãããã®çµæãè¿ããããã·ã¡ãœããããããããããŸãã ãã®å Žåãå°ãªããšãéšåçã«å
éšãªããžã§ã¯ãããç¶æ¿ãã䟡å€ããããã©ããã確èªããŠãã ããã
ãã¡ãããè©ã®é ã«ä»£ããæ瀺ã¯ãããŸããã ãªããžã§ã¯ãã¢ãã«ãæ§ç¯ãããšããäžè¬çã«èããããšãæçšã§ãã ãã ããç¹å®ã®ã«ãŒã«ãå¿
èŠãªå Žåã¯ããé¡ãããŸãã
次ã®å Žåã«ç¶æ¿ããŸãã
- äž¡æ¹ã®ã¯ã©ã¹ã¯åããµããžã§ã¯ãé åããã®ãã®ã§ãã
- çžç¶äººã¯ïŒ LSPã«é¢ããŠïŒç¥å
ã®æ£ãããµãã¿ã€ãã§ãã
- ç¥å
ã³ãŒããå¿
èŠã§ããããçžç¶äººã«é©ããŠããŸã
- çžç¶äººã¯åºæ¬çã«ããžãã¯ãè¿œå ããŸã
ãããã®æ¡ä»¶ã¯ãã¹ãŠåæã«æºããããå ŽåããããŸãã
- ãµããžã§ã¯ãé åããé«ã¬ãã«ã®ããžãã¯ãã¢ããªã³ã°ããå Žå
- ã©ã€ãã©ãªãšãããã®æ¡åŒµæ©èœãéçºãããšã
- å·®åããã°ã©ãã³ã°ã®å ŽåïŒèè
ã¯åã³ãå·®åããã°ã©ãã³ã°ããšããçšèªã䜿çšããŸããæããã«ã DDP以å€ã®äœããç解ãã-ããããã©ã³ã¹ãïŒ
ãããåœãŠã¯ãŸããªãå Žåãã»ãšãã©ã®å Žåãç¶æ¿ã¯å¿
èŠãããŸããã ããããæ§æãç¶æ¿ããããåªå
ãããå¿
èŠãããããã§ã¯ãªãããããè¯ããããã§ããããŸããã ç¹å®ã®ã¢ããªã±ãŒã·ã§ã³ã«æé©ãªãã®ãéžæããŠãã ããã
ãããã®ã«ãŒã«ãã2ã€ã®ã¢ãããŒãã®éããç解ããã®ã«åœ¹ç«ã€ããšãé¡ã£ãŠããŸãã
çŽ æµãªã³ãŒãã£ã³ã°ãããŠãã ããïŒ
ããšãã
ThoughtWorksã®è²Žéãªè²¢ç®ãšã³ã¡ã³ãã«æè¬ããŸãïŒ Pete Hogson ãTim BrownãScott Robinsonã Martin Fowler ãMindy OhrãSean Newhamã Sam Gibson ãMahendra Kariyaã
1
æåã®å
¬åŒãªããžã§ã¯ãæåèšèªã§ããSIMULA 67ã¯ã1967幎ã«ç»å ŽããŸããã
2
ã·ã¹ãã ããã³ã¢ããªã±ãŒã·ã§ã³ããã°ã©ãã¯ã1980幎代åã°ã«C ++ãæ¡çšããŸããããOOPãäžè¬ã«åãå
¥ãããããŸã§ã«ããã«10幎ãçµéããŸããã
3
pub / subãããªã²ãŒããªã©ã«ã€ããŠã¯èª¬æãããæå³çã«åçŽåããŠãèšäºãèšããŸãªãããã«ããŸãã
4
ãã®èšäºã®å·çæç¹ã§ãAmazonã¯OOPã«é¢ãã24,777æ¬ãæäŸããŠããŸãã
5
ããªããžã§ã¯ãæåããã°ã©ãã³ã°ããšãããã¬ãŒãºãGoogleã§æ€çŽ¢ãããšã800äžä»¶ã®çµæãåŸãããŸãã
6
Googleæ€çŽ¢ã§ã¯ããç¶æ¿ã¯æªããšããçµæãšããŠ37,600ã®çµæãè¿ãããŸãã
7
èšèªã®è€éãã«ãããæèŠïŒã€ã³ã¿ãŒãã§ãŒã¹ïŒãšæ©æ§ïŒå®è¡ïŒãåé¢ã§ããŸãã Dèšèªä»æ§ã®äŸãåç
§ããŠãã ããã
8
æ²ããããšã«ãJavaã§ã¯ã Stack
Vector
ããç¶æ¿ãããŸãã
9
ç¶æ¿ã«ããåå©çšã®ããã®èšèšã¯ããã®èšäºã®ç¯å²å€ã§ãã èšèšã¯ãåºæ¬ã¯ã©ã¹ã䜿çšãã人ãšçžç¶äººãå¿
èŠãšãã人ã®äž¡æ¹ã®ããŒãºãæºããå¿
èŠãããããšã«çæããŠãã ããã
翻蚳è
ã¯Telegramã®OOPãã£ããã«æè¬ããŸãã