ÇÁ·Î±×·¡¹Ö
ù ÆäÀÌÁö ·£´ý ±Û ȸ¿ø°¡ÀÔ ·Î±×ÀÎ
ºñ°ø°³ ¼Õ´Ô ¡¦ 2019-09-16 00:51:27
URL https://te31.com/rgr/view.php?id=study&no=2886 ¸ð¹ÙÀÏ È­¸é
¸Å´ÏÁöµå ¾ð¾î(java)ÀÇ ÆĶó¹ÌÅÍ »ç¿ë¹æ¹ý


÷ºÎ À̹ÌÁö : 1°³


ù ¹ø° »ý¼ºÀÚ(line 6), µÎ ¹ø° »ý¼ºÀÚ(line 12) Áß¿¡ ù ¹ø°²¨·Î »ý°¢¾øÀÌ ½è½À´Ï´Ù.

±Ùµ¥ °¡¸¸ »ý°¢Çغ¸´Ï, ÆĶó¹ÌÅÍ·Î µé¾î¿À´Â °´Ã¼µéÀº

deep copy Çؼ­ ½á¾ßÇÒÁö shallow copy Çؼ­ ½á¾ßÇÒÁö

±¸ºÐ ¾ÈµÇ¾î ÀÖ´õ¶ó±¸¿ä.


ÆĶó¹ÌÅÍ´Â ¹«Á¶°Ç immutable ÇÏ´Ù´Â ÀüÁ¦·Î ÄÚµùÇ϶óµµ

È¥ÀÚ ±×·¸°Ô Á¤Çصµ µÇ´Â°¡ ½Í½À´Ï´Ù.

°´Ã¼¸¦ ¹ÝȯÇÏ´Â °æ¿ì¿¡µµ Ç×»ó ÆÑÅ丮¸Þ¼Òµå(ÆĶó¹ÌÅ͸¦ ¼öÁ¤Çؼ­ ¹ÝȯÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó »õ·Î¿î °´Ã¼¸¦ »ý¼ºÇؼ­ ¹Ýȯ)¸¦ ÇؾßÇϴ°ÍÀΰ¡? Àǹ®ÀÔ´Ï´Ù.


Áú¹®¿ä¾à
1. ÇÔ¼ö¸¦ ¼±¾ðÇÒ¶§ ÆĶó¹ÌÅÍ´Â Ç×»ó immutable ÇÏ´Ù°í ÀüÁ¦ÇؾßÇϴ°¡?
2. mutableÇÑ ÆĶó¹ÌÅ͸¦ ´Ù·ç´Â ÇÔ¼ö ÀÛ¸í¹ý?

Áú¹® | 2274¸íÀÌ Àоú¾î¿ä. 3.141.244.201

0
1 ºñ°ø°³ ¼Õ´Ô ¡¦ 2019-09-16 05:01:23
'¸Å´ÏÁöµå' ¶ó°í ÇÑÁ¤ÇÏ½Å°É º¸´Ï auto_ptr shared_ptr °³³äÀº ¾Æ½Å´Ù°í º¸°í..
ÀÏ´Ü java¿¡¼­ string Àº immutable ÀÌÁö¸¸ ¿ä¾àÁú¹®À» º¸¸é ±×°Íµµ ³Ñ¾î°¡°í...

1.
±âº»Àº mutable À̶ó°í ºÁ¾ßÇÏÁö¸¸ (¹æ¾îÀû ÄÚµù, ƯÈ÷ lib µîÀ» ¸¸µç´Ù¸é)
³»ºÎ ÄÁº¥¼ÇÀ¸·Î immutable ÇÏ°Ô Á¤Çϴ°ÍÀº ÁÁ´Ù°í »ý°¢ÇÕ´Ï´Ù

2.
±âº»ÀÌ mutable À̹ǷΠc++¿¡´Â ¿¹·ÎºÎÅÍ
'immutableÀÌ´Ï±î ¾È½ÉÇϼ¼¿ä' ¶ó´Â Á¤º¸¸¦ ÁÖ´Â const ¶ó´Â Å°¿öµå°¡ ÀÖ¾ú´Âµ¥¿ä
java¿¡´Â ºñ½ÁÇÑ ¹®¹ýÀÌ ¾ø¾î¼­ Á¿°°¾Ò´Âµ¥
c# 7.2ºÎÅÍ in keyword °¡ »ý°Ü¼­ ÇູÇÕ´Ï´Ù (¹Ìħ)

¾î·µç javaÀÇ ÆĶó¹ÌÅÍ ÀÛ¸í¹ýº¸´Ù´Â annotate ¸¦ ¾²´Â°Ô ÁÁÁö ¾ÊÀ»±î ½Í³×¿ä @ReadOnly
2 ºñ°ø°³ ¼Õ´Ô ¡¦ 2019-09-16 14:28:32
Java ³ª C# ¿¡¼­´Â °Á String ±¸ÇöÀÚü°¡ Immutable ÀÌ¶ó¼­ Àú·± °æ¿ì´Â ¹«Á¶°Ç '°ª' ó·³ µé¾î¿À±â ¶§¹®¿¡ new String() À¸·Î ±»ÀÌ ¸¸µé ÇÊ¿ä ¾ø½À´Ï´Ù.

