·Î±×ÀÎ ¤Ó ȸ¿ø°¡ÀÔ ¤Ó Àå¹Ù±¸´Ï ¤Ó °í°´¼¾ÅÍ ¤Ó ¸¶ÀÌÆäÀÌÁö ¤Ó ȸ»ç¼Ò°³
kangcom
Àüü
Home >   >   > 

ÇÔ¼öÇü ÄÚÆ²¸°

   
ÁöÀºÀÌ ¸¶¸®¿À ¾Æ¸®¾Æ½º, ¸®ºÎ īũ¶óº¸Æ¼   |   ÃâÆÇ»ç ¿¡ÀÌÄÜ  |   ¹ßÇàÀÏ 2019³â 01¿ù 31ÀÏ
 
Ŭ¸¯ÇϽøé Å« µµ¼­À̹ÌÁö¸¦ º¸½Ç ¼ö ÀÖ½À´Ï´Ù.
ÆÇ¸Å°¡ 30,000¿ø ¡æ 27,000¿ø 10%
¸¶Àϸ®Áö 5% 1,500¿ø
¹ßÇàÀÏ 2019-01-31
ISBN 1161752633 |  9791161752631
±âŸÁ¤º¸ ¹ø¿ª¼­ | 416ÂÊ
¿¹»óÃâ°íÀÏ 2~3ÀÏ À̳» (±Ù¹«ÀϱâÁØ)
¹è¼Ûºñ ¹«·á¹è¼Û
   
ÀϹÝ
   
ÀÌ Ã¥ÀÇ ¿ø¼­
  Functional Kotlin
Packt Publishing | Mario Arias
 

¡Ú ¿ä¾à ¡Ú



°£´ÜÇÑ ¿¹Á¦¸¦ ÅëÇØ ÄÚÆ²¸°ÀÇ ¿©·¯ °¡Áö Ư¡À» ½±°Ô »ìÆìº¼ ¼ö ÀÖµµ·Ï ±¸¼ºµÈ Ã¥ÀÌ´Ù. ´Ù¸¥ ¾ð¾î¿¡¼­ Á¢Çغ¸Áö ¸øÇÑ, ȤÀº Á¢ÇغÃÁö¸¸ ÄÚÆ²¸°¿¡¼­ ¾à°£ ´Ù¸£°Ô µ¿ÀÛÇÏ´Â °ÍµéÀ» ¾Ë°Ô µÉ °ÍÀÌ´Ù. ÀÌ Ã¥À» ÀÐ°í ³ª¸é ÄÚÆ²¸°ÀÇ ±âº»¿¡ ´ëÇØ ±ú¿ìÄ¡°í ½º½º·Î ÄÚÆ²¸° ÇÁ·Î±×·¡¹ÖÀ» ÇìÃijª°¥ ¼ö ÀÖ´Â ±âÃʸ¦ ´ÙÁú ¼ö ÀÖ´Ù.





¡Ú ÀÌ Ã¥¿¡¼­ ´Ù·ç´Â ³»¿ë ¡Ú



¡á ÄÚÆ²¸°À¸·Î ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö ÄÁ¼Á ¹è¿ì±â

¡á ÄÚÆ²¸° ÄÚ·çÆ¾ ´Ù·ç±â

¡á ¾Ö·Î¿ì ¶óÀ̺귯¸® »ç¿ëÇϱâ

¡á ¸ð³ªµå, ÆãÅÍ, ¾îÇø®Ä¿Æ¼ºê¿¡ ´ëÇØ ¹è¿ì±â

¡á ÇÔ¼öÇü ÇÁ·Î±×·¡¹ÖÀ» OOP¿Í ¸®¾×Ƽºê ÇÁ·Î±×·¡¹Ö°ú °áÇÕÇϱâ

¡á ¾Ö·Î¿ì¿Í ÇÔ²² ¸ð³ªµå »ç¿ëÇϱâ

¡á ½ºÆ®¸² ó¸®Çϱâ

¡Ú ÀÌ Ã¥ÀÇ ´ë»ó µ¶ÀÚ ¡Ú



ÀÌ Ã¥Àº ÄÚÆ²¸°ÀÇ ±âº»À» ¾Ë°í ÀÖÀ¸¸é¼­ ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö À̸éÀÇ ±âº» ¾ÆÀ̵ð¾î¸¦ ÀÌÇØÇÏ°í ½Ç¿ëÀûÀ¸·Î »ç¿ëÇÏ´Â ¹æ¹ýÀ» ¾Ë°í ½ÍÀº ÄÚÆ²¸° À¯Àú(ÇÁ·Î±×·¡¸Ó, ¿£Áö´Ï¾î, ¶óÀ̺귯¸® ÀÛ¼ºÀÚ, ¾ÆÅ°ÅØÆ®)¸¦ À§ÇÑ °ÍÀÌ´Ù. ºÎ·Ï¿¡¼­ ÄÚÆ²¸° ¾ð¾î¸¦ ºü¸£°Ô ½ÃÀÛÇÏ´Â ¹æ¹ýÀ» Á¦°øÇÑ´Ù. ÄÚÆ²¸°À» óÀ½ Á¢ÇÏ´Â µ¶ÀÚ¶ó¸é ºÎ·Ï ¸ÕÀú º¸±â¸¦ ±ÇÇÑ´Ù.





