<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>EunSeo0117 의 기술블로그</title>
    <link>https://eunseolab.tistory.com/</link>
    <description>배우고 깨우친것을 기록합니다.</description>
    <language>ko</language>
    <pubDate>Mon, 13 Jul 2026 21:59:37 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>eunseo0117</managingEditor>
    <image>
      <title>EunSeo0117 의 기술블로그</title>
      <url>https://tistory1.daumcdn.net/tistory/7731781/attach/533b6a5181104a1d852d7be48a53b278</url>
      <link>https://eunseolab.tistory.com</link>
    </image>
    <item>
      <title>[코드트리] 언어 전환 후 문법 약점 극복 학습 후기</title>
      <link>https://eunseolab.tistory.com/5</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;지난 글에서 갭체크 최하 레벨 찍고 &quot;처음부터 다시 하자&quot;고 선언했었다. 그래서 이번엔 실제로&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://www.codetree.ai/&quot;&gt;코드트리&lt;/a&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;레슨을 따라 풀어본 후기다. 결론부터 말하면, 일부러 최하부터 시작한 거 후회 안 한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2026-06-21 오후 2.56.51.png&quot; data-origin-width=&quot;1231&quot; data-origin-height=&quot;711&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/LbJ90/dJMcad3s2wv/kBWI9OWe0izahk1cUpcdt1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/LbJ90/dJMcad3s2wv/kBWI9OWe0izahk1cUpcdt1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/LbJ90/dJMcad3s2wv/kBWI9OWe0izahk1cUpcdt1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLbJ90%2FdJMcad3s2wv%2FkBWI9OWe0izahk1cUpcdt1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1231&quot; height=&quot;711&quot; data-filename=&quot;스크린샷 2026-06-21 오후 2.56.51.png&quot; data-origin-width=&quot;1231&quot; data-origin-height=&quot;711&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;기본 - 연습 - 테스트, 이 3단 구조가 생각보다 컸다&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;코드트리 커리큘럼을 직접 밟아보니 구조가 명확하다. 레슨 하나가 그냥 문제 묶음이 아니라, 기본 문제로 개념 먼저 잡고 &amp;rarr; 연습 문제로 손에 붙이고 &amp;rarr; 테스트 문제로 스스로 점검하는 흐름으로 짜여 있다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;이게 나 같은 언어 유목민한테 왜 좋냐면, 문법 부담이랑 풀이 부담을 분리해주기 때문이다. 지난 글에서도 말했지만 내 문제는 풀이가 아니라 문법이었다. 입출력 어떻게 받더라, 이 자료구조 선언이 뭐였더라에서 막히는 거. 근데 기본 문제는 알고리즘 난이도가 낮으니까 거기서 Java 문법에만 집중할 수 있었다. Scanner로 입력 받고 ArrayList 선언하고 하는 게 기본 단계에서 손에 붙으니까, 연습&amp;middot;테스트로 넘어갔을 땐 문법은 이미 깔려 있고 풀이에만 머리를 쓸 수 있었다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;백준만 팠을 땐 이게 안 됐다. 새 언어로 문제 풀려고 하면 알고리즘 고민이랑 문법 고민이 동시에 몰려와서, 분명 풀이는 머릿속에 다 그려졌는데 &quot;이걸 Java로 어떻게 쓰지&quot;에서 멈춰버리는 거다. 코드트리는 단계가 쪼개져 있으니까 그 두 개가 한꺼번에 안 덮친다. 이 차이가 생각보다 크다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;달라진 풀이 감각&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;레슨 단위로 같은 유형을 기본-연습-테스트로 반복하다 보니 확실히 감이 달라졌다. 예전엔 비슷한 문제 만나도 매번 처음부터 더듬더듬 풀었는데, 이제는 유형 보면 &quot;아 이건 이렇게 접근하고, Java로는 이 문법으로 짜면 되겠다&quot;가 거의 한 세트로 같이 떠오른다. 풀이 패턴이랑 문법이 같이 정착되는 느낌이라, 언어 바꾸면서 매번 겪던 초반 답답함이 눈에 띄게 줄었다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;특히 테스트 문제에서 막혔을 때 모범 코드 보는 게 도움이 많이 됐다. 내가 Python이나 C++ 짜던 버릇대로 작성한 코드랑 Java 모범 코드를 비교해보면, &quot;아 Java에서는 이렇게 쓰는 게 더 자연스럽구나&quot; 하는 게 보인다. 단순히 맞았냐 틀렸냐만 확인하는 게 아니라, 그 언어에서 관용적인 표현이랑 자료구조 쓰는 법을 자연스럽게 흡수하게 된다. 문법부터 다시 배우는 입장에선 이게 진짜 알짜였다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;다음은&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;최하 레벨에서 출발했지만 레슨 따라 한 단계씩 밟으니까 &quot;내가 지금 어디까지 왔다&quot;가 보여서 쌓이는 맛이 있다. 백준만 팔 때 제일 답답했던 &quot;그래서 나 늘고 있는 거 맞나&quot; 하는 그 막연함이 없다. Java 문법은 이제 어느 정도 손에 붙었으니, 다음 회고 땐 한 단계 더 올라간 모습으로 돌아오겠다.&lt;/p&gt;</description>
      <category>일반</category>
      <category>코드트리 #코딩테스트 #코테공부 #입출력 #문법 # 알고리즘 기초</category>
      <author>eunseo0117</author>
      <guid isPermaLink="true">https://eunseolab.tistory.com/5</guid>
      <comments>https://eunseolab.tistory.com/5#entry5comment</comments>
      <pubDate>Sun, 21 Jun 2026 14:57:30 +0900</pubDate>
    </item>
    <item>
      <title>싸피 X 카카오테크 부트캠프 해커톤 참가 후기 &amp;mdash; 무박 2일의 행복했던 기록  </title>
      <link>https://eunseolab.tistory.com/4</link>
      <description>&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;해커톤이 끝나고 며칠이 지났는데도 행복한 기분이 계속되고있다. 무박 2일 동안 정신없이 달렸지만 돌아보면 행복하기만 했던 시간이었다. 이 기억이 흐려지기 전에, 그리고 이 좋은 경험을 누군가와 나누고 싶어서 후기를 남긴다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/QnJah/dJMcaf70fB1/x4oTduuy0ktMZGziHuOk9k/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/QnJah/dJMcaf70fB1/x4oTduuy0ktMZGziHuOk9k/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3000&quot; data-origin-height=&quot;4000&quot; data-filename=&quot;KakaoTalk_Photo_2026-06-16-18-15-21 004.jpeg&quot; data-widthpercent=&quot;36&quot; style=&quot;width: 35.581395%; margin-right: 10px;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/QnJah/dJMcaf70fB1/x4oTduuy0ktMZGziHuOk9k/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQnJah%2FdJMcaf70fB1%2Fx4oTduuy0ktMZGziHuOk9k%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3000&quot; height=&quot;4000&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/zexQc/dJMcaa6MOze/oaMbdIr3W3hhX4AdX9MIVK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/zexQc/dJMcaa6MOze/oaMbdIr3W3hhX4AdX9MIVK/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;3000&quot; data-filename=&quot;KakaoTalk_Photo_2026-06-16-18-15-21 005.jpeg&quot; data-widthpercent=&quot;64&quot; style=&quot;width: 63.255814%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/zexQc/dJMcaa6MOze/oaMbdIr3W3hhX4AdX9MIVK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FzexQc%2FdJMcaa6MOze%2FoaMbdIr3W3hhX4AdX9MIVK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;4000&quot; height=&quot;3000&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
  &lt;figcaption&gt;해커톤이 주최된 판교의 카카오 AI캠퍼스&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;시작 &amp;mdash; 우리가 고른 주제, 청소년 위기대응 AI&lt;/h3&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;이번 해커톤의 큰 틀은 '민생 AI'였다. 우리 생활 속 문제를 AI 기술로 풀어보자는 취지로, 총 10개의 주제가 제시됐다. 그중에서 우리 팀이 선택한 건&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;청소년 위기대응 AI&lt;/b&gt;였다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;여러 주제 중에서도 이걸 고른 이유는 단순했다. 기술이 단순히 '신기한 무언가'에 그치지 않고, 실제로 누군가를 지킬 수 있는 방향으로 쓰이길 바랐기 때문이다. 청소년이라는 키워드가 주는 무게감도 있었고, 사회적으로 의미 있는 문제를 우리 손으로 풀어본다는 점에서 처음부터 마음이 끌렸다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;그렇게 우리는&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;청소년 개인정보 보호를 위한 사진편집 앱&lt;/b&gt;을 개발하기로 방향을 잡았다. 요즘 청소년들이 SNS에 일상을 공유하는 게 너무나 자연스러운 시대인데, 그 과정에서 본인도 모르게 노출되는 개인정보가 얼마나 많은가. 우리는 바로 그 지점을 파고들었다.&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;예선부터 본선까지 &amp;mdash; 끝까지 함께해준 팀원들&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_Photo_2026-06-16-18-15-21 007.jpeg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;3000&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/K4JoI/dJMcaci8JjO/davc3KCHylVOVGNite0DI1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/K4JoI/dJMcaci8JjO/davc3KCHylVOVGNite0DI1/img.jpg&quot; data-alt=&quot;레전드 정신없는 우리팀 테이블&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/K4JoI/dJMcaci8JjO/davc3KCHylVOVGNite0DI1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FK4JoI%2FdJMcaci8JjO%2Fdavc3KCHylVOVGNite0DI1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;4000&quot; height=&quot;3000&quot; data-filename=&quot;KakaoTalk_Photo_2026-06-16-18-15-21 007.jpeg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;3000&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;레전드 정신없는 우리팀 테이블&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;해커톤은 본선 당일 하루만 반짝 열심히 한다고 되는 게 아니다. 예선전부터 본선 직전까지, 우리 팀은 늘 모여서 회의했다. 아이디어를 다듬고, 역할을 나누고, 막히는 부분을 같이 고민하면서 차근차근 쌓아 올렸다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;가장 인상 깊었던 건 팀원들의 태도였다. 다들 어찌나 진심으로, 열심히 하는지. 그 열정을 옆에서 지켜보다 보면 나도 가만히 있을 수가 없었다. 누가 시키지 않아도 자연스럽게 더 열심히 하게 됐다. 좋은 팀원을 만나면 의욕은 따라온다는 말을 이번에 제대로 체감했다. 분위기에 휩쓸려 나도 모르게 한 발 더 내딛게 되는, 그런 선순환이었다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;본선에 가서도 다들 잠자는 팀원 한명 없이 밤을 새고, 결과를 만들어내기 위해 노력했다. 서로 시간날때 얼른 자라고 하면서 정작 잠드는 사람은 한명도 없었다 ....진짜...열정이..미친사람들....&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;클라우드 팀원의 솔직한 고백&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_Photo_2026-06-16-18-25-45.jpeg&quot; data-origin-width=&quot;3000&quot; data-origin-height=&quot;4000&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/OIn5R/dJMcaaZXMkX/k5zcLstrdoC0I2jlbbRIv0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/OIn5R/dJMcaaZXMkX/k5zcLstrdoC0I2jlbbRIv0/img.jpg&quot; data-alt=&quot;해커톤에서 제공한 웰컴 키트(칫솔 주는거 너무 센스있음!!)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/OIn5R/dJMcaaZXMkX/k5zcLstrdoC0I2jlbbRIv0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FOIn5R%2FdJMcaaZXMkX%2Fk5zcLstrdoC0I2jlbbRIv0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3000&quot; height=&quot;4000&quot; data-filename=&quot;KakaoTalk_Photo_2026-06-16-18-25-45.jpeg&quot; data-origin-width=&quot;3000&quot; data-origin-height=&quot;4000&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;해커톤에서 제공한 웰컴 키트(칫솔 주는거 너무 센스있음!!)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;나는 클라우드 팀원으로 참가했다. 그런데 솔직히 말하면, 이번 프로젝트는 배포가 필수 요건이 아니어서 내 역할이 생각보다 적었다. 처음엔 살짝 머쓱했다. '내가 할 게 별로 없네?' 싶은 마음이 들기도 했으니까.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;하지만 그렇다고 손 놓고 있을 수는 없었다. 가만히 있는 성격도 아니고, 무엇보다 다들 저렇게 열심히 하는데 나만 빠져 있을 순 없었다. 그래서 PPT 만드는 걸 돕고, 일손이 부족한 AI 팀원 곁에서 거들고, 하라는 건 이것저것 다 했다. &quot;이런 거라도 해야지&quot; 하는 마음으로 부지런히 움직였다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;그런데 팀원들이 다들 자기 몫을 너무 잘 해주는 와중에도, 나한테 &quot;네가 없었으면 안 됐다&quot;고 칭찬까지 해주는 거다. 감동쓰&amp;hellip;&lt;span style=&quot;color: #000000; text-align: start;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #000000; text-align: start;&quot;&gt; &lt;/span&gt; 정말 그 순간 마음이 몽글몽글해졌다. 거창한 역할이 아니어도, 팀을 위해 빈 곳을 채우는 일이 결코 작은 게 아니라는 걸 알게 됐다. 우리 팀원들, 진짜 다 착하고 순둥순둥하다. 이런 팀을 만난 것만으로도 이번 해커톤은 이미 성공이었다.&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;그리고&amp;hellip; 회장상 수상!  &lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_Photo_2026-06-16-18-35-44.jpeg&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/FRDsK/dJMcadvxJJh/38bHr4dFU6eDLNep6qUezK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/FRDsK/dJMcadvxJJh/38bHr4dFU6eDLNep6qUezK/img.jpg&quot; data-alt=&quot;카벤져스는 우리팀 이름(카카오 + 어벤져스)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/FRDsK/dJMcadvxJJh/38bHr4dFU6eDLNep6qUezK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FFRDsK%2FdJMcadvxJJh%2F38bHr4dFU6eDLNep6qUezK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3024&quot; height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2026-06-16-18-35-44.jpeg&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;카벤져스는 우리팀 이름(카카오 + 어벤져스)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;대망의 결과. 우리는&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;한국전파진흥협회 회장상&lt;/b&gt;을 받았다. 상금은 무려&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;300만 원&lt;/b&gt;! 결과 발표 순간의 그 짜릿함은 말로 다 표현이 안 된다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;이 영광의 8할은 우리 팀 발표자(그린) 덕분이라고 생각한다. 발표를 어찌나 미친 듯이 잘하던지, 옆에서 듣다가 그냥 반해버렸다. 아무리 좋은 결과물을 만들어도 결국 그걸 잘 전달해야 빛이 난다. 우리가 밤새 다듬은 아이디어와 기술이 발표자의 입을 통해 완벽하게 전달되는 걸 보면서, 팀워크라는 게 이런 거구나 다시 한번 느꼈다.&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;3번 출전, 3번 수상의 전설&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Unknown.jpg&quot; data-origin-width=&quot;308&quot; data-origin-height=&quot;163&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4dQCi/dJMcadWGm1w/pl1O6cDIbHKzfkY7Q7UvIK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4dQCi/dJMcadWGm1w/pl1O6cDIbHKzfkY7Q7UvIK/img.jpg&quot; data-alt=&quot;다른 해커톤도 싹 쓸러가자..&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/4dQCi/dJMcadWGm1w/pl1O6cDIbHKzfkY7Q7UvIK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4dQCi%2FdJMcadWGm1w%2Fpl1O6cDIbHKzfkY7Q7UvIK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;308&quot; height=&quot;163&quot; data-filename=&quot;Unknown.jpg&quot; data-origin-width=&quot;308&quot; data-origin-height=&quot;163&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;다른 해커톤도 싹 쓸러가자..&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;팀원 중 한 명은 나와 이번이 세 번째로 함께한 해커톤이었다. 그런데 그 세번의 해커톤에서&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;전부 다 상금을 탔다&lt;/b&gt;(대략 500만원정도..)&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;한 번은 운, 두 번은 우연이라 쳐도 세 번은 그냥 실력이다. 이쯤 되면 '상금 요정'이라고 불러야 하나 싶을 정도다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;익숙한 사람들과 한번더 하는 해커톤은 묘하게 든든했다. 실력 있는 사람이 옆에 있으면 자연스럽게 배우는 것도 많고, '우리도 할 수 있다'는 자신감이 생긴다. 결과적으로 이번에도 그 전설은 이어졌으니, 정말 대단할 따름이다.&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;거의 사육 수준이었던 복지  &lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_Photo_2026-06-16-18-15-20 001.jpeg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;3000&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mdcvd/dJMcadvxJeT/YGkG2TGlSYVpRVtOIbb2Y1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mdcvd/dJMcadvxJeT/YGkG2TGlSYVpRVtOIbb2Y1/img.jpg&quot; data-alt=&quot;저녁 식사로 제공된 음식&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mdcvd/dJMcadvxJeT/YGkG2TGlSYVpRVtOIbb2Y1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fmdcvd%2FdJMcadvxJeT%2FYGkG2TGlSYVpRVtOIbb2Y1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;4000&quot; height=&quot;3000&quot; data-filename=&quot;KakaoTalk_Photo_2026-06-16-18-15-20 001.jpeg&quot; data-origin-width=&quot;4000&quot; data-origin-height=&quot;3000&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;저녁 식사로 제공된 음식&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; text-align: start;&quot;&gt;본선의 또 다른 즐거움, 복지를 빼놓을 수 없다.&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;일단 밥이 정말 맛있었다. 거의 사육 수준이었다. 먹고 해커톤하고, 먹고 해커톤하고, 또 먹고 해커톤하고&amp;hellip; 이 무한 루프가 어찌나 즐겁던지. 배가 든든하니 머리도 잘 돌아가는 기분이었다(기분 탓일 수도 있지만).&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;팀원이 밥먹으면서 이렇게 감금되면 평생을 갖혀 살아도 좋겠다고 말했다. 너무 웃긴데 공감갈 정도로 좋았다.&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;나왔던 메뉴로는 스키야키, 제육볶음, 조식브런치, 라멘, 그리고 야식으로 치킨과 피자였다. 무박2일동안 살이 더 쪘다;;;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imagegridblock&quot;&gt;
  &lt;div class=&quot;image-container&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/se2uT/dJMb997O7QN/Pc9MX4GYpcdwstd2Ws8XzK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/se2uT/dJMb997O7QN/Pc9MX4GYpcdwstd2Ws8XzK/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3000&quot; data-origin-height=&quot;4000&quot; data-filename=&quot;KakaoTalk_Photo_2026-06-16-18-15-21 006.jpeg&quot; data-widthpercent=&quot;50&quot; style=&quot;width: 49.418605%; margin-right: 10px;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/se2uT/dJMb997O7QN/Pc9MX4GYpcdwstd2Ws8XzK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fse2uT%2FdJMb997O7QN%2FPc9MX4GYpcdwstd2Ws8XzK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3000&quot; height=&quot;4000&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bg0IVC/dJMcaccpE04/LHYDrh8qrJ2GzAUKKH2gzk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bg0IVC/dJMcaccpE04/LHYDrh8qrJ2GzAUKKH2gzk/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3000&quot; data-origin-height=&quot;4000&quot; data-filename=&quot;KakaoTalk_Photo_2026-06-16-18-23-37.jpeg&quot; data-widthpercent=&quot;50&quot; style=&quot;width: 49.418605%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bg0IVC/dJMcaccpE04/LHYDrh8qrJ2GzAUKKH2gzk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbg0IVC%2FdJMcaccpE04%2FLHYDrh8qrJ2GzAUKKH2gzk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;3000&quot; height=&quot;4000&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
  &lt;figcaption&gt;(왼쪽) 해커톤을 진행한 카카오AI캠퍼스 / (오른쪽) 내가 받은 춘식이 바디필로우&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;시설도 쾌적하고 깔끔해서 집중하기에 더없이 좋았다. 거기에 중간중간 이벤트와 함께&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;카카오프렌즈 인형이랑 굿즈&lt;/b&gt;까지 챙겨주니, 행복 지수가 계속 우상향했다. 라이언과 춘식이를 손에 쥐는 순간의 그 소소한 행복이란. 역시 자본이 빵빵한 두 회사가 손잡고 지원하는 해커톤이라 그런지, 참가하는 내내 제대로 대접받는 기분이었다. (인형너무 귀여워서 매일 안고잔다;;)&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;그리웠던 멘토님들&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 좋았던건 부트캠프를 수료하고 볼수없었던 강사님과 멘토님들을 해커톤에서 다시 만난거였다. 이것저것 조언도 해주시고, 우리를 너무 잘 알아서 장난도 받아주시고 즐거웠다. 약간 오랜만에 본가에 간 기분? 멘토님들 보니까 카테부 수료생으로써 좋은결과 내서 어깨에 뽕채워드리고싶다는 생각도 들어서 더 열심히했던것같다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;매일 교육받을때는 당연하게 생각했던것들이 해커톤을 하면서 당연하지 않았다는걸 느꼈고, 너무 반갑고 좋아서 부트캠프 한번더 하고싶다는 미친생각도 들었다. ㅋㅋ&amp;nbsp;&lt;/p&gt;
