<¿¹ÀüºÎÅÍ ÀÛ¼ºÇؼ, ÆÄ°ß¾÷ü ¸¶´Ù µ¹¸®´ø °Çµ¥, ½Ã°£ÀÌ ¾ø¾î ÆíÁýÇÏÁö ¸øÇÑä, ÆÄÀϳ×Àֿ̹¡ °üÇÑ ºÎºÐ¸¸ Ãß°¡Çؼ ¿Ã·Á º¾´Ï´Ù.
¿ì¼± Àо½Ã°í ÀÇ°ß ÁÖ½Ã¸é ´Ù½Ã ¹Ý¿µÇؼ, Á¤¸®ÇØ º¸µµ·Ï ÇϰڽÀ´Ï´Ù.
°¡ºñÀ¥ ½Ä±¸ºÐµéÀÇ ÀǰßÀÌ ¸ðµÎ ¹Ý¿µµÇ¾î, »õ·Î¿î ¿¡ÀÌÀü½Ã¿¡ °É¸Â´Â °ÉÃâÇÑ ÄÁº¥¼ÇÀÌ Åº»ýµÇ±â¸¦ ±â´ëÇØ º¾´Ï´Ù.
===================================================================
- º» ¹®¼´Â codemania¿Í ÇÔ²² ÀÛ¾÷ÇÏ°Ô µÉ ¿©·¯ºÐµéÀ» À§ÇØ, °£´ÜÇÑ coding conventionÀ» ÀÛ¼ºÇÑ °ÍÀÔ´Ï´Ù. :-) - °Á¦°¡ ¾Æ´Ñ(Á¦°Ô ±×·² ´É·Âµµ ¾ø´Ù°í º¾´Ï´Ù.) Á¦¾ÈÀÌ¿À´Ï, È®ÀÎ ÈÄ, ÇÔ²² conventionÀ» È®Á¤ Áö¾úÀ¸¸é ÇÕ´Ï´Ù. - ÇѰ¡Áö ¾Æ¿ï·¯, º»ÀÎÀº java¸¦ Áö³ªÄ¡°Ô »ç¶ûÇÕ´Ï´Ù. :-) (Áï, ¹«Á¶°Ç javaÀÇ ±âÁØ¿¡ ¸ÂÃß´Â ½À°üÀÌ ÀÖÀ¸´Ï, ÀÌ°Í ¿ª½Ã ¿ÇÁö ¾ÊÀº ºÎºÐÀÌ ÀÖ´Ù¸é Á¶¾ð ¹Ù¶ø´Ï´Ù. Çϱâ»ç Á¦°¡ ÁÖ·Î ÆÄ°ß³ª°¡´Â °÷À̸é, ÀÚ¹Ùµ¿È£È¸ ºÐÀ§±â¿Í ´Ù¸§ ¾ø°ÚÁö¸¸. (_-_) )
ÀÛÀº Â÷À̰¡ ¸íǰÀ» ¸¸µì´Ï´Ù. (P¾÷üÀÇ Ä«ÇǶóÀÕ ÀÔ´Ï´Ù.)
Áö±Ý ÀÌ ±ÛÀ» ÀаíÀÖ´Â Àú³ª, ¿©·¯ºÐÀÇ ½Ç·ÂÀº ³ª³¯ÀÌ ¹ßÀüÇØ °¡°í ÀÖ½À´Ï´Ù.
ÇöÀçÀÇ ½Ç·ÂÀÌ ¹ÌõÇÒÁö¶óµµ, ±âº»ÀûÀÎ ÄÁº¥¼Ç¸¸ ÁöÄÑ, ÇÁ·Î±×·¥À» °³¹ßÇØ ³ª°£´Ù¸é, ¿ì¸®ÀÇ ½Ç·ÂÀÌ ÁõÁøµÈ¸¸Å, ÇÁ·Î±×·¥ÀÇ ÁúÀ» °³¼±ÇÒ ¼ö ÀÖ°ÚÁö¸¸, ¸¶±¸ Â¥¿©Áø ÄÚµå´Â ÁúÀÇ °³¼±Àº Ä¿³ç, ÀçȰ¿ë¼º °¡´É¼ºÀÌ ³·¾ÆÁö°í, ±×·¸´Ù¸é, ¿ì¸° Ç㱸Çѳ¯ ¹Ýº¹ÀûÀÎ Äڵ带 ´Ù½Ã ÀçÀÛ¼º ÇØ¾ß ÇÕ´Ï´Ù.
¾û¶×ÇÑ ¼Ò¸®·Î µé¸®°ÚÁö¸¸, º»ÀÎÀÇ ½Ç·ÂÀ» ±ÞÁøÀûÀ¸·Î ¹ßÀü½Ã۰í, ±× ¹ßÀüµÈ ½Ç·ÂÀ» ÀÌ¿ëÇÏ¿©, º¸´Ù ¼öÁسôÀº ÇÁ·ÎÁ§Æ®¸¦ ÁøÇàÇÏ°í ½Í´Ù¸é, ÄÁº¥¼ÇÀ» ¸¶½ºÅÍ ÇϽʽÿä. (´ëÃæ ºÁ¼ µÉ ¹®Á¦°¡ ¾Æ´Õ´Ï´Ù.)
¶ÇÇÑ, ¼Ò½º³» 90%ÀÇ ÁÖ¼®Àº ÄÁº¥¼Ç¸¸À¸·Î Á¦°ÅµÉ ¼ö ÀÖ½À´Ï´Ù. (ÁÖ¼®À¸·Î µÚ¹ü¹÷µÈ ¼Ò½º´Â °áÄÚ ÁÁÀº ¼Ò½º°¡ ¾Æ´Õ´Ï´Ù. ¿ì¸®°¡ ¿ÀǼҽº¸¦ °³¹ßÇÏÁö ¾Ê´Â ÀÌ»ó ¸»ÀÌÁÒ. ¶ÇÇÑ ¼³·É ¿ÀǼҽºÀÏÁö¶ó ÇÏ´õ¶óµµ, °³¹ßÀÚ¿ë ¹®¼¸¦ º°µµ·Î Á¦°øÇÏ´Â °ÍÀÌ ¿ÇÀº ¹æÇâÀÌÁö, ÁÖ¼®À» µÚ¹ü¹÷µÈ ÄÚµå´Â ºñÁ¤»óÀû ÀÔ´Ï´Ù. - ³î¶ø°Ôµµ ³¯°í ±ä´Ù´Â? À¯¸íÇÑ ¿ÀǼҽº °³¹ßÀÚ Áß, ÀÌ·± ½ºÅ¸ÀÏÀ» °íÁýÇÏ´Â À̵éÀÌ ¸¹Áö¿ä. ^^ - )
¹«ÀÛÁ¤ ÁÖ¼®À» ¸¹ÀÌ ´Ù´Â°Ô ÁÁ´Ù°í »ý°¢ÇϽô ºÐµéÀÌ ³î¶ó¿ï Á¤µµ·Î ¸¹Àºµ¥, °áÄÚ ±×¸©µÈ »ý°¢ÀÔ´Ï´Ù. (°úÁßÇÑ ÁÖ¼®Àº ¿ÀÈ÷·Á ¼Ò½º¸¦ °¡¸®´Â ¾²·¹±âÀÇ ¿ªÈ°À» ÇÕ´Ï´Ù.)
ÁÖ¼®ÀÌ Áö³ªÄ¡°Ô ¸¹´Ù¸é, º»ÀÎÀÇ ÄÚµù½ºÅ¸Àϰú ¸Þ¼µå&ÇÔ¼ö³» ·ÎÁ÷, ¼³°è¸¦ Á¡°ËÇØ º¸½Ã±â ¹Ù¶ø´Ï´Ù. (´ëºÎºÐ ÀûÀýÇÑ indirectionÀ» ÅëÇØ¼ ÇØ°áÇÏ½Ç ¼ö ÀÖÀ»°Ì´Ï´Ù. ÄÁº¥¼Ç ¹®¼°¡ ³¡³ª´Âµ¥·Î, Refactoring¿¡ ´ëÇØ¼µµ Çѹø ¶°µé¾î º¸µµ·Ï ÇÏÁÒ. ÀÚ¼¼ÇÑ ÇØ°á¹ýÀº ±×¶§ À̾߱â Çϵµ·Ï ÇϰڽÀ´Ï´Ù.)
ÁÖ¼®Àº ¹Ýµå½Ã ÇÊ¿äÇÑ °÷¿¡¸¸, ÄÁº¥¼ÇÀº ¹Ýµå½Ã ¸¶½ºÅ͸¦!
1. ¿ì¼± Àý´ëÀûÀ¸·Î Á¦¾ÈÇÏ°í ½Í½À´Ï´Ù.
* Àß ¾Ë·ÁÁø ´Ü¾î¿Ü¿¡´Â »ý·«ÇÏÁö ¸¶¶ó!
³Ê¹«³ªµµ ¸¹Àº »ç¶÷µéÀÌ ³×Àֽ̹à ´Ü¾î¸¦ »ý·«(¿¹ : image -> img)Çϴµ¥, ÀÌ°Ç ¿ÇÁö ¾ÊÀº ½À°üÀÔ´Ï´Ù.
»ý·«µÈ ´Ü¾î°¡ Ç¥Áذú ´Ù¸¥ ¾ø´Â °æ¿ì(HTML, UML, URL, DB)¸¦ Á¦¿ÜÇϰí´Â Àý´ë! »ý·«ÇÏÁö ¸¶½Ê½Ã¿ä.
Á¦¹ß ºÎŹ µå¸³´Ï´Ù. Á¤¸» Áß¿äÇÑ ºÎºÐÀÔ´Ï´Ù.
* Çѱ۹ßÀ½½Ä ³×À̹Ö, Äá±Û¸®½¬´Â Á¦¹ß no!
jumunCode(ÁÖ¹®ÄÚµå) -> orderCode (º¯¼ö, db field ³×À̹ÖÀÇ °æ¿ì) getFinishTaskList() -> getFinishedTaskList() (method, functionÀÇ °æ¿ì)
* indentationÀÇ °£°ÝÀº Çö Ãß¼¼¿¡ ¸ÂÃß¾î!
ÀǿܷΠ2, 8µîÀ¸·Î ¼ÂÆÃÇÏ°í ¾²½Ã´Â ºÐµéÀÌ ¸¹½À´Ï´Ù¸¸, 4°¡ Àû´çÇØ º¸ÀÔ´Ï´Ù. (Ç¥ÁØÀº 8ÀÌ ¸ÂÁÒ)
½ºÆäÀ̽º¸¦ »ðÀÔÇϴ³Ä, ÅÇÀ» ¾²´À³Ä´Â ÀüÀûÀ¸·Î º»ÀÎÀÇ ÆÇ´Ü¿¡ ¸ÂÃß°Ú½À´Ï´Ù.
* ´ÜÀÏ ¶óÀÎÀº 80À» ³ÑÁö ¾Êµµ·Ï. (½Ã´ë¿¡ µû¶ó, ÀÌÁ¨ ¿É¼Ç»çÇ×ÀÌ µÇ¾î ¹ö·È½À´Ï´Ù. ^^)
terminal, ³·Àº ÇØ»óµµÀÇ »ç¿ëÀÚ, ¼Ò½ºÃâ·ÂµîÀ» À§ÇØ, ´ÜÀÏ ¶óÀÎÀÌ 80À» ³ÑÁö ¾Êµµ·Ï ÇØÁֽñ⠹ٶø´Ï´Ù.
»ç½Ç ¿©±â¿¡ ´ëÇÑ, ÁøºÎÇÑ ³íÀïÀÌ ¾ø´Â°ÍÀº ¾Æ´ÏÁö¸¸, ¹ÌõÇÑ °æÇèÀ̳ª¸¶, º»ÀÎÀÇ °æÇè»ó ³ª»Ü °Í ¾ø´õ±º¿ä.
±×·¡µµ À§ÀÇ ´ÜÁ¡µéÀ» Ä¿¹öÇÒ ¼ö ÀÖ´Â µµ±¸µéÀÌ ³ª¿Í ÀÖÀ¸´Ï, ¹Ýµå½Ã ÁöŰÁö ¾Ê¾Æµµ µÉ °Í °°½À´Ï´Ù. (±×·¯³ª Å͹̳ΠÀÛ¾÷ÀÌ ÁÖÀÎ ¾ÆÆÄÄ¡µîÀÇ ¼Ò½º´Â Â÷Ä¡ÇÏ°í¼¶óµµ, DelphiµîÀÇ IDE¿¡¼´Â °ÅÀÇ °Á¦ÀûÀ¸·Î Á¦ÇÑÇϰí ÀÖ´Â Ãß¼¼ÀÔ´Ï´Ù. ±×·¯³ª º»Àεµ »ç½Ç ÁöŰÁö ¾Ê°í ÀÖ½À´Ï´Ù. ÇØ»óµµ°¡ ¾Æ±î¿ö¼¿ä.)
* ¿µ¹®ÀÚ ¿Ü¿¡´Â ³×Àֿ̹¡¼ Á¦¿Ü
»ó¼ö¸¦ Á¦¿ÜÇÑ, Ŭ·¡½º&ÀÎÅÍÆäÀ̽º, ¸Þ¼µå&ÇÔ¼ö, º¯¼ö ³×Àֽ̹à ¿µ¹®ÀÚµé Á¦¿ÜÇÑ ÀÏüÀÇ ¹®ÀÚ´Â Á¦¿Ü½ÃÄÑ Áֽʽÿä.
¿¹ : (_, -µî°ú °°Àº Ư¼ö¹®ÀÚµé)
»ó¼ö´Â ¿¹¿ÜÀûÀ¸·Î _ ¹®ÀÚ¸¦ ÀÎÁ¤ÇÕ´Ï´Ù¸¸, ´Ü¾î±¸ºÐÀڷνḸ »ç¿ëÇÏ¼Å¾ß ÇÕ´Ï´Ù.
¹°·Ð ¾ð¾î¸¶´ÙÀÇ ÄÁº¥¼ÇÀº ¸ðµÎ ´Ù¸¨´Ï´Ù.
±×·¯³ª ÆÀÀÛ¾÷À̶õ Á¡À» °¨¾ÈÇϸé, ÇѰ¡Áö ÄÁº¥¼ÇÀ¸·Î ÅëÀÏÇÏ´Â °ÍÀÌ ÁÁ°ÚÁö¿ä.
* º¯¼ö ¼±¾ð
ÇüŸÀÔÀÌ µ¿ÀÏÇϰí, ÁÖ¼®¿¡ ´ëÇÑ º°µµÀÇ ÁÖ¼®ÀÌ ÇÊ¿ä¾ø´Ù¸é(´ëºÎºÐ ³×À̹ÖÀ¸·Î ÇØ°áÇÒ ¼ö ÀÖÁö¿ä.), ÇÑ ¶óÀο¡ ¿©·¯ º¯¼ö¸¦ ¼±¾ðÇÏ¿©µµ µË´Ï´Ù.
´Ù¸¸, ÇüŸÀÔÀÌ ´Ù¸¥ º¯¼ö¸¦ ÇÑ ¶óÀο¡¼ ¼±¾ðÇÏÁö ¸¶½Ê½Ã¿ä. (ÇüŸÀÔÀÌ ´Ù¸£´Ù¸é, ¹«Á¶°Ç ´Ù¸¥ ¶óÀο¡!)
¶ÇÇÑ º¯¼öÀÇ µ¥ÀÌÅÍŸÀÔ°í º¯¼ö¸í ¼±¾ð½Ã 1 space¸¦ »ðÀÔÇÏ´Â °ÍÀÌ ÀϹÝÀûÀ̳ª, ÅÇÀ» »ðÀÔÇÏ´Â °Íµµ Çã¿ëÇÕ´Ï´Ù. (¿©·¯ µ¥ÀÌÅÍŸÀÔÀÌ ¼¯¿©ÀÖ¾î °¡µ¶¼ºÀÌ ¶³¾îÁö´Â °æ¿ì »ç¿ëÇϸé À¯¿ëÇÕ´Ï´Ù.)
¿¹ :
int age; int serial; Object sample;
¶Ç´Â
int age; int serial; Object sample;
°¡Àå Áß¿äÇÑ °Å!
º¯¼ö´Â ÇØ´ç º¯¼ö°¡ »ç¿ëµÇ´Â ºí·°(class, method, if, while...)ÀÇ ÃÖ»ó´Ü¿¡ ¸ðµÎ ¼±¾ðÇϽʽÿä.
°áÄÚ! Àý´ë! never! ±× º¯¼ö°¡ »ç¿ëµÇ´Â À§Ä¡¿¡¼ ¼±¾ðÇÏÁö ¸¶½Ê½Ã¿ä. ÀÌ·¸°Ô ±îÁö °Á¶Çߴµ¥ ÀÌÇØ ÇϼÌÁÒ?)
php¿Í °°Àº ƯÁ¤ language ¿¡¼´Â, while ¹® ³»¿¡¼ »ý¼ºµÈ º¯¼öµµ, ÇØ´ç ·çÇÁ°¡ ¼Ò¸êµÇ¾îµµ À¯È¿ÇÕ´Ï´Ù.
¼³·É ±×·¸´Ù ÇÒÁö¾ðÁ¤, À§ÀÇ ±ÔÄ¢Àº ºÒº¯ÇÕ´Ï´Ù.
* º¯¼öÃʱâÈ
Áö¿ªº¯¼öÀÇ °æ¿ì´Â ¼±¾ð½Ã ¹Ýµå½Ã Ãʱâȸ¦ ÇØÁÖ¼¼¿ä. (±âº»ÀûÀÎ »çÇ×ÀÌ´Ï °Á¶ÇÒ °Íµµ ¾øÁö¿ä?)
¿¹ : int count = 0;
¿ÀÁ÷, ´Ü ÇѰ¡Áö ÀÌÀ¯, ÃʱâÈ µÇÁö ¾ÊÀº º¯¼ö¸¦ °¡Áö°í ¿¬»ê½Ã ²ûÂïÇÑ ÀÏÀÌ ¹ú¾îÁö±â ¶§¹®ÀÔ´Ï´Ù. (php, perl°ú °°Àº ÀÚÀ¯·Î¿î Çüº¯È¯À» Çã¿ëÇÏ´Â ¾ð¾î ÀÏÁö¶óµµ ÁöÄÑ Áֽʽÿä.)
* ÆÄ¶ó¹ÌÅÍÀÇ °ªÀº º¯°æÇÏÁö ¸»¾ÆÁÖ¼¼¿ä!
´ëºÎºÐÀÇ ºÐµéÀÌ ¾Æ¹«·± »ý°¢¾øÀÌ parameter·Î ³Ñ¾î¿Â º¯¼öÀÇ °ªÀ» ÀçÇÒ´ç ÇÏ´Â °æ¿ì°¡ ¸¹½À´Ï´Ù.
ÆÄ¶ó¹ÌÅÍ º¯¼öÀÇ °ªÀº ±âº»ÀûÀ¸·Î final·Î °íÁ¤ÇÏ¿© Áֽʽÿä. (ÀÌ°Ç Á¤¸» Å« Àç¾ÓÀÔ´Ï´Ù.)
ÆÄ¶ó¹ÌÅÍ º¯¼öÀÇ °ªÀ» º¯ÈÇϰíÀÚ ÇÑ´Ù¸é, »õ·Î¿î º¯¼ö¸¦ ¼±¾ðÇÑ ÈÄ »ç¿ëÇϽñ⠹ٶø´Ï´Ù.
¿¹ : ¾Æ·¡ÀÇ ¸Þ¼µå´Â À̸§À» ÀԷ¹޾Æ, "greate" ºÙÀÎ ÈÄ ¸®ÅÏÇÏ´Â ¸Þ¼µå ¶ó°í °¡Á¤ÇØ º¾½Ã´Ù.
getUserName(String name) {
name = "greate " + name; // ÆÄ¶ó¹ÌÅÍ º¯¼öÀÇ °ªÀ» °ÇµéÁö ¸»¶õ ¸»À̾ß!
return name;
}
¿ä°Å´Â,
getUserName(String name) {
String addedName = null;
addedName = "greate " + name;
return addedName;
}
* ¸®ÅϹ®¿¡¼ °¡±ÞÀû ¿¬»ê, °ýÈ£, ¸Þ¼µå È£ÃâÀº ÀÚÁ¦Çϰí, ¹Ýµå½Ã ƯÁ¤°ªÀ» ¸®ÅÏÇսôÙ.
³ª»Û¿¹ :
return; return ƯÁ¤°´Ã¼.ƯÁ¤¸Þ¼µå(); return (size ? size:defaultSize);
* °¢°¢ÀÇ ¸Þ¼µå´Â ºóÁÙ·Î ±¸ºÐÇÕ´Ï´Ù. (³Ê¹«³ª ´ç¿¬)
¿ä·±½ÄÀ¸·Î, »õ·Î¿î º¯¼ö¸¦ ¼±¾ðÇØ »ç¿ëÇÏ½Ã¸é µË´Ï´Ù.
1. ÆÐŰÁö ³×À̹Ö
¸ðµç ÆÐŰÁö´Â ¹Ýµå½Ã ¼Ò¹®Àڷθ¸ ³×ÀÌ¹Ö ÇØ¾ßÇÕ´Ï´Ù. (º¹¼ö´Ü¾î µ¿ÀÏ)
¶ÇÇÑ, ¸ðµç ÆÐŰÁö¸íÀÇ ½ÃÀÛÀº ÇöÀçÀÇ µµ¸ÞÀÎ, ¶Ç´Â ±¹°¡¸¦ ±¸º°ÇÒ ¼ö ÀÖ´Â µÎÀÚ¸® ¿µ¹®ÄÚµå·Î ½ÃÀÛÇØ¾ß ÇÕ´Ï´Ù. (1981³â ISO Ç¥ÁØ - 3166)
¿¹ : com.codemania.extend.tool;
ÆÐŰÁö ÇϺΠÄÄÆ÷³ÍÆ®ÀÇ ³×À̹ÖÀº ÆíÇϽйæ½ÄÀ¸·Î ¸¶À½²¯ Á¤Çϼŵµ »ó°ü¾ø½À´Ï´Ù.
¿¹ : ºÎ¼º°, ÇÁ·ÎÁ§Æ®º°, ¸Ó½Åº°, ·Î±×ÀÎ ³×ÀÓº°µî
2. Ŭ·¡½º, ÀÎÅÍÆäÀ̽º ³×À̹Ö
¹«¾ùº¸´Ù, ½ÉÇÃÇϰí, ÀÚ½ÅÀ» ½º½º·Î Àß ¼³¸íÇÒ ¼ö ÀÖ´Â À̸§À¸·Î Áö¾îÁÖ¾î¾ß ÇÕ´Ï´Ù.
¶ÇÇÑ, °¢°¢ÀÇ ´Ü¾îÀÇ Ã¹¹øÂ° öÀÚ´Â ¸ðµÎ ´ë¹®ÀÚ·Î ½ÃÀÛÇÑ´Ù´Â °Ç, ³Ê¹« Àß ¾Ë·ÁÁø »ç½ÇÀÌÁÒ.
¿¹ : PaymentManager, LogTracer)
3. ¸Þ¼µå, ÇÔ¼ö ³×À̹Ö
¹Ýµå½Ã ÇàÀ§¸¦ Ç¥ÇöÇÏ´Â µ¿»ç·Î ½ÃÀÛÇϽʽÿä.
¶ÇÇÑ, ¸ðµç ¸Þ¼µå&ÇÔ¼ö ³×À̹ÖÀº ¼Ò¹®ÀÚ·Î ½ÃÀÛÇϰí, ¿©·¯ ´Ü¾î°¡ ¼¯¿©ÀÖ´Â °æ¿ì, ù ´Ü¾î(¼Ò¹®ÀÚ)¸¦ Á¦¿ÜÇÑ ³ª¸ÓÁö ´Ü¾î´Â ù ¹®ÀÚ¸¦ ´ë¹®ÀÚ·Î ½ÃÀÛÇϵµ·Ï ÇÕ´Ï´Ù.
¿¹ : getUserList (µ¿»ç°¡ °¡Àå ¾Õ¿¡ À§Ä¡, User, List´Â ù ¹®ÀÚ°¡ ´ë¹®ÀÚ·Î ½ÃÀÛ)
À߸øµÈ ³×ÀÌ¹Ö ¿¹ : getUserlist(userlist¶õ ´Ü¾î´Â ¼¼»ó¿¡ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù. user¿Í list´Â ¾ö¿¬È÷ ´Ù¸¥ ´Ü¾îÁÒ)
¶Ç´Â Á¾Á¾ ÀÌ·¸°Ô ÇϽô ºÐµéµµ ÀÖ´õ±º¿ä.
getBackGroundImage(X) -> getBackgroundImage(O)
background´Â ÇѴܾ ¸Â½À´Ï´Ù. (ÀÌ °æ¿ì´Â ¿µ¾î°øºÎ°¡ ¿ì¼±À̰ÚÁÒ. »ç½ÇÀº º»ÀÎÀÇ °æÇè´ã À̶ø´Ï´Ù. ^^)
´Ü, »ý·«µÈ ´Ü¾îÀÇ °æ¿ì, ¸ðµÎ ´ë¹®ÀÚ·Î ³×ÀÌ¹Ö ÇÏ¼Å¾ß µË´Ï´Ù.
¿¹ : getDBConnector
À߸øµÈ ³×ÀÌ¹Ö ¿¹ : getDbConnector(Àܷ̿ΠÀÌ·¸°Ô ÇϽô ºÐµéÀÌ ¸¹½À´Ï´Ù¸¸, »ý·«µÈ ´Ü¾î´Â ±âº»ÀûÀ¸·Î ¸ðµÎ ´ë¹®ÀÚ·Î ±âÀÔÇϽʽÿä. Àý´ë Áß¿äÇÑ ºÎºÐÀÔ´Ï´Ù.)
3. º¯¼ö ³×À̹Ö
º¯¼ö¸íÀº _(underscore), $·Î ½ÃÀÛÇÏÁö ¸¶½Ê½Ã¿ä. (¶ó°ï ÇÏÁö¸¸, »ç½Ç º»Àεµ member º¯¼ö¿¡ ÇÑÁ¤ÇØ, underscore·Î ½ÃÀÛÇÏ´Â ³×À̹ÖÀ» °íÁýÇϰí ÀÖ½À´Ï´Ù. ¾Æ~ È¥¶õÀÌ ¿À´Â±º¿ä. ÀÌ°Ç ÇѹøÂë ¹ÌÆÃÀ» °¡Á® º¸µµ·Ï ÇÏÁö¿ä.)
ù ´Ü¾î´Â ¸ðµÎ ¼Ò¹®ÀÚ·Î, À̾îÁö´Â ´Ü¾î´Â ù¹®ÀÚ¸¸ ´ë¹®ÀÚ·Î, »ý·«¾î´Â ¸ðµÎ ´ë¹®ÀÚ·Î. (¸Þ¼µå&ÇÔ¼ö¿Í °°Áö¿ä.)
º¯¼ö¸íÀº °¡±ÞÀû °£°áÇϰÔ, ±×·¯³ª ÀÇ¹Ì´Â ÃæºÐÈ÷ ³»Æ÷ÇϰԲû! (¸»Àº ½±´Ù!)
´Ü, i, j, k, m, n(Á¤¼öÇü), c, d, e(¹®ÀÚÇü)À» À§ÇÑ º¯¼ö»ç¿ëÀº, ·çÇÁ³»¿¡¼´Â Çã¿ëÇÕ´Ï´Ù.
4. »ó¼ö³×À̹Ö
»ó¼ö´Â Á» Ưº°ÇÕ´Ï´Ù.
¸ðµç ´Ü¾î´Â ´ë¹®ÀÚ·Î, °¢ ´Ü¾î´Â _(underscore)·Î ±¸ºÐÇÏ¼Å¾ß ÇÕ´Ï´Ù.
±âŸ...
5. ÁÖ¼®
ÁÖ¼®ÀÇ °æ¿ì´Â, ¿©·¯ ¹®ÀåÀÇ ÁÖ¼®ÀÌ ÀÖÀ» °æ¿ì´Â ¾Æ·¡¿Í °°Àº ½ÄÀ¸·Î...
/** * * */
´ÜÀÏ ÁÖ¼®ÀÇ °æ¿ì´Â //(´ëºÎºÐÀÇ ¾ð¾îµé), '(ASP)À¸·Î ó¸®ÇØ Áֽñ⠹ٶø´Ï´Ù.
¶ÇÇÑ, º¯¼ö¿¡ °üÇÑ ÁÖ¼®Àº ÁÂÃø¿¡, ƯÁ¤ ·ÎÁ÷¿¡ ´ëÇÑ º¯¼ö´Â ¹Ýµå½Ã ºí·°»ó´Ü¿¡ blank lineÀ» Ãß°¡ÇϽŠÈÄ, ´Þ¾ÆÁֽñ⠹ٶø´Ï´Ù.
6. ÄÚµåÀÇ ºí·°È.
´ëºÎºÐÀÇ ¾ð¾îµéÀº ÄÚµåÀÇ ºí·°¼³Á¤À» Áö¿øÇÕ´Ï´Ù.
¹Ýµå½Ã, ·ÎÁ÷¿¡ µû¶ó ºí·°À» ÁöÁ¤ÇØ Áֽʽÿä.
ºí·°Àº Â÷ÈÄ¿¡, ´Ù¸¥ ¸Þ¼µå&ÇÔ¼ö·Î ÃßÃâµÇ°í, ±× ÀÚ¸®¿¡´Â ÇØ´ç ¸Þ¼µå¸¦ È£ÃâÇÏ´Â Äڵ尡 ¿À¸é µË´Ï´Ù.
Áï, ´çÀåÀº ¹Ùºü¼ ÀÏÀÏÈ÷ Extract Method¸¦ Àû¿ëÇÏÁø ¸øÇÑ´Ù ÇÏ´õ¶óµµ, ´Ù¸¥ °³¹ßÀÚ¸¦ À§Çؼ, ¶Ç´Â ÀÚ½ÅÀ» À§Çؼ ¹Ýµå½Ã ·ÎÁ÷¿¡ µû¸¥ ºí·°±¸ºÐÀº Áß¿äÇÕ´Ï´Ù.
µ¥ÀÌÅͺ£À̽ºÀÇ ³×À̹ÖÀº ´õ °¢º°ÇÕ´Ï´Ù.
ÇÁ·Î±×·¥ ¼Ò½º´Â À¯´Öº°·Î ¼öÁ¤À» °¡ÇÏ¸é ±×¸¸ÀÌÁö¸¸, DB´Â ºÒº¯ÇÕ´Ï´Ù.
ÀÌ°Ç ³Ê¹« ÀåÈ²ÇØ¼, ¿©±â¼ ¸ðµç°ÍÀ» ¼³¸íÇÒ ¼ø ¾ø°ÚÁö¸¸, °¡Àå ÇÙ½ÉÀûÀÎ °Å ¸î°¡Áö¸¸ ºÎŹ µå¸®°Ú½À´Ï´Ù.
1. Å×ÀÌºí ³×À̹Ö.
Å×ÀÌºí ³×Àֿ̹¡¼´Â ¿¹¿ÜÀûÀ¸·Î _ ³×À̹ÖÀ» Çã¿ëÇÕ´Ï´Ù.
order_sheet order_product
¶ÇÇÑ µ¿ÀÏÇÑ Á¦Ç°±º¿¡ ¼ÓÇÏ´Â(¿¹ : ¼îÇθô) Å×À̺íÀ̶ó¸é, ¹Ýµå½Ã Á¢µÎ¾î¸¦ ºÙ¿© Áֽñ⠹ٶø´Ï´Ù.
¿¹ :
shop_order_sheet shop_order_product
ÇÑ µ¥ÀÌÅͺ£À̽º¾È¿¡´Â °æ¿ì¿¡ µû¶ó, ¼ö½Ê/¼ö¹é°³ÀÇ Å×À̺íÀÌ »ý¼ºµË´Ï´Ù.
ÀÏÁ¾ÀÇ ÆÐŰÁö °³³ä°ú ¸¶Âù°¡Áö·Î, ¹Ýµå½Ã Å×À̺íÀÇ ¼º°ÝÀ» ´ëº¯ÇÏ´Â °øÅëµÈ Á¢µÎ¾î¸¦ ºÙ¿©ÁÖ¾î, ÀÌ·± ºÒÇàÇÑ »çŸ¦ ¿¹¹æÇսôÙ.
¶ÇÇÑ, °¡±ÞÀûÀ̸é, list¶õ ³×À̹ÖÀº ÀÚÁ¦ÇÏ¿© Áֽʽÿä.
¿£Æ¼Æ¼Å¸ÀÔ(Å×À̺í) ÀÚü°¡ list¸¦ ÀǹÌÇϱ⠶§¹®ÀÔ´Ï´Ù.
À§ÀÇ ¿¹¿¡¼, order_sheetÀº ±×·¸´Ù Ä¡´õ¶óµµ, order_productÀÇ °æ¿ì´Â ÇÑ ÁÖ¹®¼´ç ¿©·¯°³ÀÇ ÁÖ¹®»óǰÀÌ Æ÷ÇԵDZ⠶§¹®¿¡, list¶õ Á¢¹Ì¾î¸¦ ºÙÀÌ´Â °Ô ¿Ç´Ù°í »ý°¢µÇ½Ã°ÚÁö¸¸, ÀüÇô ±×·¸Áö ¾Ê½À´Ï´Ù. (ÀÌ¿¡ ´ëÇÑ ÇØ°áÃ¥Àº ERD »ó¿¡¼ Ä«µð³¾·¯Æ¼ Ç¥±â·Î ÇØ°áÇÒ ¹®Á¦Áö, ³×Àְ̹ú´Â ¹«°üÇÑ ¹®Á¦ ÀÔ´Ï´Ù.)
¶ÇÇÑ, ¼¼»ó¿¡ Á¸ÀçÇÏÁö ¾Ê´Â ´Ü¾î, °øÇ¥µÇÁö ¾ÊÀº ¾à¾î, Çѱ۹ßÀ½½Ä ¿µ¹®Ç¥±âµîÀº Àý´ë ÇÇÇÏ¼Å¾ß ÇÕ´Ï´Ù.
»ç½Ç, str(String)°ú °°Àº ÈçÇÑ ¾à¾î¸¦ ¾²½Ã´Â ºÐµéÀÌ Àִµ¥, db, cpu, ram°ú °°Àº ¾à¾î¿Í´Â ´Ù¸£°Ô °øÇ¥µÇÁö ¾ÊÀº ´Ü¾î ÀÔ´Ï´Ù.
ÀÌ·¯ÇÑ ¾à¾îµéÀÇ »ç¿ëÀ» Á¡°ËÇØ º¸½Ã±â ¹Ù¶ø´Ï´Ù. (ÀÌ°Ç ÄÚµùÄÁº¥¼Ç¿¡¼µµ µ¿ÀÏÇÏ°Ô Àû¿ëµË´Ï´Ù.)
¶ÇÇÑ Äõ¸®¹®ÀÇ °æ¿ìµµ, ÄÚµå¿Í °°ÀÌ µé¿©¾²±â¸¦ À¯ÁöÇÏ¿© Áֽʽÿä.
¿¹Á¦ 1. °£´ÜÇÑ Äõ¸®¹®
SELECT * FROM order_sheet
WHERE orderID = "" AND orderName = ""
ORDER BY registerDate Desc
¿¹Á¦ 2. º¹ÀâÇÑ Äõ¸®¹® (¼±Åà ÇʵåÀÇ ¼ö°¡ ¸¹¾Æ¼, ¿©·¯ ¶óÀÎÀ¸·Î ºÐȰ ÇÏ¿´À½À» ´«¿©°Ü ºÁÁֽʽÿä.)
SELECT a.merchantID, b.affiliateID, a.eventType, count(*) as totalCount, sum(a.affiliateFee) as totalAffiliateFee, sum(a.masterFee) as totalMasterFee, a.registerDate as registerDate, a.lastModifiedDate as lastModifiedDate
FROM partnership_marketing_merchant_event_log a
LEFT JOIN partnership_marketing_client_banner_log b ON a.clientID = b.clientID
LEFT JOIN partnership_marketing_banner c ON b.bannerID = c.bannerID
WHERE Á¶°Ç1... AND Á¶°Ç2... AND (Á¶°Ç3 OR Á¶°Ç4) AND ( a.registerDate > $beginDate AND a.registerDate < $endDate )
GROUP BY sortGroup
¿¹Á¦ 3. ³»¿ë¼öÁ¤
UPDATE Å×À̺í¸í
SET Çʵå1 = '', Çʵå2 = '', Çʵå3 = '', Çʵå4 = ''...
WHERE Á¶°Ç½Ä ...
´ëÃæ ÀÌ·±½ÄÀÔ´Ï´Ù. (CRM°ú °°Àº µ¥ÀÌÅÍ¿þ¾î ¸¶ÀÌ´×°ú °ü·ÃµÈ ºÐ¾ß¿¡¼´Â ÄÚµùÄÁº¥¼Ç º¸´Ù, Äõ¸®¹®ÀÇ ÄÁº¥¼ÇÀ» ´õ Áß¿ä½Ã ÇÕ´Ï´Ù.)
±âŸ...
Çʵå¸íÀº, ½ÇÁ¦ ¾÷¹«¿¡¼ ¾²ÀÌ´Â ¿ë¾î·Î ÀÛ¼º ÇϽʽÿä. °øÅëµÈ µµ¸ÞÀÎÀ» ÁöÁ¤ÇÏ¿© ÇʵåÀÇ ¼Ó¼ºÀ» Á¤ÇϽʽÿä. (¿¹ : °¡ÀÔÀÏ, ¼öÁ¤ÀÏ, ¹æ¹®ÀÏ, ´©ÀûÀϵîµîÀº... "³¯Â¥Çü" À̶õ °øÅëµÈ µµ¸ÞÀÎÀ» Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. ³¯Â¥Çü => DATATIME À̶ó¸é, »õ·Î¿î Çʵ带 Ãß°¡ÇÏ´õ¶óµµ, ±âÁ¸ÀÇ µµ¸ÞÀÎÀ» Âü°íÇÏ¿©, µ¿ÀÏÇÏ°Ô ¼Ó¼ºÀ» Áֽʽÿä. ÀÌ°Ç Â÷ÈÄ À¯Áöº¸¼ö¿¡ ÀÖ¾î¼ Å« Â÷À̸¦ °¡Á® ¿É´Ï´Ù. ±âÁ¸¿¡ µµ¸ÞÀÎÀÌ Á¸ÀçÇÏÁö ¾Ê´Ù¸é? »õ·Ó°Ô Ãß°¡µÈ ¼Ó¼º¿¡ ¸ÂÃß¾î µµ¸ÞÀÎÀ» Á¤ÀÇÇϽʽÿä. ¹Ý!µå!½Ã!)
¾Æ·¡´Â ÀüºÎ ¼Ó¼º(Çʵå)¸¦ ÀǹÌÇÕ´Ï´Ù.
¿¹ : ¾Æ¹öÁö À̸§, ¾î¸Ó´Ï À̸§, µþ À̸§, ¾ÆµéÀ̸§ => ÇѱÛÀ̸§ À̶õ µµ¸ÞÀÎÀ» ¼³Á¤Çϰí, varchar2(8)·Î ÁݽôÙ. ¿¹ : managerName, employName, studentName => ¿µ¹®À̸§ À̶õ µµ¸ÞÀÎÀ» ¼³Á¤Çϰí, varchar2(20)À¸·Î ÁݽôÙ.
³ª¸ÓÁö °Íµé...
ÆÄÀϳ×ÀÌ¹Ö ¿ª½Ã ¾öû³ª°Ô Áß¿äÇÕ´Ï´Ù.
ÆÄÀϳ×À̹ÖÀº '_' <- ¹®ÀÚÀÇ »ç¿ëÀ» Çã¿ëÇÕ´Ï´Ù.
¿¹ :
partner_log_write client_connect_page ...
ÆÄÀÏÀÇ °æ¿ì´Â, °£´ÜÇÑ ±ÔÄ¢ÀÌ ÀÖ½À´Ï´Ù.
´ëºÐ·ù -> Áߺзù -> ½ÄÀ¸·Î ºÐ·ù¸¦ Á¤ÇØÁÖ°í...
¸¶Áö¸·¿¡´Â ÀÌ ÆÄÀÏÀÌ ÁÖ·Î ÇàÇÏ´Â ÇൿÀ» ¼¼úÇÕ´Ï´Ù.
¿¹¸¦µé¸é,
partner -> ·Î±× -> write (Çù·ÂÀÚ)ÀÇ (·Î±×)¸¦ (ÀÛ¼º)ÇÕ´Ï´Ù.
client_connect_page (°í°´)ÀÇ (Á¢¼Ó) (ÆäÀÌÁö)
À§ÀÇ ÆÄÀϳ×Àֿ̹¡¼ ´ëºÐ·ù->Áߺзù->¼ÒºÐ·ù°¡ Áö³ªÄ¡°Ô ¸¹´Ù¸é?
µð·ºÅ丮·Î ±¸ºÐÇØ ÁÖ¸é µË´Ï´Ù.
partner¶õ µð·ºÅ丮¸¦ ¸¸µé°í...
log_write ¶õ ÆÄÀÏÀ» Áý¾î³ÖÀ¸¸é µË´Ï´Ù.
ÀÌ°Ç µðÀÚÀÌ³Ê ºÐµéµµ Á» ÀоîÁÖ¸é ÁÁÀ»ÅÙµ¥¿ä. ^^ (Àúµµ Ãë¹Ì»ï¾Æ¼ À¥ÆäÀÌÁö¸¦ Á¾Á¾ ¸¸µå´Âµ¥, À̹ÌÁöÀÇ °æ¿ìµµ À§¿Í °°Àº ³×ÀÌ¹Ö ±ÔÄ¢¿¡ µû¶ó¼ ¹èÁ¤ÇÑ´ä´Ï´Ù. ¤»¤»¤»)
(´Ü, Ŭ·¡½º ÆÄÀÏÀÇ °æ¿ì´Â Ŭ·¡½º¸í°ú µ¿ÀÏÇÏ°Ô ÁÖ½Ã¸é µË´Ï´Ù. ¶ÇÇÑ Å¬·¡½º¸í ¿ª½Ã ´ëºÐ·ù->Áߺзù->¼ÒºÐ·ù ½ÄÀ¸·Î À̸§À» ÁÝ´Ï´Ù. À̰Š¿Ü¿¡´Â ´Ù¸£´Ï, È¥µ·ÇÏÁö ¸¶¼¼¿ä.)
º»Àεµ ¸Ô°í »ç´Âµ¥ ±Þ±ÞÇÏ´Ù º¸´Ï, º» ¹®¼¸¦ ¾ðÁ¦ Á¤¸®ÇÒÁö ¸ð¸£°Ú³×¿ä.
¿ì¼±Àº °¡Àå ½Ã±ÞÇÑ ºÎºÐ¸¸ Àû¾î ³õ¾Ò½À´Ï´Ù.
¾ÕÀ¸·Î ÇÔ²² ÀÏÇÏ°Ô µÉ ¿©·¯ºÐµé. ƯÈ÷ °³¹ßÀÚ ¿©·¯ºÐµé. (¼±¹è´Ôµéµµ ¸¹ÀÌ °è½Åµ¥, ³Ê¹« ³¯¶Ú °Ç ¾Æ´Ñ°¡ ºÎ²ô·´±âµµ ÇÕ´Ï´Ù.)
Á¦ ±ÛÀÌ µµ¿òÀÌ µÇ½Ç¸¸ÇÑ ºÐµé¿¡°Ô¸¸ ´çºÎ µå¸®°Ú½À´Ï´Ù. (Áï, Àúº¸´Ù ¼ö°¡ ³ôÀ¸½Å ºÐµéÀº »ì¦ °Ç³Ê¶Ù½Ã±â ¹Ù¶ø´Ï´Ù.)
¾Æ¹«°Íµµ ¾Æ´Ñ °Í °°Áö¸¸, ÀÌ·± ÄÁº¥¼ÇµéÀÌ °¡Á®´Ù ÁÖ´Â ÀÌÀÍÀº ¹«ÇÑÇÕ´Ï´Ù. ÀÌ°Ç ½ÇÁ¦·Î °æÇèÇØ º¸±â Àü±îÁö´Â ´À³¥ ¼ö ¾ø´Â Â¥¸´ÇÔ ÀÌÁö¿ä.
¶§·Ð °´Ã¼, ÀýÂ÷ÁöÇâÀ̳Ĵ Áß¿äÄ¡ ¾Ê½À´Ï´Ù. ¹®Á¦´Â ¾î¶»°Ôµç ¿ì¸®´Â »¡¸® ¸¸µé¾î¾ß ÇÑ´Ù´Â °ÍÀ̰í, ¾ÆÀÌ·¯´Ï ÇϰԵµ, ÀÌ·¸°Ô »¡¸® ¸¸µé¾îÁø ¼Ò½º¸¦ ¾ÆÁÖ È¿À²ÀûÀ¸·Î °³¼±½Ã۰í, µð¹ö±ë Ç϶ó´Â ÁÖ¹®À» ÀÚÁÖ ¹ÞÁö¿ä.
ÀÌ·± ³°üÀ» ±Øº¹Çϱâ À§Çؼ±...
1. DB ¸ðµ¨¸µ ¼ÀûÀÇ Å½µ¶. (ERD´Â ÇÁ·ÎÁ§Æ® ±âÀÏÀ» ¿ÀÈ÷·Á Ãà¼Ò ½ÃÄÑÁØ´Ù. ¹Ï±â ÈûµéÁÒ?) 2. ¸®ÆÑÅ丵¿¡ °ü½ÉÀ» °¡Áú °Í. (¸®ÆÑÅ丵Àº ÄÚµù°ú ÇÔ²² ÀÚ¿¬½º·´°Ô ÇØ³ª°¡´Â °ÅÁö, "ÀÚ! ¸®ÆÑÅ丵 Á» ÇØº¼±î?" ¶ó°í ¸¶À½¸Ô°í ÇÏ´Â °ÍÀÌ ¾Æ´Õ´Ï´Ù.) 3. µðÀÚÀÎÆÐÅÏ¿¡ °ü½ÉÀ» °¡Áú °Í. 4. PC ANYWHERE + È»óäÆÃµîÀ» ÅëÇØ, ¿À·§µ¿¾È ÇÔ²² ÀÏÇÏ°Ô µÉ ÆÄÆ®³Ê¿Í PAIR PROGRAMMINGÀ» Æ´Æ´È÷ ÇØº¼°Í. (¹°·Ð ¿·ÀÚ¸®¿¡ ³ª¶õÈ÷ ¾É¾Æ¼ ÇÏ¸é ´õ ÁÁÁö¸¸, ÀÚÄ© ¿ÀÇØ ¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù. -_-) 5. UNIT TEST¿¡ °ü½ÉÀ» °¡Áú °Í.
ÀÔ´Ï´Ù.
¹«¼öÇÑ ¹æ¹ý·ÐÀÌ ½ñ¾ÆÁ® ³ª¿À°í ÀÖÁö¸¸, À§ÀÇ 5°¡Áö¸¸ ¾î´ÀÁ¤µµ ¼÷´ÞµÇ½Ã¸é, Àû¾îµµ À¯Áöº¸¼ö ¹®Á¦·Î ÀÎÇØ Å« ÁÂÀýÀº ¸À º¸Áö ¾ÊÀ¸½Ç °Ì´Ï´Ù.
°è¼ÓÇØ¼ Á¦ ±ÛÀÌ º¸°µÇ°í, ¿À·ù°¡ ÀÖ´Ù¸é Á¤Á¤ÇØ ³ª°¡¸ç, ÇÔ²² ÀÛ¾÷Çϴµ¥ ÀÖ¾î ¾Æ¹«·± È¥¶õÀÌ ¾ø±â¸¦ ¹Ù¶ø´Ï´Ù. :-)
±âŸ Âü°íÀڷḦ ÷ºÎÇØ¼ ¿Ã¸®µµ·Ï ÇϰڽÀ´Ï´Ù.
| |