¡Ú ÀÌ Ã¥ÀÇ ±¸¼º ¡Ú



1Àå, 'ÄÚÆ²¸°: µ¥ÀÌÅÍ Å¸ÀÔ, ¿ÀºêÁ§Æ®, Ŭ·¡½º'¿¡¼­´Â ÄÚÆ²¸°ÀÇ °´Ã¼ÁöÇâ ÇÁ·Î±×·¡¹Ö¿¡ ´ëÇØ ¼Ò°³ÇÑ´Ù. ÄÚÆ²¸°Àº ±âº»ÀûÀ¸·Î °´Ã¼ÁöÇâ ÇÁ·Î±×·¡¹ÖÀ̸ç, ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö ½ºÅ¸ÀÏÀ» ¼Ò°³Çϱâ À§ÇØ ÀÌ·¯ÇÑ ±â´ÉÀ» »ç¿ëÇÑ´Ù.

2Àå, 'ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö ½ÃÀÛ'¿¡¼­´Â ÄÚÆ²¸°ÀÇ °´Ã¼ÁöÇâ ÇÁ·Î±×·¡¹Ö ±â´ÉÀ» »ç¿ëÇØ ÇÔ¼öÇü ÇÁ·Î±×·¡¹ÖÀÇ ±âº» ¿øÄ¢À» ´Ù·é´Ù.

3Àå, 'ºÒº¯¼º: Á߿䡯¿¡¼­´Â ºÒº¯¼ºÀ» ÇÔ¼öÇü ÇÁ·Î±×·¡¹ÖÀÇ °¡Àå Áß¿äÇÑ °³³ä Áß Çϳª¶ó°í °­Á¶ÇÑ´Ù. ±×¸®°í ºÒº¯¼º¿¡ ´ëÇØ ½ÉÃþÀûÀ¸·Î ÀÌÇØÇÒ ¼ö ÀÖ°Ô µ½´Â´Ù.

4Àå, 'ÇÔ¼ö, ÇÔ¼ö ŸÀÔ, ºÎ¼ö È¿°ú'¿¡¼­´Â ÇÔ¼ö, ¼ø¼ö ÇÔ¼ö¿¡ ´ëÇÑ ÄÁ¼Á°ú ´Ù¾çÇÑ ÇÔ¼ö ŸÀÔ ¹× ºÎ¼ö È¿°ú¿¡ ´ëÇÑ ±âº»ÀûÀÎ ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö ÄÁ¼ÁÀ» ¼Ò°³ÇÑ´Ù.

5Àå, 'ÇÔ¼ö ½ÉÈ­ ÇнÀ'¿¡¼­´Â È®Àå ÇÔ¼ö, ¿¬»êÀÚ ¿À¹ö·Îµù, DSL, ÄÚ¸®Ä¿Á¯ °°Àº ÇÔ¼öÇü ÇÁ·Î±×·¡¹ÖÀ» À§ÇÑ ÄÚÆ²¸°ÀÇ ±â´ÉÀ» ´Ù·é´Ù.

6Àå, 'ÄÚÆ²¸°ÀÇ µ¨¸®°ÔÀÌÆ®'¿¡¼­´Â µ¨¸®°ÔÀÌÆ®¸¦ À§ÇØ ÄÚÆ²¸°ÀÌ ¾ð¾î ·¹º§¿¡¼­ Áö¿øÇÏ´Â ¹æ¹ýÀ» ´Ù·é´Ù. µ¨¸®°ÔÀÌÆ®´Â °´Ã¼ÁöÇâ ÇÁ·Î±×·¡¹Ö ÄÁ¼ÁÀÌÁö¸¸ Äڵ带 ¸ðµâÈ­Çϴµ¥ µµ¿òÀÌ µÉ ¼ö ÀÖ´Ù.

7Àå, 'ÄÚ·çÆ¾À» »ç¿ëÇÑ ºñµ¿±â ÇÁ·Î±×·¡¹Ö'¿¡¼­´Â ÄÚÆ²¸°¿¡¼­ÀÇ ºñµ¿±â ÇÁ·Î±×·¡¹ÖÀ» ¼Ò°³Çϰí, ÄÚ·çÆ¾°ú ´Ù¸¥ ½ºÅ¸ÀÏÀ» ºñ±³ÇÑ´Ù.