&lt;h3 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size23&quot;&gt;마무리하며&lt;/h3&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;솔직히 시작 전엔 '무박 2일이라니, 다사다난하겠지' 하고 각오했었다. 그런데 막상 끝나고 보니 다사다난은커녕, 그냥 행복하기만 했다. 모두가 열심히였고, 분위기도 더없이 좋았다. 우리 팀뿐 아니라 다른 팀들도 하나같이 &quot;너무 즐거운 해커톤이었다&quot;고 입을 모았으니, 이건 그냥 행사 자체가 좋았다는 증거다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;좋은 주제, 좋은 팀원, 좋은 환경, 그리고 좋은 결과까지. 이 정도면 더 바랄 게 있을까. 기술적으로도 성장했지만, 무엇보다 '함께한다는 것'의 가치를 다시 배운 시간이었다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;내년에도 열린다면? 고민할 것도 없이 팀원들과 &lt;b&gt;무조건 또 나갈 예정이다.&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt; &lt;/p&gt;</description>
      <category>일반</category>
      <category>카카오테크 부트캠프 #싸피x카카오테크부트캠프 AI해커톤 #</category>
      <category>해커톤 #카카오 AI캠퍼스</category>
      <author>eunseo0117</author>
      <guid isPermaLink="true">https://eunseolab.tistory.com/4</guid>
      <comments>https://eunseolab.tistory.com/4#entry4comment</comments>
      <pubDate>Tue, 16 Jun 2026 18:48:15 +0900</pubDate>
    </item>
    <item>
      <title>[코드트리 후기] 코딩테스트 준비, 갭체크부터 시작하기</title>
      <link>https://eunseolab.tistory.com/3</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;파이썬 &amp;rarr; C++ &amp;rarr; 자바 ... 언어 유목민의 새 출발기&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;코테 준비하면서 언어를 벌써 두 번이나 갈아탔다. Python에서 C++로, 그리고 지금은 Java로 정착(?) 중이다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;근데 언어를 바꿔보니 진짜 웃긴 게, 문제 풀이 방법이 어려운 게 아니었다. 풀이는 머릿속에 다 그려지는데 막상 코드로 옮기려니까 문법에서 자꾸 막히는 거다. 입출력은 어떻게 받더라...? 이 자료구조 선언이 뭐였지...? 이러고 있는 나를 발견하고 결심했다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;........그냥 처음부터 다시 하자.&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;갭체크 결과: 최하 레벨 (근데 이게 계획임)&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2026-06-12 오전 1.18.42.png&quot; data-origin-width=&quot;2044&quot; data-origin-height=&quot;1158&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/1dVQR/dJMcaaS98Vz/cv5nyVyqnW4nXhz8lMOdF0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/1dVQR/dJMcaaS98Vz/cv5nyVyqnW4nXhz8lMOdF0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/1dVQR/dJMcaaS98Vz/cv5nyVyqnW4nXhz8lMOdF0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F1dVQR%2FdJMcaaS98Vz%2Fcv5nyVyqnW4nXhz8lMOdF0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2044&quot; height=&quot;1158&quot; data-filename=&quot;스크린샷 2026-06-12 오전 1.18.42.png&quot; data-origin-width=&quot;2044&quot; data-origin-height=&quot;1158&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;그렇게&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;https://www.codetree.ai/&quot;&gt;코드트리&lt;/a&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;갭체크를 봤고, 결과는 최하 레벨이 나왔다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;충격받았나? 아니.... 오히려 노렸다..&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;어차피 Java로 다시 시작하는 마당에 어설프게 중간부터 가느니, 일부러 최하부터 시작해서 기본기를 빡세게 다지는 게 낫다고 생각했다. 모래 위에 성 쌓다가 무너지는 것보다 백배 낫다는 생각.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;문제 난이도도 직접 풀어보니 단계별 갭이 크지 않았다. 한 단계 깨고 다음 단계 가도 &quot;갑자기 왜 이렇게 어려워짐?&quot; 하는 구간이 없어서, 계단 오르듯이 자연스럽게 올라갈 수 있는 구조다. 이부분이 은근 중요하다고 생각하는게, 갑자기 벽 만나면 의욕부터 꺾이는 경우가 많기때문이다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;백준만 팠던 과거의 나에게&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;사실 예전엔 백준만 주구장창 풀었다. 근데 돌이켜보면 제일 답답했던 게 커리큘럼이 없다는 거였다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;내가 DFS를 잘하는지 DP가 약한지 스스로 파악도 안 되고, 문제를 풀어도 풀어도 &quot;그래서 나 지금 늘고 있는 건가...?&quot; 하는 느낌. 그냥 문제를 소비만 하고 있었던 것 같다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;코드트리는 갭체크로 일단 내 위치를 찍어주고, 거기서부터 뭘 순서대로 공부해야 하는지 길을 깔아준다. 같은 한 문제를 풀어도 &quot;지금 내가 어디쯤 와 있고 다음은 뭐다&quot;가 보이니까 쌓이는 느낌 자체가 다르다.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;앞으로는?&lt;/b&gt;&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;최하 레벨 출발이지만 조급함은 없다. 어차피 방향만 맞으면 속도는 붙는다고 믿는 편이라.&lt;/p&gt;
