<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>세상의 모든 지식</title>
    <link>https://cordelia273.tistory.com/</link>
    <description>세상의 모든 지식, cordelia273입니다!!</description>
    <language>ko</language>
    <pubDate>Mon, 16 Mar 2026 02:55:23 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>JuniorEinstein</managingEditor>
    <image>
      <title>세상의 모든 지식</title>
      <url>https://t1.daumcdn.net/cfile/tistory/262A5E45579818D725</url>
      <link>https://cordelia273.tistory.com</link>
    </image>
    <item>
      <title>LLM을 이용한 전국민 공감 프로젝트, UT 제작기</title>
      <link>https://cordelia273.tistory.com/53</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2023-12-30 오전 2.37.41.png&quot; data-origin-width=&quot;2266&quot; data-origin-height=&quot;1274&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oy5cH/btsCSCAAvRp/4hoCBQ3rMOOVBgn6y9RKp0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oy5cH/btsCSCAAvRp/4hoCBQ3rMOOVBgn6y9RKp0/img.png&quot; data-alt=&quot;전국민 공감 프로젝트, UT&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oy5cH/btsCSCAAvRp/4hoCBQ3rMOOVBgn6y9RKp0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Foy5cH%2FbtsCSCAAvRp%2F4hoCBQ3rMOOVBgn6y9RKp0%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;682&quot; height=&quot;383&quot; data-filename=&quot;스크린샷 2023-12-30 오전 2.37.41.png&quot; data-origin-width=&quot;2266&quot; data-origin-height=&quot;1274&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;전국민 공감 프로젝트, UT&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;경희대학교에서는 매년 KHUthon이라는 해커톤 대회를 주최한다. 나는 매년 이 대회에 참여했었기 때문에 올해도 어김없이 출전할 수 밖에 없었다. 그리고 2023년 2학기 갓 복학한 전윤민의 복귀전 같은 느낌이랄까... (허허) 여튼 거두절미하고 이번 해커톤의 주제는&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;'교육'&lt;/b&gt;이었다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;너... T야?&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;360&quot; data-origin-height=&quot;202&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/5rycF/btsCUzDnyOV/aE6TTKXYIIsjJrNVRTwOYk/img.webp&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/5rycF/btsCUzDnyOV/aE6TTKXYIIsjJrNVRTwOYk/img.webp&quot; data-alt=&quot;유튜브 폭스클럽 중&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/5rycF/btsCUzDnyOV/aE6TTKXYIIsjJrNVRTwOYk/img.webp&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F5rycF%2FbtsCUzDnyOV%2FaE6TTKXYIIsjJrNVRTwOYk%2Fimg.webp&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;360&quot; height=&quot;202&quot; data-origin-width=&quot;360&quot; data-origin-height=&quot;202&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;유튜브 폭스클럽 중&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MBTI가 유행하고 여러 형태로 발전하면서 사람들은 이성적 사고형(T)와 감정적 사고형(F)을 나눠 다투기 시작했다. 그러면서 뭔가 공감을 해주지 못하는 T형 인간들이 일방적으로 혼나는(?) 그런 그림들이 많이 만들어지고 있다는 생각이 들었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 우리 팀은 &lt;b&gt;'공감'&lt;/b&gt;이라는 것 또한 선천적이거나 타고나는 개개인의 성격이 아닌, &lt;b&gt;'교육을 통해 학습할 수 있는 기술&lt;/b&gt;'이라고 생각했다. 우리 팀은 &lt;u&gt;&lt;b&gt;T형 인간들을 위한 교육 플랫폼 'UT'&lt;/b&gt;&lt;/u&gt;를 구상하게 되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음과 같은 기능을 제공한다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;카카오톡 데이터 분석&lt;/b&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;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;문제풀이를 통한 공감 학습&lt;/b&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;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;LLM과의 만남&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음 이 아이디어를 듣자마자 떠오른 것은 &lt;b&gt;ChatGPT&lt;/b&gt;의 활용이었다. 일정한 형식의 입력 데이터를 만들 수 있고, 특정 양식으로 응답해줄 것을 요구할 수도 있다. 어쩌면 GPT가 가장 잘할 수 있는 분야 중 하나라고 생각했다. &lt;b&gt;'이거 무조건 된다!!!'&lt;/b&gt;라는 확신이 있었던 것 같다. 확인을 위해 GPT에게 다음과 같은 프롬프트를 날려보았다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2023-12-30 오전 2.50.08.png&quot; data-origin-width=&quot;1162&quot; data-origin-height=&quot;1094&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bnAmA9/btsCOyZ2vgn/CWKQSTBxlWYaa9Sny5SGfk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bnAmA9/btsCOyZ2vgn/CWKQSTBxlWYaa9Sny5SGfk/img.png&quot; data-alt=&quot;실전 상황에서는 이런 답변을 하지 않길 바란다.&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bnAmA9/btsCOyZ2vgn/CWKQSTBxlWYaa9Sny5SGfk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbnAmA9%2FbtsCOyZ2vgn%2FCWKQSTBxlWYaa9Sny5SGfk%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;468&quot; height=&quot;441&quot; data-filename=&quot;스크린샷 2023-12-30 오전 2.50.08.png&quot; data-origin-width=&quot;1162&quot; data-origin-height=&quot;1094&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;실전 상황에서는 이런 답변을 하지 않길 바란다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;흠... 확실히 원하던 대답은 아니었다. 원하는 답변을 얻기 위해서는 추가적인 프롬프트 설정이 필요했다. 하지만 GPT를 잘 쓰기 위해서는 &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;KakaoTalk_Photo_2023-12-30-02-59-20.png&quot; data-origin-width=&quot;1542&quot; data-origin-height=&quot;1170&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/LJGss/btsCR9yvFxS/NKfekHSeSRTUo2Q3ogk7z0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/LJGss/btsCR9yvFxS/NKfekHSeSRTUo2Q3ogk7z0/img.png&quot; data-alt=&quot;프롬프트 양식 최종 ver.&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/LJGss/btsCR9yvFxS/NKfekHSeSRTUo2Q3ogk7z0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLJGss%2FbtsCR9yvFxS%2FNKfekHSeSRTUo2Q3ogk7z0%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;474&quot; height=&quot;360&quot; data-filename=&quot;KakaoTalk_Photo_2023-12-30-02-59-20.png&quot; data-origin-width=&quot;1542&quot; data-origin-height=&quot;1170&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;프롬프트 양식 최종 ver.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각 대화의 상황별로 원하는 방향으로 평가가 이루어질 수 있도록 도와주는 &lt;b&gt;additional_prompt&lt;/b&gt;를 추가했다. 그리고 중간에 평가의 대상이 되는 유저의 답변을 입력받을 수 있게 구성하였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나는 이를 통해 UT의 기술적인 가능성을 확인할 수 있었다. 그리고 &lt;b&gt;GPT&lt;/b&gt;와 &lt;b&gt;KoBERT&lt;/b&gt;를 활용하여 서비스를 구축하고자 하였다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;카카오톡 대화 분석 기능&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2023-12-30 오전 2.43.23.png&quot; data-origin-width=&quot;2260&quot; data-origin-height=&quot;1268&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cyAQpZ/btsCLrgfCsf/4ux5S2MHxufR4KEH5FYJak/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cyAQpZ/btsCLrgfCsf/4ux5S2MHxufR4KEH5FYJak/img.png&quot; data-alt=&quot;UT의 데이터 파이프라인&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cyAQpZ/btsCLrgfCsf/4ux5S2MHxufR4KEH5FYJak/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcyAQpZ%2FbtsCLrgfCsf%2F4ux5S2MHxufR4KEH5FYJak%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;721&quot; height=&quot;405&quot; data-filename=&quot;스크린샷 2023-12-30 오전 2.43.23.png&quot; data-origin-width=&quot;2260&quot; data-origin-height=&quot;1268&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;UT의 데이터 파이프라인&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;카카오톡 대화 분석 기능은 카카오톡 대화를 &lt;b&gt;특정 주제의 Chunk&lt;/b&gt;로 나눈 다음, 각각의 주제 속에서 &lt;b&gt;내가 공감을 잘 하고 있는지 평가&lt;/b&gt;하게 된다. 우리는 대화를 주제별로 나누기 위해 &lt;b&gt;KoBERT&lt;/b&gt;&lt;span style=&quot;font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Apple SD Gothic Neo', Arial, sans-serif; letter-spacing: 0px;&quot;&gt; 모델과 AI Hub에서 찾은 &lt;/span&gt;&lt;b&gt;'주제별 일상 대화 데이터'&lt;/b&gt;&lt;span style=&quot;font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Apple SD Gothic Neo', Arial, sans-serif; letter-spacing: 0px;&quot;&gt;를 활용하였다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Apple SD Gothic Neo', Arial, sans-serif; letter-spacing: 0px;&quot;&gt;GPT를 사용하지 못한 이유는 두 가지가 있었다. 첫 번째는 입력하는 카카오톡 대화의 양이 &lt;b&gt;GPT가 한 번에 처리할 수 있는 토큰을 초과&lt;/b&gt;했다는 것. 두 번째는 &lt;b&gt;응답이 돌아오는 시간이 너무 느렸다&lt;/b&gt;는 것이다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Apple SD Gothic Neo', Arial, sans-serif; letter-spacing: 0px;&quot;&gt;그리고 공감과 &lt;b&gt;관련이 없는 대화 주제나 불필요한 문장들을 제거&lt;/b&gt;할 필요가 있었다. 이를 위해 KoBERT 모델에 주제별 일상 대화 데이터를 학습 시켜 &lt;b&gt;특정 문장을 넣으면 해당 문장이 어떤 주제인지 알려주는 모델&lt;/b&gt;을 만들었다.&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;스크린샷 2024-01-01 오후 9.06.50.png&quot; data-origin-width=&quot;1768&quot; data-origin-height=&quot;1716&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bb0r3j/btsCU1NPBC9/sWAYhNuxZV2YFrFAL7Tk30/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bb0r3j/btsCU1NPBC9/sWAYhNuxZV2YFrFAL7Tk30/img.png&quot; data-alt=&quot;학습에 사용한 데이터셋&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bb0r3j/btsCU1NPBC9/sWAYhNuxZV2YFrFAL7Tk30/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbb0r3j%2FbtsCU1NPBC9%2FsWAYhNuxZV2YFrFAL7Tk30%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;485&quot; height=&quot;471&quot; data-filename=&quot;스크린샷 2024-01-01 오후 9.06.50.png&quot; data-origin-width=&quot;1768&quot; data-origin-height=&quot;1716&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;학습에 사용한 데이터셋&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2024-01-01 오후 9.24.16.png&quot; data-origin-width=&quot;1202&quot; data-origin-height=&quot;398&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/AxhkF/btsCZ4b4Rxj/kO0AugTMdXKGmO9K7B6iRK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/AxhkF/btsCZ4b4Rxj/kO0AugTMdXKGmO9K7B6iRK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/AxhkF/btsCZ4b4Rxj/kO0AugTMdXKGmO9K7B6iRK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FAxhkF%2FbtsCZ4b4Rxj%2FkO0AugTMdXKGmO9K7B6iRK%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;625&quot; height=&quot;207&quot; data-filename=&quot;스크린샷 2024-01-01 오후 9.24.16.png&quot; data-origin-width=&quot;1202&quot; data-origin-height=&quot;398&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2024-01-01 오후 9.24.30.png&quot; data-origin-width=&quot;1228&quot; data-origin-height=&quot;492&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cVIXPC/btsCZ3dazRy/f3xEBQs1gr2KnT1wG72xq1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cVIXPC/btsCZ3dazRy/f3xEBQs1gr2KnT1wG72xq1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cVIXPC/btsCZ3dazRy/f3xEBQs1gr2KnT1wG72xq1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcVIXPC%2FbtsCZ3dazRy%2Ff3xEBQs1gr2KnT1wG72xq1%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;638&quot; height=&quot;256&quot; data-filename=&quot;스크린샷 2024-01-01 오후 9.24.30.png&quot; data-origin-width=&quot;1228&quot; data-origin-height=&quot;492&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해커톤의 특성상 학습에 진행할 수 있는 시간이 많지 않아서 우선은 60% 정도의 정확도에서 학습을 멈췄다. batch size는 100으로 진행했다. epoch가 5 밖에 안됐는데도 학습하는데 5시간 이상 걸렸던 것 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 만들어진 모델은 &lt;u&gt;&lt;b&gt;문장을 넣으면 해당 문장이 어떤 주제인지 1~20까지의 숫자로 출력&lt;/b&gt;&lt;/u&gt;해준다. 우리는 카카오톡 대화의 각 문장을 해당 모델에 넣어 주제를 뽑아 같은 &lt;b&gt;주제가 연속되는 것들은 하나의 chunk&lt;/b&gt;로 묶었다. 모델의 정확도가 높지 않기 때문에 중간중간 하나씩 다른 주제가 등장하는 문제를 해결하기 위해 연속되는 주제를 평가할 때 약간의 오차를 허용하였다. 그리고 시간의 연속성도 고려할 수 있게 알고리즘을 수정해 &lt;b&gt;90% 이상의 정확도&lt;/b&gt;로 대화를 주제별 chunk로 나눌 수 있었다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;나 공감 잘했어? (feat. ChatGPT)&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 다음은 대화의 각 chunk를 앞서 설계한 프롬프트에 맞게 가공해 GPT에게 공감을 잘 했는지 물어보는 과정이다. 웹으로 접근할 수 있는 GPT를 이용해 테스트를 진행한 후 GPT-3.5-turbo API를 적용했다. 하지만 &lt;b&gt;웹 GPT에서 주던 결과만큼 정확도가 높지 않았다.&lt;/b&gt; Temperature, TopP 등 설정할 수 있는 값들을 조정해보았지만, 도무지 해답을 찾을 수 없었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결국은 &lt;b&gt;GPT-4를 사용하는 것으로 문제를 해결&lt;/b&gt;할 수 있었는데, 단점은 응답 시간이 오래 걸린 다는 것이었다. 응답 시간이 평균 20~30초가 되었고, 30초가 넘어가는 경우도 있었다. 문제는 이번 대회는 발표 시간이 3분으로 굉장히 짧았는데, 3분 안에 시연까지 마쳐야 한다는 것이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Promise.all 로 동시에 요청들을 처리해 보는 시도부터 호스팅하는 서버의 성능도 올려보았지만, 유의미한 개선점을 찾기는 어려웠다. 그래서 고안한 해결책은 발표가 끝나고 시연을 하는 것이 아닌, 발표와 시연을 동시에 하기로 하였다. 나는 지금껏 수많은 발표들을 해왔지만 이번처럼 &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;스크린샷 2024-01-02 오전 12.24.27.png&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;1964&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/n6KZ1/btsCR96Wist/4vQDwRNjkK2lNPadRKL3q0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/n6KZ1/btsCR96Wist/4vQDwRNjkK2lNPadRKL3q0/img.png&quot; data-alt=&quot;발표자료 + 시연&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/n6KZ1/btsCR96Wist/4vQDwRNjkK2lNPadRKL3q0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fn6KZ1%2FbtsCR96Wist%2F4vQDwRNjkK2lNPadRKL3q0%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;532&quot; height=&quot;346&quot; data-filename=&quot;스크린샷 2024-01-02 오전 12.24.27.png&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;1964&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;발표자료 + 시연&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최종적으로 아래와 같은 형태의 서비스를 완성할 수 있었다. 카카오톡 대화 파일을 넣고 '나'가 누구인지 선택한다. 그 다음에는 API를 통해 카카오톡 대화를 분석하고 &lt;b&gt;각 대화상황에서의 점수/평가/제안&lt;/b&gt;을 알려준다.&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/d8BG5J/btsCZ68Qbw0/5CrNkjWMUeoueYiZi5NLb0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/d8BG5J/btsCZ68Qbw0/5CrNkjWMUeoueYiZi5NLb0/img.png&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;1000&quot; data-origin-height=&quot;1890&quot; data-filename=&quot;스크린샷 2024-01-02 오전 12.26.46.png&quot; style=&quot;width: 32.6125%; margin-right: 10px;&quot; data-widthpercent=&quot;33.39&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/d8BG5J/btsCZ68Qbw0/5CrNkjWMUeoueYiZi5NLb0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fd8BG5J%2FbtsCZ68Qbw0%2F5CrNkjWMUeoueYiZi5NLb0%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;1000&quot; height=&quot;1890&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/U0gNC/btsCTB9MWsU/26K50tJGKISftNk8zwnM31/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/U0gNC/btsCTB9MWsU/26K50tJGKISftNk8zwnM31/img.png&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;998&quot; data-origin-height=&quot;1890&quot; data-filename=&quot;스크린샷 2024-01-01 오후 9.38.33.png&quot; width=&quot;243&quot; data-widthpercent=&quot;33.32&quot; style=&quot;width: 32.5473%; margin-right: 10px;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/U0gNC/btsCTB9MWsU/26K50tJGKISftNk8zwnM31/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FU0gNC%2FbtsCTB9MWsU%2F26K50tJGKISftNk8zwnM31%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;998&quot; height=&quot;1890&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wPprc/btsCOBJMp6s/qJ8iFI3PEkVzOLmw3kSDDk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wPprc/btsCOBJMp6s/qJ8iFI3PEkVzOLmw3kSDDk/img.png&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;997&quot; data-origin-height=&quot;1890&quot; data-filename=&quot;edited_스크린샷 2024-01-01 오후 9.39.00.png&quot; width=&quot;471&quot; data-widthpercent=&quot;33.29&quot; style=&quot;width: 32.5147%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wPprc/btsCOBJMp6s/qJ8iFI3PEkVzOLmw3kSDDk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FwPprc%2FbtsCOBJMp6s%2FqJ8iFI3PEkVzOLmw3kSDDk%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;997&quot; height=&quot;1890&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
  &lt;figcaption&gt;실제 구현된 서비스&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;결론&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최근 GPT의 등장으로 누구나 쉽게 서비스에 LLM을 적용할 수 있게 되었다. 나는 이것이 정말 큰 변화라고 생각한다. LLM의 등장으로 많은 서비스들의 &lt;u&gt;&lt;b&gt;사용자 인터페이스에 변화&lt;/b&gt;&lt;/u&gt;가 생겼기 때문이다. 특히 정보의 검색과 가공 부분에서 많은 변화가 있었다고 생각한다. 사이트 내에서 수많은 링크들을 누르며 탐색해야 할 일이 적어졌고, 찾아낸 정보를 직접 가공하지 않아도 된다. 디자인 툴도 마찬가지이다. 수많은 커맨드를 기억하고 입력할 필요 없이, 원하는 것을 입력하면 자동으로 바꿔준다. 앞으로 더 많은 서비스들의 인터페이스가 input 창 하나로 바뀔지도 모른다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 프로젝트를 통해 짧게나마 LLM을 이용한 서비스를 개발해 보면서 LLM 기술에 대한 가능성을 엿보았다. 이미 많은 시도들이 이루어지고 있긴 하지만, 나중에는 크롤러가 LLM으로 대체될 수 있지 않을까 싶다. 웹 사이트 전체를 크롤링 해 놓고, 필요에 따라서 LLM에게 가공을 맡기면 알바를 쓰는 것보다 저렴하고 정확하게 할 수 있지 않을까 하는 생각도 들었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인공지능, 항상 공부해야 한다고 생각했지만 막상 공부하려고 하면 손이 잘 가지 않았다. 무엇을 먼저 시작해야 할지 모르겠다는 느낌을 받곤 했었는데, 이번 기회를 통해 LLM을 더 자세하게 공부하고 싶어졌다. 여러분도 관심이 생긴다면 한 번 도전해 보시길...!&lt;/p&gt;</description>
      <category>경희대 소융</category>
      <category>경희대</category>
      <category>인공지능</category>
      <author>JuniorEinstein</author>
      <guid isPermaLink="true">https://cordelia273.tistory.com/53</guid>
      <comments>https://cordelia273.tistory.com/53#entry53comment</comments>
      <pubDate>Tue, 2 Jan 2024 00:42:59 +0900</pubDate>
    </item>
    <item>
      <title>[운영체제] Virtual File System In Linux</title>
      <link>https://cordelia273.tistory.com/52</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_스크린샷 2023-12-29 오전 12.30.36.png&quot; data-origin-width=&quot;2076&quot; data-origin-height=&quot;1149&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/1z3QE/btsCQpgM95E/W8liWmHdJef5xrw0qn8Lh1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/1z3QE/btsCQpgM95E/W8liWmHdJef5xrw0qn8Lh1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/1z3QE/btsCQpgM95E/W8liWmHdJef5xrw0qn8Lh1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F1z3QE%2FbtsCQpgM95E%2FW8liWmHdJef5xrw0qn8Lh1%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;2076&quot; height=&quot;1149&quot; data-filename=&quot;edited_스크린샷 2023-12-29 오전 12.30.36.png&quot; data-origin-width=&quot;2076&quot; data-origin-height=&quot;1149&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;운영체제 수업 시간에 리눅스의 가상 파일을 주제로 발표를 하게 되었다.&lt;/p&gt;