8Àå, 'ÄÚÆ²¸°ÀÇ Ä÷º¼Ç°ú µ¥ÀÌÅÍ ÀÛ¾÷'¿¡¼­´Â ÄÚÆ²¸°ÀÇ Çâ»óµÈ Ä÷º¼Ç API¿Í ÄÚÆ²¸°ÀÇ Ä÷º¼Ç ÇÁ·¹ÀÓ¿öÅ©°¡ Á¦°øÇÏ´Â ÇÔ¼öÇü ÀÎÅÍÆäÀ̽º¿¡ ´ëÇØ ´Ù·é´Ù.

9Àå, 'ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö°ú ¸®¾×Ƽºê ÇÁ·Î±×·¡¹Ö'¿¡¼­´Â ÃÖ´ëÇÑÀÇ À̵æÀ» ¾ò±â À§ÇØ ÇÔ¼öÇü ÇÁ·Î±×·¡¹ÖÀÌ ´Ù¸¥ ÇÁ·Î±×·¡¹Ö ÆÐ·¯Å¸ÀÓ°ú °áÇÕÇÏ´Â ¹æ¹ýÀ» º¸¿©ÁØ´Ù. ¶ÇÇÑ ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö°ú °´Ã¼ÁöÇâ ÇÁ·Î±×·¡¹Ö ¹× ¸®¾×Ƽºê ÇÁ·Î±×·¡¹ÖÀÇ °áÇÕ ¹æ¹ýÀ» ¾Ë¾Æ º»´Ù.

10Àå, 'ÆãÅÍ, ¾îÇø®Ä¿Æ¼ºê, ¸ð³ªµå'¿¡¼­´Â ŸÀÔÀ» °¡Áø ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö°ú ±× ±âº» ÄÁ¼ÁÀ» ¼Ò°³ÇÑ´Ù. ¶ÇÇÑ ÄÚÆ²¸°¿¡¼­ ±¸ÇöÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù.

11Àå, 'ÄÚÆ²¸°¿¡¼­ ½ºÆ®¸² ÀÛ¾÷'¿¡¼­´Â ÄÚÆ²¸°ÀÇ ½ºÆ®¸² APIÀ» ¼Ò°³ÇÑ´Ù.

12Àå, '¾Ö·Î¿ì ½ÃÀÛ'¿¡¼­´Â ¾Ö·Î¿ì »ç¿ë¹ý°ú ÇÔ¼öÇü ÇÁ·Î±×·¡¹ÖÀ» À§ÇÑ È®Àå, ÇÔ¼ö ÇÕ¼º, Ä¿¸µ, ºÎºÐ ¾ÖÇø®ÄÉÀ̼Ç, ¸Þ¸ðÀÌÁ¦À̼Ç, ¿Éƽ½º¸¦ ´Ù·é´Ù.

13Àå, '¾Ö·Î¿ì ŸÀÔ'¿¡¼­´Â Option, Either, Try °°Àº ¾Ö·Î¿ì µ¥ÀÌÅÍ Å¸ÀÔ°ú State ¹× ŸÀÔ Å¬·¡½º, ÆãÅÍ, ¸ð³ªµå¸¦ ÀÌÇØÇÏ°Ô µ½´Â´Ù.

ºÎ·Ï, 'ÄÚÆ²¸° Äü ½ºÅ¸Æ®'¿¡¼­´Â ÄÚÆ²¸° ÄÚµå ÀÛ¼ºÀ» ½ÃÀÛÇÏ´Â µ¥ ÇÊ¿äÇÑ µµ±¸, ±âº» ±¸¹® µî°ú ÄÚÆ²¸° ¿©ÇàÀ» ÁøÇàÇÏ´Â µ¥ µµ¿òÀÌ µÇ´Â ´Ù¸¥ ¸®¼Ò½º¸¦ Á¦°øÇÑ´Ù.





¡Ú ÁöÀºÀÌÀÇ ¸» ¡Ú



Áö³­ 2017³â I/O ÄÜÆÛ·±½º¿¡¼­ ±¸±ÛÀÌ ¾Èµå·ÎÀ̵åÀÇ °ø½Ä ¾ð¾î·Î ÄÚÆ²¸°À» ¹ßÇ¥ÇÑ ÈÄ·Î ÄÚÆ²¸°Àº ¼¼°èÀÇ °³¹ßÀÚµé »çÀÌ¿¡¼­ Àα⸦ ¾ò°í ÀÖ´Ù. ÄÚÆ²¸°ÀÇ Àαâ´Â ¾Èµå·ÎÀ̵å Ä¿¹Â´ÏƼ¿¡ ±¹ÇѵÇÁö ¾Ê°í, µ¥½ºÅ©Åé, À¥, ¹é¿£µå Ä¿¹Â´ÏƼ¿Í °°Àº ´Ù¸¥ ¸¹Àº Ä¿¹Â´ÏƼ¿¡¼­µµ ÄÚÆ²¸°À» »ç¿ëÇϰí ÀÖ´Ù. »õ·Î¿î ¶óÀ̺귯¸®¿Í ÇÁ·¹ÀÓ¿öÅ©°¡ °è¼ÓÇØ¼­ ¸¸µé¾îÁö°í ÀÖÀ¸¸ç, ±âÁ¸ ¶óÀ̺귯¸®¿Í ÇÁ·¹ÀÓ¿öÅ©µµ ÄÚÆ²¸°À» Áö¿øÇÑ´Ù.