&lt;p style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;Java 문법부터 알고리즘 기본기까지 차근차근 밟아서 코테 합격까지 쭉 달려볼 예정이다. 다음 회고 땐 한 단계라도 올라간 모습으로 블로그 글 써야겠다&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; text-align: start;&quot;&gt; &lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;a style=&quot;text-align: start;&quot; href=&quot;https://www.codetree.ai/&quot;&gt;코드트리 갭체크 나도 해보기&lt;/a&gt;&lt;/p&gt;</description>
      <category>일반</category>
      <category>갭체크</category>
      <category>알고리즘공부 #</category>
      <category>코드트리 # 코딩테스트 #</category>
      <category>코테공부 #</category>
      <category>코테준비 #</category>
      <author>eunseo0117</author>
      <guid isPermaLink="true">https://eunseolab.tistory.com/3</guid>
      <comments>https://eunseolab.tistory.com/3#entry3comment</comments>
      <pubDate>Fri, 12 Jun 2026 01:28:37 +0900</pubDate>
    </item>
    <item>
      <title>디자인 원칙</title>
      <link>https://eunseolab.tistory.com/2</link>
      <description>&lt;ol style=&quot;list-style-type: decimal; color: #000000; text-align: start;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;애플리케이션에서 달라지는 부분을 찾아내고, 달라지지않은 부분과 분리한다.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;의미
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;상속 사용시 문제점(슈퍼클레스에 메소드를 추가)
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;서브클레스에서 코드가 중복된다&lt;/li&gt;
&lt;li&gt;실행시 특징을 바꾸기 힘들다&lt;/li&gt;
&lt;li&gt;모든 서브클레스의 행동을 알기 힘들다&lt;/li&gt;
&lt;li&gt;슈퍼클레스 코드를 변경했을때 다른 서브클레스에 원치않은 영향을 끼칠수있다&lt;/li&gt;
&lt;li&gt;즉, 계속 유동적으로 규격이 바뀌게된다면, 상속이 올바른 방법이 아니게 된다&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;인터페이스 사용시 문제점
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;구현된 코드가 없으므로 코드를 재사용할수없다&lt;/li&gt;
&lt;li&gt;한가지 행동을 바꿀때마다 행동이 정의되어있는 서브클레스를 전부찾아 수정해야한다&lt;/li&gt;
&lt;li&gt;그과정에서 새로운 버그 발생확률이 높다&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;이런 상황에서 디자인패턴 사용
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;바뀌는 부분을 따로 뽑아 캡슐화한다&lt;/li&gt;
&lt;li&gt;의도치않게 발생하는 문제를 줄이고, 시스템유연성을 확장할수있다&lt;/li&gt;
&lt;li&gt;바뀌지않는 부분에 영향을 미치지않고 해당 부분만 고치거나 확장할수있다&lt;/li&gt;
&lt;li&gt;행동과 관련된 setter(세터)를 사용해&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;행동을 동적으로 바꿀수&lt;/b&gt;있다&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;구현보다는 인터페이스에 맞춰서 프로그래밍 한다.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;의미
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;인터페이스에 맞춰서 프로그래밍한다 = 상위형식에 맞춰 프로그래밍 하다&lt;/li&gt;
&lt;li&gt;객체가 코드에 고정되지 않도록 상위형식에 맞춰 프로그래밍해야한다&lt;/li&gt;
&lt;li&gt;그리고, 변수를 선언할때 보통 추상클래스나 인터페이스 같은 상위형식으로 선언해야한다&lt;/li&gt;
&lt;li&gt;상위형식 변수에 객체를 대입할때 상위형식을 구체적으로 구현한 어떤객체든 넣을수있다&lt;/li&gt;
&lt;li&gt;즉, 변수를 선언하는 클레스는 실제객체의 형식을 몰라도 된다&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;reasonml&quot;&gt;&lt;code&gt;// 구현에 맞춰 프로그래밍
Dog d = new Dog();
d.bark();