&lt;h2 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;&quot;가상&quot;&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;color: #333333; 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;추상화를 통해 하드웨어에 직접 접근하지 않고 더 편하게 작업들을 처리&lt;/b&gt;할 수 있게 도와준다.&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;가상 파일 시스템(VFS)&lt;/b&gt;도 마찬가지이다. 추상화를 통해 운영체제가 혹은 응용프로그램이 직접 물리적 혹은 특별한 파일 시스템에 접근하는 것이 아니라, VFS를 거쳐 안정적이고 일관된 (uniformed way) 방식으로 접근할 수 있게 도와준다.&lt;/p&gt;
&lt;h2 style=&quot;color: #000000; text-align: start;&quot; data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;File System&lt;/b&gt;&lt;/h2&gt;
&lt;p style=&quot;color: #333333; 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;디스크에 파일을 읽고 쓸 수 있게 도와주는 시스템&lt;/b&gt;이다. 이 파일 시스템에는 다양한&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;'포맷'&lt;/b&gt;이 존재한다. 외장 하드를 초기화해야 하는 상황을 떠올려보자. 초기화하고자 하는 디스크를 선택하고 '지우기'를 누르면 디스크를 어떤 포맷으로 지울지 선택할 수 있는 창이 나온다. 이 포맷은 다양한 파일 시스템의 한 종류로, &lt;b&gt;포맷마다 다른 방식으로 물리 디스크에 데이터를 저장하고 관리&lt;/b&gt;한다. 윈도우에서는 NTFS, ExFAT 등을 사용하고 맥OS에서는 APFS 등을 사용한다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;그리고 디스크 혹은 디스크의 파티션을 운영체제가 사용할 수 있게 특정 디렉토리와 연결해주는 작업을 &lt;b&gt;'마운트'&lt;/b&gt;라고 한다. 우리는 외장하드를 연결하면 자동으로 D 드라이브, G 드라이브(윈도우)에서 외장하드를 사용할 수 있다고 생각하는데, 운영체제가 자동으로 마운트를 도와주기 때문이다. 그리고 D, G와 같이 마운트가 되는 디렉토리를 &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;스크린샷 2023-12-28 오후 11.46.12.png&quot; data-origin-width=&quot;2428&quot; data-origin-height=&quot;1424&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6cve3/btsCRfZjs1P/a2eUglwja81I6a8KzAw2ek/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6cve3/btsCRfZjs1P/a2eUglwja81I6a8KzAw2ek/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6cve3/btsCRfZjs1P/a2eUglwja81I6a8KzAw2ek/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6cve3%2FbtsCRfZjs1P%2Fa2eUglwja81I6a8KzAw2ek%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;2428&quot; height=&quot;1424&quot; data-filename=&quot;스크린샷 2023-12-28 오후 11.46.12.png&quot; data-origin-width=&quot;2428&quot; data-origin-height=&quot;1424&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;Virtual File System&lt;/b&gt;&lt;/h2&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;다른 포맷을 가진 여러 개의 파일 시스템이 마운트 되어 있는 상황을 가정해보자.&lt;br /&gt;&lt;b&gt;마운트된 디스크 : ExFAT, NTFS, EXT4&lt;br /&gt;당신이 만약 응용프로그램이라면 각각의 디스크에서 파일을 불러오는 작업을 어떻게 수행하겠는가?&lt;br /&gt;&lt;/b&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파일 시스템 마다 다른 방식으로 디스크를 관리하기 때문에 각 디스크 마다 다른 명령어를 사용해 접근해야 한다. 그렇게 되면 응용프로그램을 개발하는 개발자가 각각의 포맷에 따라 파일을 읽고 쓰는 함수들을 일일이 구현해 주어야 한다. 그리고 개발자가 구현하지 않은 포맷의 디스크에서는 데이터를 불러올 수 없을 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 가상 파일 시스템이 있다면 훨씬 간단하게 서로 다른 디스크에 접근할 수 있다. &lt;b&gt;가상 파일 시스템&lt;/b&gt;은&lt;b&gt; 각기 다른 파일 시스템에 접근할 수 있는 일관된 방식(uniformed way)을 제공&lt;/b&gt;한다. 응용프로그램이 open(), read(), write() 함수를 호출하면 &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;스크린샷 2023-12-29 오전 12.24.34.webp&quot; data-origin-width=&quot;1934&quot; data-origin-height=&quot;492&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/QEQPe/btsCOG4d7J0/KxKvGIAvuGHzhYgKR79tb0/img.webp&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/QEQPe/btsCOG4d7J0/KxKvGIAvuGHzhYgKR79tb0/img.webp&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/QEQPe/btsCOG4d7J0/KxKvGIAvuGHzhYgKR79tb0/img.webp&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQEQPe%2FbtsCOG4d7J0%2FKxKvGIAvuGHzhYgKR79tb0%2Fimg.webp&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;1934&quot; height=&quot;492&quot; data-filename=&quot;스크린샷 2023-12-29 오전 12.24.34.webp&quot; data-origin-width=&quot;1934&quot; data-origin-height=&quot;492&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;Other File Systems&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가상 파일 시스템을 이용하면 물리적인 파일 시스템 이외에도 다양한 파일 시스템에 같은 방식으로 접근할 수 있다.&amp;nbsp; 아래의 그림에서 볼 수 있듯이 'Network File System'이나 이후 설명할 'Special File System'이 그 예시이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Network File System은 한 컴퓨터가 네트워크를 통해 연결된 다른 컴퓨터의 파일 시스템에 접근하는 것이다. 맥북 유저 같은 경우는 두 개의 맥북을 썬더볼트 케이블로 연결하면 Finder에서 연결된 컴퓨터의 파일 시스템에 접근할 수 있는데, &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;edited_VFS.webp&quot; data-origin-width=&quot;1174&quot; data-origin-height=&quot;565&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/CDzzJ/btsCMp9JONe/gz8h5vBy9Z4SVKcUBpiR91/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/CDzzJ/btsCMp9JONe/gz8h5vBy9Z4SVKcUBpiR91/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/CDzzJ/btsCMp9JONe/gz8h5vBy9Z4SVKcUBpiR91/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCDzzJ%2FbtsCMp9JONe%2Fgz8h5vBy9Z4SVKcUBpiR91%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;559&quot; height=&quot;314&quot; data-filename=&quot;edited_VFS.webp&quot; data-origin-width=&quot;1174&quot; data-origin-height=&quot;565&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;Special File System&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;리눅스 가상 파일 시스템의 꽃은 역시 'Special File System'이라고 생각한다. &lt;b&gt;Special FIle System&lt;/b&gt;은 &lt;b&gt;리눅스에서 운영체제의 정보, 연결된 디바이스 등을 관리하는 'Special Files'에 접근하는 파일 시스템&lt;/b&gt;이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;리눅스를 좀 사용해보거나 웹 서버를 세팅해본 경험이 있는 사람이라면 리눅스의 Root Directory에 있는 아래 그림의 폴더들을 많이 보았을 것이다. 그림에서 빨간색 네모 박스가 되어 있는 디렉토리들이 바로 Special File System이 관리하는 &lt;b&gt;'가상의 디렉토리'&lt;/b&gt;들이다. 가상의 디렉토리인 이유는 Special File들이 &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;스크린샷 2023-12-29 오전 12.39.30.png&quot; data-origin-width=&quot;1698&quot; data-origin-height=&quot;330&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/elNEu9/btsCMwOxK1J/BbXbGnaktMc0XSBhODZDik/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/elNEu9/btsCMwOxK1J/BbXbGnaktMc0XSBhODZDik/img.png&quot; data-alt=&quot;리눅스의 Root Directory&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/elNEu9/btsCMwOxK1J/BbXbGnaktMc0XSBhODZDik/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FelNEu9%2FbtsCMwOxK1J%2FBbXbGnaktMc0XSBhODZDik%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;1698&quot; height=&quot;330&quot; data-filename=&quot;스크린샷 2023-12-29 오전 12.39.30.png&quot; data-origin-width=&quot;1698&quot; data-origin-height=&quot;330&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;리눅스의 Root Directory&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Special File들은 운영체제가 시작되면 메모리 공간에 올라가 있다가, 사용자가 해당 파일을 조회하면 그때 값을 계산하여 사용자에게 보여준다. Special File들을 기본적으로 파일과 같이 관리되기 때문에 &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;스크린샷 2023-12-29 오전 12.42.53.webp&quot; data-origin-width=&quot;1986&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dylicf/btsCKsMEG0Y/xlCLCN5ca6XhvMZKJKMkZ0/img.webp&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dylicf/btsCKsMEG0Y/xlCLCN5ca6XhvMZKJKMkZ0/img.webp&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dylicf/btsCKsMEG0Y/xlCLCN5ca6XhvMZKJKMkZ0/img.webp&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdylicf%2FbtsCKsMEG0Y%2FxlCLCN5ca6XhvMZKJKMkZ0%2Fimg.webp&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;1986&quot; height=&quot;572&quot; data-filename=&quot;스크린샷 2023-12-29 오전 12.42.53.webp&quot; data-origin-width=&quot;1986&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이것이 정말 매력적인 이유는 &lt;b&gt;운영체제와 관련된 수많은 정보들을 우리에게 &lt;u&gt;가장 익숙한 인터페이스&lt;/u&gt;로 접근&lt;/b&gt;할 수 있다는 것이다. Special File들이 가상 파일 시스템으로 관리되지 않았다면 우리는 운영체제의 정보들을 조회하기 위한 수많은 명령어들을 모두 외워야 했을 것이다. CPU의 정보를 확인하는 명령어를 살펴보자. /proc 폴더 안에 있는 cpuinfo라는 Special File을 일반적인 파일을 조회하는 것과 같이 'cat' 명령어를 통해 읽을 수 있었다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2023-12-29 오전 12.43.05.png&quot; data-origin-width=&quot;948&quot; data-origin-height=&quot;762&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cbcR9Y/btsCLakJYC0/yPOg9IqMNEWLqwCUXxMtFk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cbcR9Y/btsCLakJYC0/yPOg9IqMNEWLqwCUXxMtFk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cbcR9Y/btsCLakJYC0/yPOg9IqMNEWLqwCUXxMtFk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcbcR9Y%2FbtsCLakJYC0%2FyPOg9IqMNEWLqwCUXxMtFk%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;529&quot; height=&quot;425&quot; data-filename=&quot;스크린샷 2023-12-29 오전 12.43.05.png&quot; data-origin-width=&quot;948&quot; data-origin-height=&quot;762&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;Virtual File System의 장점&lt;/b&gt;&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;추상화 &amp;amp; 편의성 (Abstract &amp;amp; Convenience)&lt;/b&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;시스템과 관련된 정보에 쉽게 접근할 수 있다. (Special File Systems)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;유연성 &amp;amp; 이식성 (Flexibility &amp;amp; Portability)&lt;/b&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;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;Virtual File System의 단점&lt;/b&gt;&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;제한된 표현력&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;모든 것을 파일로 표현하는 것을 때론 특정 타입의 리소스를&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;과하게 간단하게(Oversimplify)&lt;/b&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;표현해버릴 수도 있다.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;때문에 항상 직관적이진 않다.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;보안 문제&lt;/b&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;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;결론&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 가상 파일 시스템이 무엇인지 간략하게 살펴보았다. 가상 파일 시스템은 다양한 파일 시스템에 접근할 수 있는 하나의 인터페이스를 제공하고 이를 추상화하여 개발자가 다양한 파일 시스템을 직접 고려하지 않게 만들어준다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제로 아래의 링크에서 리눅스의 소스코드를 보면 &lt;b&gt;&quot;fs(File System)&quot;&lt;/b&gt; 폴더 안에 /proc, /dev 등의 Special File System이 구현되어 있는 것을 볼 수 있다. 그 외에도 실제 exfat, ext4 등등의 파일 시스템들에 접근할 수 있는 명령어들이 있고, 그 명령어들을 가상 파일 시스템의 명령어들에 연결하는 과정도 살펴볼 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 리눅스에서 시스템과 관련된 정보를 파일로 관리하는 것은 &lt;b&gt;'Everything is File'&lt;/b&gt;이라는 UNIX 운영체제의 디자인 원칙 때문이라고 한다. &lt;b&gt;GUI 없이 정보들에 접근해야 하는 리눅스 운영체제의 특성상 이런 정보들을 가장 익숙한 방식인 '파일'의 형태로 관리&lt;/b&gt;하는 것이 유리하였고, 이를 가상 파일 시스템이라는 추상 레이어를 통해 하나의 인터페이스로 접근할 수 있게 하였다. 나는 가상 파일 시스템을 조사하면서 이런 발상이 정말 기똥차고 멋지다는 생각이 들었었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://github.com/torvalds/linux/tree/master/fs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://github.com/torvalds/linux/tree/master/fs&lt;/a&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마치며, 발표자료를 첨부하겠다. 발표자료에는 이 글에서 다루지 않은 &lt;b&gt;가상 파일 시스템을 구현하는 4가지 객체에 대한 설명&lt;/b&gt;을 열심히 그린 그림으로 풀어서 설명해 놓았으니, 살펴보면 이해에 도움이 될 것이다. 그럼 이만.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;fileblock&quot; data-ke-align=&quot;alignCenter&quot;&gt;&lt;a href=&quot;https://blog.kakaocdn.net/dn/ckmQUH/btsCSCtbI9p/CSlxxkAfwN8YYtQe66RB8k/Virtual%20File%20System%20in%20Linux%20%E1%84%92%E1%85%A1%E1%86%AB%E1%84%80%E1%85%B3%E1%86%AF.pdf?attach=1&amp;amp;knm=tfile.pdf&quot; class=&quot;&quot;&gt;
    &lt;div class=&quot;image&quot;&gt;&lt;/div&gt;
    &lt;div class=&quot;desc&quot;&gt;&lt;div class=&quot;filename&quot;&gt;&lt;span class=&quot;name&quot;&gt;Virtual File System in Linux 한글.pdf&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;size&quot;&gt;1.15MB&lt;/div&gt;