°è¼ÓÇØ¼­ ´õ ¸¹Àº °³¹ßÀÚ°¡ ÄÚÆ²¸° Ä¿¹Â´ÏƼ·Î ¿À°í ÀÖÀ¸¸ç, ÀÚ¿¬½º·¯¿î À¯¿¬ÇÑ Æ¯Â¡À¸·Î ÀÎÇØ ´õ ¸¹Àº ÇÁ·Î±×·¡¹Ö ½ºÅ¸ÀÏÀÌ ½ÃµµµÇ°í ÀÖ´Ù. ÀÌ Ã¥ÀÇ ¸ñÀûÀº ±¤¹üÀ§ÇÑ ÄÚÆ²¸° Ä¿¹Â´ÏƼ¿¡°Ô ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö ½ºÅ¸ÀÏÀÇ Ã¹ ¹øÂ° ´Ü°è·Î À̲ø°í, ÄÁ¼ÁÀ» Áøº¸½Ã۱â À§ÇÑ ±âº» ÅøÀ» Á¦°øÇÏ´Â °ÍÀÌ´Ù.



1Àå. ÄÚÆ²¸°: µ¥ÀÌÅÍ Å¸ÀÔ, ¿ÀºêÁ§Æ®, Ŭ·¡½º

__Ŭ·¡½º

____¼Ó¼º

____¸Þ¼Òµå

__»ó¼Ó

__Ãß»ó Ŭ·¡½º

__ÀÎÅÍÆäÀ̽º

__¿ÀºêÁ§Æ®

____¿ÀºêÁ§Æ® ¼±¾ð

____ÄÄÆÐ´Ï¾ð ¿ÀºêÁ§Æ®

__Á¦³×¸¯

__ŸÀÔ ¾Ù¸®¾î½º

__Nullable ŸÀÔ

____null È®ÀÎ

____nullÀÌ ¾Æ´Ñ ŸÀÔ È®ÀÎ

____¾ÈÀü È£Ãâ

____¿¤ºñ½º(?:) ¿¬»êÀÚ

____(!!) ¿¬»êÀÚ

__ÄÚÆ²¸°ÀÇ Å¸ÀÔ ½Ã½ºÅÛ

____Any ŸÀÔ

____ÃÖ¼Ò °øÅë ŸÀÔ

____Unit ŸÀÔ

____Nothing ŸÀÔ

__±âŸ ŸÀÔ

____µ¥ÀÌÅÍ Å¬·¡½º

____ÁÖ¼®

____¿­°ÅÇü

__Á¤¸®





2Àå. ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö ½ÃÀÛ

__ÇÔ¼öÇü ÇÁ·Î±×·¡¹ÖÀ̶õ?

__±âº» °³³ä

____ÀÏ±Þ ÇÔ¼ö ¹× °íÂ÷ ÇÔ¼ö

____¼ø¼ö ÇÔ¼ö

____Àç±Í ÇÔ¼ö

____´À±ßÇÑ °è»ê¹ý

__ÇÔ¼öÀû Ä÷º¼Ç

__ÇÔ¼öÇü ¸®½ºÆ® ±¸Çö

__Á¤¸®





3Àå. ºÒº¯¼º: Áß¿ä

__ºÒº¯¼ºÀ̶õ?

____ÄÚÆ²¸°¿¡¼­ ºÒº¯¼º ±¸Çö

____var¿Í valÀÇ Â÷ÀÌ

____ÄÄÆÄÀÏ Å¸ÀÓ »ó¼ö

____ºÒº¯¼ºÀÇ Á¾·ù

__ºÒº¯ Ä÷º¼Ç

__ºÒº¯¼ºÀÇ ÀåÁ¡

____½º·¹µå ¾ÈÀü¼º

____³·Àº Ä¿Çøµ

____ÂüÁ¶ Åõ¸í¼º

____½ÇÆÐ ¿øÀÚ¼º

____ij½Ì

____ÄÄÆÄÀÏ·¯ ÃÖÀûÈ­

____¼ø¼ö ÇÔ¼ö

__ºÒº¯¼ºÀÇ ´ÜÁ¡

__Á¤¸®





4Àå. ÇÔ¼ö, ÇÔ¼ö ŸÀÔ, ºÎ¼ö È¿°ú

__ÄÚÆ²¸°ÀÇ ÇÔ¼ö