// 인터페이스와 상위형식에 맞춰 프로그래밍
Animal animal = new Dog();
animal.makeSound();

// 더 바람직한 방식
a = getAnimal();
a.makeSound();
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;상속보다는 구성(composition)을 사용한다.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;의미
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;구성은 상속보다 낫다(Composition over Inheritance)&lt;/li&gt;
&lt;li&gt;&amp;ldquo;A에는 B가 있다&amp;rdquo;라는 관계를 생각하기&lt;/li&gt;
&lt;li&gt;클레스A는 doBehavior라는 인터페이스가 있고, doBehavior를 구현한 구현체 do1 ,do2가있을때, A는 행동을 상속받는 대신, 올바른 행동객체로 Composition되어 행동을 부여받는다&lt;/li&gt;
&lt;li&gt;이렇게 두개의 클레스를 합치는것을 &amp;ldquo;구성(Composition)&amp;rdquo;이라고 한다&lt;/li&gt;
&lt;li&gt;구성은 유연성을 크게 향상시킬수있는 기술이다.&lt;/li&gt;
&lt;li&gt;알고리즘군을 별도 클래스 집합으로 캡슐화할수있고, 실행시 행동을 바꿀수있다&lt;/li&gt;
&lt;li&gt;이를통해&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;런타임에 동적인 행동변경&lt;/b&gt;이 가능하다&lt;/li&gt;
&lt;li&gt;전략패턴, 데코레이터 패턴, 책임연쇄패턴&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;java&quot;&gt;&lt;code&gt;// 전략패턴 예시
// Strategy 인터페이스
public interface PaymentStrategy {
    void pay(int amount);
}