&lt;/div&gt;
  &lt;/a&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>경희대 소융</category>
      <author>JuniorEinstein</author>
      <guid isPermaLink="true">https://cordelia273.tistory.com/52</guid>
      <comments>https://cordelia273.tistory.com/52#entry52comment</comments>
      <pubDate>Fri, 29 Dec 2023 01:00:25 +0900</pubDate>
    </item>
    <item>
      <title>해군개발병의 휴가일지 (2023.01.27. ~ 01.29.)</title>
      <link>https://cordelia273.tistory.com/51</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;약 한 달만에 다시 휴가를 나왔다. 고등학교 후배 하나가 중국으로 유학을 가는데 가기 전에 잠깐 보자고 해서 한 달 전부터 미리 계획을 잡았다. 하지만 막상 휴가 나가기 일주일 정도 전에 눈길에서 미끄러졌다나 뭐래나... 그런 이유로 보지는 못했다. 군대에 있으면서 사회에 대한 소중함을 알게 된다는 말도 어떻게 보면 사실이다. 가끔씩 휴가를 나가는 것만으로도 기분이 좋아지니 말이다. 이번 휴가는 곁에 있을 때 소중한지 몰랐던 것들에게 소중함을 느끼는 날들이었다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;2023.01.27. (금)&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오늘은 휴가를 나가는 날이기도 했지만 같은 부대에서 생활하던 고등학교 후배의 전역일이기도 했다. 고등학교 때 오며가며 같이 영상도 찍고 했던 후밴데, 나보다 먼저 육군으로 입대해서 이번에 전역을 하게 되었다. 사람 인연이란 어디서 끝나고 또 어디에서 다시 시작될지 모르는 것인가보다. 처음에 부대에 왔을 때만해도 서로의 존재를 모르고 있다가, 식당에서 우연히 마주쳐서 알게 되었다. 그게 벌써 10달 전의 일이라니. 시간이 참 빠르다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;휴가 때 늘 가는 친구 집에 갔더니 전날 술 먹고 뻗은 시체가 있었다. 사람들마다 해장하는 방법은 다르겠지만 집주인은 한겨울에 탱크보이를 사달라고 하더라. 근데 근처 편의점에는 없어서 갈배랑 식혜를 사갔다. 같이 해장도 할겸 마라탕도 먹었다. (정확하게는 먹였다.)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-23-19 004.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/biuiZw/btrX6o9Lmxd/HA8uH2Ktah8lpLjYEHQYwK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/biuiZw/btrX6o9Lmxd/HA8uH2Ktah8lpLjYEHQYwK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/biuiZw/btrX6o9Lmxd/HA8uH2Ktah8lpLjYEHQYwK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbiuiZw%2FbtrX6o9Lmxd%2FHA8uH2Ktah8lpLjYEHQYwK%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;400&quot; height=&quot;533&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-23-19 004.jpeg&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오늘은 연남동에 놀러가기로 했다. 처음에는 분위기, 그리고 빵이 맛있는 카페. 홍대에 있는 더블유오앤이라는 카페다.&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/dRQvqe/btrX32Ne9qo/rWCMS3VqMDbBhQlw45mik0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dRQvqe/btrX32Ne9qo/rWCMS3VqMDbBhQlw45mik0/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-23-25 006.jpeg&quot; style=&quot;width: 49.4186%; margin-right: 10px;&quot; data-widthpercent=&quot;50&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dRQvqe/btrX32Ne9qo/rWCMS3VqMDbBhQlw45mik0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdRQvqe%2FbtrX32Ne9qo%2FrWCMS3VqMDbBhQlw45mik0%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;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bukKY1/btrYao9fNQf/H2rfepakyPlKOwML8JzSKK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bukKY1/btrYao9fNQf/H2rfepakyPlKOwML8JzSKK/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-23-27 007.jpeg&quot; style=&quot;width: 49.4186%;&quot; data-widthpercent=&quot;50&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bukKY1/btrYao9fNQf/H2rfepakyPlKOwML8JzSKK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbukKY1%2FbtrYao9fNQf%2FH2rfepakyPlKOwML8JzSKK%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;/&gt;&lt;/span&gt;&lt;/div&gt;
  &lt;figcaption&gt;사진 예쁘게 찍어줘서 고마워  &lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지하로 내려오는 계단 분위기가 완전 느낌있었다...! 저 장소가 사람들이 사진을 많이 찍는 스팟인 것 같았다. 계단 근처에 있는 테이블에 앉았었는데 내내 사람들이 뒤에서 사진을 찍어대서 구경하는 재미도 있었다. 특히 갓 고등학교를 졸업한 것처럼 보이는 남자 애들끼리 스팟에서 사진을 찍고 확인하고 그러는 모습이 귀여워 보였다. (나도 20살 때는~  )&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/bjS3eK/btrX4kz2ooY/q8rK3dDGDynSgJ8ltyewKk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bjS3eK/btrX4kz2ooY/q8rK3dDGDynSgJ8ltyewKk/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-23-30 008.jpeg&quot; style=&quot;width: 35.5814%; margin-right: 10px;&quot; data-widthpercent=&quot;36&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bjS3eK/btrX4kz2ooY/q8rK3dDGDynSgJ8ltyewKk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbjS3eK%2FbtrX4kz2ooY%2Fq8rK3dDGDynSgJ8ltyewKk%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;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6iA0k/btrX2oXRbsQ/zMW83ilnA6SuVEWdJon2kK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6iA0k/btrX2oXRbsQ/zMW83ilnA6SuVEWdJon2kK/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-23-33 009.jpeg&quot; style=&quot;width: 63.2558%;&quot; data-widthpercent=&quot;64&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6iA0k/btrX2oXRbsQ/zMW83ilnA6SuVEWdJon2kK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6iA0k%2FbtrX2oXRbsQ%2FzMW83ilnA6SuVEWdJon2kK%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;4032&quot; height=&quot;3024&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저녁은 연남동에 있는 문이라는 식당에서 먹었다. 신라호텔 출신의 셰프가 운영하는 가게라고 하는데, 맛은 아쉽게도 평범했다. 오일 명란 파스타는 마늘맛이 강하게 나는 파스타였는데, 생각했던 오일파스타랑은 조금 달랐다. 오른쪽에는 시그니처 메뉴인 페퍼크림파스타였는데, 살짝 매콤한 맛이 났다. 후추...에서 나는 매운 맛 보다는 고추나 캡사이신에서 느껴지는 매운 맛 같았다. 위에 올라간 고기는 단맛이 조금 강해서 조금 아쉬웠다.&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/ALUt1/btrX7X5dORp/CeYot2b9QEhrdEfZKmRrs1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ALUt1/btrX7X5dORp/CeYot2b9QEhrdEfZKmRrs1/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-23-35 010.jpeg&quot; style=&quot;width: 49.4186%; margin-right: 10px;&quot; data-widthpercent=&quot;50&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ALUt1/btrX7X5dORp/CeYot2b9QEhrdEfZKmRrs1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FALUt1%2FbtrX7X5dORp%2FCeYot2b9QEhrdEfZKmRrs1%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;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pGL8B/btrX2mTauLP/pksLfqDqXurKxN8ZlbfcqK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pGL8B/btrX2mTauLP/pksLfqDqXurKxN8ZlbfcqK/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;2736&quot; data-origin-height=&quot;3648&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-23-37 011.jpeg&quot; style=&quot;width: 49.4186%;&quot; data-widthpercent=&quot;50&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pGL8B/btrX2mTauLP/pksLfqDqXurKxN8ZlbfcqK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpGL8B%2FbtrX2mTauLP%2FpksLfqDqXurKxN8ZlbfcqK%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;2736&quot; height=&quot;3648&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저녁을 먹고 나서는 연남동에 있는 헤이미쉬라는 칵테일바에 갔다. 연남에 있는 가게들은 대부분 내부 공간이 협소했다. 이번에 간 가게도 마찬가지였는데, 의자가... 너무 불편했다. 정확하게는! 의자가 없었다. 책상 밑에 공간이 없어서 책상을 정면으로 바라보고 다리를 넣을 수 없어서 90도 옆으로 돌려서 앉아야 하는 구조였다... (설마 MZ들은 이런거 좋아하나...?!  )&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;감자튀김이 나오면 사진을 같이 찍으려고 했는데, 감자튀김이 너무 늦게 나왔다... 가게 직원과의 기나긴 눈치싸움 끝에 드디어 감자튀김을 받을 수 있었는데...! 이미 라푼젤은 녹아버리고 말았다...   (왼쪽 사진 왼쪽에 있는 하얀 얼음산이 라푼젤이다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;홍대는 자주 갔는데 막상 바로 옆에 연남동에는 자주 가보지 못했다. 이번 기회에 골목골목 돌아다녀볼 수 있어서 좋았는데...! 문제는 날씨가 너무 추웠다... 옷을 평소보다 얇게 입고 가서 아주 호오들갑을 떨면서 돌아다녀야 했다.   얼른 날씨가 따뜻해져서! 가벼운 옷들을 입고 돌아다닐 수 있었으면 좋겠다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;2023.01.28. (토)&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오늘은 공릉에 갔다. 할머니댁에 강북구에 있지만 공릉은 처음 가본다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-23-51 016.jpeg&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/beO0C8/btrX30WaIwD/PB4frb4aaKdoV7ePKZYOnk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/beO0C8/btrX30WaIwD/PB4frb4aaKdoV7ePKZYOnk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/beO0C8/btrX30WaIwD/PB4frb4aaKdoV7ePKZYOnk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbeO0C8%2FbtrX30WaIwD%2FPB4frb4aaKdoV7ePKZYOnk%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;4032&quot; height=&quot;3024&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-23-51 016.jpeg&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;점심은 소바세트를 시키면 1인분 양의 소바를 주는 엄청난 돈카츠 집에서 먹었다. 양도 많았고, 등심이나 안심카츠 둘 다 너무 맛있었다! 나는 사실 일식을 엄청 좋아하는데, 아마 재료 본연의 맛을 중시하는 가치관 때문인 것 같다. 사진을 보니까 다시 그날 먹었던 고기의 질감이 생각난다... 배고프다...  &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/ren73/btrX3rzExzh/RmylsG4Mc1kbKpr8lS5Jvk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ren73/btrX3rzExzh/RmylsG4Mc1kbKpr8lS5Jvk/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;2849&quot; data-origin-height=&quot;3800&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-23-56 018.jpeg&quot; style=&quot;width: 32.5505%; margin-right: 10px;&quot; data-widthpercent=&quot;33.33&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ren73/btrX3rzExzh/RmylsG4Mc1kbKpr8lS5Jvk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fren73%2FbtrX3rzExzh%2FRmylsG4Mc1kbKpr8lS5Jvk%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;2849&quot; height=&quot;3800&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/biR8ZB/btrX9FwuR6n/xWkbAPsctygFaxjUVz1KZK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/biR8ZB/btrX9FwuR6n/xWkbAPsctygFaxjUVz1KZK/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-24-01 019.jpeg&quot; style=&quot;width: 32.5619%; margin-right: 10px;&quot; data-widthpercent=&quot;33.34&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/biR8ZB/btrX9FwuR6n/xWkbAPsctygFaxjUVz1KZK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbiR8ZB%2FbtrX9FwuR6n%2FxWkbAPsctygFaxjUVz1KZK%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;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dJw7GC/btrX2qg5Igp/RuOgwCvZCk4fAkzowX5HV1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dJw7GC/btrX2qg5Igp/RuOgwCvZCk4fAkzowX5HV1/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-24-05 020.jpeg&quot; style=&quot;width: 32.5619%;&quot; data-widthpercent=&quot;33.33&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dJw7GC/btrX2qg5Igp/RuOgwCvZCk4fAkzowX5HV1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdJw7GC%2FbtrX2qg5Igp%2FRuOgwCvZCk4fAkzowX5HV1%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;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음으로는 공릉동 카페 거리에 갔다. 카페 거리에는 분명 카페가 엄청 많을텐데... 주말이라서 그런지 가는 카페마다 사람들이 가득가득했다. 결국! 사람이 아무도 없는 조용한 카페를 찾아냈는데, 분위기가 너무 좋아서 완전 Lucky ✨ 했다.  &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오늘 사실 공릉에 간건 서울여대에 공연을 보러 가기 위해서였다. Tipssy 공연을 봤는데, 너무 재밌었다! 오랜만에 또 춤을 보니까... 나도 한동안 잊고 있던 댄스 본능이 깨어나는 것 같았다...! 전역하면 다시 동아리에 돌아가... 멋진 공연을 다시 하고 싶었다.  &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/t8dpf/btrX7ZPwnFH/V4cHxjJkhQCKM509yGYcF0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/t8dpf/btrX7ZPwnFH/V4cHxjJkhQCKM509yGYcF0/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-24-07 021.jpeg&quot; style=&quot;width: 23.7586%; margin-right: 10px;&quot; data-widthpercent=&quot;24.32&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/t8dpf/btrX7ZPwnFH/V4cHxjJkhQCKM509yGYcF0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Ft8dpf%2FbtrX7ZPwnFH%2FV4cHxjJkhQCKM509yGYcF0%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;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/VrC4n/btrX6pARzTL/Fcn24YUKiX0QcBGkslDb50/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/VrC4n/btrX6pARzTL/Fcn24YUKiX0QcBGkslDb50/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;2268&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-03-30-15.jpeg&quot; style=&quot;width: 42.2376%; margin-right: 10px;&quot; data-widthpercent=&quot;43.24&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/VrC4n/btrX6pARzTL/Fcn24YUKiX0QcBGkslDb50/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FVrC4n%2FbtrX6pARzTL%2FFcn24YUKiX0QcBGkslDb50%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;2268&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bJzRlH/btrX402nWnS/HiQOFDk7aqFcQpFo6EKc01/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bJzRlH/btrX402nWnS/HiQOFDk7aqFcQpFo6EKc01/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;3024&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-03-30-24.jpeg&quot; style=&quot;width: 31.6782%;&quot; data-widthpercent=&quot;32.44&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bJzRlH/btrX402nWnS/HiQOFDk7aqFcQpFo6EKc01/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbJzRlH%2FbtrX402nWnS%2FHiQOFDk7aqFcQpFo6EKc01%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;3024&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저녁은 아까 카페거리 근처에 있던 술집에서 먹었다. 근데 여기... 고기 국수가 너무 맛있었다! 대창전골도 시켰는데, 대창전골보다는 고기국수가 엄청 맛있었던...! 아오 또 배고파지네. 이래서 새벽에는 뭘 하면 안돼...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같이 시켰던 매실 하이볼도 맛있었다! 매실을 원래 좋아하기도 하구, 하이볼도 좋아해서! 너무 좋았다.  &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;2023.01.29. (일)&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오늘은 복귀날이다. 다시 부대로 가기 전 시간을 의미있게 보내고 싶어서 바쁘게 움직였던 하루였다. 오늘은 이수역과 사당역 사이에 어딘가에서 놀았다! 맨날 이수역에 있었는데 근처에 이런 가게들이 있는줄 몰랐다 ㅎㅎ 주변에 관심을 조금 더 가지자...!  &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/bmdRct/btrX6pARBfK/qHgF8Ieh8mqfbO6A6zkCJK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bmdRct/btrX6pARBfK/qHgF8Ieh8mqfbO6A6zkCJK/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;1170&quot; data-origin-height=&quot;2080&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-24-13 023.jpeg&quot; style=&quot;width: 42.3588%; margin-right: 10px;&quot; data-widthpercent=&quot;42.86&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bmdRct/btrX6pARBfK/qHgF8Ieh8mqfbO6A6zkCJK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbmdRct%2FbtrX6pARBfK%2FqHgF8Ieh8mqfbO6A6zkCJK%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;1170&quot; height=&quot;2080&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/coYHXp/btrX2XFBIDL/z4jhiSddYsRZsHsiU24qlk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/coYHXp/btrX2XFBIDL/z4jhiSddYsRZsHsiU24qlk/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-24-18 024.jpeg&quot; data-widthpercent=&quot;57.14&quot; style=&quot;width: 56.4784%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/coYHXp/btrX2XFBIDL/z4jhiSddYsRZsHsiU24qlk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcoYHXp%2FbtrX2XFBIDL%2Fz4jhiSddYsRZsHsiU24qlk%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;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;점심은 우육면이 시그니처 메뉴인 중식당에서 먹었다! 하지만... 내가 생각했던 것과는 조금 달랐고... (아쉽아쉽) 하지만! 어향가지가 너무 맛있었어서 괜찮았다.   근데 엄청 유명한 맛집인가 싶었던게! 12시에 오픈이었고, 우리가 12시 딱 맞춰서 갔는데, 우리가 들어가서 주문을 하기도 전에 사람들이 꽉 차버렸다...!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;근처에 또 괜찮은 카페를 찾아서 갔는데, 처음 들어갔을 때 사람이 너무 없어서... 아니 여기 뭐지?! 싶었는데 알고보니 다들 2층에 가 있었다...! 레몬 마들렌이랑 딸기 케이크가 맛있었던 오늘의 카페 :)&lt;br /&gt;하지만 이 카페도... MZ 의자가 있었다...! 진짜 요즘 카페 감성이 이건가... 내가 따라가지 못하는 것인가...! 싶었지만 조용히 있었다. (MZ가 되고 싶은 몸부림  )&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/bK4pcT/btrX40nSGe2/c489aSHpD77wPlmpyfk7KK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bK4pcT/btrX40nSGe2/c489aSHpD77wPlmpyfk7KK/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-24-18 025.jpeg&quot; style=&quot;width: 63.2558%; margin-right: 10px;&quot; data-widthpercent=&quot;64&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bK4pcT/btrX40nSGe2/c489aSHpD77wPlmpyfk7KK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbK4pcT%2FbtrX40nSGe2%2Fc489aSHpD77wPlmpyfk7KK%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;4032&quot; height=&quot;3024&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wSPZC/btrX8i9iDw9/XuhMXewHXBKyc6cqKoPZGk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wSPZC/btrX8i9iDw9/XuhMXewHXBKyc6cqKoPZGk/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-02-05-02-24-21 026.jpeg&quot; style=&quot;width: 35.5814%;&quot; data-widthpercent=&quot;36&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wSPZC/btrX8i9iDw9/XuhMXewHXBKyc6cqKoPZGk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FwSPZC%2FbtrX8i9iDw9%2FXuhMXewHXBKyc6cqKoPZGk%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;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나는 복귀하는 날은 무조건 이 가게에서 마라탕 또는 마라샹궈를 먹는다...! 오늘도 어김없이 ✨&lt;br /&gt;여기 마라탕 집은 군복을 입고 가면 음료 하나를 서비스로 주는 아주 훌륭한 가게다.  &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 시간이 좀 남아서 혼코노~ 확실히 사회의 노래방 기계는 부대 안에 있는 노래방 기계보다 성능이 좋다...! 사실 노래를 잘부르고 싶어서 한 동안 강의도 찾아보면서 열심히 연습했는데... 그런게 무색할 만큼... (필요한건 좋은 장비였나...)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요즘은 데이식스 노래에 푹 빠져 있다! 원래는 발라드만 부르다가... 뭔가 신나는 노래를 불러보고 싶어서 찾아보기 시작했는데, 푹 빠져버다... (원필이형 ㅠㅠ) 근데 원래도 데이식스 좋아했다~ (마이데이 2기 ✌️)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고로 원필이형은 나와 같이 해군으로 근무하고 있다...! 물론 나보다 기수가 낮... (아쎄이 기열!) 여튼!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;결론&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다소 짧게 갔다와서 아쉬웠지만, 그래도 설렘이 가득한 휴가였다.  &lt;br /&gt;다음에는 더 맛있는 음식들과! 새로움과 설렘이 가득한...! 그런 휴가를 보내고 싶다.&lt;br /&gt;휴가는 매번 나와도 매번 아쉽다. 그래서 휴가가 아닐까. &lt;s&gt;아쉬워서&amp;nbsp;휴~ 소리가 나니까...&lt;br /&gt;&lt;/s&gt;&lt;/p&gt;</description>
      <category>이야기/일기</category>
      <author>JuniorEinstein</author>
      <guid isPermaLink="true">https://cordelia273.tistory.com/51</guid>
      <comments>https://cordelia273.tistory.com/51#entry51comment</comments>
      <pubDate>Sun, 5 Feb 2023 04:04:18 +0900</pubDate>
    </item>
    <item>
      <title>해군개발병의 휴가일지 (2022.12.18. ~ 12.23.)</title>
      <link>https://cordelia273.tistory.com/50</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;부대 안에서는 매일 비슷한 일상이 반복된다. 반복되는 일상을 굴레 속에서도 반짝이는 것들을 찾아낼 수도 있지만, 역시 휴가를 나가면 재밌는 에피소드들이 많이 생기는 것 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;군대에 오기 전에는 매일매일 게임이나 하면서 흘려보냈던 하루하루가 아까워진달까. 그래서 이번 기회에 휴가 나가서 있었던 재밌는 일들을 기억 속에서 사라지기 전에 기록해 보려고 한다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;2022.12.18. (일)&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한달 전쯤 윤수형이 휴가 나가서 같이 메이플 심포니 공연을 보러 가자고 했다. 메이플스토리 BGM을 오케스트라가 연주하는 공연이었다. 휴가 때마다 무엇을 할지 고민하던 나는 흔쾌히 수락했다.  &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 막상 예약하는 당일이 됐는데 순식간에 매진 되어버리는 바람에 한참을 기다리고 남는 자리를 열심히 끌어 모아 두 자리를 겨우 예약하게 되었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 공연은 메이플스토리 심포니의 순회공연 마지막 공연으로, 대구에서 열렸다. 대구에 가는 김에 예전에 인스타에서 봤던 고등어 소면 맛집이 생각나서 검색해봤는데, 공연장 바로 주변이었다. 이런 우연이! 이건 먹지 않을 수가 없어서 대구역에 내리자마자 식당으로 향했다. 점심을 먹기 위해서였다. 그때가 11시 정도 였는데 웨이팅이 벌써 30팀 가까이 있었다. 날씨가 유독 추워서 밖에 서 있는 것 조차 힘들었다. 하지만 다행히 웨이팅 앱을 쓰고 있어서 대기열을 걸어 놓고 놀러 갔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주변에 피시방에서 열심히 게임을 한 다음 3시 30분이 되어서야 식당에 들어갈 수 있었다. 이런 웨이팅은 처음이야...&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/ckKwSG/btrWELkNNdK/mRVUfc5YqYJgxuBIVGyt7k/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ckKwSG/btrWELkNNdK/mRVUfc5YqYJgxuBIVGyt7k/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-51 004.jpeg&quot; style=&quot;width: 35.5814%; margin-right: 10px;&quot; data-widthpercent=&quot;36&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ckKwSG/btrWELkNNdK/mRVUfc5YqYJgxuBIVGyt7k/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FckKwSG%2FbtrWELkNNdK%2FmRVUfc5YqYJgxuBIVGyt7k%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;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bqbjMn/btrWEJtKTX7/JKfTkHpHlLu08HyhKJRgb0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bqbjMn/btrWEJtKTX7/JKfTkHpHlLu08HyhKJRgb0/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-50 003.jpeg&quot; data-widthpercent=&quot;64&quot; style=&quot;width: 63.2558%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bqbjMn/btrWEJtKTX7/JKfTkHpHlLu08HyhKJRgb0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbqbjMn%2FbtrWEJtKTX7%2FJKfTkHpHlLu08HyhKJRgb0%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;4032&quot; height=&quot;3024&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
  &lt;figcaption&gt;고등어 소면과 계란 김밥. 닭육수 베이스로 만든 깔끔한 육수와 잘 구워진 고등어가 잘 어울렸다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;음식은 기다렸던 보람이 있었다! 고등어 소면, 된장비빔면, 계란 김밥이 대표 메뉴였는데 날도 춥고 고등어 소면이 너무 맛있어 보여서 2개 시키는 것을 참을 수 없었다! (물론 원래 나는 메뉴를 하나씩 다 시켜서 다양하게 먹어보자고 했을 것이다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;황금보리라는 술도 시켰는데 맛이 정말 좋았다. 국물도 정말 맛이 있었지만, 고등어가 진짜 잘 구워져서 바삭바삭한 껍질과 국물과 같이 먹었을 때 짭쪼롬한 조화가 너무 좋았다. 와사비를 올려서 먹는 계란김밥도 누구 아이디어인지 단순하지만 맛있었다. 다음에 대구에 갈 일이 생기면 다시 한 번 가보고 싶을 정도로 좋은 식사였다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-49 002.jpeg&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cF4PY9/btrWCSrGSjN/DBnKtnHLkv5PC7tA8OkJvk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cF4PY9/btrWCSrGSjN/DBnKtnHLkv5PC7tA8OkJvk/img.jpg&quot; data-alt=&quot;메이플 심포니 공연은 아주 훌륭했다!&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cF4PY9/btrWCSrGSjN/DBnKtnHLkv5PC7tA8OkJvk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcF4PY9%2FbtrWCSrGSjN%2FDBnKtnHLkv5PC7tA8OkJvk%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;4032&quot; height=&quot;3024&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-49 002.jpeg&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;메이플 심포니 공연은 아주 훌륭했다!&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;메이플스토리 심포니 공연은 배경에 메이플스토리 배경 혹은 트레일러 영상을 재생하고 앞에서 오케스트라 공연이 이루어지는 방식이었다. 첫 곡은 리스항구 BGM으로 시작해서 메이플월드에 처음 발을 들인 순간을 떠올리게 해줬다. 그리고 점점 레벨이 높은 사냥터 혹은 지역의 BGM을 연주하면서 메이플 캐릭터를 키우면서 느꼈던 감정을 새록새록 떠올리게 해주었다. 그리고 마지막에는 검은 마법사를 마주하는 '격전'을 연주하면서 1부 연주가 끝났다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기대 이상으로 너무 좋았다! 제일 기억에 남는 곡은 레헬른 BGM이었다. 귀를 찢는 듯한 높은 현악기로 시작하는 인트로와 관악기가 어울어지는 웅장한 분위기의 왈츠 곡이었다. 레헬른에서 아르카나 넘어가는 구간 레벨업이 워낙 힘들어서 레헬른에 꽤 오래 있었는데 그때 기억이 나면서 추억이...&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/dXxncX/btrWCckcruj/PmwkWsQoWpjMBWUj8Ytgvk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dXxncX/btrWCckcruj/PmwkWsQoWpjMBWUj8Ytgvk/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-48 001.jpeg&quot; style=&quot;width: 49.4186%; margin-right: 10px;&quot; data-widthpercent=&quot;50&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dXxncX/btrWCckcruj/PmwkWsQoWpjMBWUj8Ytgvk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdXxncX%2FbtrWCckcruj%2FPmwkWsQoWpjMBWUj8Ytgvk%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;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/caJN3H/btrWCIW3CnJ/buKWPwTkNHa58BlbH2BScK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/caJN3H/btrWCIW3CnJ/buKWPwTkNHa58BlbH2BScK/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-34 028.jpeg&quot; data-widthpercent=&quot;50&quot; style=&quot;width: 49.4186%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/caJN3H/btrWCIW3CnJ/buKWPwTkNHa58BlbH2BScK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcaJN3H%2FbtrWCIW3CnJ%2FbuKWPwTkNHa58BlbH2BScK%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;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런 웅장한 공연을 보고 오니 메이플하는 것을 참을 수 없었다! 근데 오랜만에 들어가서 12성이 되어버린 아케인 무기를 보고 충격을 받아서 로스트아크로 빠르게 노선을 변경했다... (심지어 메소가 10억도 없었다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기상술사 스킬이 너무 예뻐서 선택을 망설일 이유가 없었다. 공연이 끝나고 서울에 도착했을 땐 이미 다음 날이었다. 아침 일찍 출근하는 집 주인(휴가 나갈 때 마다 얹혀 사는 친구가 있다)을 방해하고 싶지 않아서 피시방에서 밤을 샜다.&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/Hobi3/btrWDOPMuya/gENYKyiJ47qJXEfP7V0DXk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Hobi3/btrWDOPMuya/gENYKyiJ47qJXEfP7V0DXk/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-59-25.jpeg&quot; style=&quot;width: 49.4186%; margin-right: 10px;&quot; data-widthpercent=&quot;50&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Hobi3/btrWDOPMuya/gENYKyiJ47qJXEfP7V0DXk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FHobi3%2FbtrWDOPMuya%2FgENYKyiJ47qJXEfP7V0DXk%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;4032&quot; height=&quot;3024&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/UUM1W/btrWBh63ZKM/SdPvI6ogSQk1OlzcWqwWgk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/UUM1W/btrWBh63ZKM/SdPvI6ogSQk1OlzcWqwWgk/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-32 027.jpeg&quot; data-widthpercent=&quot;50&quot; style=&quot;width: 49.4186%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/UUM1W/btrWBh63ZKM/SdPvI6ogSQk1OlzcWqwWgk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUUM1W%2FbtrWBh63ZKM%2FSdPvI6ogSQk1OlzcWqwWgk%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;4032&quot; height=&quot;3024&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아침은 라면, 점심은 돈까스를 먹었다. 휴가 나올 때마다 가는 피시방인데, 음식 퀄리티가 괜찮다. (이 게시글을 엄마 아빠가 보신다면 남의 가게 가게 돈 쓰지 말고 집에나 오라고 하시겠...)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;2022.12.19. (월)&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;집 주인이 저녁에 건대입구에 있는 암웨이 매장에 간다고 해서 오랜만에 건대입구에 갔다. 예전에 건대 주변에서 자취할 때 이후로 처음 가는 것 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사진이 없긴 한데 암웨이 오프라인 매장이 있는걸 처음 알았다! 근데 가니까 시설도 좋고, 모발 등등 각종 검사해볼 수 있는 시설들도 있고, 아무튼 볼게 많았다! 유산균이 다 떨어질 때가 돼서 유산균을 하나 사왔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저녁은 내가 아주 기가막힌 가게를 하나 찾아가서 데이트하는 기분을(?) 낼 수 있었다. 마쵸셰프라는 체인점이었는데, 가게 매니저 분이 너무 마르셔서 가게 이름과 가게 주인 사이에 느껴지는 이질감이 재밌는 식당이었다.&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/bzKPN6/btrWGduwO8K/pRHKaXd0so1b652Yfalbpk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bzKPN6/btrWGduwO8K/pRHKaXd0so1b652Yfalbpk/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-31 025.jpeg&quot; style=&quot;width: 49.4186%; margin-right: 10px;&quot; data-widthpercent=&quot;50&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bzKPN6/btrWGduwO8K/pRHKaXd0so1b652Yfalbpk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbzKPN6%2FbtrWGduwO8K%2FpRHKaXd0so1b652Yfalbpk%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;4032&quot; height=&quot;3024&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bgBkUY/btrWEe1LaqS/xI6jRufVtVbCm8pBBtaDNk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bgBkUY/btrWEe1LaqS/xI6jRufVtVbCm8pBBtaDNk/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-30 024.jpeg&quot; data-widthpercent=&quot;50&quot; style=&quot;width: 49.4186%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bgBkUY/btrWEe1LaqS/xI6jRufVtVbCm8pBBtaDNk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbgBkUY%2FbtrWEe1LaqS%2FxI6jRufVtVbCm8pBBtaDNk%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;4032&quot; height=&quot;3024&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
  &lt;figcaption&gt;사실 마쵸는 사람이 아니라 고기였다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나오자마자 불쇼를 해버리는 통삼겹살 요리가 메인이었다. 와인을 너무 많이 뿌리셨는지 불이 정말 크게 나서 뿌려주는 직원분도 그걸 지켜보고 있던 우리도 크게 당황했다. 비주얼이 정말 폭력적인게 마쵸는 아마 주인장이 아니라 고기를 보고 붙인 이름이었나보다 싶었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;2022.12.20. (화)&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같이 메이플 공연을 보러 갔던 윤수형이랑 성수에 있는 메이플스토리 팝업 스토어에 갔다. 마침 나 휴가 나오는걸 어떻게 알고 넥슨 측에서 이런 이벤트를 준비해주었다. (이 발언은 넥슨측과는 관련이 없음을 알려드립니다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기존 와인 및 맥주를 파는 매장에 기간 한정으로 메이플스토리와 콜라보를 해서 관련 상품을 진열/판매하는 방식이었다. 이번에 GS25랑 콜라보해서 포켓몬빵 같은 느낌으로 다양한 빵이 나왔는데 그마저도 아침에 열자마자 줄서서 털어가버려서 살 수 있는건 없었다. 메이플스토리와 관련된거라곤 라떼아트 프린터가 뽑아주는 커피가 전부였다.&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/P8EI1/btrWCTjRI8j/5jBfNRkyhU1QMWvAQ9viS1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/P8EI1/btrWCTjRI8j/5jBfNRkyhU1QMWvAQ9viS1/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-29 023.jpeg&quot; style=&quot;width: 35.5814%; margin-right: 10px;&quot; data-widthpercent=&quot;36&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/P8EI1/btrWCTjRI8j/5jBfNRkyhU1QMWvAQ9viS1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FP8EI1%2FbtrWCTjRI8j%2F5jBfNRkyhU1QMWvAQ9viS1%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;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/7UIkD/btrWBh0iB9p/K55dcuBkKUzCyHKjyEw9Tk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/7UIkD/btrWBh0iB9p/K55dcuBkKUzCyHKjyEw9Tk/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot; data-widthpercent=&quot;64&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-28 022.jpeg&quot; style=&quot;width: 63.2558%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/7UIkD/btrWBh0iB9p/K55dcuBkKUzCyHKjyEw9Tk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7UIkD%2FbtrWBh0iB9p%2FK55dcuBkKUzCyHKjyEw9Tk%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;4032&quot; height=&quot;3024&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
  &lt;figcaption&gt;매장은 정말 귀여움 그 자체였다. 앞에 핑크빈 인형 알바가 있었는데 갑자기 퇴근해 버려서 사진을 못 찍었다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;막간을 이용해 남들 다 간다는 DIOR 매장도 방문해보았다. 들어가려면 예약이 필요해서 들어가지는 않았다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-27 021.jpeg&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cV0ZJ7/btrWCdXHmnR/wQmVtQg0EhH2xqqwHXQzu1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cV0ZJ7/btrWCdXHmnR/wQmVtQg0EhH2xqqwHXQzu1/img.jpg&quot; data-alt=&quot;밤에는 더 예쁘다고 한다&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cV0ZJ7/btrWCdXHmnR/wQmVtQg0EhH2xqqwHXQzu1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcV0ZJ7%2FbtrWCdXHmnR%2FwQmVtQg0EhH2xqqwHXQzu1%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;4032&quot; height=&quot;3024&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-27 021.jpeg&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;밤에는 더 예쁘다고 한다&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음은 윤수형이 와디즈 오프라인 매장에 신기한 제품들이 많다고 해서 가봤다. 그런 공간 자체가 있는 것도 신기했지만, 안에 실제로 펀딩 성공한 제품 중에서 인기가 많은 제품들을 전시/판매해서 볼 것도 많고 살 것도 많았다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;신기하지만 필요없는 것들이 많아서 둘러보고 있던 와중에 무슨 가글이 있어서 앞을 서성거리다가 직원분에게 딱 걸려버렸다. 체험해보라고 가글을 하나 주셨는데, 다른 가글들과 다르게 입안의 단백질 찌꺼기들을 육안으로 확인할 수 있는... (자세한 설명은 생략한다.) 그런 제품이었는데 써보니까 충격적이기도 했고 살짝 홍삼? 잭다니엘 허니? 같은 향이 나는게 술 마시는 느낌도 들고 좋아서 바로 구입해버렸다.&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/biX5aC/btrWCIv0LMW/wn41Kaj6nQt41pGx7twiN1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/biX5aC/btrWCIv0LMW/wn41Kaj6nQt41pGx7twiN1/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-24 019.jpeg&quot; style=&quot;width: 32.5581%; margin-right: 10px;&quot; data-widthpercent=&quot;33.33&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/biX5aC/btrWCIv0LMW/wn41Kaj6nQt41pGx7twiN1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbiX5aC%2FbtrWCIv0LMW%2Fwn41Kaj6nQt41pGx7twiN1%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;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dFJHTs/btrWD45YsiA/no4RM7IE7oH1BQZLfZHj40/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dFJHTs/btrWD45YsiA/no4RM7IE7oH1BQZLfZHj40/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-25 020.jpeg&quot; style=&quot;width: 32.5581%; margin-right: 10px;&quot; data-widthpercent=&quot;33.33&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dFJHTs/btrWD45YsiA/no4RM7IE7oH1BQZLfZHj40/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdFJHTs%2FbtrWD45YsiA%2Fno4RM7IE7oH1BQZLfZHj40%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;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/H5luR/btrWCSZwNcF/cBpamwSYRQYCk4U6jdFQW0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/H5luR/btrWCSZwNcF/cBpamwSYRQYCk4U6jdFQW0/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-22 018.jpeg&quot; style=&quot;width: 32.5581%;&quot; data-widthpercent=&quot;33.34&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/H5luR/btrWCSZwNcF/cBpamwSYRQYCk4U6jdFQW0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FH5luR%2FbtrWCSZwNcF%2FcBpamwSYRQYCk4U6jdFQW0%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;/&gt;&lt;/span&gt;&lt;/div&gt;
  &lt;figcaption&gt;성수에 있는 공간 와디즈&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저녁은 기가막힌 바베큐를 먹었다. 무려 11.8만 유튜버 문츠가 운영하는 바베큐집! 예약을 하려고 했으나 예약이 다 찼다고 해서 디너 타임이 시작되자마자 워크인을 했다. 알고 보니 그날 단체 예약이 있어서 다른 예약은 안 받았는데 그 직원분이 우리만 특별히 예약을 받아주셨다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 밥을 먹고 있으니까 갑자기 직원분이 오셔서 '아 구독자시죠? 미리 말씀을 해주시지~'라고 해서 조금 당황했다. 아마 우리 예약을 받으셨던 직원분이 예약 따로 안 받기로 했는데 구독자라서 특별히 받았다~ 이런 식으로 다른 직원분들한테 설명한 것 같았다. 음료수를 서비스로 준다고 하시길래 사양하지는 않았다. 대신 동행과의 빠른 시그널 교환 이후에 음료수를 가지러 간 사이에 빠르게 유튜브를 켜서 구독을 눌렀다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;근데 집에 와서 천천히 유튜브 채널을 다시 보니까 영상도 재밌고 나름 퀄리티가 괜찮아서 아직까지도 꾸준히 보고 있다.&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/b7HFtt/btrWD5jwcnn/Dk03WiweVldM4mCcya9Mq1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b7HFtt/btrWD5jwcnn/Dk03WiweVldM4mCcya9Mq1/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-21 017.jpeg&quot; style=&quot;width: 35.5814%; margin-right: 10px;&quot; data-widthpercent=&quot;36&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b7HFtt/btrWD5jwcnn/Dk03WiweVldM4mCcya9Mq1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb7HFtt%2FbtrWD5jwcnn%2FDk03WiweVldM4mCcya9Mq1%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;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/98W24/btrWDEsXZAO/gwhu4ZJtgEqzmv1PXU7Th1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/98W24/btrWDEsXZAO/gwhu4ZJtgEqzmv1PXU7Th1/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-20 015.jpeg&quot; data-widthpercent=&quot;64&quot; style=&quot;width: 63.2558%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/98W24/btrWDEsXZAO/gwhu4ZJtgEqzmv1PXU7Th1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F98W24%2FbtrWDEsXZAO%2Fgwhu4ZJtgEqzmv1PXU7Th1%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;4032&quot; height=&quot;3024&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
  &lt;figcaption&gt;11만 유튜버 문츠가 운영하는 바베큐집&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;브리스킷이 들어간 플래터를 먹었는데 진짜 훌륭했다. 문츠가 직접 만든 특제 소스를 발라서 구워졌는데, 식감은 물론이고 소스도 나름 괜찮았다! 여느 바베큐 소스처럼 달짝지근한 맛이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;밥을 먹고 나니까 윤수형이 시그니엘에 가자고 해서 시그니엘에 갔다. 투숙객이 아니더라도 로비랑 식당까지는 출입이 가능했는데, 거기도 꽤 층이 높아서 서울의 야경을 한눈에 볼 수 있었다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-19 014.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/bjDA9a/btrWDE7yeD2/MAGfP5Z6q5l2ob81bMK54k/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bjDA9a/btrWDE7yeD2/MAGfP5Z6q5l2ob81bMK54k/img.jpg&quot; data-alt=&quot;이게 19,000원? 케이크 잘 보고 풍경 잘 먹고 갑니다.&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bjDA9a/btrWDE7yeD2/MAGfP5Z6q5l2ob81bMK54k/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbjDA9a%2FbtrWDE7yeD2%2FMAGfP5Z6q5l2ob81bMK54k%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_2023-01-19-01-37-19 014.jpeg&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;이게 19,000원? 케이크 잘 보고 풍경 잘 먹고 갑니다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;갑자기 감성감성해진 우리 둘은 이성적인 판단을 잃고 케이크를 사먹는 것을 참을 수 없었다. 이것이 두 남자의 낭만이랄까. 작은 케이크를 하나 집었는데 19,000원이었다. 이게 무슨... 하지만 풍경 값인 셈 치고 맛있게 먹었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;막 달지 않아서 맛있었던 케이크다. 안에는 생크림과 빵이 조금 들어있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저녁에는 집 주인이랑 같이 아바타 2를 봤다. 영화를 보기 전에 윤수형이 아바타 제작 비용을 알려줬는데, 그 액수가 어마어마했다. 분당 2억이라나 뭐라나. 보는 내내 와 분당 2억하면서 보니까 더 집중해서 볼 수 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;영화 시작 직전까지 떠들다가 불이 꺼지고 나서 내가 승준이한테 '야 나 이거 3D로 예매했어!'이러니까 '아 우리 안경은...? (メガネは？)' 이래서 갑자기 정신 차리고 주위를 둘러보니까 아까까지는 그냥 있던 사람들이 약속이라도 한 듯 3D 안경을 끼고 있는 것이다! (이때 난 엄청난 배신감을 느꼈지만 다른 사람들에게는 아무렴 상관 없는 것이었다.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;급하게 뛰쳐나가서 안경을 집어왔는데 성인용 안경이 있고, 옆에 뽀로로 안경이 있었다. 뽀로로 안경으로 장난치는 것을 참을 수 없었던 나는 성인용 안경과 함께 뽀로로 안경도 챙겼다. 그리고 승준이한테는 뽀로로 안경을 주고 난 성인용 안경을 쓰려고 했는데... 그게 하필 또 안경 다리가 없는... 안경낀 사람들이 안경알 위에 걸칠 수 있도록 만들어진 것이었다 하아... 그래서 별 수 없이 우리 둘 다 뽀로로 안경을 쓰고 영화를 관람했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;2022.12.21. (수)&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 날은 서대문형무소에 갔다. 군인들은 전사적지를 방문하면 휴가를 하루 주기 때문에 신나게 달려갔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그냥 도장만 받고 나오려고 했는데, 생각보다 볼게 많았다! 사람들도 많이 없어서 고문기구 같은거에 직접 들어도 가보고 다양하게 체험할 수 있었다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-16 012.jpeg&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/zFz9N/btrWBh64fvH/BWzH3wazuHNqSV8WVqkyrk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/zFz9N/btrWBh64fvH/BWzH3wazuHNqSV8WVqkyrk/img.jpg&quot; data-alt=&quot;서대문형무소. 해질녘 하늘이 예쁘다.&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/zFz9N/btrWBh64fvH/BWzH3wazuHNqSV8WVqkyrk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FzFz9N%2FbtrWBh64fvH%2FBWzH3wazuHNqSV8WVqkyrk%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;4032&quot; height=&quot;3024&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-16 012.jpeg&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;서대문형무소. 해질녘 하늘이 예쁘다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음에는 바로 옆에 있는 익선동에 놀러갔다. 익선동 한옥거리는 언제가도 정말 예쁜 것 같다. 하지만... 막상 가니 혼자서 있을 곳이 마땅치 않았다. 그래서 뭔가 좀 있어보이는 카페에 들어가서 있어 보이는 메뉴를 시켰는데, 너무 달고 느끼해서 다 먹을 수가 없었다...&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/cyArVC/btrWDO3ktN6/70HPK1Stp3KFuqN504GXa0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cyArVC/btrWDO3ktN6/70HPK1Stp3KFuqN504GXa0/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-15 011.jpeg&quot; style=&quot;width: 35.5814%; margin-right: 10px;&quot; data-widthpercent=&quot;36&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cyArVC/btrWDO3ktN6/70HPK1Stp3KFuqN504GXa0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcyArVC%2FbtrWDO3ktN6%2F70HPK1Stp3KFuqN504GXa0%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;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bOBOzU/btrWCdXHvdY/ukPc0dsW2aElU0Cx9WHgi0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bOBOzU/btrWCdXHvdY/ukPc0dsW2aElU0Cx9WHgi0/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-13 010.jpeg&quot; data-widthpercent=&quot;64&quot; style=&quot;width: 63.2558%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bOBOzU/btrWCdXHvdY/ukPc0dsW2aElU0Cx9WHgi0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbOBOzU%2FbtrWCdXHvdY%2FukPc0dsW2aElU0Cx9WHgi0%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;4032&quot; height=&quot;3024&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
  &lt;figcaption&gt;정보) 익선동은 혼자 가면 할게 없다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저녁에는 강남에서 오랜만에 울산 친구를 보기로 했다. 미즈컨테이너라는 가게에 갔는데, 예전에도 다른 울산 친구들을 서울에서 보면 이 가게에 데려갔던 것 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;닭고기 스테이크가 들어간 플래터도 맛있었지만, 맥주가 맛있었다! 그냥 맥주가 아니라 과일이었나 꿀이었나 그런 맥주였던 것 같은데 기억이 잘 안난다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;매장에 가면 직원분들이 화이팅 넘치게 맞이해 주셔서 재밌는 가게이다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-12 009.jpeg&quot; data-origin-width=&quot;1050&quot; data-origin-height=&quot;1400&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/baQcor/btrWDE7yeow/xyh1aI9ZVejQ4MOjt0kp0k/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/baQcor/btrWDE7yeow/xyh1aI9ZVejQ4MOjt0kp0k/img.jpg&quot; data-alt=&quot;강남 미즈 컨테이너. 강남에만 매장이 2개다.&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/baQcor/btrWDE7yeow/xyh1aI9ZVejQ4MOjt0kp0k/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbaQcor%2FbtrWDE7yeow%2Fxyh1aI9ZVejQ4MOjt0kp0k%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;1050&quot; height=&quot;1400&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-12 009.jpeg&quot; data-origin-width=&quot;1050&quot; data-origin-height=&quot;1400&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;강남 미즈 컨테이너. 강남에만 매장이 2개다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;2022.12.22. (목)&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사실 이번에 휴가를 나온 목적은 이날을 위해서라고 해도 과언이 아니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;바로 &lt;b&gt;'종.강.총.회'&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;군인이 무슨 종강총회냐!!! 주책이다!!! 19학번 화석은 물러가라!!! 싶겠지만.&lt;br /&gt;나에게도 낭만이란게 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일찍이 학교에 가서 후배랑 같이 밥을 먹었다. 학교 다닐 때 매주 0.5번은 가던 (2주에 1번 갔다는 뜻이다.) '초밥쟁이'라는 초밥집이 있는데, 어김없이 생각나서 방문했다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-12 008.jpeg&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/R9ju6/btrWEgedUzO/cwU9DKS6DYXBZ8c84R6ve0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/R9ju6/btrWEgedUzO/cwU9DKS6DYXBZ8c84R6ve0/img.jpg&quot; data-alt=&quot;언제가 느끼는 거지만 초밥은 사진을 예쁘게 찍기가 참 어려운 것 같다.&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/R9ju6/btrWEgedUzO/cwU9DKS6DYXBZ8c84R6ve0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FR9ju6%2FbtrWEgedUzO%2FcwU9DKS6DYXBZ8c84R6ve0%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;4032&quot; height=&quot;3024&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-12 008.jpeg&quot; data-origin-width=&quot;4032&quot; data-origin-height=&quot;3024&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;언제가 느끼는 거지만 초밥은 사진을 예쁘게 찍기가 참 어려운 것 같다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사진 가장 우측에 있는 '김치 광어'라는 초밥이 정말 맛있다. 완전하게 김치라기 보다는 배추를 절여서 참기름이랑 고추가루 등으로 양념한 것 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;철없던 1학년 시절 매장에 처음 방문했을 때 저 초밥을 먹고 너무 충격을 받아서 사장님에게 어떻게 만드냐고 물어봤다가 영업 비밀이라서 알려줄 수 없다는 답변을 들었던 신비함 가득한 초밥이다. 이날은 점심 손님이 좀 있어서 서비스까지는 못 받고 왔다. 하지만 누구든 이 글을 본다면 다음에 한가할 때 가서 사진 찍어서 인스타에 포스팅하고 서비스 꼭 받길 바란다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;밥 먹고는 강아지 카페에 갔다. 학교 앞에 강아지 카페가 있는줄 몰랐다. 문을 열자마자 10마리가 넘는 강아지들이 시끄럽게 짖으면서 반겨(?)주었다. 이렇게 얌전하게 내 품에 안겨 있는걸 보면 반겨주었던게 맞는것(?) 같다.&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/bpLpzw/btrWEgrLSzP/iY6mGlLH0OBK9AKGa03ee1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bpLpzw/btrWEgrLSzP/iY6mGlLH0OBK9AKGa03ee1/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-11 007.jpeg&quot; style=&quot;width: 49.4186%; margin-right: 10px;&quot; data-widthpercent=&quot;50&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bpLpzw/btrWEgrLSzP/iY6mGlLH0OBK9AKGa03ee1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbpLpzw%2FbtrWEgrLSzP%2FiY6mGlLH0OBK9AKGa03ee1%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;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bmnK9g/btrWD4ydIEG/BPmhWTJhRwMU7YjixM7E90/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bmnK9g/btrWD4ydIEG/BPmhWTJhRwMU7YjixM7E90/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-08 006.jpeg&quot; data-widthpercent=&quot;50&quot; style=&quot;width: 49.4186%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bmnK9g/btrWD4ydIEG/BPmhWTJhRwMU7YjixM7E90/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbmnK9g%2FbtrWD4ydIEG%2FBPmhWTJhRwMU7YjixM7E90%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;/&gt;&lt;/span&gt;&lt;/div&gt;
  &lt;figcaption&gt;왼쪽은 사탕이 오른쪽은... 기억이 안난다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;왼쪽에 있는 친구는 사탕이라는 친군데 한성깔 하는 친구다. 안 놀아주면 엄청 화낸다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두근두근 기대를 안고 종강총회를 갔다. 놀랍게도 종강총회에 군인 혼자 갈 수 없어서 또 다른 군인 친구를 데려갔다.&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/DXN9R/btrWDOPMU75/Zbmhv7FVGNain4jjfOcx9k/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DXN9R/btrWDOPMU75/Zbmhv7FVGNain4jjfOcx9k/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;2316&quot; data-origin-height=&quot;3088&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-07 005.jpeg&quot; style=&quot;width: 49.4186%; margin-right: 10px;&quot; data-widthpercent=&quot;50&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DXN9R/btrWDOPMU75/Zbmhv7FVGNain4jjfOcx9k/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDXN9R%2FbtrWDOPMU75%2FZbmhv7FVGNain4jjfOcx9k%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;2316&quot; height=&quot;3088&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/q4Pbn/btrWBhTuVb2/BYFJKVDfpHzzrS4K5p2Mq0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/q4Pbn/btrWBhTuVb2/BYFJKVDfpHzzrS4K5p2Mq0/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-07 004.jpeg&quot; style=&quot;width: 49.4186%;&quot; data-widthpercent=&quot;50&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/q4Pbn/btrWBhTuVb2/BYFJKVDfpHzzrS4K5p2Mq0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fq4Pbn%2FbtrWBhTuVb2%2FBYFJKVDfpHzzrS4K5p2Mq0%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;/&gt;&lt;/span&gt;&lt;/div&gt;
  &lt;figcaption&gt;오른쪽은 내가 1학년 때 디자인한 스티커다. 아직도 과방에 남아 있어서 신기해서 찍었는데, 이제는 악성재고가 되었다고 한다... 내가 와 이게 아직도 있어? 했을 때 아 그거 이제 악성재고야 라고 했던 친구는 내가 디자인 했다는 사실을 모르고 한 말이길...&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 같은 주 화요일에 단과대 차원에서 종강총회를 해버리는 바람에 총 14명 밖에 참여하지 않는 소박한 종강총회가 되었다...&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;14명 중에서 학생회 7명을 제외하면 7명이 실제로 참여한 사람들인데 그 중에서 4명이 19학번이었다. (정말 엄청나지 않을 수 없었다.) 그래도 사람이 적어서 경품 타가기는 정말 좋은 환경이었다. 실제로 류승현은 휴가 나와서 30만원 상당의 포터블 디스플레이를 타갔다... 근데 승현이 당첨번호가 사실은 내가 받았던 건데 너 먼저 받아를 해버려서 운명이 뒤바뀌어버렸다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래도 뒷풀이 때는 사람들이 좀 와서 친해질 수 있었다. 20년도에 코로나가 터지면서 사실상 알고 있는 후배들이 거의 없었는데 후배들이랑 얘기해보니까 신기했다!! (나... 선배가 된걸지도?)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 선배이긴 해도 이미 화석 라인에 들어가버린 19학번인 나는 조용히 빠져서 99년생들이랑 놀았다. (근데 그 사람들... 20학번이었다...!)&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/p4Bwl/btrWCGdY9Li/33hBl7gP6K0GbTgmtMJTKk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/p4Bwl/btrWCGdY9Li/33hBl7gP6K0GbTgmtMJTKk/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-05 003.jpeg&quot; style=&quot;width: 49.4186%; margin-right: 10px;&quot; data-widthpercent=&quot;50&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/p4Bwl/btrWCGdY9Li/33hBl7gP6K0GbTgmtMJTKk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fp4Bwl%2FbtrWCGdY9Li%2F33hBl7gP6K0GbTgmtMJTKk%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;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bMHbV9/btrWCSrHHWN/LJOkdlcqVoWWIRepdJeS6k/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bMHbV9/btrWCSrHHWN/LJOkdlcqVoWWIRepdJeS6k/img.jpg&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;3024&quot; data-origin-height=&quot;4032&quot; data-filename=&quot;KakaoTalk_Photo_2023-01-19-01-37-04 002.jpeg&quot; style=&quot;width: 49.4186%;&quot; data-widthpercent=&quot;50&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bMHbV9/btrWCSrHHWN/LJOkdlcqVoWWIRepdJeS6k/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbMHbV9%2FbtrWCSrHHWN%2FLJOkdlcqVoWWIRepdJeS6k%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;/&gt;&lt;/span&gt;&lt;/div&gt;
  &lt;figcaption&gt;육회는 사랑이다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;결론&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 나의 휴가가 끝이났다. 그래도 일상글을 써보니까 '와 나 재밌게 놀았구나!' 생각이 들어서 좋다. :)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;안그래도 요즘 부대에 갇혀 있는게 스트레스 받아서 탈출하고 싶다는 생각만 하고 있었는데, 탈출했던 나의 일상(?)을 사진을 통해 돌아보니 대리 만족이 되는 것 같다. (과거의 나... 행복했구나...)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일부러 크리스마스는 부대에서 보냈다. 나와 있는다고 할 것도 없고... 괜히 길거리에서 커플들을 마주치면 화나 날 것 같아서 ^^ 그리고 얼마 전에 커플이 된 집주인 때문에 크리스마스 때도 있는건 좀 실례겠다 싶기도 했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;친구의 추천을 받아서 일상글을 처음 작성해보았다! 근데 생각보다 재밌어서 앞으로 간간이 올릴 것 같다.  &lt;/p&gt;</description>
      <category>이야기/일기</category>
      <author>JuniorEinstein</author>
      <guid isPermaLink="true">https://cordelia273.tistory.com/50</guid>
      <comments>https://cordelia273.tistory.com/50#entry50comment</comments>
      <pubDate>Thu, 19 Jan 2023 02:55:16 +0900</pubDate>
    </item>
    <item>
      <title>[2630] 색종이 만들기 (Python3)</title>
      <link>https://cordelia273.tistory.com/49</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;갑자기 사무실 옆자리 앉은 후임과 알고리즘 문제 풀기 대결이 붙어서 알고리즘을 풀기 시작했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.acmicpc.net/problem/2630&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://www.acmicpc.net/problem/2630&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1673625316575&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;2630번: 색종이 만들기&quot; data-og-description=&quot;첫째 줄에는 전체 종이의 한 변의 길이 N이 주어져 있다. N은 2, 4, 8, 16, 32, 64, 128 중 하나이다. 색종이의 각 가로줄의 정사각형칸들의 색이 윗줄부터 차례로 둘째 줄부터 마지막 줄까지 주어진다. &quot; data-og-host=&quot;www.acmicpc.net&quot; data-og-source-url=&quot;https://www.acmicpc.net/problem/2630&quot; data-og-url=&quot;https://www.acmicpc.net/problem/2630&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bvv3WL/hyRgklEPct/BMAknksWvBbgyeJVkJdkU1/img.png?width=2834&amp;amp;height=1480&amp;amp;face=0_0_2834_1480&quot;&gt;&lt;a href=&quot;https://www.acmicpc.net/problem/2630&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.acmicpc.net/problem/2630&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bvv3WL/hyRgklEPct/BMAknksWvBbgyeJVkJdkU1/img.png?width=2834&amp;amp;height=1480&amp;amp;face=0_0_2834_1480');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;2630번: 색종이 만들기&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;첫째 줄에는 전체 종이의 한 변의 길이 N이 주어져 있다. N은 2, 4, 8, 16, 32, 64, 128 중 하나이다. 색종이의 각 가로줄의 정사각형칸들의 색이 윗줄부터 차례로 둘째 줄부터 마지막 줄까지 주어진다.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.acmicpc.net&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;문제&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 &amp;lt;그림 1&amp;gt;과 같이 여러개의 정사각형칸들로 이루어진 정사각형 모양의 종이가 주어져 있고, 각 정사각형들은 하얀색으로 칠해져 있거나 파란색으로 칠해져 있다. 주어진 종이를 일정한 규칙에 따라 잘라서 다양한 크기를 가진 정사각형 모양의 하얀색 또는 파란색 색종이를 만들려고 한다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;215&quot; data-origin-height=&quot;221&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bBbm2G/btrWcrBdcdE/V3dQizsjlooJho0a7ivMK0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bBbm2G/btrWcrBdcdE/V3dQizsjlooJho0a7ivMK0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bBbm2G/btrWcrBdcdE/V3dQizsjlooJho0a7ivMK0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbBbm2G%2FbtrWcrBdcdE%2FV3dQizsjlooJho0a7ivMK0%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;215&quot; height=&quot;221&quot; data-origin-width=&quot;215&quot; data-origin-height=&quot;221&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전체 종이의 크기가 N&amp;times;N(N=2k, k는 1 이상 7 이하의 자연수) 이라면 종이를 자르는 규칙은 다음과 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전체 종이가 모두 같은 색으로 칠해져 있지 않으면 가로와 세로로 중간 부분을 잘라서 &amp;lt;그림 2&amp;gt;의 I, II, III, IV와 같이 똑같은 크기의 네 개의 N/2 &amp;times; N/2색종이로 나눈다. 나누어진 종이 I, II, III, IV 각각에 대해서도 앞에서와 마찬가지로 모두 같은 색으로 칠해져 있지 않으면 같은 방법으로 똑같은 크기의 네 개의 색종이로 나눈다. 이와 같은 과정을 잘라진 종이가 모두 하얀색 또는 모두 파란색으로 칠해져 있거나, 하나의 정사각형 칸이 되어 더 이상 자를 수 없을 때까지 반복한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위와 같은 규칙에 따라 잘랐을 때 &amp;lt;그림 3&amp;gt;은 &amp;lt;그림 1&amp;gt;의 종이를 처음 나눈 후의 상태를, &amp;lt;그림 4&amp;gt;는 두 번째 나눈 후의 상태를, &amp;lt;그림 5&amp;gt;는 최종적으로 만들어진 다양한 크기의 9장의 하얀색 색종이와 7장의 파란색 색종이를 보여주고 있다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;487&quot; data-origin-height=&quot;488&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/sjLqj/btrWcr87fPu/WqzKp1Xm6O1zM52N59S9Ik/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/sjLqj/btrWcr87fPu/WqzKp1Xm6O1zM52N59S9Ik/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/sjLqj/btrWcr87fPu/WqzKp1Xm6O1zM52N59S9Ik/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsjLqj%2FbtrWcr87fPu%2FWqzKp1Xm6O1zM52N59S9Ik%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;487&quot; height=&quot;488&quot; data-origin-width=&quot;487&quot; data-origin-height=&quot;488&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입력으로 주어진 종이의 한 변의 길이 N과 각 정사각형칸의 색(하얀색 또는 파란색)이 주어질 때 잘라진 하얀색 색종이와 파란색 색종이의 개수를 구하는 프로그램을 작성하시오.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;입력&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #555555;&quot;&gt;첫째 줄에는 전체 종이의 한 변의 길이 N이 주어져 있다. N은 2, 4, 8, 16, 32, 64, 128 중 하나이다. 색종이의 각 가로줄의 정사각형칸들의 색이 윗줄부터 차례로 둘째 줄부터 마지막 줄까지 주어진다. 하얀색으로 칠해진 칸은 0, 파란색으로 칠해진 칸은 1로 주어지며, 각 숫자 사이에는 빈칸이 하나씩 있다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;sample-input-1&quot; class=&quot;basic&quot;&gt;&lt;code&gt;8
1 1 0 0 0 0 1 1
1 1 0 0 0 0 1 1
0 0 0 0 1 1 0 0
0 0 0 0 1 1 0 0
1 0 0 0 1 1 1 1
0 1 0 0 1 1 1 1
0 0 1 1 1 1 1 1
0 0 1 1 1 1 1 1&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;&lt;span style=&quot;background-color: #ffffff; color: #555555;&quot;&gt;출력&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #555555;&quot;&gt;첫째 줄에는 잘라진 햐얀색 색종이의 개수를 출력하고, 둘째 줄에는 파란색 색종이의 개수를 출력한다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;sample-output-1&quot; class=&quot;angelscript&quot;&gt;&lt;code&gt;9
7&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;생각의 흐름 및 풀이&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;'분할 정복' 카테고리의 문제이고, 재귀를 이용해 풀 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음 생각의 흐름은 이랬다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;대충 재귀 함수에 넣고 돌리면 되지 않을까? (하지만 시간이 오래 걸리는 문제가 생길 수 있다.)&lt;/li&gt;
&lt;li&gt;재귀를 돌릴 때 최적화할 수 있는 방법을 찾아 보아야 한다. (&lt;u&gt;&lt;b&gt;색종이가 하나의 색으로만 구성되어 있는지 확인하는 부분&lt;/b&gt;&lt;/u&gt;일 것이다.)&lt;/li&gt;
&lt;li&gt;재귀함수는 전체 혹은 잘린 일부분 색종이 배열과 크기를 받는 형태가 될 것이다.&lt;/li&gt;
&lt;li&gt;하지만 2차원 배열을 처리하는건 귀찮은 일이니 1차원 배열로 flatten해서 사용해보자.&lt;/li&gt;
&lt;li&gt;그 안에서는 색종이에 대한 검증 (하나의 색으로만 이루어졌는지)과 하나의 색이 아닐 때 4분할을 하는 코드가 들어갈 것이다.&lt;/li&gt;
&lt;li&gt;색종이가 하나의 색으로만 구성되었는지 확인하려면 반복문을 돌려서 확인하는 것보다는 색종이에 적힌 숫자의 sum으로 비교하는 것이 좋아 보인다.&lt;/li&gt;
&lt;li&gt;&lt;u&gt;&lt;b&gt;색종이에 적힌 숫자의 합이 0이면 흰색, 합이 크기의 제곱이면 파란색, 그렇지 않으면 분할해야 하는 색종이로 분류한다.&lt;/b&gt;&lt;/u&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 다음과 같이 코드를 짰다.&lt;/p&gt;
&lt;pre id=&quot;code_1673626084922&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import sys

size = int(input())
data = sum([list(map(int, sys.stdin.readline().split()))
           for _ in range(size)], [])

white = 0
blue = 0


def check_paper(paper, size):
    global white
    global blue
    paper_sum = sum(paper)

    if(paper_sum == 0):
        white += 1
        return
    if(paper_sum == size * size):
        blue += 1
        return

    new_size = int(size / 2)
    arr1 = sum([list(paper[i * 2 * new_size:(i * 2 + 1) * new_size])
               for i in range(new_size)], [])
    arr2 = sum([list(paper[(i * 2 + 1) * new_size:(i * 2 + 2) * new_size])
               for i in range(new_size)], [])
    arr3 = sum([list(paper[(i + new_size) * new_size * 2:(i + new_size) * new_size * 2 + new_size])
               for i in range(new_size)], [])
    arr4 = sum([list(paper[(i + new_size) * new_size * 2 + new_size:(i + new_size) * new_size * 2 + new_size * 2])
               for i in range(new_size)], [])

    check_paper(arr1, new_size)
    check_paper(arr2, new_size)
    check_paper(arr3, new_size)
    check_paper(arr4, new_size)


check_paper(data, size)

print(white)
print(blue)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사실 처음에는 위와 정확히 똑같은 로직을 javascript 코드로 짜서 돌렸지만, &lt;b&gt;런타임 에러(Range Error)&lt;/b&gt;가 떴다. 아무래도 허용하는 범위 이상의 데이터를 처리하게 된 것 같다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;결론&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오랜만에 알고리즘 문제를 풀어보니까 재밌다. 앞으로도 심심하면 가끔씩 풀어봐야겠다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;문제를 풀고 나서 다른 사람들이 푼 코드를 보니까 함수 안에 &lt;u&gt;&lt;b&gt;색종이 배열을 통째로 넣는게 아니라 위치 index만 커서의 형태로 (aabb) 넣어서 사용하던데 그게 훨씬 깔끔해 보이긴 한다.&lt;/b&gt;&lt;/u&gt;&lt;/p&gt;</description>
      <category>알고리즘/백준 문제 풀이</category>
      <category>백준</category>
      <category>알고리즘</category>
      <category>파이썬</category>
      <author>JuniorEinstein</author>
      <guid isPermaLink="true">https://cordelia273.tistory.com/49</guid>
      <comments>https://cordelia273.tistory.com/49#entry49comment</comments>
      <pubDate>Sat, 14 Jan 2023 01:11:30 +0900</pubDate>
    </item>
    <item>
      <title>[Tailwindcss] css 코드 1줄 없이 예쁜 웹사이트 만들기!</title>
      <link>https://cordelia273.tistory.com/48</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;640&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ld5BW/btrRYx6bjAc/rteLkmM8TKKyY1BUatpGZK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ld5BW/btrRYx6bjAc/rteLkmM8TKKyY1BUatpGZK/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ld5BW/btrRYx6bjAc/rteLkmM8TKKyY1BUatpGZK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fld5BW%2FbtrRYx6bjAc%2FrteLkmM8TKKyY1BUatpGZK%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;1280&quot; height=&quot;640&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;640&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;제가 요즘 푹 빠져 있는 css 프레임워크가 하나 있습니다. 바로 &lt;b&gt;Tailwindcss&lt;/b&gt;인데요, 제가 최근 개발한 5개의 프로젝트에 모두 썼을만큼 편리하고 아름다운 웹사이트를 빠르게 개발할 수 있다는 장점이 있어서 여러분에게도 소개하려고 합니다!&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;Tailwindcss가 뭐죠?  &lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;tailwindcss는 (이후 테일윈드) 부트스트랩과 비슷한 &lt;b&gt;css 프레임워크&lt;/b&gt;입니다. 개발에 자주 사용되는 css 코드들을 미리 정의해 놓고, 클래스에 미리 정의된 코드의 이름을 적으면 스타일이 적용되는 방식이죠.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;edited_스크린샷 2022-11-24 오전 8.48.34.png&quot; data-origin-width=&quot;908&quot; data-origin-height=&quot;463&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/QdZTJ/btrRX3K3N8F/4m00tuT27VqVyzkcD4l3kK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/QdZTJ/btrRX3K3N8F/4m00tuT27VqVyzkcD4l3kK/img.png&quot; data-alt=&quot;tailwindcss가 자동으로 생성하는 css 파일&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/QdZTJ/btrRX3K3N8F/4m00tuT27VqVyzkcD4l3kK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FQdZTJ%2FbtrRX3K3N8F%2F4m00tuT27VqVyzkcD4l3kK%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;908&quot; height=&quot;463&quot; data-filename=&quot;edited_스크린샷 2022-11-24 오전 8.48.34.png&quot; data-origin-width=&quot;908&quot; data-origin-height=&quot;463&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;tailwindcss가 자동으로 생성하는 css 파일&lt;/figcaption&gt;
&lt;/figure&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/ee11SK/btrRX2k2iRY/ZlEOTQSYhy88UUZrVcBWk0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ee11SK/btrRX2k2iRY/ZlEOTQSYhy88UUZrVcBWk0/img.png&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;1248&quot; data-origin-height=&quot;490&quot; data-filename=&quot;스크린샷 2022-11-24 오전 8.48.49.png&quot; style=&quot;width: 66.0236%; margin-right: 10px;&quot; data-widthpercent=&quot;66.8&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ee11SK/btrRX2k2iRY/ZlEOTQSYhy88UUZrVcBWk0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fee11SK%2FbtrRX2k2iRY%2FZlEOTQSYhy88UUZrVcBWk0%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;1248&quot; height=&quot;490&quot;/&gt;&lt;/span&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bb6XOX/btrRWKeEGr2/Of2EckMrVtUnibLZ9BZBDk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bb6XOX/btrRWKeEGr2/Of2EckMrVtUnibLZ9BZBDk/img.png&quot; data-is-animation=&quot;false&quot; data-origin-width=&quot;1000&quot; data-origin-height=&quot;790&quot; data-filename=&quot;스크린샷 2022-11-24 오전 8.48.58.png&quot; data-widthpercent=&quot;33.2&quot; style=&quot;width: 32.8136%;&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bb6XOX/btrRWKeEGr2/Of2EckMrVtUnibLZ9BZBDk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbb6XOX%2FbtrRWKeEGr2%2FOf2EckMrVtUnibLZ9BZBDk%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;1000&quot; height=&quot;790&quot;/&gt;&lt;/span&gt;&lt;/div&gt;
  &lt;figcaption&gt;왼쪽과 같이 코드를 작성하면, 오른쪽과 같은 결과가 나옵니다. (css 코드가 한줄도 없죠!)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Bootstrap, bulma, materialize, ui-kit 등등... 정말 수많은 css 프레임워크들이 있는데요. 제가 웬만한건 다 써봤지만 테일원드만큼 잘 만들어지고, 편하게 쓸 수 있는 것은 없었습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;테일윈드의 장점  &lt;/b&gt;&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;쓸만한 모든 css를 통째로 옮겨 놓아서, 새로 만들 필요가 없다!&lt;/li&gt;
&lt;li&gt;강력한 기본 색 파레트 제공&lt;/li&gt;
&lt;li&gt;config 파일을 이용한 강력한 확장성 및 커스터마이징 제공&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2022-11-24 오전 8.56.49.png&quot; data-origin-width=&quot;1632&quot; data-origin-height=&quot;424&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dutxtq/btrRXGCAL6o/ekCvMyuYnCzibuxASK2HvK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dutxtq/btrRXGCAL6o/ekCvMyuYnCzibuxASK2HvK/img.png&quot; data-alt=&quot;부트스트랩에서 기본 제공하는 색 파레트&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dutxtq/btrRXGCAL6o/ekCvMyuYnCzibuxASK2HvK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdutxtq%2FbtrRXGCAL6o%2FekCvMyuYnCzibuxASK2HvK%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;1632&quot; height=&quot;424&quot; data-filename=&quot;스크린샷 2022-11-24 오전 8.56.49.png&quot; data-origin-width=&quot;1632&quot; data-origin-height=&quot;424&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;부트스트랩에서 기본 제공하는 색 파레트&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;ezgif-3-a4d7d97579.gif&quot; data-origin-width=&quot;600&quot; data-origin-height=&quot;303&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vziQB/btrRVva19iU/d3cwFrdPY3hoFyhvuTe03k/img.gif&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vziQB/btrRVva19iU/d3cwFrdPY3hoFyhvuTe03k/img.gif&quot; data-alt=&quot;테일윈트에서 기본 제공하는 색 파레트&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vziQB/btrRVva19iU/d3cwFrdPY3hoFyhvuTe03k/img.gif&quot; srcset=&quot;https://blog.kakaocdn.net/dn/vziQB/btrRVva19iU/d3cwFrdPY3hoFyhvuTe03k/img.gif&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;600&quot; height=&quot;303&quot; data-filename=&quot;ezgif-3-a4d7d97579.gif&quot; data-origin-width=&quot;600&quot; data-origin-height=&quot;303&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;테일윈트에서 기본 제공하는 색 파레트&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;유틸리티 중심 설계  ️&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이런 장점들은 테일윈드의 코어 컨셉에서 나오는 것 같습니다. 테일윈드는 &lt;b&gt;Utility-First Fundamentals&lt;/b&gt;를 메인 컨셉으로 내세우고 있습니다. 이는 &lt;u&gt;&lt;b&gt;어떤 디자인을 만들어내기 위한 전용 클래스 및 스타일링을 하는 것이 아닌, 어디서든 활용할 수 있는 유틸리티 클래스는 만드는 것&lt;/b&gt;&lt;/u&gt;을 이야기 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공식 문서에서는 다음과 같은 두 가지 예시로 설명하고 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2022-11-24 오전 9.10.28.png&quot; data-origin-width=&quot;770&quot; data-origin-height=&quot;1288&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bxA257/btrR1gbAnTc/E0Qxf7fIPFe0bvSaVpDXm1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bxA257/btrR1gbAnTc/E0Qxf7fIPFe0bvSaVpDXm1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bxA257/btrR1gbAnTc/E0Qxf7fIPFe0bvSaVpDXm1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbxA257%2FbtrR1gbAnTc%2FE0Qxf7fIPFe0bvSaVpDXm1%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;770&quot; height=&quot;1288&quot; data-filename=&quot;스크린샷 2022-11-24 오전 9.10.28.png&quot; data-origin-width=&quot;770&quot; data-origin-height=&quot;1288&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;첫 번째 예시는 토스트 알림을 만들기 위해 전용 클래스를 만들고, 그에 대응하는 스타일을 만드는 방법입니다. 하지만 위의 예시에서 볼 수 있듯이 &lt;b&gt;코드의 길이가 길어지고, style 태그 안에 css 코드를 따로 작성해 주어야 한다&lt;/b&gt;는 단점이 있죠.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;css 코드를 별도의 style 파일로 분리한다면 관리해야하는 파일이 더 늘어나고 개발에 어려움을 겪을 것입니다. (아마 notification-style.css와 같은 파일들을 끊임없이 만들어내게 되겠죠.)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 테일윈드는 사람들이 &lt;b&gt;기본적으로 많이 사용하는 스타일들을 전부 개별 분리하여 css 코드로 정의&lt;/b&gt;해 놓았습니다. 따라서 다음과 같이 css 없이 같은 결과를 만들어낼 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2022-11-24 오전 9.10.36.png&quot; data-origin-width=&quot;772&quot; data-origin-height=&quot;494&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bledIx/btrRW96jCgU/d4wjKdUKgXkqruqWWLBqOK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bledIx/btrRW96jCgU/d4wjKdUKgXkqruqWWLBqOK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bledIx/btrRW96jCgU/d4wjKdUKgXkqruqWWLBqOK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbledIx%2FbtrRW96jCgU%2Fd4wjKdUKgXkqruqWWLBqOK%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;772&quot; height=&quot;494&quot; data-filename=&quot;스크린샷 2022-11-24 오전 9.10.36.png&quot; data-origin-width=&quot;772&quot; data-origin-height=&quot;494&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;어떤가요? 코드가 훨씬 간결하고 명확하죠?&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;u&gt;&lt;b&gt;클래스 이름들을 css 코드 읽듯이 그대로 읽을 수 있다는 것도 엄청난 장점 &lt;/b&gt;&lt;/u&gt;입니다. 클래스 이름만 보아도 어떤 스타일이 적용되는지 한눈에 파악할 수 있죠.&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;b&gt;p-6&lt;/b&gt; : padding을 6만큼 설정한다.&lt;br /&gt;&lt;b&gt;max-w-sm&lt;/b&gt; : max-width를 작게 설정한다.&lt;br /&gt;&lt;b&gt;mx-auto&lt;/b&gt; : 좌우(x) margin을 auto로 설정한다.&lt;br /&gt;&lt;b&gt;bg-white&lt;/b&gt; : 배경색을 white로 설정한다.&lt;br /&gt;&lt;b&gt;rounded-xl&lt;/b&gt; : 테두리를 둥굴게 설정한다. (border-radius)&lt;br /&gt;&lt;b&gt;shadow-lg&lt;/b&gt; : 큰 그림자를 적용한다.&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;테일윈드를 사용하지 않았다면, 각각의 클래스 이름을 보고 그 클래스에 어떤 스타일이 적용되어 있는지 확인하기 위해 style 파일과 html 파일을 번갈아보면서 살펴보아야 하는 상황이 생길겁니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정말 쓸만한 테일윈드, 이제 한 번 체험해 볼게요!&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;Tailwindcss 설치하기  ️&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;테일윈드 공식 사이트  &lt;/b&gt;&lt;br /&gt;&lt;a href=&quot;https://tailwindcss.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://tailwindcss.com/&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1669249463803&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;Tailwind CSS - Rapidly build modern websites without ever leaving your HTML.&quot; data-og-description=&quot;Documentation for the Tailwind CSS framework.&quot; data-og-host=&quot;tailwindcss.com&quot; data-og-source-url=&quot;https://tailwindcss.com/&quot; data-og-url=&quot;https://tailwindcss.com/&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bshVy2/hyQE4YTIKu/cGMNgH9TIAS90kZniodfXk/img.jpg?width=2560&amp;amp;height=1280&amp;amp;face=0_0_2560_1280,https://scrap.kakaocdn.net/dn/wtwTD/hyQFbX0j89/K6CLnfGsvwL5R3kRZFN8P1/img.jpg?width=2560&amp;amp;height=1280&amp;amp;face=0_0_2560_1280,https://scrap.kakaocdn.net/dn/wreYW/hyQE4xSg7s/K9l8kyhfxxyr6ZmaDVlkj0/img.jpg?width=400&amp;amp;height=400&amp;amp;face=7_133_321_270&quot;&gt;&lt;a href=&quot;https://tailwindcss.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://tailwindcss.com/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bshVy2/hyQE4YTIKu/cGMNgH9TIAS90kZniodfXk/img.jpg?width=2560&amp;amp;height=1280&amp;amp;face=0_0_2560_1280,https://scrap.kakaocdn.net/dn/wtwTD/hyQFbX0j89/K6CLnfGsvwL5R3kRZFN8P1/img.jpg?width=2560&amp;amp;height=1280&amp;amp;face=0_0_2560_1280,https://scrap.kakaocdn.net/dn/wreYW/hyQE4xSg7s/K9l8kyhfxxyr6ZmaDVlkj0/img.jpg?width=400&amp;amp;height=400&amp;amp;face=7_133_321_270');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Tailwind CSS - Rapidly build modern websites without ever leaving your HTML.&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Documentation for the Tailwind CSS framework.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;tailwindcss.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;테일윈드 공식 사이트에서 자세한 설치 방법을 확인할 수 있습니다!&lt;/p&gt;
&lt;p 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;스크린샷 2022-11-24 오전 9.24.58.png&quot; data-origin-width=&quot;2160&quot; data-origin-height=&quot;1410&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oeDvw/btrRXC7ZJB0/hN2SGL6qPs8Vn29RfDlqJk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oeDvw/btrRXC7ZJB0/hN2SGL6qPs8Vn29RfDlqJk/img.png&quot; data-alt=&quot;테일윈드 공식 사이트에서 확인할 수 있는 프레임워크 별 설치 가이드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oeDvw/btrRXC7ZJB0/hN2SGL6qPs8Vn29RfDlqJk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoeDvw%2FbtrRXC7ZJB0%2FhN2SGL6qPs8Vn29RfDlqJk%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;2160&quot; height=&quot;1410&quot; data-filename=&quot;스크린샷 2022-11-24 오전 9.24.58.png&quot; data-origin-width=&quot;2160&quot; data-origin-height=&quot;1410&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;테일윈드 공식 사이트에서 확인할 수 있는 프레임워크 별 설치 가이드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저는 요즘 vite를 자주 사용하고 있기 때문에 vite + react-ts 위주로 알아보겠습니다. react 없이 순수하게 tailwindcss만 사용해보실 분들은 아래의 cdn을 이용하시면 됩니다.&lt;/p&gt;
&lt;pre id=&quot;code_1669249868792&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;!doctype html&amp;gt;
&amp;lt;html&amp;gt;
&amp;lt;head&amp;gt;
  &amp;lt;meta charset=&quot;UTF-8&quot;&amp;gt;
  &amp;lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1.0&quot;&amp;gt;
  &amp;lt;script src=&quot;https://cdn.tailwindcss.com&quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;/head&amp;gt;
&amp;lt;body&amp;gt;
  &amp;lt;h1 class=&quot;text-3xl font-bold underline&quot;&amp;gt;
    Hello world!
  &amp;lt;/h1&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;1️⃣ Vite로 새로운 React 프로젝트 만들기&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우선은 vite로 새로운 react 프로젝트를 만들어줍니다. yarn이 설치되어 있다면, 아래의 코드를 쉽게 새로운 react/vite 프로젝트를 생성할 수 있습니다.&lt;/p&gt;
&lt;pre id=&quot;code_1669249965878&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt; yarn create vite new-app --template react-ts&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;npm을 사용하신다면 아래의 코드를 실행하면 됩니다.&lt;/p&gt;
&lt;pre id=&quot;code_1669250065051&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt; npm create vite@latest new-app -- --template react-ts&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 다음에 프로젝트 폴더로 이동해 tailwindcss를 설치해 보겠습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;2️⃣ tailwindcss 설치하기&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프로젝트 루트에서 아래 명령어를 실행해 tailwindcss를 설치합니다.&lt;/p&gt;
&lt;pre id=&quot;code_1669250273482&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt; yarn add -D tailwindcss postcss autoprefixer
&amp;gt; npx tailwindcss init -p&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;첫 번째 명령어는 tailwindcss와 함께 사용되는 라이브러리를 설치하고,&lt;br /&gt;두 번째 명령어는 tailwindcss를 설정하기 위한 기본 파일들을 생성합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 번째 명령어를 실행하면 프로젝트 루트에 &lt;b&gt;&quot;tailwind.config.cjs&quot;&lt;/b&gt; 파일이 생성되었을 겁니다.&lt;br /&gt;(typescript를 사용하지 않는다면 tailwind.config.js로 만들어질 거예요!)&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;3️⃣ tailwindcss 설정하기&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;react 혹은 vue 등의 프론트엔드 프레임워크에서 tailwindcss를 사용하려면 몇 가지 설정을 해주어야 합니다.&lt;br /&gt;생성된 설정파일을 열고 다음과 같이 수정해 주세요!&lt;/p&gt;
&lt;pre id=&quot;code_1669250593565&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;// [tailwind.config.cjs]
/** @type {import('tailwindcss').Config} */
module.exports = {
  content: [
    &quot;./index.html&quot;,
    &quot;./src/**/*.{js,ts,jsx,tsx}&quot;,
  ],
  theme: {
    extend: {},
  },
  plugins: [],
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;content 안에 파일 경로 및 확장자들이 추가되었습니다.&lt;br /&gt;react 프로젝트 기준으로 작성되었기 때문에 jsx, tsx 등 확장자를 추가해 주었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음으로 index.css 파일을 다음과 같이 수정합니다.&lt;/p&gt;
&lt;pre id=&quot;code_1669251260030&quot; class=&quot;css&quot; data-ke-language=&quot;css&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;/* index.css */
@tailwind base;
@tailwind components;
@tailwind utilities;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;4️⃣ 내 입맛대로 커스터마이징 하기&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;tailwind.config.cjs 파일에서 내 입맛에 맞게 테일윈드를 커스터마이징할 수 있습니다.&lt;br /&gt;저 같은 경우는 아래 코드로 primary color를 추가했습니다.&lt;/p&gt;
&lt;pre id=&quot;code_1669253446324&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;// tailwind.config.cjs
/** @type {import('tailwindcss').Config} */
const colors = require(&quot;tailwindcss/colors&quot;);
module.exports = {
  content: [&quot;./index.html&quot;, &quot;./src/**/*.{js,ts,jsx,tsx}&quot;],
  theme: {
    extend: {
      colors: {
        ...colors,
        primary: &quot;#1a74e5&quot;,
      },
    },
  },
  plugins: [],
};&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 색깔을 추가하면 색과 관련된 모든 코드에 primary color가 추가됩니다.&lt;br /&gt;그래서 설정 이후에 다음과 같은 코드들을 추가로 사용할 수 있게 됩니다.&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;bg-primary&lt;br /&gt;text-primary&lt;br /&gt;border-primary&lt;br /&gt;outline-primary&lt;br /&gt;등등&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 외에도 테일윈드에서 제공하는 다양한 플러그인들을 적용할 수도 있고, padding, margin 사이즈 등을 추가할 수도 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;일일이 새로운 설정을 추가하는 것이 귀찮을 수도 있습니다...&lt;/b&gt; (실제로 엄청 귀찮습니다.) 특히 margin, padding, font-size, width, height와 같이 자주 수정되고 내 입맛에 맞춰서 조금씩 다른 값으로 사용되는 코드들은 더 귀찮습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제로 다른 css 프레임워크들에서 제가 느꼈던 가장 &lt;b&gt;큰 단점은 프레임워크에서 제공하지 않는 스타일들을 직접 만들어야 한다는 점&lt;/b&gt;이었습니다. 때문에 프레임워크과 직접 작성한 css를 함께 사용해야 했던 것이죠. 그 과정에서 내가 원하는 디자인을 만들기 위해 새로운 클래스 이름과 스타일들을 만들어내고, inline style 등을 사용하면서 코드가 복잡해지는 문제가 있었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 테일윈드를 그런 문제들을 완벽하게 해결할 수 있는 방법을 제공합니다. 아래의 코드를 살펴 보시죠.&lt;/p&gt;
&lt;pre id=&quot;code_1669253750303&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;lt;div class=&quot;w-[200px] h-[200px] text-[3rem] rounded-2xl overflow-hidden z-[10]&quot;&amp;gt;
	&amp;lt;img src=&quot;https://picsum.photos/200&quot; alt=&quot;random image&quot; /&amp;gt;
&amp;lt;/div&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원래 테일윈드에는 width를 200px로 지정할 수 있는 클래스를 제공하지 않습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위의 코드와 같이 &lt;b&gt;대괄호 안에 값을 직접 넣으면 테일윈드가 해당 값을 가지는 속성을 자동으로 css로 변환해 빌드&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;스크린샷 2022-11-24 오전 10.40.25.png&quot; data-origin-width=&quot;898&quot; data-origin-height=&quot;630&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/vEYzA/btrRXoIZR7G/m18h8gFai1A5xv7ST4ps2K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/vEYzA/btrRXoIZR7G/m18h8gFai1A5xv7ST4ps2K/img.png&quot; data-alt=&quot;해당 클래스가 자동으로 추가되어 빌드된 css 파일&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/vEYzA/btrRXoIZR7G/m18h8gFai1A5xv7ST4ps2K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvEYzA%2FbtrRXoIZR7G%2Fm18h8gFai1A5xv7ST4ps2K%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;898&quot; height=&quot;630&quot; data-filename=&quot;스크린샷 2022-11-24 오전 10.40.25.png&quot; data-origin-width=&quot;898&quot; data-origin-height=&quot;630&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;해당 클래스가 자동으로 추가되어 빌드된 css 파일&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;진짜 엄청나다고 밖에 말할 수 없습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 더 놀라운 점은!!&lt;br /&gt;테일윈드에서 css 파일을 빌드할 때 &lt;b&gt;내가 코드에 사용한 클래스들만 빌드한다는 점&lt;/b&gt;입니다.  &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를 들어서 테일윈드에서 제공하는 100가지 클래스 중에서 50가지만 사용하였다면, 사용된 50개의 클래스만을 가진 css 파일이 만들어지는 것입니다. 이렇게 되면 css 파일의 용량을 최적화해서 웹 사이트를 가볍게 만들 수 있습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;5️⃣ 코드 작성하기&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 테일윈드를 적용해 코드를 작성할 수 있습니다!&lt;/p&gt;
&lt;pre id=&quot;code_1669254288357&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;function App() {
  return (
    &amp;lt;div className=&quot;h-screen bg-gray-100&quot;&amp;gt;
      &amp;lt;nav className=&quot;bg-primary py-4&quot;&amp;gt;
        &amp;lt;div className=&quot;container mx-auto px-5&quot;&amp;gt;
          &amp;lt;h1 className=&quot;font-bold text-xl text-white&quot;&amp;gt;세상의 모든 지식&amp;lt;/h1&amp;gt;
        &amp;lt;/div&amp;gt;
      &amp;lt;/nav&amp;gt;

      &amp;lt;div className=&quot;container mx-auto&quot;&amp;gt;
        &amp;lt;section className=&quot;p-5&quot;&amp;gt;
          &amp;lt;header className=&quot;mb-4&quot;&amp;gt;
            &amp;lt;h2 className=&quot;font-bold text-lg&quot;&amp;gt;내 게시물&amp;lt;/h2&amp;gt;
          &amp;lt;/header&amp;gt;

          &amp;lt;div className=&quot;grid grid-cols-4 gap-5&quot;&amp;gt;
            &amp;lt;div className=&quot;rounded-2xl overflow-hidden&quot;&amp;gt;
              &amp;lt;img
                src=&quot;https://picsum.photos/200&quot;
                className=&quot;w-[200px] h-[100px] object-cover&quot;
              /&amp;gt;
              &amp;lt;div className=&quot;p-4 bg-white&quot;&amp;gt;
                &amp;lt;header className=&quot;mb-2&quot;&amp;gt;
                  &amp;lt;h3 className=&quot;font-bold text-ellipsis whitespace-nowrap overflow-hidden&quot;&amp;gt;
                    [Tailwindcss] css 1줄 없이 예쁜 웹사이트 만들기
                  &amp;lt;/h3&amp;gt;
                &amp;lt;/header&amp;gt;
                &amp;lt;p className=&quot;text-gray-400 text-sm&quot;&amp;gt;
                  안녕하세요! 오늘은 새로운 라이브러리를 소개해드릴까합니다!
                &amp;lt;/p&amp;gt;
              &amp;lt;/div&amp;gt;
            &amp;lt;/div&amp;gt;
            &amp;lt;div className=&quot;rounded-2xl overflow-hidden&quot;&amp;gt;
              &amp;lt;img
                src=&quot;https://picsum.photos/200&quot;
                className=&quot;w-full h-[150px] object-cover&quot;
              /&amp;gt;
              &amp;lt;div className=&quot;p-4 bg-white&quot;&amp;gt;
                &amp;lt;header className=&quot;mb-2&quot;&amp;gt;
                  &amp;lt;h3 className=&quot;font-bold text-ellipsis whitespace-nowrap overflow-hidden&quot;&amp;gt;
                    [Tailwindcss] css 1줄 없이 예쁜 웹사이트 만들기
                  &amp;lt;/h3&amp;gt;
                &amp;lt;/header&amp;gt;
                &amp;lt;p className=&quot;text-gray-400 text-sm&quot;&amp;gt;
                  안녕하세요! 오늘은 새로운 라이브러리를 소개해드릴까합니다!
                &amp;lt;/p&amp;gt;
              &amp;lt;/div&amp;gt;
            &amp;lt;/div&amp;gt;
            &amp;lt;div className=&quot;rounded-2xl overflow-hidden&quot;&amp;gt;
              &amp;lt;img
                src=&quot;https://picsum.photos/200&quot;
                className=&quot;w-full h-[150px] object-cover&quot;
              /&amp;gt;
              &amp;lt;div className=&quot;p-4 bg-white&quot;&amp;gt;
                &amp;lt;header className=&quot;mb-2&quot;&amp;gt;
                  &amp;lt;h3 className=&quot;font-bold text-ellipsis whitespace-nowrap overflow-hidden&quot;&amp;gt;
                    [Tailwindcss] css 1줄 없이 예쁜 웹사이트 만들기
                  &amp;lt;/h3&amp;gt;
                &amp;lt;/header&amp;gt;
                &amp;lt;p className=&quot;text-gray-400 text-sm&quot;&amp;gt;
                  안녕하세요! 오늘은 새로운 라이브러리를 소개해드릴까합니다!
                &amp;lt;/p&amp;gt;
              &amp;lt;/div&amp;gt;
            &amp;lt;/div&amp;gt;
            &amp;lt;div className=&quot;rounded-2xl overflow-hidden&quot;&amp;gt;
              &amp;lt;img
                src=&quot;https://picsum.photos/200&quot;
                className=&quot;w-full h-[150px] object-cover&quot;
              /&amp;gt;
              &amp;lt;div className=&quot;p-4 bg-white&quot;&amp;gt;
                &amp;lt;header className=&quot;mb-2&quot;&amp;gt;
                  &amp;lt;h3 className=&quot;font-bold text-ellipsis whitespace-nowrap overflow-hidden&quot;&amp;gt;
                    [Tailwindcss] css 1줄 없이 예쁜 웹사이트 만들기
                  &amp;lt;/h3&amp;gt;
                &amp;lt;/header&amp;gt;
                &amp;lt;p className=&quot;text-gray-400 text-sm&quot;&amp;gt;
                  안녕하세요! 오늘은 새로운 라이브러리를 소개해드릴까합니다!
                &amp;lt;/p&amp;gt;
              &amp;lt;/div&amp;gt;
            &amp;lt;/div&amp;gt;
          &amp;lt;/div&amp;gt;
        &amp;lt;/section&amp;gt;
      &amp;lt;/div&amp;gt;
    &amp;lt;/div&amp;gt;
  );
}

export default App;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;스크린샷 2022-11-24 오전 10.44.19.png&quot; data-origin-width=&quot;2880&quot; data-origin-height=&quot;1800&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cBNhbF/btrRXfyLVDF/aFQ5hyFoK5fFoHyGr2Pg7K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cBNhbF/btrRXfyLVDF/aFQ5hyFoK5fFoHyGr2Pg7K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cBNhbF/btrRXfyLVDF/aFQ5hyFoK5fFoHyGr2Pg7K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcBNhbF%2FbtrRXfyLVDF%2FaFQ5hyFoK5fFoHyGr2Pg7K%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;2880&quot; height=&quot;1800&quot; data-filename=&quot;스크린샷 2022-11-24 오전 10.44.19.png&quot; data-origin-width=&quot;2880&quot; data-origin-height=&quot;1800&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;&lt;/h3&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;결론&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 해서 css 한줄 없이 예쁜 웹사이트를 만들 수 있는 tailwindcss에 대하여 알아보았습니다.&lt;br /&gt;(실제로는 설정을 위해 3줄 작성했습니다 ㅎㅎ)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;tailwindcss, 어떠셨나요? 앞으로의 새로 시작하는 프로젝트에 한 번 적용해보세요!&lt;br /&gt;&lt;b&gt;그리고 여러분이 어떤 인상을 받으셨는지 댓글로 간단하게 남겨주세요  &lt;/b&gt;&lt;/p&gt;</description>
      <category>특강/웹 개발 속성 강좌</category>
      <category>css</category>
      <category>tailwindcss</category>
      <category>웹</category>
      <author>JuniorEinstein</author>
      <guid isPermaLink="true">https://cordelia273.tistory.com/48</guid>
      <comments>https://cordelia273.tistory.com/48#entry48comment</comments>
      <pubDate>Thu, 24 Nov 2022 10:46:45 +0900</pubDate>
    </item>
    <item>
      <title>2022.11.21. (월) 너는 어떤 사람이 되고 싶어?</title>
      <link>https://cordelia273.tistory.com/47</link>
      <description>&lt;blockquote data-ke-style=&quot;style1&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Noto Serif KR';&quot;&gt;너는 어떤 사람이 되고 싶어?&lt;/span&gt;&lt;/b&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;누구나 마음 속 깊은 곳에 자신이 되고 싶은 '어떤 모습'을 가지고 있다.&lt;br /&gt;근데 우리는 우리도 모르는 사이에 나 자신의 다른 사람의 시선에, 혹은 다른 사람과의 관계에 빗대어 표현하곤 한다.&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&quot;나는 사람들에게 존경 받는 사람이 되고 싶어!&quot;&amp;nbsp;- 김아무개&lt;br /&gt;&lt;/b&gt;&lt;b&gt;&quot;사람들이 인정하는 훌륭한 글을 쓰는 작가가 되고 싶어!&quot;&amp;nbsp;&lt;/b&gt;&lt;b&gt;- 상병 이ㅅㅍ&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나도 물론 내가 지향하고 되고 싶은 수많은 모습들이 있다. 그리고 그것들 대부분은 다른 사람의 시선에서 표현된 것들이다. 물론 오늘 하고 싶은 이야기는 다른 사람의 시선에 의해 결정된 나의 지향점이 잘못 되었다는 것이 아니다. (인간은 사회적인 동물이기 때문에, 그리고 관계중심인 대한민국에서는 더욱 더)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오늘 하고 싶은 이야기는 &lt;b&gt;내가 되고 싶은 모습, 다른 사람에게 비춰지고 싶은 모습에 대한 고찰과 반성&lt;/b&gt;이다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;나는 이런 사람이야!&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나는 굉장히 &lt;b&gt;외향적인 사람&lt;/b&gt;이다. 사람을 되게 좋아하고, 별로 친하지 않은 사람들에게도 반갑게 인사하며 쉽게 친해지는 성격이다. 때문에 부대 내에서 나를 모르는 사람이 없을 정도이다. (물론 나도 부대 사람들을 대부분 알고 있다!) 운동도 가리지 않고 다 좋아하고, 취미도 너무 다양해서 누가 뭐 하자고 하면 빼지 않기 때문에 정말 풀이 넓게 친구들을 사귄다. (심지어 바둑, 체스 등 정말 마이너한 취미도 가지고 있다!)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나는 &lt;b&gt;장난기&lt;/b&gt;가 많다. 조용히 옆으로 다가가 깜짝 놀래키거나 깜짝 선물이나 이벤트 하는 것도 좋아한다! (깜짝과 관련된 활동을 좋아하는 것 같기도 하다!)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나는 &lt;b&gt;오지랖이 넓다.&lt;/b&gt; 사실 엄마의 영향을 많이 받은 것 같다. 우리 엄마도 오지랖이 굉장히 넓다. 엘리베이터에서 유모차 안에서 멀뚱멀뚱 쳐다보고 있는 아이가 있으면 꼭 얼굴을 들이밀고 한마디씩 하는 것이나, 괜히 옆가게 사장님 걱정을 해 이것저것 챙겨주는 것이었다. 나도 주의력이 부족한건지 오지랖이 넓은건지 주변 일에 항상 관심이 많다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물론 남을 도와주는 일에 몸이 먼저 나간다는 장점도 있다.&amp;nbsp;얼마 전에는 KTX를 탔는데 문 앞 자리에 앉게 되었다. 그런데 잠시 후 아주머니 한 분이 화장실에 가려고 하셨는지 문을 열려고 하는데 옆으로 당기는 손잡이를 하염없이 누르고 계신 것이었다. 나는 큰 망설임 없이 일어나 문을 열어 드렸다. 아주머니는 고맙다는 인사를 하곤 화장실로 가셨다. 그 상황에서 나는 가만히 생각해볼 것도 없었다. 조금만 당기면 열리는 문도 못 여신 분이라면 KTX 화장실 문을 열 수 있을리가 없었다! 아니나 다를까 화장실 문 앞에서 또 이것저것 눌러보며 곤란해하고 계셨다. 나는 곧바로 화장실 문까지 열어드리고 자리에 돌아왔다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 낄낄빠빠를 잘 못한다는 단점도 있다. 항상 주변 일에 신경을 곤두 세우고 있기 때문에 쟤네들이 나 빼고 무슨 재밌는 얘기를 하고 있다 싶으면 가서 무슨 일인지 확인해야 했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이게 나라는 사람이다! 활발하지만 오지랖 넓고 장난기가 많은.&lt;br /&gt;하지만 &lt;b&gt;요즘 나 자신의 모습이 나는 마음에 썩 들지 않는다.&lt;/b&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;가벼운 사람은 싫어!  &amp;zwj;♂️&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결론만 말하면 내 스스로의 모습이 다른 사람에게 &lt;b&gt;'너무 가볍게 비춰지는 것 같아서'&lt;/b&gt;이다. 만화 캐릭터로 치면 항상 텐션이 높고 활발해서 하루종일 폴짝폴짝 뛰어다닐 것만 같은 그런 성격이다. 물론 그런 캐릭터는 항상 어느 순간 진중한 모습을 보이면서 반전 매력을 어필하기 나름이다. 나도 그렇단 말이다!! 진지할 때는 진지하고, 집중할 때는 정말 그 일에 푹 빠져서 주변 일에는 신경도 잘 못 쓰곤 한다. 하지만 사람들은 나의 그런 모습들을 잘 모르는 것 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이것 때문에 속상했던 경험이 다수 있다. 가령 나랑 친하다고 생각했던 친구의 비밀을 다른 사람을 통해 알게 된다던지... (가볍다는 이미지 때문에 비밀을 잘 못 지킬 것 같다고 생각한게 아닐까) 나에게 축구하자고 하는 사람들은 많지만 진지하게 고민이나 생각을 털어놓는 사람은 많이 없는 것 같다. 그리고 나는 &lt;b&gt;보기보다 굉장히 소심하고 걱정이 많기 때문에&lt;/b&gt; 이런 경험을 하게 되면 새벽에 잠 들지 못하고 뒤척인다.   근데 안 좋은 일들을 쉽게 잊어버리는 성격 때문에 오랫동안 슬픔에 잠겨있지는 않는다!  &lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;그래서 결론이 뭔데?&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사실 아직 잘 모르겠다. 어떤 모습을 보여줘야 나의 이미지를 바꿀 수 있는지, 나의 이미지를 바꾸어야 하는지 조차. 하지만 사람을 쉽게 바뀌지 않는다. 그렇기 때문에 계속 생각해야 한다. 내가 내린 소결론은 그렇다. &lt;b&gt;계속 생각하고, 더 이상 가벼워져서 날아가지 않게 행동행동에 조금 더 신중을 가하기로.&lt;/b&gt;&lt;/p&gt;</description>
      <category>이야기</category>
      <category>일기</category>
      <author>JuniorEinstein</author>
      <guid isPermaLink="true">https://cordelia273.tistory.com/47</guid>
      <comments>https://cordelia273.tistory.com/47#entry47comment</comments>
      <pubDate>Mon, 21 Nov 2022 23:40:02 +0900</pubDate>
    </item>
    <item>
      <title>아누북스, 8개월 간의 여정을 되돌아보며 (1)</title>
      <link>https://cordelia273.tistory.com/46</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;올해 4월달, &lt;b&gt;텍스트 인터렉션 기반 독서 커뮤니티 플랫폼 '아누북스'&lt;/b&gt;라는 아이템으로 창업경진대회를 참여하게 되었다. 처음에는 무작정 무료한 군생활을 달랠 수 있는 활동으로 시작했다. 참가 신청을 위한 사업계획서도 제출 기한 직전에 마무리 하였으니, 예선에 참여해 적당히 좋은 성적만 거두어도 만족할 일이었다. 하지만 해군창업경진대회 장려상을 시작으로, 국방부 창업경진대회도 통과하면서 K-Startup 예선까지 참여하게 되었다. &lt;b&gt;아슬아슬 줄타기를 하며 8개월 동안 우리가 만들어온 아이템, 그리고 그 과정에서 느꼈던 점들을 남겨보려고 한다.&lt;/b&gt;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;4월달, 무작정 시작했던 창업&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해군 소프트웨어개발병으로 근무하는 나는 마음 맞는 동기들과 함께 창업 경진대회를 시작했다. 그때 당시 내가 전자책과 관련된 아이템에 꽂혀 있어서, 사람들이 함께 책을 읽을 수 있는 전자책 플랫폼을 개발해보면 어떨까 했던 것이 '아누북스'의 시작이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음에는 &lt;b&gt;'오픈북'&lt;/b&gt;이라는 개발자가 지은 티가 팍팍나는 이름으로 시작했다. 전자책을 읽으면서 문장에 밑줄을 긋고, 댓글/감정표현을 통해 다른 사람과 소통할 수 있는. 혼자 해야했던 독서를 다른 사람과 함께 하는 활동으로 바꾸는, 세상에는 없던 새로운 독서경험을 제공한다는 것이 아이템의 컨셉. 개발자들답게 시장에 대한 분석 등 보다는 직관에 의존해 아이템 빌드를 시작하였다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;밑줄 긋는거, 어떻게 구현하는데?&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;처음에 개발한 것은&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;epub 파일을 불러와 보여주는 뷰어와 밑줄을 긋고 댓글을 달 수 있는 기능&lt;/b&gt;이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;드래그한 문장을 데이터베이스에 저장하고 불러오는 것부터 쉽지 않았다. 장편소설 기준 한 권 평균 1만자가 넘는 텍스트 중에서 특정 페이지 혹은 위치의 문장을 특정하는 것이 쉽지 않았다. 가령 '다'라는 한 글자만 드래그 하고 댓글을 달았을 때, 유저가 드래그한 '다'라는 글자가 몇 페이지 몇 번 문장에 있는 '다'인지 알아내는 것은 불가능한 일이다. 1만자 중에서 '다'라는 글자를 검색하면 아마&amp;nbsp;3,000개가 넘는 검색 결과가 나올 것이다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;이를 해결하기 위해 '라이너'라는 서비스를 참고하였다. 라이너는 웹 문서에서 기록하고 싶은 문장에 밑줄을 긋고, 간단한 메모 등을 남길 수 있는 서비스이다. 라이너가 어떤식으로 데이터를 저장하는지 분석해보았는데, 그 방식이 뒷통수를 한대 얻어 맞은 것처럼 단순하고 기발했다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;그것은 바로 유저가 특정 문장을 저장하면&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;그 문장의 앞뒤 10글자 정도를 함께 저장하는 것&lt;/b&gt;이다. html 문서를 파싱해서 텍스트 노드만 따로 추출한 뒤, 앞뒤로 특정 개수의 글자수를 함께 저장한다. 하지만 이렇게 함께 저장된 문장 조차도 중복될 수 있기 때문에, 앞뒤 10글자를 합친 문장과 같은 문장이 문서 내에 존재하는지 2중으로 검증하고, 만약 존재한다면 앞뒤로 붙이는 글자의 수를 1개씩 늘려가면서 앞뒤 글자가 합쳐진 문장이 문서 내 유일한 문장이 될때까지 반복한다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;이 방식을 그대로 적용해 '아누북스' (당시 '오픈북') 리더에도 밑줄 그은 문장을 정확하게 특정할 수 있는 기능이 탑재되었다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;시연영상 1 (1).gif&quot; data-origin-width=&quot;272&quot; data-origin-height=&quot;484&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c7ONhK/btsA2u6lbzI/1HIgkeLFkvzt2BTdmlAxR0/img.gif&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c7ONhK/btsA2u6lbzI/1HIgkeLFkvzt2BTdmlAxR0/img.gif&quot; data-alt=&quot;개발 완료된 아누북스 책 속의 커뮤니티&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c7ONhK/btsA2u6lbzI/1HIgkeLFkvzt2BTdmlAxR0/img.gif&quot; srcset=&quot;https://blog.kakaocdn.net/dn/c7ONhK/btsA2u6lbzI/1HIgkeLFkvzt2BTdmlAxR0/img.gif&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;272&quot; height=&quot;484&quot; data-filename=&quot;시연영상 1 (1).gif&quot; data-origin-width=&quot;272&quot; data-origin-height=&quot;484&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;개발 완료된 아누북스 책 속의 커뮤니티&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;군 내에서 개발할 수 있는 환경이 마땅치 않았기 때문에 우리는 새벽 내내 사지방(사이버지식정보방)에서 개발을 해야 했다. 지금 생각해보면 새벽 4시쯤 잠들어서 다음날 6시 반에 기상해 출근하는 생활을 일주일 넘게 했다는 사실이 믿겨지지 않는다. 서류 제출 당일에는 사지방에서 밤을 새고 바로 점호에 나가기도 했다.   생각해보면 본선 서류 및 발표 영상 제출 막바지에는 면연력이 약해서져 감기를 달고 살았던 기억이 떠오른다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(물론 후에 ebook 리더에 사용했던 라이브러리 epub.js를 자세히 분석해보니 'CFI'라는 epub 내에서 밑줄친 문장을 특정할 수 있는 저장 방식을 활용하면 너무 간단하게 구현할 수 있었다는 사실을 알고 좀 충격이었다. ㅎㅎ)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 발표를 수십차례 했지만 한 사람도 기술의 구현가능성에 대한 의문을 제시하지 않았다는 점도 의아했다. 투자자들은 인공지능이나 블록체인 같은 신기술이 아니면 웬만한 것들은 그냥 뚝딱하면 만들어진다고 생각하고 있는 걸지도 모르겠다. ㅠㅠ&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;생각보다 높았던 저작권의 장벽&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 문제는 서비스에서 제공할 콘텐츠를 확보하는 문제였다. 우리는 콘텐츠를 확보하기 위해 여러 출판사에 연락을 돌려 보았다. 하지만 답장은 거의 오지 않았고, 그나마 온 답변도 콘텐츠를 무료로 제공할 수 있는 방법은 없다는 것이었다. 그래서 우리가 선택한 방법은 작가들에게 직접 연락을 해서 콘텐츠를 확보하는 것이었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물론 유명작가들에게 연락을 하기는 쉽지 않았기에, 브런치에서 활동하는 작가들에게 주로 연락을 돌렸다. 거절도 많이 당하고, 무엇보다 출판이 되는 순간 콘텐츠를 제공하고 복제할 수 있는 권한이 출판사로 넘어가버리기 때문에 해당 콘텐츠를 사용할 방법이 없었다. 그래도 다행히 작가 4~5분이 자신의 미출간 작품을 1개월 정도 서비스할 수 있게 도와주셨다!  &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;물론 출판되지 않은 작품이기 때문에 우리가 손수 epub 파일로 변환하는 작업을 거쳐야 했다. 다행히 Sigil이라는 무료 툴로 쉽게 epub 파일을 제작할 수 있었다.   이번에 알게된 한 가지 놀라운 사실은 epub 확장자가 단순히 압축파일이었다는 것이다. &lt;b&gt;챕터 정보, 글, 이미지, 폰트 등등을 특정 디렉토리에 넣어서 압축한 뒤 확장자를 epub으로 바꾼 것이 epub이었던 것이다!&lt;/b&gt; 그래서 epub 관련 라이브러리들을 뜯어보다 보면 압축 해제하는 라이브러리를 사용한다는 사실을 확인할 수 있다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;그래서 누가 써주는데?&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아이템을 검증하기 위해서 &lt;b&gt;테스트를 진행해야 했다.&lt;/b&gt; 우리는 확실하고 빠르게 테스트를 진행할 수 있는 방법이 필요했다. 온라인으로 사람을 모으고, 실험을 진행하게 한 뒤 설문조사를 하는 것은 효율이 좋지 않을 것 같았다. 그래서 우리는 부대에 있는 사람들에게 부탁해 &lt;b&gt;오프라인으로 테스트를 진행&lt;/b&gt;하기로 했다. 전날 미리 양해를 구하고, 점심시간에 사지방에서 테스트를 진행하기로 했다. 그날 우리는 점심 먹는 것도 포기하고, 사람들이 점심을 먹고 오면 바로 테스트를 진행할 수 있게 메뉴얼을 출력하고 컴퓨터 셋팅을 해놓았다. 옆방에서는 테스트를 마친 사람들을 대상으로 설문과 심층 인터뷰를 진행하였다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이날 무려 15명이나 되는 사람들이 실험에 참여해주었다.   고등학생 때도, 대학생 때도 조별과제를 할 때 테스트는 당연히 단톡방에 구글폼을 올려서 진행했었다. 그때는 그게 최선의 방법이라고 생각했다. 그리고 사실 오프라인으로 사람들을 모으는 것이 조심스럽고 부담이 되어 껄끄러웠다. 하지만 이번 테스트를 진행하면서 &lt;b&gt;조금의 시간과 노력을 더 투자하더라도 오프라인으로 사람들을 모아서 테스트하는 것이 얼마나 큰 힘을 가지는지 알게 되었다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사람들이 우리 아이템을 쓰는 모습을 뒤에서 지켜보면서 &lt;b&gt;그들의 감정 변화를 직접적으로 볼 수 있는게 제일 좋았다.&lt;/b&gt; 특히 다른 사람이 문장에 단 댓글을 보며 피식 웃거나 고개를 갸우뚱하며 답글을 다는 모습을 볼 때 정말이지 너무 신나서 껑충 뛰고 싶었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 양질의 피드백을 얻을 수 있다는 점도 좋았다. 불편함을 느꼈던 점이나, 추가되었으면 하는 기능 등등을 그들의 입으로 더 자세하게 들을 수 있었다. 사람들이 어떤 부분에서 더 많이 불편함을 느끼고 있는지, 어떤 부분들을 필요로 하는지 &lt;b&gt;서로의 얼굴을 마주보며 이야기할 때 더 진정성있는 답변을 들을 수 있었다.&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;우리는 이번 테스트를 통해 아이템을 개선하고, 사람들이 정말 원하는 것이 무엇인지 알 수 있었다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이후 그룹핑 기능과 혼자 집중해서 책을 읽을 수 있게 댓글을 숨겨주는 토글 기능등을 추가해 아이템을 개선했고, 국방부 창업경진대회에 진출할 수 있었다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;국방부 창업경진대회를 진출하면서 팀에 많은 변화가 생겼다. 무엇보다 팀원이 추가되었다!!&lt;br /&gt;좋은 일일 수도 있지만, 우리는 팀원이 추가되면서 처음에 큰 난황을 겪여야 했다...  &lt;br /&gt;그 이야기는 다음 편에서 다루도록 하겠다. 그럼 다들 안녕~  &lt;/p&gt;</description>
      <category>프로젝트/아누북스</category>
      <category>아누북스</category>
      <category>창업</category>
      <author>JuniorEinstein</author>
      <guid isPermaLink="true">https://cordelia273.tistory.com/46</guid>
      <comments>https://cordelia273.tistory.com/46#entry46comment</comments>
      <pubDate>Sun, 20 Nov 2022 13:55:41 +0900</pubDate>
    </item>
    <item>
      <title>[객프] OOP Programming with C++</title>
      <link>https://cordelia273.tistory.com/44</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;객체지향프로그래밍.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;720&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/JYVxI/btqDn193Bxa/p9mKpvJ0cEG6EZ7paO9Zb1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/JYVxI/btqDn193Bxa/p9mKpvJ0cEG6EZ7paO9Zb1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/JYVxI/btqDn193Bxa/p9mKpvJ0cEG6EZ7paO9Zb1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJYVxI%2FbtqDn193Bxa%2Fp9mKpvJ0cEG6EZ7paO9Zb1%2Fimg.png&quot; data-filename=&quot;객체지향프로그래밍.png&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;720&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;객체지향 프로그래밍 카테고리에서는 경희대학교 소프트웨어융합학과 과목 중 하나인 '객체지향 프로그래밍'의 수업 내용과 실습 과제로 활용한 문제들에 대한 주관적인 풀이를 공유할까 합니다.&lt;/p&gt;
&lt;p&gt;우선 객체지향 프로그래밍 수업에서는 &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;C++&lt;/b&gt;&lt;/span&gt;을 기반으로 한 &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;객체지향 프로그래밍(Object Oriented Programming)&lt;/b&gt;&lt;/span&gt;을 가르치고 있습니다. 기본적인 C++ 문법부터 포인터, 클래스와 데이터 핸들링 등이 커리큘럼으로 구성되어 있습니다.&lt;/p&gt;
&lt;p&gt;포스팅은 이론적인 부분을 중심으로 둔다기 보다는 과제 중 어려웠던 응용 문제들을 살펴 보면서 관련 이론과 문법을 소개하고, 다양한 풀이를 소개할까합니다.&lt;/p&gt;
&lt;p&gt;그리고 마지막에는 과제까지는 아니지만 비슷한 느낌으로 조금 &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;더 응용된 문제&lt;/b&gt;&lt;/span&gt;를 올려두도록 해볼 예정입니다. 직접 만든 문제들이 주를 이룰 예정이고 다음 포스팅에 제가 짠 코드를 공개할 생각입니다.&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;질문은 언제나 환영&lt;/b&gt;&lt;/span&gt;하며 잘못된 부분 등을 댓글을 통해 알려주시면 수정하도록 하겠습니다.&lt;/p&gt;</description>
      <category>경희대 소융/객체지향프로그래밍</category>
      <category>C++</category>
      <category>객체지향프로그래밍</category>
      <category>경희대학교 국제캠퍼스</category>
      <category>소프트웨어융합학과</category>
      <author>JuniorEinstein</author>
      <guid isPermaLink="true">https://cordelia273.tistory.com/44</guid>
      <comments>https://cordelia273.tistory.com/44#entry44comment</comments>
      <pubDate>Tue, 14 Apr 2020 19:39:14 +0900</pubDate>
    </item>
    <item>
      <title>[React] React 개발 환경 설치하기</title>
      <link>https://cordelia273.tistory.com/43</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;React 개발환경 설치하기.jpg&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bgYecI/btqCd1OWpzC/jP4vkdCD7YbJFPMn698gK1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bgYecI/btqCd1OWpzC/jP4vkdCD7YbJFPMn698gK1/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bgYecI/btqCd1OWpzC/jP4vkdCD7YbJFPMn698gK1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbgYecI%2FbtqCd1OWpzC%2FjP4vkdCD7YbJFPMn698gK1%2Fimg.jpg&quot; data-filename=&quot;React 개발환경 설치하기.jpg&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;0. 도입&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;안녕하세요! 오늘은 React 개발 환경 설치 방법에 대해서 알려드릴까 합니다! (앞으로 리액트 관련 강좌에서 써먹어야 하기 때문이죠!) 저는 요즘 React 개발에 푹 빠져 간단한 것들도 React와 Firebase를 이용해 개발하고 있습니다.&lt;/p&gt;
&lt;p&gt;오늘 강의에서는 리액트 프로젝트를 쉽게 설치할 수 있는 도구인 create-react-app과 자바스크립트 프로젝트에서 패키지를 쉽게 관리할 수 있는 도구인 yarn을 설치할 것입니다. 그리고 마지막으로 리액트 프로젝트의 기본적인 구조를 살펴보는 것으로 마무리하겠습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;1. Node.js 설치하기&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;React는 javascript 기반의 프로젝트입니다. React.js 파일을 script 태그로 불러오는 방법도 있지만 이번 포스팅에서는&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt; 'create-react-app'이라는 CLI 도구&lt;/b&gt;&lt;/span&gt;를 이용해 조금 더 쉽고 효율적으로 React 프로젝트를 생성하는 것을 해보도록 하겠습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;우선은 Node.js를 설치해야 합니다! 설치 방법은 제가 예전에 포스팅한 방법을 참고해 주시면 됩니다!&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://cordelia273.space/13&quot;&gt;https://cordelia273.space/13&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1582813642651&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[Node.js] Node.js 설치하기&quot; data-og-description=&quot;안녕하세요! 오늘은 Node.js 설치 방법에 대해서 알아보도록 하겠습니다. Node.js는 크롬 v8 자바스크립트 엔진을 기반으로한 서버사이드 '자바스크립트 런타임'입니다. Node.js는 개발 속도가 빨라서 요즘 새로이..&quot; data-og-host=&quot;cordelia273.space&quot; data-og-source-url=&quot;https://cordelia273.space/13&quot; data-og-url=&quot;https://cordelia273.space/13&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/NWhWZ/hyE5jTEJx7/01E52nE2UcBlHWxs71grE0/img.png?width=800&amp;amp;height=499&amp;amp;face=0_0_800_499,https://scrap.kakaocdn.net/dn/M6ni7/hyE6CxiUqp/cXksLVt53vkjJcMkt73koK/img.png?width=1026&amp;amp;height=1026&amp;amp;face=0_0_1026_1026,https://scrap.kakaocdn.net/dn/ciXCyk/hyE6yVYEc4/W40ksW0QIAE4FfjXI7Ppt1/img.png?width=800&amp;amp;height=499&amp;amp;face=0_0_800_499&quot;&gt;&lt;a href=&quot;https://cordelia273.space/13&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://cordelia273.space/13&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/NWhWZ/hyE5jTEJx7/01E52nE2UcBlHWxs71grE0/img.png?width=800&amp;amp;height=499&amp;amp;face=0_0_800_499,https://scrap.kakaocdn.net/dn/M6ni7/hyE6CxiUqp/cXksLVt53vkjJcMkt73koK/img.png?width=1026&amp;amp;height=1026&amp;amp;face=0_0_1026_1026,https://scrap.kakaocdn.net/dn/ciXCyk/hyE6yVYEc4/W40ksW0QIAE4FfjXI7Ppt1/img.png?width=800&amp;amp;height=499&amp;amp;face=0_0_800_499');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;[Node.js] Node.js 설치하기&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;안녕하세요! 오늘은 Node.js 설치 방법에 대해서 알아보도록 하겠습니다. Node.js는 크롬 v8 자바스크립트 엔진을 기반으로한 서버사이드 '자바스크립트 런타임'입니다. Node.js는 개발 속도가 빨라서 요즘 새로이..&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;cordelia273.space&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;2. create-react-app 설치하기&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;터미널 혹은 node 창에서 다음 명령어를 입력해 &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;create-react-app을 설치&lt;/b&gt;&lt;/span&gt;합니다.&lt;/p&gt;
&lt;pre id=&quot;code_1582895781807&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; npm i -g create-react-app&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;설치가 완료되면 다음과 같은 명령어로 새로운 프로젝트를 생성할 수 있습니다.&lt;/p&gt;
&lt;pre id=&quot;code_1582895774742&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; create-react-app [프로젝트 이름]&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;npx&lt;/b&gt;&lt;/span&gt;가 설치되어 있다면 다음과 같은 명령어로 새로운 프로젝트를 생성할 수 있습니다.&lt;/p&gt;
&lt;pre id=&quot;code_1582895769210&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; npx create-react-app [프로젝트 이름]&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;추가로 &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;리액트 프로젝트의 이름에는 대문자를 사용할 수 없습니다.&lt;/b&gt;&lt;/span&gt; 프로젝트 이름에 대문자가 들어가면 다음과 같은 오류가 발생합니다.&lt;/p&gt;
&lt;pre id=&quot;code_1582895730325&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Cannot create a project named &quot;[프로젝트 이름]&quot; because of npm naming restrictions:

  * name can no longer contain capital letters

Please choose a different project name.&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;이 외에도 리액트 프로젝트를 생성하는 방법은 정말 많습니다. 더 자세한 방법은 아래의 문서에서 확인하시면 됩니다!&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://create-react-app.dev/&quot;&gt;https://create-react-app.dev/&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1582894312974&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Create React App &amp;middot; Set up a modern web app by running one command.&quot; data-og-description=&quot;Set up a modern web app by running one command.&quot; data-og-host=&quot;create-react-app.dev&quot; data-og-source-url=&quot;https://create-react-app.dev/&quot; data-og-url=&quot;https://create-react-app.dev/&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/xCoRu/hyE6B0bNu2/fe4pak2IZPDJZCX4KgK2yk/img.png?width=1200&amp;amp;height=630&amp;amp;face=0_0_1200_630,https://scrap.kakaocdn.net/dn/v01Vx/hyE6DcCJg3/KwNYnDQqcO9ICySN3gtIe0/img.png?width=1200&amp;amp;height=630&amp;amp;face=0_0_1200_630,https://scrap.kakaocdn.net/dn/cuiKMc/hyE6Fhcw0q/Ay39oXnfeuOhrHMeojg6VK/img.png?width=994&amp;amp;height=754&amp;amp;face=0_0_994_754&quot;&gt;&lt;a href=&quot;https://create-react-app.dev/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://create-react-app.dev/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/xCoRu/hyE6B0bNu2/fe4pak2IZPDJZCX4KgK2yk/img.png?width=1200&amp;amp;height=630&amp;amp;face=0_0_1200_630,https://scrap.kakaocdn.net/dn/v01Vx/hyE6DcCJg3/KwNYnDQqcO9ICySN3gtIe0/img.png?width=1200&amp;amp;height=630&amp;amp;face=0_0_1200_630,https://scrap.kakaocdn.net/dn/cuiKMc/hyE6Fhcw0q/Ay39oXnfeuOhrHMeojg6VK/img.png?width=994&amp;amp;height=754&amp;amp;face=0_0_994_754');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;Create React App &amp;middot; Set up a modern web app by running one command.&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;Set up a modern web app by running one command.&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;create-react-app.dev&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;3. Yarn 설치하기&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;기본적으로 Node.js는 패키지 관리 도구로 npm을 사용하지만 &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;리액트 프로젝트는 yarn을 사용할 것을 권장&lt;/b&gt;&lt;/span&gt;합니다. npm과 yarn 모두 자바스크립트를 이용한 개발에 주로 사용되는 패키지 관리 도구입니다. 하지만 새로나온 yarn은 npm보다 훨씬 빠른 성능을 자랑합니다. 간단하게 두 패키지 매니저를 비교해 볼까요?&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 133px;&quot; border=&quot;1&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 19px;&quot;&gt;
&lt;td style=&quot;width: 18.8372%; height: 19px;&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;width: 31.1628%; height: 19px;&quot;&gt;&amp;nbsp;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 19px; text-align: center;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;npm&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 19px; text-align: center;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;yarn&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 19px;&quot;&gt;
&lt;td style=&quot;width: 18.8372%; height: 57px; text-align: center;&quot; rowspan=&quot;3&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;다운로드 속도&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 31.1628%; height: 19px;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;캐시 없이 다운로드&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 19px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;3m 40s&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 19px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;1m 1s&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 19px;&quot;&gt;
&lt;td style=&quot;width: 31.1628%; height: 19px;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;캐시 있는 다운로드&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 19px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;54s&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 19px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;2s&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 19px;&quot;&gt;
&lt;td style=&quot;width: 31.1628%; height: 19px;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;인터넷 연결 없이 다운로드&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 19px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 19px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;2s&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 19px;&quot;&gt;
&lt;td style=&quot;width: 18.8372%; height: 19px; text-align: center;&quot; rowspan=&quot;4&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;명령어&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 31.1628%; height: 19px;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;패키지 설치&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 19px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;npm install&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 19px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;yarn add&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 19px;&quot;&gt;
&lt;td style=&quot;width: 31.1628%; height: 19px;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;패키지 제거&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 19px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;npm uninstall&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 19px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;yarn remove&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 19px;&quot;&gt;
&lt;td style=&quot;width: 31.1628%; height: 19px;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;패키지 업그레이드&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 19px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;-&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; height: 19px; text-align: left;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;yarn upgrade&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 31.1628%;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;매니저 업데이트&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: left;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;npm i -g npm&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: left;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;yarn self-update&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;출처 : &lt;a href=&quot;https://stackshare.io/stackups/npm-vs-yarn&quot;&gt;https://stackshare.io/stackups/npm-vs-yarn&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;yarn 같은 경우는 &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;캐싱 기능을 잘 활용하도록 설계&lt;/b&gt;&lt;/span&gt;되었기 때문에 똑같은 패키지를 다시 받을 때 특히 더 좋은 성능을 보여주고, 캐싱이 되어 있다면 npm과는 다르게&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt; 오프라인 상태에서도 패키지 설치가 가능&lt;/b&gt;&lt;/span&gt;하는 차이점이 있습니다.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;yarn을 설치하는 방법은 운영체제 마다 조금씩 차이가 있습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;맥 (macOS)&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;Hombrew&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;맥(macOS)를 사용하고 Homebrew가 설치되어 있다면 아래의 명령어로 yarn을 설치할 수 있습니다.&lt;/p&gt;
&lt;pre id=&quot;code_1582895749597&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; brew install yarn&lt;/code&gt;&lt;/pre&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;MacPorts&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;MacPorts가 설치되어 있다면 아래의 명령어로 yarn을 설치할 수 있습니다. MacPorts 같은 경우에는 Node.js가 설치되어 있지 않으면 Node.js도 함께 설치해줍니다.&lt;/p&gt;
&lt;pre id=&quot;code_1582895757833&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; sudo port install yarn&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;윈도우 (Windows)&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;설치파일 (Installer)&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;별도의 패키지 관리 도구 없이 설치하려면 .msi 파일을 직접 내려받아서 사용해야 합니다. 아래의 사이트에서 윈도우용 yarn을 설치하세요.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://classic.yarnpkg.com/en/docs/install#windows-stable&quot;&gt;https://classic.yarnpkg.com/en/docs/install#windows-stable&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1582895265937&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Yarn&quot; data-og-description=&quot;Fast, reliable, and secure dependency management.&quot; data-og-host=&quot;classic.yarnpkg.com&quot; data-og-source-url=&quot;https://classic.yarnpkg.com/en/docs/install#windows-stable&quot; data-og-url=&quot;https://yarnpkg.com/en/docs/install/&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://yarnpkg.com/en/docs/install/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://classic.yarnpkg.com/en/docs/install#windows-stable&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot;&gt;Yarn&lt;/p&gt;
&lt;p class=&quot;og-desc&quot;&gt;Fast, reliable, and secure dependency management.&lt;/p&gt;
&lt;p class=&quot;og-host&quot;&gt;classic.yarnpkg.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;Chocolatey&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;윈도우용 패키지 관리 도구 Chocolatey&lt;/b&gt;&lt;/span&gt;를 이용하고 있다면 아래의 명령어로 yarn을 설치할 수 있습니다. (윈도우용 패키지 관리 도구가 있다는건 처음 알았네요)&lt;/p&gt;
&lt;pre id=&quot;code_1582895811124&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;&amp;gt;&amp;gt;&amp;gt; choco install yarn&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #000000;&quot;&gt;&lt;b&gt;4. React 프로젝트 구조 살펴보기&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;background-color: #ffffff;&quot;&gt;그러면 이제 새로운 리액트 프로젝트를 하나 만들고 본격적으로 리액트 프로젝트의 구조를 살펴보겠습니다. create-react-app 명령어로 프로젝트를 생성하면 다음과 같은 메세지가 나옵니다.&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1582895945981&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;Success! Created react_install at [프로젝트 경로]
Inside that directory, you can run several commands:

  yarn start
    Starts the development server.

  yarn build
    Bundles the app into static files for production.

  yarn test
    Starts the test runner.

  yarn eject
    Removes this tool and copies build dependencies, configuration files
    and scripts into the app directory. If you do this, you can&amp;rsquo;t go back!

We suggest that you begin by typing:

  cd react_install
  yarn start

Happy hacking!&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;우리가 리액트 프로젝트에서 사용할 수 있는&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt; 명령어&lt;/b&gt;&lt;/span&gt;들입니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;yarn start&lt;/b&gt;&lt;/span&gt; : 리액트 프로젝트를 시작합니다.&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;yarn build&lt;/b&gt;&lt;/span&gt; : 리액트 프로젝트를 빌드합니다. 이 과정을 수행하면 우리가 작업한 리액트 파일들이 하나의 html 파일로 빌드되어 나옵니다. 이 파일을 배포해서 웹 사이트를 사람들에게 공개할 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;yarn test&lt;/b&gt;&lt;/span&gt; : 테스트 러너를 시작합니다.&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;yarn eject&lt;/b&gt;&lt;/span&gt; : 리액트 설정 파일을 추출하는데 사용된다는데 한 번도 써 본적이 없습니다. 대신 이 사이트에 설명이 잘 되어 있네요. (&lt;a style=&quot;letter-spacing: 0px;&quot; href=&quot;https://blog.grotesq.com/post/691&quot;&gt;https://blog.grotesq.com/post/691&lt;/a&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;)&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;&lt;/h3&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;프로젝트 구조&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;그러면 이제 프로젝트에 어떤 파일들이 생성되었는지 살펴보죠.&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;루트 디렉토리 (Root Directory)&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;스크린샷 2020-02-28 오후 10.27.41.png&quot; data-origin-width=&quot;1764&quot; data-origin-height=&quot;1096&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rzabF/btqCjePBwUY/84v945lcIaNYKMxkDRfdc1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rzabF/btqCjePBwUY/84v945lcIaNYKMxkDRfdc1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rzabF/btqCjePBwUY/84v945lcIaNYKMxkDRfdc1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FrzabF%2FbtqCjePBwUY%2F84v945lcIaNYKMxkDRfdc1%2Fimg.png&quot; data-filename=&quot;스크린샷 2020-02-28 오후 10.27.41.png&quot; data-origin-width=&quot;1764&quot; data-origin-height=&quot;1096&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;자 프로젝트의 &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;&quot;루트 디렉토리 (Root Directory)&quot;&lt;/b&gt;&lt;/span&gt;입니다. 간단하게 설명해드릴게요.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;node_modules&lt;/b&gt;&lt;/span&gt; : 패키지 관리 도구로 설치한 패키지들이 들어있는 폴더입니다.&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;package.json&lt;/b&gt;&lt;/span&gt; : npm, yarn 등 패키지 관리 도구가 패키지 관리를 위해 사용하는 파일입니다. 설치된 패키지의 정보, 스크립트 명령어 등을 포함하고 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;public&lt;/b&gt;&lt;/span&gt; : 조금 있다가 더 자세히 살펴보죠.&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;README.md&lt;/b&gt;&lt;/span&gt; : 프로젝트 정보를 담고 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;src&lt;/b&gt; &lt;/span&gt;: 우리가 실질적으로 작업을 할 공간입니다.&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;yarn.lock&lt;/b&gt;&lt;/span&gt; : 패키지 관리 도구 yarn이 생성한 파일입니다.&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;.git&lt;/b&gt; &lt;/span&gt;: 사진에는 보이지 않는데 create-react-app은 기본적으로 깃 폴더를 함께 생성합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;public&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;우리가 &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;작업을 하는 대부분의 파일들&lt;/b&gt;&lt;/span&gt;. 컴포넌트 (Component), CSS, js 등의 파일은 대부분 &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;src 폴더&lt;/b&gt;&lt;/span&gt; 안에 있을겁니다. (물론 지금은 별로 없지만 우리가 만들어 나가야 하는 것이죠!)&lt;/p&gt;
&lt;p&gt;반면, public 폴더 안에는 &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;정적(static)으로 사용되는 콘텐츠&lt;/b&gt; &lt;/span&gt;들이 포함됩니다. 가령 &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;css, js, img, 다운로드 받을 파일들, 파비콘 (favicon) 등&lt;/b&gt;&lt;/span&gt;이 이에 해당되죠. 같이 한 번 살펴봅시다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;스크린샷 2020-02-28 오후 10.35.49.png&quot; data-origin-width=&quot;1764&quot; data-origin-height=&quot;1096&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bBgurI/btqCoSqPz3m/Y5qMdSxNJcODj1Fr0gbfL0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bBgurI/btqCoSqPz3m/Y5qMdSxNJcODj1Fr0gbfL0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bBgurI/btqCoSqPz3m/Y5qMdSxNJcODj1Fr0gbfL0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbBgurI%2FbtqCoSqPz3m%2FY5qMdSxNJcODj1Fr0gbfL0%2Fimg.png&quot; data-filename=&quot;스크린샷 2020-02-28 오후 10.35.49.png&quot; data-origin-width=&quot;1764&quot; data-origin-height=&quot;1096&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;index.html&lt;/b&gt; &lt;/span&gt;: 리액트 프로젝트를 실행하는 파일입니다. 리액트 프로젝트는 기본적으로 &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;SPA (Single Page Application)&lt;/b&gt;&lt;/span&gt; 방식을 사용하고 있기 때문에 모든 페이지에 대한 처리가 하나의 html 파일에서 이루어집니다. 그 처리를 해주는 것이 바로 public 폴더 안에 있는 index.html 입니다.&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;manifest.json&lt;/b&gt; &lt;/span&gt;: 사이트의 이름, 파비콘, 로고 아이콘 등 &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;사이트의 정보&lt;/b&gt;&lt;/span&gt;를 담고 있습니다. &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;모바일 브라우저에서 '홈 화면에 추가'&lt;/b&gt; &lt;/span&gt;등의 기능을 이용할 때, 여기에 있는 정보들이 사용됩니다.&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;robots.txt&lt;/b&gt; &lt;/span&gt;: &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;검색 엔진이 사이트를 수집&lt;/b&gt;&lt;/span&gt;하는 것을 허용할지 말지 등을 설정할 수 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;src&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p&gt;&lt;span style=&quot;color: #333333;&quot;&gt;src 폴더 안에는 우리가 실질적으로 작업하는 자바스크립트 파일들이 들어 있습니다. 자세한 내용은 개발을 하면서 차차 알아보도록 하죠.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-filename=&quot;스크린샷 2020-02-28 오후 10.43.04.png&quot; data-origin-width=&quot;1764&quot; data-origin-height=&quot;1096&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cuPhrS/btqCjRGI5sK/5hru10Ok6AyMPaoL7QQMfK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cuPhrS/btqCjRGI5sK/5hru10Ok6AyMPaoL7QQMfK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cuPhrS/btqCjRGI5sK/5hru10Ok6AyMPaoL7QQMfK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcuPhrS%2FbtqCjRGI5sK%2F5hru10Ok6AyMPaoL7QQMfK%2Fimg.png&quot; data-filename=&quot;스크린샷 2020-02-28 오후 10.43.04.png&quot; data-origin-width=&quot;1764&quot; data-origin-height=&quot;1096&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;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;5. 결론&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;이렇게 오늘 create-react-app을 이용해 리액트 프로젝트를 생성하고, 그 구조를 살펴 보았습니다. 리액트는 자바스크립트로 만들어진 프론트엔드 프레임워크로, 쉽고 빠르게 SPA 어플리케이션을 생성하고, 빌드하고, 배포할 수 있습니다. 다음 시간에는 &lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;리액트를 이용해 간단한 프로젝트를 진행&lt;/b&gt;&lt;/span&gt;하면서 그 원리와 개발에 대해서 더 깊게 알아보도록 할게요! 감사합니다!&lt;/p&gt;</description>
      <category>Web/Node.js &amp;amp; React</category>
      <category>React</category>
      <category>리액트</category>
      <author>JuniorEinstein</author>
      <guid isPermaLink="true">https://cordelia273.tistory.com/43</guid>
      <comments>https://cordelia273.tistory.com/43#entry43comment</comments>
      <pubDate>Fri, 28 Feb 2020 22:49:09 +0900</pubDate>
    </item>
  </channel>
</rss>