____ÇÔ¼ö¿¡¼­ µÎ °³ÀÇ °ª ¹Ýȯ

____È®Àå ÇÔ¼ö

____±âº» Àμö

____Áßø ÇÔ¼ö

__ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö¿¡¼­ÀÇ ÇÔ¼ö ŸÀÔ

__¶÷´Ù

____¼Ó¼ºÀ¸·Î¼­ÀÇ ÇÔ¼ö

__°íÂ÷ ÇÔ¼ö

__¼ø¼ö ÇÔ¼ö¿Í ºÎ¼ö È¿°ú

____ºÎ¼ö È¿°ú

____¼ø¼ö ÇÔ¼ö

__Á¤¸®





5Àå. ÇÔ¼ö ½ÉÈ­ ÇнÀ

__´ÜÀÏ Ç¥Çö ÇÔ¼ö

__ÆÄ¶ó¹ÌÅÍ

____¼öÁ¤ÀÚ vararg

____¶÷´Ù

____¸í¸íµÈ ÆÄ¶ó¹ÌÅÍ

____±âº» ÆÄ¶ó¹ÌÅÍ

__È®Àå ÇÔ¼ö

____È®Àå ÇÔ¼ö¿Í »ó¼Ó

____Ãæµ¹ÇÏ´Â À̸§À» °¡Áø È®Àå ÇÔ¼ö

____¿ÀºêÁ§Æ®¿ë È®Àå ÇÔ¼ö

__ÁßÀ§ ÇÔ¼ö

__¿¬»êÀÚ ¿À¹ö·Îµù

____¹ÙÀ̳ʸ® ¿¬»êÀÚ

____Invoke

____Àε¦½ÌµÈ Á¢±Ù

____Unary ¿¬»êÀÚ

__ŸÀÔ ¾ÈÀü ºô´õ

____DSL »ý¼º

__ÀζóÀÎ ÇÔ¼ö

____ÀζóÀÎ Á¦ÇÑ

__Àç±Í ¹× ÄÚ¸®Ä¿Á¯

__Á¤¸®





6Àå. ÄÚÆ²¸°ÀÇ µ¨¸®°ÔÀÌÆ®

__À§ÀÓ ¼Ò°³

____À§ÀÓÀÇ ÀÌÇØ

__ÄÚÆ²¸°ÀÇ µ¨¸®°ÔÀÌÆ®

__¼Ó¼º À§ÀÓ(Ç¥ÁØ µ¨¸®°ÔÀÌÆ®)

____Delegates.notNull ÇÔ¼ö¿Í lateinit

____´À±ßÇÑ ÇÔ¼ö

____Delegates.Observable¸¦ »ç¿ëÇØ ¼Ó¼º °ª º¯°æ °üÂû

____°ÅºÎÀÇ Èû: Delegates.vetoable

__À§ÀÓµÈ ¸Ê

__Ä¿½ºÅÒ À§ÀÓ

__·ÎÄà µ¨¸®°ÔÀÌÆ®

__Ŭ·¡½º À§ÀÓ

__Á¤¸®





7Àå. ÄÚÆ²¸°À» »ç¿ëÇÑ ºñµ¿±â ÇÁ·Î±×·¡¹Ö

__ÄÚ·çÆ¾ ¼Ò°³

____JVM ½º·¹µå ÀÌÇØ

____Hell, coroutine world!

__½ÇÁ¦ ÄÚ·çÆ¾ »ç¿ë

____µ¿±â ±¸Çö

____Äݹé

____Àڹ٠ǻó

____ÄÚ¹ö³ÍÆ®¸¦ ÅëÇÑ ÇÁ·Î¹Ì½º

____ÄÚ·çÆ¾

____ÄÚ·çÆ¾ ÄÁÅØ½ºÆ®

__ä³Î

____ä³Î ÆÄÀÌÇÁ¶óÀÎ

__º¯°æ °¡´ÉÇÑ »óÅ °ü¸®

____ÄÁÅØ½ºÆ® Àüȯ

____½º·¹µå ¾ÈÀü ±¸Á¶Ã¼

____¹ÂÅØ½º

____¾×ÅÍ

__Á¤¸®





8Àå. ÄÚÆ²¸°ÀÇ Ä÷º¼Ç°ú µ¥ÀÌÅÍ ÀÛ¾÷

__Ä÷º¼Ç ¼Ò°³

____Ä÷º¼Ç ÇÁ·¹ÀÓ¿öÅ©ÀÇ ÀåÁ¡

__List¿Í MutableList

__Set°ú MutableSet

__Map°ú MutableMap

__Ä÷º¼ÇÀÇ µ¥ÀÌÅÍ ÀÛ¾÷

____map ÇÔ¼ö

____filter ÇÔ¼ö

____flatMap ÇÔ¼ö

____drop ÇÔ¼ö

____take ÇÔ¼ö