±×¸®°í ƯÁ¤ ±¸ÇöÀÇ ¾î¶² Ư¼ºÀ» ³ªÅ¸³¾ ¶©

Ŭ·¡½º ±¸ÇöÀÇ °¡º¯/ºÒº¯¿©ºÎ¸¦ ³ªÅ¸³»´Â @Immutable °°Àº ¾î³ëÅ×À̼ÇÀ̶ó´ø°¡(jsr-305),
@Contract(pureFunction = true/false) ¸¦ ¾²´Â°Íµµ ¹æ¹ýÀ̱ä ÇÕ´Ï´Ù(IntelliJ IDEA Àü¿ë).

¾²´Ùº¸´Ï ´ä1À̶û °°³×¿ä ¤»
3 ºñ°ø°³ ¼Õ´Ô ¡¦ 2019-09-16 14:34:07
¾î³ëÅ×À̼ÇÀº ¿À¹ö¶óÀ̵ù»ÓÀÌ ¾È½è´Âµ¥ Àß È°¿ëÇؾßÇϴ±º¿ä °¨»çÇÕ´Ï´Ù.
4 ºñ°ø°³ ¼Õ´Ô ¡¦ 2019-09-16 16:42:27
º»ÀÎÀÇ ´Ü¼øÇÑ ³ú :
"ide¿¡¼­ getter/setter »ý¼º ½Ã case 1°ú °°À¸´Ï ±×·¸°Ô ¾²¸é µÇ´Â±¸³ª!"

ÁöÁ¸ °í¼ö´ÔµéÀÇ ³ú´Â ¿ª½Ã ´Þ¶ó...
5 ºñ°ø°³ ¼Õ´Ô ¡¦ 2019-09-16 19:27:05
¾î³ëÅ×À̼ÇÀÌ ÀǹÌÀÖµµ·Ï µ¿ÀÛÇÏ´Â ÄÄÆÄÀÏ·¯³ª ÆíÁý±â°¡ ÀÖ¾î¾ß Àǹ̸¦ °¡Áö´Âµ¥.. ¾ÆÁ÷ IntelliJ IDEA ±âÁØÀ¸·Ð immutable À̳ª contract ¿¡ ¸Â°Ô ÆíÁý±â¿¡¼­ ÀÚµ¿ ¿À·ù¸¦ ¶ç¿ö Áְųª ÇÏ´Â ±â´ÉÀÌ ¾ø¾î¿ä. ¾ÆÁ÷Àº ±×³É ÄÚµùÇÒ¶§ ¹®¼­·Î È°¿ëÇÏ´Â Á¤µµ¹Û¿¡ ¾ÈµË´Ï´Ù.
6 ºñ°ø°³ ¼Õ´Ô ¡¦ 2019-09-16 19:27:41
@nullable, @nonnull Àº Àß µ¿ÀÛÇÏ´Â ÆíÀÌÁö¸¸..
7 ºñ°ø°³ ¼Õ´Ô ¡¦ 2019-09-17 20:36:13
´Ü¼ø ¿£Æ¼Æ¼°¡ ¾Æ´Ï¶ó È°µ¿¼ºÀ» °¡Áø °´Ã¼µµ
DI·Î ³Ñ±â´Â ¸î³âµÈ Ãß¼¼´ë·Î¶ó¸é
Shallow copy°¡ Á¤´äÀ¸·Î º¸ÀÔ´Ï´Ù

Deep copy´Â ÇÊ¿äÇÑ°÷¿¡¼­¸¸ ¾²±¸¿©
8 ºñ°ø°³ ¼Õ´Ô ¡¦ 2019-09-17 20:38:40
Ãß¼¼´Â ½©·Î¿ìÄ«ÇÇ!
´ñ±ÛÀ» ÀÛ¼ºÇÏ½Ç ¼ö ¾ø½À´Ï´Ù.
(±ÇÇÑÀÌ ¾ø´Â ȸ¿ø·¹º§)
¸ñ·ÏÀ¸·Î
ÀÌ¿ë¾à°ü | ±¤°í/Á¦ÈÞ | °³ÀÎÁ¤º¸Ãë±Þ¹æħ | ¹®ÀÇ/½Å°í | ¸ð¹ÙÀÏ TE31 | ¼­¹ö ºÎÇÏ : 10%
½Ç½Ã°£ Issue Ä¿¹Â´ÏƼ TE31 [¾ËÁö·Õ] ¨Ï 2002-2024
TOP arrow_upward