// Concrete Strategy 구현
public class CreditCardPayment implements PaymentStrategy {
    @Override
    public void pay(int amount) {
        System.out.println(&quot;Paid &quot; + amount + &quot; using Credit Card.&quot;);
    }
}

// Concrete Strategy 구현
public class PayPalPayment implements PaymentStrategy {
    @Override
    public void pay(int amount) {
        System.out.println(&quot;Paid &quot; + amount + &quot; using PayPal.&quot;);
    }
}

// Context 클래스
public class PaymentContext {
    private PaymentStrategy strategy; // 변수를 상위형식으로 선언

    // 전략을 구성(주입) - Composition
    public void setPaymentStrategy(PaymentStrategy strategy) {
        this.strategy = strategy;
    }

    public void pay(int amount) {
        strategy.pay(amount);
    }
}

// 클라이언트 코드
public class Main {
    public static void main(String[] args) {
        PaymentContext context = new PaymentContext();

        // 구성으로 전략 설정(Composition)
        context.setPaymentStrategy(new CreditCardPayment());
        context.pay(100);

        context.setPaymentStrategy(new PayPalPayment());
        context.pay(200);
    }
}
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;</description>
      <category>디자인패턴</category>
      <category>디자인패턴 #개발 #프로그래밍 #it</category>
      <author>eunseo0117</author>
      <guid isPermaLink="true">https://eunseolab.tistory.com/2</guid>
      <comments>https://eunseolab.tistory.com/2#entry2comment</comments>
      <pubDate>Tue, 4 Mar 2025 17:03:00 +0900</pubDate>
    </item>
    <item>
      <title>2025.03.04 기술블로그 시작</title>
      <link>https://eunseolab.tistory.com/1</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;i&gt;Vires accquirit eundo&lt;/i&gt;&lt;/p&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;힘이 나서 나아가는게 아니라, 나아감으로써 힘을 얻는다.&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;매일매일 꾸준하게 나아가는 개발자가 되자!&lt;/p&gt;</description>
      <category>일반</category>
      <author>eunseo0117</author>
      <guid isPermaLink="true">https://eunseolab.tistory.com/1</guid>
      <comments>https://eunseolab.tistory.com/1#entry1comment</comments>
      <pubDate>Tue, 4 Mar 2025 17:01:32 +0900</pubDate>
    </item>
  </channel>
</rss>