____zip ÇÔ¼ö

__Ä÷º¼Ç ±×·ìÈ­

__Á¤¸®





9Àå. ÇÔ¼öÇü ÇÁ·Î±×·¡¹Ö°ú ¸®¾×Ƽºê ÇÁ·Î±×·¡¹Ö

__FP¿Í OOP °áÇÕ

__ÇÔ¼öÇü ¸®¾×Ƽºê ÇÁ·Î±×·¡¹Ö

____¸®¾×Ƽºê ¸Å´ÏÆä½ºÅä

____ÄÚÆ²¸°ÀÇ ÇÔ¼öÇü ¸®¾×Ƽºê ÇÁ·¹ÀÓ¿öÅ©

__RxKotlin ½ÃÀÛ

____RxKotlin ´Ù¿î·Îµå ¹× ¼³Á¤

____RxJava Ǫ½Ã ¸ÞÄ¿´ÏÁò°ú Ç® ¸ÞÄ¿´ÏÁò ºñ±³

__Observables

____ObservableÀÇ ÀÛµ¿ ¹æ½Ä

__Observable.create ¸Þ¼Òµå

__Observable.from ¸Þ¼Òµå

__Iterator.toObservable

__Subscriber: Observer ÀÎÅÍÆäÀ̽º

__±¸µ¶ ¹× Æó±â

__Á¤¸®





10Àå. ÆãÅÍ, ¾îÇø®Ä¿Æ¼ºê, ¸ð³ªµå

__ÆãÅÍ

__¸ð³ªµå

__¾îÇø®Ä¿Æ¼ºê

__Á¤¸®





11Àå. ÄÚÆ²¸°¿¡¼­ ½ºÆ®¸² ÀÛ¾÷

__½ºÆ®¸² ¼Ò°³

__Ä÷º¼Ç°ú ½ºÆ®¸²

__½ºÆ®¸² ÀÛ¾÷

__ÇÁ¸®¹ÌƼºê ½ºÆ®¸²

__½ºÆ®¸² ÆÑÅ丮 ¸Þ¼Òµå

____½ºÆ®¸² ºô´õ

____ºó ½ºÆ®¸² »ý¼º: Stream.empty()

____¿ä¼Ò¸¦ Àü´ÞÇØ ½ºÆ®¸² ¸¸µé±â: Stream.of()

____½ºÆ®¸² »ý¼º: Stream.generate()

__Ä÷ºÅÍ¿Í Stream.collect: ½ºÆ®¸² ¼öÁý

____Collectors.toList(), Collectors.toSet(), Collectors.toCollection()

____¸Ê¿¡ ¼öÁý: Collectors.toMap()

____¹®ÀÚ¿­ ½ºÆ®¸²ÀÇ °áÇÕ: Collectors.joining()

____½ºÆ®¸² ¿ä¼Ò ±×·ìÈ­: Collectors.groupingBy()

__Á¤¸®





12Àå. ¾Ö·Î¿ì ½ÃÀÛ

__ÇÔ¼ö ÇÕ¼º

__ºÎºÐ ¾ÖÇø®ÄÉÀ̼Ç

____¹ÙÀεù

__¸®¹ö½º

__ÆÄÀÌÇÁ

__Ä¿¸µ

____Ä¿¸µ°ú ºÎºÐ ¾ÖÇø®ÄÉÀ̼ÇÀÇ Â÷ÀÌÁ¡

__³í¸® ºÎÁ¤

__¸Þ¸ðÀÌÁ¦À̼Ç

__ºÎºÐ ÇÔ¼ö

__Ç×µî°ú »ó¼ö

__¿Éƽ½º

____¾Ö·Î¿ì ÄÚµå »ý¼º ¼³Á¤

____·»Áî »ý¼º

__Á¤¸®





13Àå. ¾Ö·Î¿ì ŸÀÔ

__Option

__¾Ö·Î¿ìÀÇ Å¸ÀÔ °èÃþ

__Either

__¸ð³ªµå Æ®·£½ºÆ÷¸Ó

__Try

__State

____State°¡ ÀÖ´Â ÄÚ¸®Ä¿Á¯

__Á¤¸®





ºÎ·Ï. ÄÚÆ²¸° Äü ½ºÅ¸Æ®

__ÄÚÆ²¸° ÀÛ¼º ¹× ½ÇÇà

____ÄÚÆ²¸° ¿Â¶óÀÎ

____Äֿܼ¡¼­ Çϱâ

____±×·¡µé »ç¿ë

____IntelliJ IDEA³ª ¾Èµå·ÎÀÌµå ½ºÆ©µð¿À »ç¿ë

__±âº» ÄÚÆ²¸° ±¸¹®

____ÀÏ¹Ý ±â´É

____Á¦¾î ±¸Á¶

__ÄÚÆ²¸° Koans

¸¶¸®¿À ¾Æ¸®¾Æ½º(Mario Arias)

¼ÒÇÁÆ®¿þ¾î °³¹ß, µðÀÚÀÎ, µ¥ÀÌÅͺ£À̽º, ±³À° ÀÚ·á µðÀÚÀÎ, Æ®·¹ÀÌ´× µô¸®¹ö¸®(training delivery)¿¡¼­ 12³â ÀÌ»óÀÇ °æÇèÀ» ½×Àº ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾îÀÌÀÚ ½ºÇÁ¸µ ÀÎÁõ °­»ç´Ù.

ÇöÀç ¿µ±¹ ¸Çü½ºÅÍÀÇ BAMTECH ¹Ìµð¾î ȸ»çÀÎ ÄÉÀÌÅ© ¼Ö·ç¼Ç(Cake Solutions)¿¡¼­ ¼ÒÇÁÆ® ¿þ¾î ¿£Áö´Ï¾î·Î ÀÏÇϰí ÀÖ´Ù.

ÄÚÆ²¸° Ä¿¹Â´ÏƼ¿¡¼­ Àß ¾Ë·ÁÁø ¸â¹öÀ̸ç, ¾Ö·Î¿ì ±â´É ¶óÀ̺귯¸®¸¦ °³¹ßÇϰí À¯Áö º¸¼öÇÏ´Â ±×·ìÀÎ ¾Ö·Î¿ì ÆÀÀÇ ÀÏ¿øÀÌ´Ù. ÀÚÀ¯ ½Ã°£¿¡ ÀÚÀü°Å¸¦ Ÿ°í ºê¶óÁú¸®¾ð ÁÖÁþ¼ö¸¦ ¿¬¸¶ÇÑ´Ù.



¸®ºÎ īũ¶óº¸Æ¼(Rivu Chakraborty)

Caster.io °­»çÀÌÀÚ ±¸±Û ÀÎÁõ ¾Èµå·ÎÀÌµå °³¹ßÀÚÀ̸ç, Àεµ ¿£Áö´Ï¾î ÇÐȸÀÇ ½Ã´Ï¾î Å×Å© ¸â¹ö´Ù. 5³â ÀÌ»óÀÇ °æ·ÂÀ» ½×¾Ò°í, ÇöÀç Àδõ½º ³Ý Å×Å©³Î·¯Áö½º À¯ÇÑȸ»ç(Indus Net Technologies Pvt. Ltd.)¿¡¼­ ½Ã´Ï¾î ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾î(¾Èµå·ÎÀ̵å)·Î ÀÏÇϰí ÀÖ´Ù.

ÄÚÆ²¸°°ú ¾Èµå·ÎÀÌµå ¾ÖÈ£°¡À̸ç ÄÚÆ²¸° ¿¡¹ÝÁ©¸®½ºÆ®´Ù. 2³â ÀÌ»ó ÄÚÆ²¸°À» »ç¿ëÇØ ¿ÔÀ¸¸ç, ÄÚÆ²¸° ÄÝīŸ UGÀÇ ¼³¸³ÀÚ´Ù. ¶ÇÇÑ ÁöµðÁö ÄÝīŸ(GDG Kolkata)ÀÇ ÇÙ½É Á¶Á÷ ÆÀÀÇ ¸â¹ö´Ù. ¡ºReactive Programming in Kotlin¡»(Packt, 2017)À» Àú¼úÇßÀ¸¸ç, ÄÚÆ²¸°¿¡ ´ëÇÑ µÎ ±Ç ÀÌ»óÀÇ Ã¥À» ÀÛ¾÷ ÁßÀÌ´Ù.





¡Ú ¿Å±äÀÌÀÇ ¸» ¡Ú



ÄÚÆ²¸° °³¹ß¿¡ °ü½É ÀÖÀ¸½Å µ¶ÀÚ ¿©·¯ºÐ, °ü½ÉÀ» °®°í ÀÌ Ã¥À» ºÁÁּż­ ´ë´ÜÈ÷ °¨»çÇÕ´Ï´Ù.

Àú´Â ¾Èµå·ÎÀÌµå °³¹ßÀ» ÅëÇØ ÄÚÆ²¸°À» Á¢ÇÏ°Ô µÆÁö¸¸, ¾Èµå·ÎÀ̵å¿Í´Â °ü°è¾øÀÌ ÄÚÆ²¸°À» ¾Ë°Ô µÇ´Â °úÁ¤ÀÌ Âü Àç¹ÌÀÖ¾ú½À´Ï´Ù. »õ·Î¿î ¾ð¾î¸¦ ¹è¿ì´Â °ÍÀÌ ¾à°£ Èûµé±âµµ ÇÏÁö¸¸ ±×¸¸Å­ Àç¹Ìµµ ÀÖ½À´Ï´Ù. ´Ù¸¥ ºÐµéµµ Àú¿Í °°Àº ¸¶À½À̶ó¸é ÁÁ°Ú½À´Ï´Ù.

ÀÌ Ã¥Àº ÄÚÆ²¸°¿¡ ´ëÇØ ¸¹Àº ³»¿ëÀ» ´Ù·ç°í ÀÖ½À´Ï´Ù. ±âÁ¸¿¡ ¾Èµå·ÎÀÌµå °³¹ßÀ» ÇϽôø ºÐÀ̶ó¸é ÇÑ ¹øÂë ÄÚÆ²¸°À¸·Î µµÀüÇÏ´Â °Íµµ ÁÁÀ» °Í °°½À´Ï´Ù. ȣȯµµ µÇ°í Äڵ带 ¸¸µå´Â Àç¹Ìµµ ÀÖ½À´Ï´Ù. ÈÄȸÇÏÁö ¾ÊÀ» °Ì´Ï´Ù. Àúµµ °£´ÜÇÏ°Ô ÄÚÆ²¸°À¸·Î ¾Û Çϳª¸¦ ¸¸µé¾î ºÃ´Âµ¥, ±¦Âú¾Ò½À´Ï´Ù.

¿©·¯ºÐó·³ ÄÚÆ²¸°À» ¹è¿ì°í ½ÍÀº ºÐµé¿¡°Ô µµ¿òµÇ°íÀÚ ÀÌ Ã¥À» ¹ø¿ªÇÏ°Ô µÆ½À´Ï´Ù. ºÎµð µµ¿òÀÌ µÆÀ¸¸é ÁÁ°Ú½À´Ï´Ù. Ã¥À» Àдٰ¡ ÀÌ»óÇÑ ºÎºÐ, ÀÌÇØ°¡ ¾È µÇ´Â ºÎºÐÀÌ ÀÖÀ¸¸é ÁÖÀú ¾øÀÌ À̸ÞÀÏ·Î ÀÇ°ß º¸³»Áֽñ⸦ ¹Ù¶ø´Ï´Ù.





¡Ú ¿Å±äÀÌ ¼Ò°³ ¡Ú



±¸Áø¼ö

°ÔÀÓ°ú ¾Û, ÇÁ·Î±×·¡¹Ö¿¡ °ü½ÉÀÌ ¸¹À¸¸ç, °ü·Ã Ã¥°ú Á¤º¸¸¦ ¹ø¿ªÇϸ鼭 °øÀ¯ÇÏ·Á ÇÑ´Ù. ¹ø¿ªÀڷμ­ÀÇ ¸ñÇ¥´Â ÇÑ ÆäÀÌÁö°¡ º»ÀÎÀÇ À̸§À¸·Î ä¿öÁú ¼ö ÀÖ°Ô ¸¹Àº Ã¥À» ¹ø¿ªÇغ¸´Â °ÍÀÌ´Ù.

µî·ÏµÈ ¼­ÆòÀÌ ¾ø½À´Ï´Ù.
DDD Start!...
ÃÖ¹ü±Õ
¼±ÅÃµÈ »óǰÀ» ÂòÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù. ¼±ÅÃµÈ »óǰÀ» ¹Ù·Î±¸¸Å ÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.
¾Æ´ã º¸µÎÄ¡...
¼¼¹Ù½ºÂù ¶ó...
±èâÁØ
½ºÆ¼ºì »ç¹«...
 
ÃÊ Áß °í
ÀüüÆò±Õ(0)
ȸ¿øÆòÁ¡   ȸ¿ø¼­Æò¼ö 0
¿¡ÀÌÄÜ ÃâÆÇ»çÀÇ ½Å°£
ÀÚ¿¬¾î ó¸®¿Í µö·¯´×
¸® µ¢/±èÀç¹Î Àú
36,000¿ø
(10%¡é+5%)
 
µ¥ÀÌÅͺ£À̽º ÀÎÅͳνº
ÀÌÅÂÈÖ/ÀÌ¿ìÇö Àú
31,500¿ø
(10%¡é+5%)
 
ÀÚ»ê¿î¿ëÀ» À§ÇÑ ±ÝÀ¶ ¸Ó½Å·¯´×
À̱âÈ« Àú
18,000¿ø
(10%¡é+5%)
 
ŸÀÔ½ºÅ©¸³Æ® ½ÇÀü ÇÁ·ÎÁ§Æ®(À¥ ÇÁ·ÎÆä¼Å³Î)
ÇÇÅÍ ¿ÀÇÑ·Ð/±èÀ¯¼º Àú
31,500¿ø
(10%¡é+5%)
 
ÇÁ·¹ÀÓ¿öÅ© ¾ø´Â ÇÁ·ÐÆ®¿£µå °³¹ß
·ù¿µ¼±/·ù¿µ¼± Àú
22,500¿ø
(10%¡é+5%)
 
À̸ÞÀÏÁÖ¼Ò¼öÁý°ÅºÎ