<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Developer</title>
    <link>https://developernew.tistory.com/</link>
    <description>구독하시면 과연 이 초보개발자가 어디까지 가나 보게 되실 겁니다</description>
    <language>ko</language>
    <pubDate>Sat, 30 May 2026 16:07:27 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>Ayel</managingEditor>
    <image>
      <title>Developer</title>
      <url>https://tistory1.daumcdn.net/tistory/5935537/attach/4e45d621234249d08a623da794ee5e7b</url>
      <link>https://developernew.tistory.com</link>
    </image>
    <item>
      <title>파이썬 02 파이썬 시작</title>
      <link>https://developernew.tistory.com/456</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;파이썬의 시작&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;1. 파이썬의 기원&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1) 파이썬의 개발 배경&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 1991년 히도 판 로쉼(Guido van Rossum)이 개발&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 네덜란드 암스테르담 대학에서 컴퓨터 전공&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 크리스마스 휴가 기간 프로그래밍 프로젝트에서 시작&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 코미디 'Monty Python's Flying Circus'를 따서 명명&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 파일관리, 프로그램 실행, 반복 작업 자동화 등의 기능을 수행하는 언어 체계 용도로 개발&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 프로그래밍을 더욱 인간 친화적이고 접근 가능한 분야로 혁신적으로 변화&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 파이썬의 기본 철학&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 읽기 쉽고 간결한 문법&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 프로그래밍 패러다임, 문법에 따라 다양한 표현 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 다중 프로그래밍 패러다임 채용&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 알고리즘을 프로그래밍 언어로 표현하는 접근 방식&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 명령형 프로그래밍, 절차적 프로그래밍, 객체지향 프로그래밍, 함수형 프로그래밍 패러다임 등&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 다목적 활용: 응용 프로그램, 웹/백엔드 개발, IoT, 데이터과학, 인공지능&amp;amp;딥러닝 뿐만 아니라 교육 목적으로도 활용&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2. Pythonic&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1) Pythonic의 의미&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;:&amp;nbsp;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;단순히 파이썬으로 작성된 코드가 아닌&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;명료하고 아름답게 문제를 해결하는 사고방식을 의미&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;gt; 독립적, 인간적, 직관적, 효율적, 개방적&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 플랫폼 독립적&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- Write Once, Run Anywhere&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 하드웨어나 시스템 구조에 비의존적&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- Window, macOS, Linux 등 운영체제(플랫폼)에 관계없이 동일한 코드 실행이 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;gt; 인터프리터가 각 OS에 맞게 코드 해석&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 표준 라이브러리&amp;amp;가상환경 지원&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 다양한 플랫폼에서 동일 기능 수행&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 개발 환경을 손쉽게 복제, 이식 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;3) 인간적&amp;amp;직관적&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 인간 중심의 철학&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 명확함과 가독성을 가장 중시&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 초보자에게 친숙하고 전문가에게도 강력한 언어&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 실행할 수 있는 의사 코드(Executable Pseudocode) 수준의 문법&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 영어 문장처럼 읽히는 코드 구조&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 불필요한 기호 없이 의미 중심의 구문 설계&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;4) 효율적&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 간결하지만 강력한 표현력&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 풍부한 표준 라이브러리&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;5) 개방적&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 많은 개발자의 의견을 수용하고 토론하며 발전하는 언어&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 오픈소스 생태계를 통한 공유, 재사용, 확장성 강화&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 풍부한 커뮤니티 자료로 문제 해결 속도 향상&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 대형 커뮤니티를 기반으로 선순환 구조의 생태계 구축&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 새로운 기능, 라이브러리를 지속적으로 개발, 공유&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 공식 문서, 포럼(Stack Overflow, Reddit 등), GitHub 등을 통해 문제 해결과 학습자료 공유&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 수십만개의 라이브러리가 거의 모든 분야를 지원&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;파이썬 개발 환경&lt;/span&gt;&lt;/b&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1. 파이썬의 언어적 특징&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 플랫폼 독립적, 인터프리터식 객체지향적, 동적 타이핑(dynamically typed) 대화형 언어&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 윈도우, 리눅스, 유닉스, 맥OS 등 다양한 운영체제(플랫폼)에서 별도의 컴파일 없이 실행 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- CPython, PyPy, Cython, Jython 등 다양한 인터프리터 환경 사용 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 프로그램을 객체로 모델링&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 변수의 자료형을 지정하지 않음&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 작성한 코드에 대한 수행 결과를 바로 확인하고 디버깅하면서 코드 작성 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2. CPython&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) C 언어로 개발된 파이썬 인터프리터&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 파이썬 표준 라이브러리, 대부분의 패키지들이 CPython을 기준으로 개발, 테스트됨&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- C 구현 라이브러리와의 연동을 통한 확장에 최적&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 오픈소스 커뮤니티의 기여로 지속적 발전&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;ex. &lt;a style=&quot;color: #000000;&quot; href=&quot;https://github.com/python/cpython&quot;&gt;https://github.com/python/cpython&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1775963959876&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;object&quot; data-og-title=&quot;GitHub - python/cpython: The Python programming language&quot; data-og-description=&quot;The Python programming language. Contribute to python/cpython development by creating an account on GitHub.&quot; data-og-host=&quot;github.com&quot; data-og-source-url=&quot;https://github.com/python/cpython&quot; data-og-url=&quot;https://github.com/python/cpython&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/dlz7UJ/dJMb9b3TeNj/ci12yzhxwwrZnhs8yMUv0k/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600,https://scrap.kakaocdn.net/dn/2U3wG/dJMb9eTQQN1/izPTBJloCqDdSuLc1ky7CK/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600&quot;&gt;&lt;a href=&quot;https://github.com/python/cpython&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://github.com/python/cpython&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/dlz7UJ/dJMb9b3TeNj/ci12yzhxwwrZnhs8yMUv0k/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600,https://scrap.kakaocdn.net/dn/2U3wG/dJMb9eTQQN1/izPTBJloCqDdSuLc1ky7CK/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600');&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;GitHub - python/cpython: The Python programming language&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;The Python programming language. Contribute to python/cpython development by creating an account on GitHub.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;github.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;3. 파이썬 프로그램 실행과정&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) 파이썬 애플리케이션은 소스 코드 형태로 배포&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- CPython이 컴파일 후 바이트코드.pyc 파일 생성&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 파이썬 가상머신은 바이트코드를 한 라인씩 실행&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 변경없이 재실행 시 바이트코드로 빠르게 실행&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;4. IDLE 개발환경&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) IDE(IDLE)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 파이썬 인터프리터에 기본으로 포함된 파이썬 통합 개발 환경&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 파이썬과 Tkinter GUI 툴킷으로 개발&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 구문 강조, 자동 완성, 스마트 들여쓰기 등이 포함된 단순한 IDE 지향&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- stepping, breakpoint, call stack을 확인할 수 있는 통합 디버거 환경 제공&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 파이썬 공식 홈페이지에서 다운로드 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;c.f. &lt;a style=&quot;color: #000000;&quot; href=&quot;http://www.python.org&quot;&gt;http://www.python.org&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1775964151668&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;Welcome to Python.org&quot; data-og-description=&quot;The official home of the Python Programming Language&quot; data-og-host=&quot;www.python.org&quot; data-og-source-url=&quot;http://www.python.org&quot; data-og-url=&quot;https://www.python.org/&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bDjqaJ/dJMb8954M5F/nR5XK3Obejewu1ItwEnI10/img.png?width=200&amp;amp;height=200&amp;amp;face=0_0_200_200&quot;&gt;&lt;a href=&quot;http://www.python.org&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;http://www.python.org&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bDjqaJ/dJMb8954M5F/nR5XK3Obejewu1ItwEnI10/img.png?width=200&amp;amp;height=200&amp;amp;face=0_0_200_200');&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;Welcome to Python.org&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;The official home of the Python Programming Language&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.python.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 주피터 노트북(Jupyter Notebook)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 오픈소스 기반의 웹 플랫폼&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 파이썬을 비롯한 40여개 프로그래밍 언어 지원&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 전통적인 소스코드-컴파일 -실행 방식에서 벗어나 웹 기반 대화형 개발 및 실행 환경&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 문서화하여 다른 사람과 공유하기가 편리&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 마트다운(Markdown)을 이용해 코드 관련 타이틀, 설명 등 작성 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- &lt;a style=&quot;color: #000000;&quot; href=&quot;https://jupyter.org/&quot;&gt;https://jupyter.org/&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1775964267499&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;Project Jupyter&quot; data-og-description=&quot;The Jupyter Notebook is a web-based interactive computing platform. The notebook combines live code, equations, narrative text, visualizations, interactive dashboards and other media.&quot; data-og-host=&quot;jupyter.org&quot; data-og-source-url=&quot;https://jupyter.org/&quot; data-og-url=&quot;https://jupyter.org&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/kbFAG/dJMb9b3TeOf/8xYYe3arGegktmc6f0Pqi0/img.png?width=1200&amp;amp;height=630&amp;amp;face=0_0_1200_630,https://scrap.kakaocdn.net/dn/GfeXE/dJMb9cBJhFc/eyFZhoJgI8ao2aAi3IxwKk/img.png?width=885&amp;amp;height=627&amp;amp;face=0_0_885_627,https://scrap.kakaocdn.net/dn/TyMTz/dJMb9lk8jLo/X9eRkDEcJT5mjTyaYf2btk/img.png?width=885&amp;amp;height=627&amp;amp;face=0_0_885_627&quot;&gt;&lt;a href=&quot;https://jupyter.org/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://jupyter.org/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/kbFAG/dJMb9b3TeOf/8xYYe3arGegktmc6f0Pqi0/img.png?width=1200&amp;amp;height=630&amp;amp;face=0_0_1200_630,https://scrap.kakaocdn.net/dn/GfeXE/dJMb9cBJhFc/eyFZhoJgI8ao2aAi3IxwKk/img.png?width=885&amp;amp;height=627&amp;amp;face=0_0_885_627,https://scrap.kakaocdn.net/dn/TyMTz/dJMb9lk8jLo/X9eRkDEcJT5mjTyaYf2btk/img.png?width=885&amp;amp;height=627&amp;amp;face=0_0_885_627');&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;Project Jupyter&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;The Jupyter Notebook is a web-based interactive computing platform. The notebook combines live code, equations, narrative text, visualizations, interactive dashboards and other media.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;jupyter.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;3) 구글 Colab(Google Colaboratory)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 클라우드 기반 파이썬 개발 환경&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 2017년 과학 연구와 교육 목적으로 개발&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 주피터 노트북+구글 드라이브를 결합한 서비스&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 노트북 파일을 공유하여 협업 코딩 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 고성능 컴퓨팅 리소스 제공&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- CPU, GPU, TPU와 같은 고성능 연산 장비 활용 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a href=&quot;https://colab.research.google.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://colab.research.google.com/&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1775968579206&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;Google Colab&quot; data-og-description=&quot;&quot; data-og-host=&quot;colab.research.google.com&quot; data-og-source-url=&quot;https://colab.research.google.com/&quot; data-og-url=&quot;https://colab.research.google.com/&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bJG3SF/dJMb8SpI8Yr/kl4GcqlEhsdpg7UwN8al70/img.png?width=260&amp;amp;height=260&amp;amp;face=0_0_260_260&quot;&gt;&lt;a href=&quot;https://colab.research.google.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://colab.research.google.com/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bJG3SF/dJMb8SpI8Yr/kl4GcqlEhsdpg7UwN8al70/img.png?width=260&amp;amp;height=260&amp;amp;face=0_0_260_260');&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;Google Colab&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;colab.research.google.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;파이썬 기초 문법&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;1. 데이터 타입&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 데이터가 어떤 종류의 값을 가지는지 구분&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 값의 성질과 연산 방식을 정의&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) 숫자 데이터 타입&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 정수(interger): 소수점이 없는 숫자&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 실수(floating point): 소수점이 포함되는 숫자&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 문자 데이터 타입&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 유니코드(unicode) 기반의 문자열(string)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 인용 부호 &quot; 또는 '를 사용해 표현&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;2. 에코(echo)&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 입력으로 들어온 값을 아무 변화 없이 그대로 출력해 주는 기능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;3. 함수(function)&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) 함수&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 사전에 정의된 특정 작업을 수행하는 명령문의 집합&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 함수의 이름만으로 호출해 실행할 수 있는 단위&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;ex.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;print(): 화면에 데이터를 출력하는 작업&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;input(): 사용자 입력을 통해 데이터를 저장&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 함수 사용 형식&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;ex. print(&quot;Hello World!&quot;)&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;print()&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;함수명&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&quot;Hello World!&quot;&lt;/span&gt;&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;입력값(파라미터)&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;3) 수학식 계산&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 파이썬 인터프리터는 숫자(int, float 등)에 대해 수학적 연산(덧셈, 뺼셈, 곱셈, 나눗셈)을 자동적으로 수행&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;ex. &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;print(25+7)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;print(5/2)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;print(52*4)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 괄호를 사용해 여러 연산자의 연산 순서 결정&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;ex. print((10.5-2*3)/(45-5.2))&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;4. 들여쓰기&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 파이썬은 들여쓰기에 의존적인 언어&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 타 프로그래밍 언어에서는 가독성 향상 목적&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 파이썬에서는 코드의 논리적 집합인 블록을 표현&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 들여쓰기는 스페이스 4칸 권장(PEP 8)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 블록 중첩 시 추가적인 4칸 들여쓰기 삽입&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1775966702507&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;print(&quot;파이썬&quot;)
print(&quot;파이썬은&quot;)
	print(&quot;들여쓰기 의존적 언어&quot;)
print(&quot;화이팅&quot;)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;5. 프로그래밍 스타일과 문서화&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) 공백 사용&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 적절한 공백 사용으로 가독성 증대&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 주석(commet) 사용&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 프로그램의 실행에는 영향 없음&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 코드의 의미를 설명하기 위해 작성하는 코드의 요소&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style7&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;* 파이썬은 인간 친화적이고 간결함을 목표로 설계된 언어로, 읽기 쉽고 명료한 코드를 작성하는 것을 핵심 가치로 삼는다. &lt;br /&gt;* 파이썬은 운영체제에 관계없이 동일한 코드가 실행되는 플랫폼 독립적 언어이다.&lt;br /&gt;* 파이썬 소스 코드는 인터프리터에 의해 바이트 코드로 변환된 후 파이썬 가상 머신 위에서 실행된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;* 데이터는 성질에 따라 정수, 실수, 문자열 등으로 구분&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;* 파이썬은 변수 선언 시 자료형을 지정하지 않아도 되는 동적 타이핑 언어이다.&lt;br /&gt;&lt;br /&gt;* 파이썬에서 들여쓰기는 단순한 가독성을 넘어, 코드의 논리적 블록을 구분하는 문법적 필수 요소이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>AI/파이썬</category>
      <category>Google Colab</category>
      <category>구글코랩</category>
      <category>파이썬</category>
      <category>파이썬개발환경</category>
      <category>파이썬코드</category>
      <category>파이썬플랫폼</category>
      <author>Ayel</author>
      <guid isPermaLink="true">https://developernew.tistory.com/456</guid>
      <comments>https://developernew.tistory.com/456#entry456comment</comments>
      <pubDate>Sun, 12 Apr 2026 14:17:28 +0900</pubDate>
    </item>
    <item>
      <title>파이썬 01 컴퓨터와 프로그램</title>
      <link>https://developernew.tistory.com/455</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;컴퓨터의 구성&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;1. 컴퓨터가 다루려고 하는 대상&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;gt; 데이터, 정보&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) 데이터(data)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 관찰이나 측정을 통해 얻은 수치, 문자 형태의 표현할 수 있는 또는 양적 값&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 정보(information)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 획득한 데이터를 처리해 실제 문제 해결이 도움이 되도록 변형된 데이터 또는 결과물&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;현상 &amp;gt; 관찰/측정 &amp;gt; 데이터 &amp;gt; 처리/가공 &amp;gt; 정보&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;3) 컴퓨터&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 사전에 정의된 절차에 따라 입력 데이터를 자동으로 처리해 정보를 생산하는 기계&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;2. 컴퓨터의 구성요소&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 하드웨어+소프트웨어&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) 하드웨어: 컴퓨터를 구성하고 있는 물리적 부품(처리장치)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 소프트웨어: 다양한 장치들을 동작시켜 특정 작업을 해결하는 프로그램&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;3) 하드웨어의 &lt;u&gt;물리적 구성&lt;/u&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;CPU,&amp;nbsp;ODD, RAM,&amp;nbsp;HDD,&amp;nbsp;Video Card&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;4) 하드웨어의 &lt;u&gt;논리적 구성&lt;/u&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 기계를 바꾸지 않고 소프트웨어 교체만으로 무엇이든 할 수 있게 만든 컴퓨터의 기본 설계&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 역할에 따라 입력, 기억/저장, 제어, 연산, 출력 장치로 구분&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;* 폰 노이만 구조&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;479&quot; data-origin-height=&quot;323&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bmSint/dJMcajoeJEd/iwavMdzb5M5whrx6LTJWa1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bmSint/dJMcajoeJEd/iwavMdzb5M5whrx6LTJWa1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bmSint/dJMcajoeJEd/iwavMdzb5M5whrx6LTJWa1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbmSint%2FdJMcajoeJEd%2FiwavMdzb5M5whrx6LTJWa1%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;479&quot; height=&quot;323&quot; data-origin-width=&quot;479&quot; data-origin-height=&quot;323&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;5) 소프트웨어의 구조&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 각각의 고유한 기능을 수행하는 하드웨어가 언제 어떻게 동작하여 문제를 해결할 수 있는지 지시하는 명령어 집합&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;* 응용 소프트웨어: 사용자의 업무나 목적에 맞게 문제 해결을 위한 처리 절차를 표현한 명령어 집합&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;* 시스템 소프트웨어: 하드웨어를 제어, 관리하여 응용 소프트웨어를 실행할 수 있는 호나경을 제공&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;ex. 운영체제, 컴파일러, 유틸리티 등&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote style=&quot;background-color: #fcfcfc; color: #666666; text-align: left;&quot; data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;하드웨어의 구성&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;1. 컴퓨터와 2진법&lt;/b&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) 컴퓨터와 2진법&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 컴퓨터는 트랜지스터를 통해 2진법 숫자로 데이터를 표현해 저장 및 처리&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 데이터의 기본 단위&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- bit(binary digit)&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- byte&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;gt; 트랜지스터를 그대로 사용하고 있기 때문에 지금도 2진법을 사용&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;2. 하드웨어의 구성&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) 기억장치(주기억장치)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 데이터와 프로그램 및 처리 결과를 임시적으로 기억을 담당하는 컴퓨터 작업 공간&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 저장장치의 순차적 접근과 달리 무작위 순서로 빠른 접근 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- ROM: 읽기전용. 전원차단 시 기억내용 보존&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- RAM: 읽기/쓰기 모두 가능하며, 전원차단 시 초기와&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 저장장치(보조기억장치)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 전원이 소실되어도 저장된 정보가 훼손되지 않는 영구적 기록 장치&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 현대 컴퓨터 장치에서는 HDD가 기본 저장장치&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;3) 입력장치&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 키보드, 마우스 등&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;4) 출력장치&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 모니터, 프린터 등&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;5) 제어/연산 장치&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 명령어와 데이터를 읽고 데이터를 연산 또는 처리하는 장치&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- CPU: 레지스터, 연산 논리 유닛(ALU), 제어 유닛(Control Unit)으로 구성&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;6) 메인보드/마더보드&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 각 컴퓨터 장치를 연결해주는 회로를 갖춘 장치&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;프로그램의 실행&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;1. 프로그램의 개념&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 컴퓨터는 자의적으로 데이터를 처리해 정보를 생산하는 것이 불가능&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;-&amp;gt; 주어진 문제를 풀기 위해 단계적 절차를 명시한 지시서 필요&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;-&amp;gt; 각 단계별 필요한 하드웨어를 사용해 결과 생성&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 소프트웨어, 응용프로그램, 애플리케이션 등 다양한 용어로 불림&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;- 유사한 유형의 여러 문제를 추상화한 알고리즘(algorithm)을 구현한 결과물&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;2. 알고리즘(Algorithm)&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1) 알고리즘의 정의&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;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;2) 정렬 알고리즘: 우열을 비교할 수 있는 데이터로 일정한 순서대로 정렬 또는 순서화&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;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;3. 프로그래밍 언어&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1) 프로그래밍 언어란?&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;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;p data-ke-size=&quot;size16&quot;&gt;3) 프로그래밍 언어의 분류&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;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style6&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot; colspan=&quot;2&quot;&gt;저급언어&lt;/td&gt;
&lt;td style=&quot;width: 50%; text-align: center;&quot; colspan=&quot;2&quot;&gt;고급언어&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;1세대&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;2세대&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;3세대&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;4세대&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;기계어&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;어셈블리어&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;Python, C, Java, Rust&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;Visual Basic&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;0과 1&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;명령어 영어 대체&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;자연어와 유사&lt;/td&gt;
&lt;td style=&quot;width: 25%; text-align: center;&quot;&gt;자동화&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4) 프로그램의 실행&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;gt; 컴파일러 또는 인터프리터 사용&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style7&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;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;* 컴퓨터 하드웨어는 역할에 따라 입력, 기억&amp;middot;저장, 제어, 연산, 출력의 5가지 장치로 구분되며, 이를 폰 노이만 구조라고 한다. &lt;br /&gt;* 소프트웨어(프로그램)는 문제를 해결하기 위한 단계별 절차인 알고리즘을 컴퓨터가 이해할 수 있는 명령어로 구현한 결과물&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;* 컴퓨터는 모든 정보를 비트로 처리하며, 8개의 비트가 모여 문자와 숫자를 표현하는 기본 단위인 바이트가 된다. &lt;br /&gt;* 사람이 사용하는 자연어와 유사한 고급 언어로 작성된 '소스 코드'는 컴파일러나 인터프리터를 통해 컴퓨터가 이해할 수 있는 기계어로 변환되어 실행된다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>AI/파이썬</category>
      <category>알고리즘</category>
      <category>컴퓨터구조</category>
      <category>컴퓨터와 프로그램</category>
      <category>파이썬</category>
      <category>프로그래밍언어</category>
      <author>Ayel</author>
      <guid isPermaLink="true">https://developernew.tistory.com/455</guid>
      <comments>https://developernew.tistory.com/455#entry455comment</comments>
      <pubDate>Sun, 12 Apr 2026 12:34:54 +0900</pubDate>
    </item>
    <item>
      <title>통계학개론 01 데이터와 통계학(1)</title>
      <link>https://developernew.tistory.com/454</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;통계학이란&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;1. 통계학&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 데이터에 관한 학문&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 불확실한 현상을 이해하기 위해 데이터를 수집하고, 데이터 패턴을 요약하고, 분석하여&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;gt; 불확실한 현상에 대한 결론을 찾는 학문&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 데이터란 세상을 이해하는 창&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 어떤 현상을 이해하기 위해 그 현상을 관찰해 데이터를 수집&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 전통적인 데이터 수집 방법: 관찰, 설문조사, 실험 등&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 현대의 데이터 수집 방법: 컴퓨터와 정보통신 기술의 발달로 매일 방대한 양의 데이터가 생산됨&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;gt; 데이터 폭발&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;=&amp;gt; 데이터에서 쓸모있는 정보를 얻기 위한 별도의 과정이 필요&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;2. 통계학의 역할&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) 데이터 수집&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 알고 싶은 현상을 왜곡되지 않게, 잘 반영하는 데이터를 수집하기 위해 통계적 원리를 사용&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 데이터 요약&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 데이터가 가진 특징과 패턴을 정확하고 효과적으로 드러내기 위한 통계적 방법을 사용&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;gt; 기술통계&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;3) 추론&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 데이터를 이용해 우리의 관심 대상에 대해 추측하고 그 추측의 신뢰성을 계량화&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;gt; 추측통계(추론통계)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;3. 데이터의 요소&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) 데이터: 하나 이상의 변수에 대한 관찰값의 모음&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 데이터의 기본 요소&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 단위(unit): 관측되는 개별 대상&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 변수(variable): 각 단위에 대해 관측되는 특성&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 관찰값(observation): 각 단위로부터 관측한 특성의 값&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;통계학의 주요 개념&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;1. 모집단과 표본&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) 모집단(pupulation)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 관심 대상이 되는 모든 개체의 모임&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 표본(sample)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 모집단을 알기 위해 실제로 관측한 모집단의 일부&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;2. 모수와 통계량&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) 모수(parameter)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 모집단의 특성을 나타내는 대푯값&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 통계량(statistic)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 표본의 특성을 나타내는 대푯값&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;3. 모집단과 모수&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) 모집단: 대부분의 경우 모집단은 너무 커서 모든 개체를 조사할 수 없다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 모집단의 종류&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 유한 모집단: 개체 수가 유한개&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 무한 모집단: 개체 수가 무한개&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;3) 모수&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 값이 고정되어 있다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 대부분의 경우 값을 알 수 없다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;cf. 예외: 개체수가 작은 유한모집단인 경우 모든 개체를 조사하면 모수를 알아낼 수 있다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;4. 표본과 통계량&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) 표본&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 모집단을 잘 반영하는 표본을 뽑는 것은 매우 중요&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 단순랜덤표집(sample random sampling)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 유한모집단에서 n개의 개체로 이루어진 가능한 모든 부분집합이 표본으로 선택될 확률이 같도록 설계된 표본 표집 방법&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;3) 통계량&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 모수를 추정하기 위해 표본에서 얻은 값&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 표본을 새로 뽑으면 통계량의 값이 달라질 수 있다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote style=&quot;background-color: #fcfcfc; color: #666666; text-align: left;&quot; data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;R의 데이터 형태와 연산&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;1. 객체의 생성과 저장&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 100%;&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;객체명&amp;lt;-저장하고싶은값&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;512&quot; data-origin-height=&quot;443&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cME90b/dJMcajaCV5Z/L4n75hLLp5JbT1xm6bYgdK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cME90b/dJMcajaCV5Z/L4n75hLLp5JbT1xm6bYgdK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cME90b/dJMcajaCV5Z/L4n75hLLp5JbT1xm6bYgdK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcME90b%2FdJMcajaCV5Z%2FL4n75hLLp5JbT1xm6bYgdK%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;512&quot; height=&quot;443&quot; data-origin-width=&quot;512&quot; data-origin-height=&quot;443&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;2. 벡터(vector)&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) 벡터: 어떤 요소(값)들이 일렬로 늘어선 것&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 벡터를 만드는 법&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- c() 함수 안에 벡터의 각 요소를 쉼표로 구분해 넣는다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- seq() 등의 함수를 이용한다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;height&amp;lt;-c(165, 151, 162, 160, 151, 152, 159, 163, 143, 161)&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;d&amp;lt;-1:9&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1부터 9까지 나열&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;e&amp;lt;-seq(1,&amp;nbsp;9,&amp;nbsp;2)&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1에서 9까지 2씩 나열&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;f&amp;lt;-rep(10,&amp;nbsp;5)&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;10을 5번 반복&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;g&amp;lt;-c(d,&amp;nbsp;f)&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;d와 f가 들어간 벡터&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;h&amp;lt;-c(4:1,&amp;nbsp;seq(0,&amp;nbsp;9,&amp;nbsp;3))&lt;/span&gt;&lt;/td&gt;
&lt;td&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;4부터 1까지 나열하고 0부터 9까지 3씩 나&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;gt;함수를 섞어 사용하는 것도 가능&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;592&quot; data-origin-height=&quot;689&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/M3w9Q/dJMcaiJynVC/MjIWYwiUOKQfayLRrR6yZk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/M3w9Q/dJMcaiJynVC/MjIWYwiUOKQfayLRrR6yZk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/M3w9Q/dJMcaiJynVC/MjIWYwiUOKQfayLRrR6yZk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FM3w9Q%2FdJMcaiJynVC%2FMjIWYwiUOKQfayLRrR6yZk%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;592&quot; height=&quot;689&quot; data-origin-width=&quot;592&quot; data-origin-height=&quot;689&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;3) 벡터의 연산&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;:&amp;nbsp;벡터들 간 사칙연산 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 벡터의 길이가 같은 경우: 각 벡터에서 같은 위치에 있는 숫자끼리 연산&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 벡터의 길이가 다른 경우: 길이가 짧은 벡터의 각 요소를 앞에서부터 재활용하면서 연산(경고메세지 출력)&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;593&quot; data-origin-height=&quot;491&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rX1Tc/dJMcaiCOcBk/q3ZjxHru4k7mHyNxDJcpeK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rX1Tc/dJMcaiCOcBk/q3ZjxHru4k7mHyNxDJcpeK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rX1Tc/dJMcaiCOcBk/q3ZjxHru4k7mHyNxDJcpeK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FrX1Tc%2FdJMcaiCOcBk%2Fq3ZjxHru4k7mHyNxDJcpeK%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;593&quot; height=&quot;491&quot; data-origin-width=&quot;593&quot; data-origin-height=&quot;491&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;3. 데이터형&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 숫자형: 사칙연산 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 범주형: factor() 또는 as.factor()를 이용해 생성&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 문자형: as.character()를 이용해 생성&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 논리형: TRUE 또는 FALSE 값을 가짐&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;588&quot; data-origin-height=&quot;392&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dp15le/dJMcagLNAKk/5H9fTZBejjxDVqgUxhBej1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dp15le/dJMcagLNAKk/5H9fTZBejjxDVqgUxhBej1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dp15le/dJMcagLNAKk/5H9fTZBejjxDVqgUxhBej1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdp15le%2FdJMcagLNAKk%2F5H9fTZBejjxDVqgUxhBej1%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;588&quot; height=&quot;392&quot; data-origin-width=&quot;588&quot; data-origin-height=&quot;392&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;590&quot; data-origin-height=&quot;475&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cF9YPe/dJMcabDIb2c/Ws1JDLmd1YPRxqap5FoJs0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cF9YPe/dJMcabDIb2c/Ws1JDLmd1YPRxqap5FoJs0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cF9YPe/dJMcabDIb2c/Ws1JDLmd1YPRxqap5FoJs0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcF9YPe%2FdJMcabDIb2c%2FWs1JDLmd1YPRxqap5FoJs0%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;590&quot; height=&quot;475&quot; data-origin-width=&quot;590&quot; data-origin-height=&quot;475&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;4.&amp;nbsp;행렬(matrix)&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 벡터 여러개의 모임&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 행렬의 요소들은 데이터형이 모두 같아야 한다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;nbsp;cbind(), rbind(), matrix() 함수를 이용해 생성&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) 행렬의 연산 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 행렬의 곱셈: %*% 형태로 사용&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- solve() 역행렬&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 행렬의 일부 값 출력&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- s[1, 2]: 1행 2열 값&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- s[1, ]: 1행 모두 출력&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- s[, 2]: 2열 전체 출력&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;589&quot; data-origin-height=&quot;760&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/LEj4m/dJMcaf69VHg/ufXkYnBqimg5lMBjW6J9pK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/LEj4m/dJMcaf69VHg/ufXkYnBqimg5lMBjW6J9pK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/LEj4m/dJMcaf69VHg/ufXkYnBqimg5lMBjW6J9pK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FLEj4m%2FdJMcaf69VHg%2FufXkYnBqimg5lMBjW6J9pK%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;589&quot; height=&quot;760&quot; data-origin-width=&quot;589&quot; data-origin-height=&quot;760&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 행렬과 비슷하나 데이터형이 다른 벡터들도 하나의 데이터프레임에 저장 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- data.frame() 함수를 이용해 생성&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- dat$name: 데이터프레임을 불러낼 수 있다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;589&quot; data-origin-height=&quot;660&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bntZd6/dJMcaakuFN6/PdKW6KJlMlO8UcJkJutnkK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bntZd6/dJMcaakuFN6/PdKW6KJlMlO8UcJkJutnkK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bntZd6/dJMcaakuFN6/PdKW6KJlMlO8UcJkJutnkK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbntZd6%2FdJMcaakuFN6%2FPdKW6KJlMlO8UcJkJutnkK%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;589&quot; height=&quot;660&quot; data-origin-width=&quot;589&quot; data-origin-height=&quot;660&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/453&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://developernew.tistory.com/453&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1775134969753&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;R과 RStudio 설치 및 시작&quot; data-og-description=&quot;R이란 - 통계 분석과 그래프 작성에 쓰이는 무료 소프트웨어- Windows, MacOS, Linux 등 다양한 컴퓨터 환경에 쉽게 설치, 사용 가능- R development core team에 의해 유지, 개선 - 누구나 새로운 함수를 개발&quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/453&quot; data-og-url=&quot;https://developernew.tistory.com/453&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/C6I1j/dJMb9dHouaj/TX7f1ta2udyPlOkFKfD0Q1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/biSxkx/dJMb87f6Qaj/f6B8M4q1nycjmyoWGA3jjk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/mqlkg/dJMb8869bfe/NVIKb5HKpyE7K8dsx1qv1k/img.png?width=1122&amp;amp;height=850&amp;amp;face=0_0_1122_850&quot;&gt;&lt;a href=&quot;https://developernew.tistory.com/453&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/453&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/C6I1j/dJMb9dHouaj/TX7f1ta2udyPlOkFKfD0Q1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/biSxkx/dJMb87f6Qaj/f6B8M4q1nycjmyoWGA3jjk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/mqlkg/dJMb8869bfe/NVIKb5HKpyE7K8dsx1qv1k/img.png?width=1122&amp;amp;height=850&amp;amp;face=0_0_1122_850');&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;R과 RStudio 설치 및 시작&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;R이란 - 통계 분석과 그래프 작성에 쓰이는 무료 소프트웨어- Windows, MacOS, Linux 등 다양한 컴퓨터 환경에 쉽게 설치, 사용 가능- R development core team에 의해 유지, 개선 - 누구나 새로운 함수를 개발&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>AI/통계학개론</category>
      <category>Matrix</category>
      <category>데이터와통계학</category>
      <category>데이터통계</category>
      <category>데이터프레임</category>
      <category>데이터형</category>
      <category>벡터</category>
      <category>통계학개론</category>
      <category>행렬</category>
      <author>Ayel</author>
      <guid isPermaLink="true">https://developernew.tistory.com/454</guid>
      <comments>https://developernew.tistory.com/454#entry454comment</comments>
      <pubDate>Thu, 2 Apr 2026 22:33:33 +0900</pubDate>
    </item>
    <item>
      <title>R과 RStudio 설치 및 시작</title>
      <link>https://developernew.tistory.com/453</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;R이란&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 통계 분석과 그래프 작성에 쓰이는 무료 소프트웨어&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- Windows, MacOS, Linux 등 다양한 컴퓨터 환경에 쉽게 설치, 사용 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- R development core team에 의해 유지, 개선&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 누구나 새로운 함수를 개발해 '패키지' 형태로 공유 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;gt; 상업용 소프트웨어에 비해 다양한 분석 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;R 다운로드&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;CRAN(https://cran.r-project.org)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;917&quot; data-origin-height=&quot;731&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/1okfj/dJMcacvRQPe/AkkxZWeRfchXrTeBaHZC60/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/1okfj/dJMcacvRQPe/AkkxZWeRfchXrTeBaHZC60/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/1okfj/dJMcacvRQPe/AkkxZWeRfchXrTeBaHZC60/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F1okfj%2FdJMcacvRQPe%2FAkkxZWeRfchXrTeBaHZC60%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;917&quot; height=&quot;731&quot; data-origin-width=&quot;917&quot; data-origin-height=&quot;731&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; title=&quot;R다운로드 - CRAN&quot; href=&quot;https://cran.r-project.org  &quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://cran.r-project.orgg &lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;542&quot; data-origin-height=&quot;220&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IUciJ/dJMcaaEOQTc/gPFtEssstrmgw6VwskNfj0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IUciJ/dJMcaaEOQTc/gPFtEssstrmgw6VwskNfj0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IUciJ/dJMcaaEOQTc/gPFtEssstrmgw6VwskNfj0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIUciJ%2FdJMcaaEOQTc%2FgPFtEssstrmgw6VwskNfj0%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;542&quot; height=&quot;220&quot; data-origin-width=&quot;542&quot; data-origin-height=&quot;220&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;:&amp;nbsp;컴퓨터 사양에 따라 필요한 것으로 다운로드&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1117&quot; data-origin-height=&quot;296&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/boYbpK/dJMb996XrTC/Ut4uEPPGUGQriNvJCHkYHk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/boYbpK/dJMb996XrTC/Ut4uEPPGUGQriNvJCHkYHk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/boYbpK/dJMb996XrTC/Ut4uEPPGUGQriNvJCHkYHk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FboYbpK%2FdJMb996XrTC%2FUt4uEPPGUGQriNvJCHkYHk%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;1117&quot; height=&quot;296&quot; data-origin-width=&quot;1117&quot; data-origin-height=&quot;296&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 처음 설치하는 사람은 base로 설치&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;gt; 다운로드 받은 파일을 실행해 설치해주면 된다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;RStudio 편집기&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;RStudio: R을 편리하게 이용할 수 있게 해 주는 편집기&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1317&quot; data-origin-height=&quot;667&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bBTIqi/dJMcacijzJj/1iyYJQVhZVNnz1PLJWgyp1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bBTIqi/dJMcacijzJj/1iyYJQVhZVNnz1PLJWgyp1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bBTIqi/dJMcacijzJj/1iyYJQVhZVNnz1PLJWgyp1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbBTIqi%2FdJMcacijzJj%2F1iyYJQVhZVNnz1PLJWgyp1%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;1317&quot; height=&quot;667&quot; data-origin-width=&quot;1317&quot; data-origin-height=&quot;667&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://www.rstudio.com&quot;&gt;https://www.rstudio.com&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;포스팅 주소가 posit.co로 바뀐 것 같음&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1775128436521&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;Posit | The Open-Source Data Science Company&quot; data-og-description=&quot;The best data science is open source. Posit is committed to creating incredible open-source tools for individuals, teams, and enterprises.&quot; data-og-host=&quot;posit.co&quot; data-og-source-url=&quot;https://www.rstudio.com&quot; data-og-url=&quot;https://posit.co/&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://www.rstudio.com&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.rstudio.com&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; data-ke-size=&quot;size16&quot;&gt;Posit | The Open-Source Data Science Company&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;The best data science is open source. Posit is committed to creating incredible open-source tools for individuals, teams, and enterprises.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;posit.co&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&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;413&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/RNBxg/dJMcafMTU3m/DtPXlRMth7w0croDdnpZA1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/RNBxg/dJMcafMTU3m/DtPXlRMth7w0croDdnpZA1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/RNBxg/dJMcafMTU3m/DtPXlRMth7w0croDdnpZA1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FRNBxg%2FdJMcafMTU3m%2FDtPXlRMth7w0croDdnpZA1%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;1280&quot; height=&quot;413&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;413&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 가장 하단부 ALL PRODUCTS로 찾는 게 가장 빠름&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;726&quot; data-origin-height=&quot;695&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bIG2xd/dJMcaargQKz/MiGiUPvJyNx9KP5XGyEyt0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bIG2xd/dJMcaargQKz/MiGiUPvJyNx9KP5XGyEyt0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bIG2xd/dJMcaargQKz/MiGiUPvJyNx9KP5XGyEyt0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbIG2xd%2FdJMcaargQKz%2FMiGiUPvJyNx9KP5XGyEyt0%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;726&quot; height=&quot;695&quot; data-origin-width=&quot;726&quot; data-origin-height=&quot;695&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;Open Source &amp;gt; RStudio &amp;gt; RStudio Desktop&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;485&quot; data-origin-height=&quot;681&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/be77Qq/dJMcahjEvw4/sV8uzMEKahIbbGhVnayTXk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/be77Qq/dJMcahjEvw4/sV8uzMEKahIbbGhVnayTXk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/be77Qq/dJMcahjEvw4/sV8uzMEKahIbbGhVnayTXk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbe77Qq%2FdJMcahjEvw4%2FsV8uzMEKahIbbGhVnayTXk%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;681&quot; data-origin-width=&quot;485&quot; data-origin-height=&quot;681&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;833&quot; data-origin-height=&quot;775&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bq20as/dJMcajaCUje/c8ypIha8zZtckGjfBjoJ91/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bq20as/dJMcajaCUje/c8ypIha8zZtckGjfBjoJ91/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bq20as/dJMcajaCUje/c8ypIha8zZtckGjfBjoJ91/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbq20as%2FdJMcajaCUje%2Fc8ypIha8zZtckGjfBjoJ91%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;833&quot; height=&quot;775&quot; data-origin-width=&quot;833&quot; data-origin-height=&quot;775&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: R은 이미 설치했으니 RStudio를 설치해준다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;gt; 실제로 사용할 때는 RStudio를 열어 프로그램을 사용한다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;RStudio 실행화면&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000; text-align: start;&quot;&gt; RStudio를 처음 열었을 때의 화면 &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1191&quot; data-origin-height=&quot;773&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bYBX1v/dJMcadBrnqs/pg40sgxDNSsmEl9s1HG3J1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bYBX1v/dJMcadBrnqs/pg40sgxDNSsmEl9s1HG3J1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bYBX1v/dJMcadBrnqs/pg40sgxDNSsmEl9s1HG3J1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbYBX1v%2FdJMcadBrnqs%2Fpg40sgxDNSsmEl9s1HG3J1%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;1191&quot; height=&quot;773&quot; data-origin-width=&quot;1191&quot; data-origin-height=&quot;773&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;:&amp;nbsp;기본 레이아웃 상태&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1122&quot; data-origin-height=&quot;850&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bloJxK/dJMcagrs21S/7M3pCuqaq5rZizbkIzCrxk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bloJxK/dJMcagrs21S/7M3pCuqaq5rZizbkIzCrxk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bloJxK/dJMcagrs21S/7M3pCuqaq5rZizbkIzCrxk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbloJxK%2FdJMcagrs21S%2F7M3pCuqaq5rZizbkIzCrxk%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;1122&quot; height=&quot;850&quot; data-origin-width=&quot;1122&quot; data-origin-height=&quot;850&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;File &amp;gt; New File &amp;gt; R Script&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;스크립트창을 실행해 사용하는 것이 편하다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1117&quot; data-origin-height=&quot;701&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cXrpS1/dJMcahKHBgi/vavN8jdfze6s5Mp5hcZQbk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cXrpS1/dJMcahKHBgi/vavN8jdfze6s5Mp5hcZQbk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cXrpS1/dJMcahKHBgi/vavN8jdfze6s5Mp5hcZQbk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcXrpS1%2FdJMcahKHBgi%2FvavN8jdfze6s5Mp5hcZQbk%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;1117&quot; height=&quot;701&quot; data-origin-width=&quot;1117&quot; data-origin-height=&quot;701&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;:&amp;nbsp;R Script 창이 활성화 된 화면&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;R 기초 활용법&lt;/span&gt;&lt;/b&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;1. 작업 디렉토리 지정&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: 데이터 파일을 읽어들이거나 내보낼 때, 일일이 위치를 지정하지 않아도 되는 디폴트 위치를 설정하는 것&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;setwd() 함수 안에 큰따옴표를 씌운 경로를 넣는다&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 100%;&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;setwd(&quot;C:\\Study\\R\\Practice&quot;)&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;or&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;setwd(&quot;C:/Study/R/Practice&quot;)&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;gt; 작업 디렉토리는 RStudio를 종료하면 해제된다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;gt; 다음에 다시 작업파일을 열어 작업하거나 새로운 작업을 하는 경우&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;gt; 디렉토리 명령어를 다시 써 주어야 한다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;564&quot; data-origin-height=&quot;68&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/2PGW4/dJMcahKHCsS/qDSTgt81lsfVKaN7a4iFJK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/2PGW4/dJMcahKHCsS/qDSTgt81lsfVKaN7a4iFJK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/2PGW4/dJMcahKHCsS/qDSTgt81lsfVKaN7a4iFJK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F2PGW4%2FdJMcahKHCsS%2FqDSTgt81lsfVKaN7a4iFJK%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;564&quot; height=&quot;68&quot; data-origin-width=&quot;564&quot; data-origin-height=&quot;68&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;2. R Studio에서 명령어를 실행하는 법&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;1) 콘솔창 이용&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1063&quot; data-origin-height=&quot;741&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bWc0rN/dJMcah4Z4rz/3d48tqqbJg8HLaCG0GDCg1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bWc0rN/dJMcah4Z4rz/3d48tqqbJg8HLaCG0GDCg1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bWc0rN/dJMcah4Z4rz/3d48tqqbJg8HLaCG0GDCg1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbWc0rN%2FdJMcah4Z4rz%2F3d48tqqbJg8HLaCG0GDCg1%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;1063&quot; height=&quot;741&quot; data-origin-width=&quot;1063&quot; data-origin-height=&quot;741&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;:&amp;nbsp;콘솔창의 꺽쇠(&amp;gt;) 부분에 명령어를 입력한다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1063&quot; data-origin-height=&quot;736&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cS9SHQ/dJMcacJo4lA/8eXKFyYec6nRD3j5jqWcE0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cS9SHQ/dJMcacJo4lA/8eXKFyYec6nRD3j5jqWcE0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cS9SHQ/dJMcacJo4lA/8eXKFyYec6nRD3j5jqWcE0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcS9SHQ%2FdJMcacJo4lA%2F8eXKFyYec6nRD3j5jqWcE0%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;1063&quot; height=&quot;736&quot; data-origin-width=&quot;1063&quot; data-origin-height=&quot;736&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;:&amp;nbsp;콘솔창에 직접 입력 후 Enter&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;2) 스크립트 창 이용&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1062&quot; data-origin-height=&quot;737&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yGQ2F/dJMcahKHCha/PvCrrqKPoSpPWyYpvonOWK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yGQ2F/dJMcahKHCha/PvCrrqKPoSpPWyYpvonOWK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yGQ2F/dJMcahKHCha/PvCrrqKPoSpPWyYpvonOWK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyGQ2F%2FdJMcahKHCha%2FPvCrrqKPoSpPWyYpvonOWK%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;1062&quot; height=&quot;737&quot; data-origin-width=&quot;1062&quot; data-origin-height=&quot;737&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;:&amp;nbsp;스크립트창에 스크립트를 저장하면서 콘솔에 실행할 수 있다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 1줄만 실행할 경우: 실행하려는 명령어에 커서를 놓은 후 Run 버튼을 클릭하거나 단축키 Ctrl+Enter 누름&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1067&quot; data-origin-height=&quot;739&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/VrHfo/dJMcacJo4ua/GAdKVHJnZ2gM0oRwUAkwq1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/VrHfo/dJMcacJo4ua/GAdKVHJnZ2gM0oRwUAkwq1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/VrHfo/dJMcacJo4ua/GAdKVHJnZ2gM0oRwUAkwq1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FVrHfo%2FdJMcacJo4ua%2FGAdKVHJnZ2gM0oRwUAkwq1%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;1067&quot; height=&quot;739&quot; data-origin-width=&quot;1067&quot; data-origin-height=&quot;739&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 여러줄 또는 1줄 전체가 아닌 일부분만 실행할 경우: 실행하려는 명령어를 마우스로 선택한 후 Run 버튼을 클릭하거나 단축키 Ctrl+Enter 누름&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>AI/통계학개론</category>
      <category>R</category>
      <category>R 설치</category>
      <category>RStudio</category>
      <category>RStudio다운로드</category>
      <category>r다운로드</category>
      <category>R설치방법</category>
      <category>R편집기</category>
      <author>Ayel</author>
      <guid isPermaLink="true">https://developernew.tistory.com/453</guid>
      <comments>https://developernew.tistory.com/453#entry453comment</comments>
      <pubDate>Thu, 2 Apr 2026 22:02:33 +0900</pubDate>
    </item>
    <item>
      <title>React 리액트 - useContext()</title>
      <link>https://developernew.tistory.com/452</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;context&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;리액트의 컨텍스트(Context)&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- Context: 컨테이너 내에서 컨텍스트로 둘러싸인 컴포넌트 사용가능한 전역변수라고 이해할 수 있다&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- Provider(공급자) -&amp;gt; Consumer(수요자) &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;Context&amp;nbsp;API란?&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;-&amp;nbsp;Props를&amp;nbsp;넘겨주지&amp;nbsp;않고도&amp;nbsp;컴포넌트&amp;nbsp;트리&amp;nbsp;전체에&amp;nbsp;데이터를&amp;nbsp;처리할&amp;nbsp;수&amp;nbsp;있도록&amp;nbsp;제공해주는&amp;nbsp;API &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;-&amp;nbsp;리액의&amp;nbsp;내장&amp;nbsp;API(16버전&amp;nbsp;이상)&amp;nbsp;중&amp;nbsp;하나 &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;-&amp;gt;&amp;nbsp;내장되어&amp;nbsp;있기&amp;nbsp;때문에&amp;nbsp;별도로&amp;nbsp;설치하지&amp;nbsp;않아도&amp;nbsp;사용&amp;nbsp;가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;Props의&amp;nbsp;드릴링&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;-&amp;nbsp;드릴링:&amp;nbsp;부모&amp;nbsp;컴포넌트부터&amp;nbsp;최하위&amp;nbsp;컴포넌트까지&amp;nbsp;Props를&amp;nbsp;보내는&amp;nbsp;과정 &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;-&amp;gt;&amp;nbsp;A.jsx&amp;nbsp;~&amp;nbsp;Z.jsx까지&amp;nbsp;있다고&amp;nbsp;가정할&amp;nbsp;때&amp;nbsp;부모&amp;nbsp;A컴포넌트부터&amp;nbsp;최하위&amp;nbsp;Z컴포넌트까지&amp;nbsp;Props를&amp;nbsp;보내는&amp;nbsp;과정&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;Context API의 사용&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;-&amp;nbsp;변화가&amp;nbsp;없는&amp;nbsp;것.&amp;nbsp;즉&amp;nbsp;다크모드&amp;nbsp;화이트모드&amp;nbsp;등&amp;nbsp;값이&amp;nbsp;선언되어&amp;nbsp;있는&amp;nbsp;상태로&amp;nbsp;변화가&amp;nbsp;없는&amp;nbsp;상태의&amp;nbsp;변수를&amp;nbsp;지정할&amp;nbsp;때&amp;nbsp;사용 &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;-&amp;nbsp;Context는&amp;nbsp;변화를&amp;nbsp;시켜주는&amp;nbsp;API가&amp;nbsp;아니다 &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;-&amp;nbsp;변화를&amp;nbsp;주면&amp;nbsp;안되지만&amp;nbsp;혹시나&amp;nbsp;변화를&amp;nbsp;생길것을&amp;nbsp;대비하여&amp;nbsp;만들어져&amp;nbsp;있다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;Context의&amp;nbsp;단점&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;-&amp;nbsp;Provider&amp;nbsp;컴포넌트는&amp;nbsp;value&amp;nbsp;Props를&amp;nbsp;받아서&amp;nbsp;하위&amp;nbsp;컴포넌트에게&amp;nbsp;전달한다 &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;-&amp;nbsp;value가&amp;nbsp;업데이트&amp;nbsp;되었을&amp;nbsp;때&amp;nbsp;Context로&amp;nbsp;감싸진&amp;nbsp;모든&amp;nbsp;컴포넌트가&amp;nbsp;리랜더링&amp;nbsp;된다 &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;context 기본 구조&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;743&quot; data-origin-height=&quot;532&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c5oKDS/dJMcajgvUK4/5WXzJkZl7ks1sETpgz65lk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c5oKDS/dJMcajgvUK4/5WXzJkZl7ks1sETpgz65lk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c5oKDS/dJMcajgvUK4/5WXzJkZl7ks1sETpgz65lk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc5oKDS%2FdJMcajgvUK4%2F5WXzJkZl7ks1sETpgz65lk%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;743&quot; height=&quot;532&quot; data-origin-width=&quot;743&quot; data-origin-height=&quot;532&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;드릴링 상태의 컴포넌트 구조를 해소하기 위해&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;context를 사용&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;212&quot; data-origin-height=&quot;125&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bP2ewP/dJMcac2LXrz/1rhYtlo1LsxPx8EtXBQ1K0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bP2ewP/dJMcac2LXrz/1rhYtlo1LsxPx8EtXBQ1K0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bP2ewP/dJMcac2LXrz/1rhYtlo1LsxPx8EtXBQ1K0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbP2ewP%2FdJMcac2LXrz%2F1rhYtlo1LsxPx8EtXBQ1K0%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;212&quot; height=&quot;125&quot; data-origin-width=&quot;212&quot; data-origin-height=&quot;125&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;CharContainer.jsx&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1766928298201&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import React from 'react';
import A from './A';
import CharContext from './CharContext';

const CharContainer = () =&amp;gt; {
  return (
    &amp;lt;CharContext.Provider value={{color: &quot;red&quot;, fontSize: &quot;50px&quot;}}&amp;gt;
      &amp;lt;A /&amp;gt;
    &amp;lt;/CharContext.Provider&amp;gt;
  );
};

export default CharContainer;&amp;lt;A /&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;A.jsx&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1766928312831&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import React from 'react';
import B from './B';

const A = () =&amp;gt; {
  return (
    &amp;lt;div&amp;gt;
      &amp;lt;B /&amp;gt;
    &amp;lt;/div&amp;gt;
  );
};

export default A;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;B.jsx&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1766929043288&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import React from 'react';
import C from './C';
import CharContext from './CharContext';

const B = () =&amp;gt; {
  return (
    &amp;lt;div&amp;gt;
      &amp;lt;CharContext.Consumer&amp;gt;
        {
          ({fontSize}) =&amp;gt; {
            &amp;lt;h1 style={{fontSize}}&amp;gt;
              B: Context 활용해보기
            &amp;lt;/h1&amp;gt;
          }
        }
      &amp;lt;/CharContext.Consumer&amp;gt;
      &amp;lt;C /&amp;gt;
      &amp;lt;button&amp;gt;B: 버튼을 누르면 글자 크기 변경&amp;lt;/button&amp;gt;
    &amp;lt;/div&amp;gt;
  );
};

export default B;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;C.jsx&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1766929056790&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import React from 'react';
import CharContext from './CharContext';

const C = () =&amp;gt; {
  return (
    &amp;lt;div&amp;gt;
      &amp;lt;CharContext.Consumer&amp;gt;
        {(context) =&amp;gt; {
          console.log(&quot;context&quot;, context)
          return &amp;lt;p style={{color: context.color}}&amp;gt;C: REACT context API&amp;lt;/p&amp;gt;
        }}

      &amp;lt;/CharContext.Consumer&amp;gt;
    &amp;lt;/div&amp;gt;
  );
};

export default C;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- context를 사용해 컨테이너의 스타일을 불러옴&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;-&amp;gt; A&amp;gt;B&amp;gt;C 순서대로 드릴링하지 않고 상위의 컨테이너를 불러올 수 있음&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;결과화면&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;281&quot; data-origin-height=&quot;67&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bURm3q/dJMcagYqICI/BHCuHHImxQx4USau0k3U7k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bURm3q/dJMcagYqICI/BHCuHHImxQx4USau0k3U7k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bURm3q/dJMcagYqICI/BHCuHHImxQx4USau0k3U7k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbURm3q%2FdJMcagYqICI%2FBHCuHHImxQx4USau0k3U7k%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;281&quot; height=&quot;67&quot; data-origin-width=&quot;281&quot; data-origin-height=&quot;67&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;useContext()&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;이전의 구조에서는 useState()사용이 어려움&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;-&amp;gt;&amp;nbsp;컨텍스트를 이용해 상태를 바꾸는 방법&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 100%;&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;버튼을 누르면 글자 크기 변경&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;FontContext.js&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1767007266573&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import { createContext, useState } from &quot;react&quot;;

const FontContext = createContext({
  state: { fontSize: &quot;&quot;},
  actions: { setFontSize: () =&amp;gt; {}}
})

export const FontProvider = ({children}) =&amp;gt; {

  const [fontSize, setFontSize] = useState(&quot;2rem&quot;)

  const value = {
    state: { fontSize: fontSize },
    actions: { setFontSize: setFontSize }
  }

  return (
    &amp;lt;FontContext.Provider value={value}&amp;gt;
      {children}
    &amp;lt;/FontContext.Provider&amp;gt;
  )

}

export default FontContext;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;FontContainer.jsx&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1767007244699&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import React from 'react';
import FontParent from './FontParent';
import { FontProvider } from './FontContext';

const FontContainer = () =&amp;gt; {
  return (
    &amp;lt;div&amp;gt;
      &amp;lt;FontProvider&amp;gt;
        &amp;lt;FontParent /&amp;gt;
      &amp;lt;/FontProvider&amp;gt;
    &amp;lt;/div&amp;gt;
  );
};

export default FontContainer;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- Provider로 하위 컴포넌트를 감싸 불러옴&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;-&amp;gt; &lt;b&gt;FontProvider 안에 있는 모든 컴포넌트는 &lt;/b&gt;value에 담긴 데이터를 &lt;b&gt;직접 꺼내서 쓸 수 있다&lt;/b&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;FontParent.jsx&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1767007212690&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import React from 'react';
import FontChild from './FontChild';

const FontParent = () =&amp;gt; {
  return (
    &amp;lt;div&amp;gt;
      &amp;lt;FontChild /&amp;gt;
    &amp;lt;/div&amp;gt;
  );
};

export default FontParent;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- 드릴링 발생&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;FontChild.jsx&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1767007189477&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import React, { useContext } from 'react';
import FontContext from './FontContext';

const FontChild = () =&amp;gt; {

  // useContext 
  const {state, actions} = useContext(FontContext)
  const {fontSize} = state

  return (
    &amp;lt;div&amp;gt;
      &amp;lt;h1 style={{fontSize}}&amp;gt;useContext() 활용&amp;lt;/h1&amp;gt;
      &amp;lt;button onClick={() =&amp;gt; {
        actions.setFontSize(&quot;100px&quot;)
      }}&amp;gt;글자 크기 바꾸기&amp;lt;/button&amp;gt;
    &amp;lt;/div&amp;gt;
  );
};

export default FontChild;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- useContext() 사용이 가능해짐&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;-&amp;gt; useContext()로 useState()의 value값을 공유받아 사용한다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt; &lt;span style=&quot;text-align: start;&quot;&gt;=&amp;gt; &lt;/span&gt;FontProvider 안에 있는 모든 컴포넌트는&amp;nbsp;&lt;span style=&quot;text-align: start;&quot;&gt;value에 담긴 데이터를&amp;nbsp;&lt;/span&gt;직접 꺼내서 쓸 수 있으므로&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;=&amp;gt; FontChild는 props 없이도 fontSize에 접근 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;907&quot; data-start=&quot;863&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;결과화면&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;366&quot; data-origin-height=&quot;97&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/HNv0X/dJMcadN7TpF/0JXhqA5R0JSf9TfWTTJhJk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/HNv0X/dJMcadN7TpF/0JXhqA5R0JSf9TfWTTJhJk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/HNv0X/dJMcadN7TpF/0JXhqA5R0JSf9TfWTTJhJk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FHNv0X%2FdJMcadN7TpF%2F0JXhqA5R0JSf9TfWTTJhJk%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;366&quot; height=&quot;97&quot; data-origin-width=&quot;366&quot; data-origin-height=&quot;97&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1160&quot; data-origin-height=&quot;227&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/qubmc/dJMcaiPrVQH/tAC3KDCsTsDyZAkRq8WaA0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/qubmc/dJMcaiPrVQH/tAC3KDCsTsDyZAkRq8WaA0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/qubmc/dJMcaiPrVQH/tAC3KDCsTsDyZAkRq8WaA0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fqubmc%2FdJMcaiPrVQH%2FtAC3KDCsTsDyZAkRq8WaA0%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;1160&quot; height=&quot;227&quot; data-origin-width=&quot;1160&quot; data-origin-height=&quot;227&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- 버튼을 누르면 글자가 커지게 된다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 100%;&quot;&gt;
&lt;div style=&quot;background-color: #ffffff; color: #000000;&quot;&gt;
&lt;div&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;기능추가&amp;gt;&lt;br /&gt;사용자가 글자크기를 입력하고 엔터를 누르면 글자크기 변경&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;글자크기 입력 예시: 200px&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;lt;FontParent.jsx&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1767012935143&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import React, { useContext } from 'react';
import FontChild from './FontChild';
import FontContext from './FontContext';

const FontParent = () =&amp;gt; {

  const {state, actions} = useContext(FontContext)
  const {fontSize} = state
  const {setFontSize} = actions

  const handleFontSizeOnKeyDown = (e) =&amp;gt; {
    if(e.key === &quot;Enter&quot;){
      setFontSize(e.target.value)
    }
  }

  return (
    &amp;lt;div&amp;gt;
      &amp;lt;FontChild /&amp;gt;
      &amp;lt;h2 style={{fontSize}}&amp;gt;
        context 글자 크기 적용
      &amp;lt;/h2&amp;gt;
      &amp;lt;input type=&quot;text&quot; onKeyDown={handleFontSizeOnKeyDown} /&amp;gt;
    &amp;lt;/div&amp;gt;
  );
};

export default FontParent;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- 이전의 방식과 마찬가지로 useContext()를 사용해&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;fontContext.js의 기능을 FontParent.jsx에서 바로 사용 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;lt;결과화면&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;732&quot; data-origin-height=&quot;152&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/G6zaF/dJMcaiopNx2/i0keTY3UJsO1yrHHObCQ2K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/G6zaF/dJMcaiopNx2/i0keTY3UJsO1yrHHObCQ2K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/G6zaF/dJMcaiopNx2/i0keTY3UJsO1yrHHObCQ2K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FG6zaF%2FdJMcaiopNx2%2Fi0keTY3UJsO1yrHHObCQ2K%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;732&quot; height=&quot;152&quot; data-origin-width=&quot;732&quot; data-origin-height=&quot;152&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;434&quot; data-origin-height=&quot;87&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wALbs/dJMcai9KrTe/tGKB0pgw0Nzo0RgeXFh3C1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wALbs/dJMcai9KrTe/tGKB0pgw0Nzo0RgeXFh3C1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wALbs/dJMcai9KrTe/tGKB0pgw0Nzo0RgeXFh3C1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FwALbs%2FdJMcai9KrTe%2FtGKB0pgw0Nzo0RgeXFh3C1%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;434&quot; height=&quot;87&quot; data-origin-width=&quot;434&quot; data-origin-height=&quot;87&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1150&quot; data-origin-height=&quot;206&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/n5N62/dJMcab3T64M/zMPI3vkaHSqFBk6f8bGaSK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/n5N62/dJMcab3T64M/zMPI3vkaHSqFBk6f8bGaSK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/n5N62/dJMcab3T64M/zMPI3vkaHSqFBk6f8bGaSK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fn5N62%2FdJMcab3T64M%2FzMPI3vkaHSqFBk6f8bGaSK%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;1150&quot; height=&quot;206&quot; data-origin-width=&quot;1150&quot; data-origin-height=&quot;206&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote style=&quot;background-color: #fcfcfc; color: #666666; text-align: left;&quot; data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;AnimalsContainer&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 100%;&quot;&gt;
&lt;div style=&quot;background-color: #ffffff; color: #000000;&quot;&gt;
&lt;div&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;-&amp;nbsp;동물을 추가하고 삭제하는 메서드 구현&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: #ffffff; color: #000000;&quot;&gt;
&lt;div&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- Context에 저장된 동물 세 마리를 버튼으로 출력&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- input에 동물을 입력 후 엔터를 누르면 동물 버튼이 추가된다&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- 동물 버튼을 클릭하면 해당 버튼이 삭제된다&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- 추가, 삭제는 context에서 제공하는 insert(), remove()를 사용해야 한다&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;Animals Container.jsx&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1767180588977&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import React from 'react';
import { AnimalsProvider } from './AnimalsContext';
import Animals from './Animals';

const AnimalsContainer = () =&amp;gt; {
  return (
    &amp;lt;div&amp;gt;
      &amp;lt;AnimalsProvider&amp;gt;
        &amp;lt;Animals /&amp;gt;
      &amp;lt;/AnimalsProvider&amp;gt;
    &amp;lt;/div&amp;gt;
  );
};

export default AnimalsContainer;&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- AminalsContainer는 변동없음&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 하위 컴포넌트에서 동작 및 기능 구현&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;Animal.jsx&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1767180633332&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import React, { useContext } from 'react';
import { AnimalsContext } from './AnimalsContext';

const Animals = () =&amp;gt; {
  const {state, actions} = useContext(AnimalsContext)
  const {insert, remove} = actions

  console.log(state)

  const buttons = state.animals.map((animal, i) =&amp;gt; (
    &amp;lt;li key={i}&amp;gt;
      &amp;lt;button onClick={() =&amp;gt; remove(i)}&amp;gt;{animal}&amp;lt;/button&amp;gt;
    &amp;lt;/li&amp;gt;
  ))

  const handleAddAnimalOnKeyDown = (e) =&amp;gt; {
    if(e.key === 'Enter'){
      insert(e.target.value)
      e.target.value = ''
    }
  }

  return (
    &amp;lt;div&amp;gt;
      &amp;lt;input type=&quot;text&quot; onKeyDown={handleAddAnimalOnKeyDown}/&amp;gt;
      &amp;lt;ul&amp;gt;
       {buttons}
      &amp;lt;/ul&amp;gt;
    &amp;lt;/div&amp;gt;
  );
};

export default Animals;&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- UIUX에서 출력되는 부분 구현&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;AnimalContext.js&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1767180676154&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import { createContext, useState } from &quot;react&quot;

export const AnimalsContext = createContext({
  state: {animals: []},
  actions: {insert: () =&amp;gt; {}, remove: () =&amp;gt; {}}
})

export const AnimalsProvider = ({children}) =&amp;gt; {
  const [animals, setAnimals] = useState(['누렁이', '점박이', '얼룩이'])

  const insert = (animal) =&amp;gt; {
    setAnimals([...animals, animal])
  }
  const remove = (index) =&amp;gt; {
    setAnimals(animals.filter((animals, i) =&amp;gt; index !== i))
  }

  const value = {
    state: {animals: animals},
    actions: {insert: insert, remove: remove}
  }

  return (
    &amp;lt;AnimalsContext.Provider value={value}&amp;gt;
      {children}
    &amp;lt;/AnimalsContext.Provider&amp;gt;
  )
}&lt;/code&gt;&lt;/pre&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 동물을 추가하고 삭제하는 기능 구현&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;결과화면&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;331&quot; data-origin-height=&quot;321&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bAioIl/dJMcadgjRsW/kFJJbE5pyRW50bGXHBKnC1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bAioIl/dJMcadgjRsW/kFJJbE5pyRW50bGXHBKnC1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bAioIl/dJMcadgjRsW/kFJJbE5pyRW50bGXHBKnC1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbAioIl%2FdJMcadgjRsW%2FkFJJbE5pyRW50bGXHBKnC1%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;331&quot; height=&quot;321&quot; data-origin-width=&quot;331&quot; data-origin-height=&quot;321&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;동물 목록 추가&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;331&quot; data-origin-height=&quot;227&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cVF2eU/dJMcajnhZxA/jAwJxSCeUzV2mHSqhJ5yDk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cVF2eU/dJMcajnhZxA/jAwJxSCeUzV2mHSqhJ5yDk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cVF2eU/dJMcajnhZxA/jAwJxSCeUzV2mHSqhJ5yDk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcVF2eU%2FdJMcajnhZxA%2FjAwJxSCeUzV2mHSqhJ5yDk%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;331&quot; height=&quot;227&quot; data-origin-width=&quot;331&quot; data-origin-height=&quot;227&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;버튼을 눌러 동물 삭제&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Frontend/React</category>
      <category>context</category>
      <category>react</category>
      <category>리액트</category>
      <category>리액트 컨텍스트</category>
      <category>컨택스트</category>
      <author>Ayel</author>
      <guid isPermaLink="true">https://developernew.tistory.com/452</guid>
      <comments>https://developernew.tistory.com/452#entry452comment</comments>
      <pubDate>Mon, 29 Dec 2025 21:57:11 +0900</pubDate>
    </item>
    <item>
      <title>React 리액트 - 컴포넌트(component)</title>
      <link>https://developernew.tistory.com/451</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;component&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;200&quot; data-origin-height=&quot;51&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/r3AL8/dJMcaaDU4ve/UvcL27BeTPWhSaudWsIzf0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/r3AL8/dJMcaaDU4ve/UvcL27BeTPWhSaudWsIzf0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/r3AL8/dJMcaaDU4ve/UvcL27BeTPWhSaudWsIzf0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fr3AL8%2FdJMcaaDU4ve%2FUvcL27BeTPWhSaudWsIzf0%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;200&quot; height=&quot;51&quot; data-origin-width=&quot;200&quot; data-origin-height=&quot;51&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;lt;BasicButton.jsx&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1766922228159&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import React from 'react';
import Button from './style';

const BasicButton = ({size, shape, variant, border, font, color, children}) =&amp;gt; {

  return (
    &amp;lt;Button size={size} shape={shape} variant={variant} border={border} font={font} color={color}&amp;gt;
      {children}
    &amp;lt;/Button&amp;gt;
  );
};

export default BasicButton;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;: size={&quot;&quot;} shape={&quot;&quot;} variant={&quot;&quot;} border={&quot;&quot;} font={&quot;&quot;} color={&quot;&quot;} &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;gt; 사용하고자 하는 요소들의 key값을 비구조할당함&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;lt;style.js&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1766922258740&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import styled, {css} from &quot;styled-components&quot;;
import { flexCenter } from &quot;../../styles/common&quot;;

const variantCSS = {
  primary : css`
    background-color: ${({theme}) =&amp;gt; theme.PALETTE.primary[&quot;main&quot;]};
  `,
  sub : css`
    background-color: ${({theme}) =&amp;gt; theme.PALETTE.primary[&quot;sub&quot;]};
  `,
  white : css`
    background-color: ${({theme}) =&amp;gt; theme.PALETTE[&quot;white&quot;]};
  `
};

const borderCSS = {
  primary : css`
    border: solid 1px ${({theme}) =&amp;gt; theme.PALETTE.primary[&quot;main&quot;]};
  `,
  sub : css`
    border: solid 1px ${({theme}) =&amp;gt; theme.PALETTE.primary[&quot;sub&quot;]};
  `,
  gray100 : css`
    border: solid 1px ${({theme}) =&amp;gt; theme.PALETTE.gray[&quot;100&quot;] };
  `,
  gray200 : css`
    border: solid 1px ${({theme}) =&amp;gt; theme.PALETTE.gray[&quot;200&quot;] };
  `,
  gray300 : css`
    border: solid 1px ${({theme}) =&amp;gt; theme.PALETTE.gray[&quot;300&quot;] };
  `
};

const colorCSS = {
  primary : css`
    color: ${({theme}) =&amp;gt; theme.PALETTE.primary[&quot;main&quot;]};
  `,
  sub : css`
    color: ${({theme}) =&amp;gt; theme.PALETTE.primary[&quot;sub&quot;]};
  `,
  white : css`
    color: ${({theme}) =&amp;gt; theme.PALETTE[&quot;white&quot;]};
    `,
  black : css`
    color: ${({theme}) =&amp;gt; theme.PALETTE[&quot;black&quot;]};
  `,
  gray100 : css`
    color: ${({theme}) =&amp;gt; theme.PALETTE.gray[&quot;100&quot;] };
  `,
  gray200 : css`
    color: ${({theme}) =&amp;gt; theme.PALETTE.gray[&quot;200&quot;] };
  `,
  gray300 : css`
    color: ${({theme}) =&amp;gt; theme.PALETTE.gray[&quot;300&quot;] };
  `
};

const shapeCSS = {
  default: css``,
  small : css`
    border-radius: 10px;
  `,
  large : css`
    border-radius: 20px;
  `,
  big : css`
    border-radius: 30px;
  `,
  round : css`
    border-radius: 50%;
  `,
}

const sizeCSS = {
  small : css`
    width: 64px;
    height: 32px;
    padding: 16px 0;
  `,
  medium : css`
    width: 96px;
    height: 48px;
    padding: 16px 0;
  `,
  large : css`
    width: 128px;
    height: 64px;
    padding: 16px 0;
  `,
  full : css`
    width: 100%;
    aspect-ratio: 8 / 1;
    padding: 16px 0;
  `,
}

const fontCSS = {
  h1 : css`
    font-size: ${({theme}) =&amp;gt; theme.FONT_SIZE[&quot;h1&quot;]};
    line-height: ${({theme}) =&amp;gt; theme.FONT_LINE[&quot;h1&quot;]};
  `,
  h2 : css`
    font-size: ${({theme}) =&amp;gt; theme.FONT_SIZE[&quot;h2&quot;]};
    line-height: ${({theme}) =&amp;gt; theme.FONT_LINE[&quot;h2&quot;]};
  `,
  h3 : css`
    font-size: ${({theme}) =&amp;gt; theme.FONT_SIZE[&quot;h3&quot;]};
    line-height: ${({theme}) =&amp;gt; theme.FONT_LINE[&quot;h3&quot;]};
  `,
  h4 : css`
    font-size: ${({theme}) =&amp;gt; theme.FONT_SIZE[&quot;h4&quot;]};
    line-height: ${({theme}) =&amp;gt; theme.FONT_LINE[&quot;h4&quot;]};
  `,
  h5 : css`
    font-size: ${({theme}) =&amp;gt; theme.FONT_SIZE[&quot;h5&quot;]};
    line-height: ${({theme}) =&amp;gt; theme.FONT_LINE[&quot;h5&quot;]};
  `,
  h6 : css`
    font-size: ${({theme}) =&amp;gt; theme.FONT_SIZE[&quot;h6&quot;]};
    line-height: ${({theme}) =&amp;gt; theme.FONT_LINE[&quot;h6&quot;]};
  `,
  h7 : css`
    font-size: ${({theme}) =&amp;gt; theme.FONT_SIZE[&quot;h7&quot;]};
    line-height: ${({theme}) =&amp;gt; theme.FONT_LINE[&quot;h7&quot;]};
  `,
  h8 : css`
    font-size: ${({theme}) =&amp;gt; theme.FONT_SIZE[&quot;h8&quot;]};
    line-height: ${({theme}) =&amp;gt; theme.FONT_LINE[&quot;h8&quot;]};
  `,
  h9 : css`
    font-size: ${({theme}) =&amp;gt; theme.FONT_SIZE[&quot;h9&quot;]};
    line-height: ${({theme}) =&amp;gt; theme.FONT_LINE[&quot;h9&quot;]};
  `,
}

const Button = styled.button`

  ${({variant}) =&amp;gt; variantCSS[variant]};
  ${({shape}) =&amp;gt; shapeCSS[shape]};
  ${({size}) =&amp;gt; sizeCSS[size]};
  ${({border}) =&amp;gt; borderCSS[border]};
  ${({color}) =&amp;gt; colorCSS[color]};
  ${({font}) =&amp;gt; fontCSS[font]};
  ${flexCenter};
`;

export default Button;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;style.js 컴포넌트에서 필요한 항목을 가져와 정의&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;lt;theme.js&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1766924307951&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;const theme = {};
  theme.PALETTE = {
    primary: {
      main: &quot;#ffd159&quot;,
      sub: &quot;#fff4d8&quot;
    },
    secondary: &quot;#f1ebf5&quot;,
    white: &quot;#fff&quot;,
    black: &quot;#000&quot;,
    gray: {
      100: &quot;#f1ebf5&quot;,
      200: &quot;#aea8be&quot;,
      300: &quot;#605866&quot;
    },
    error: &quot;#eb6144&quot;,
    background: {
      white: &quot;#eee&quot;,
      gray: &quot;#f1ebf5&quot;,
      black: &quot;#333&quot;
    }
  }

  theme.FONT_SIZE = {
    h1: &quot;55px&quot;,
    h2: &quot;40px&quot;,
    h3: &quot;30px&quot;,
    h4: &quot;21px&quot;,
    h5: &quot;18px&quot;,
    h6: &quot;16px&quot;,
    h7: &quot;13px&quot;,
    h8: &quot;11px&quot;,
    h9: &quot;8px&quot;
  }

  theme.FONT_WEIGHT = {
    thin: &quot;100&quot;,
    regular: &quot;400&quot;,
    bold: &quot;800&quot;,
  }

  theme.FONT_LINE = {
    h1: &quot;75px&quot;,
    h2: &quot;55px&quot;,
    h3: &quot;41px&quot;,
    h4: &quot;29px&quot;,
    h5: &quot;25px&quot;,
    h6: &quot;22px&quot;,
    h7: &quot;17px&quot;,
    h8: &quot;12&quot;,
    h9: &quot;8&quot;
  }

export default theme;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;lt;common.js&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1766924336109&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import { css } from &quot;styled-components&quot;
// styled 내부에 있는 css를 가져와 사용

export const flexColumn = css`
  display: flex;
  flex-direction: column;
`

export const flexRow = css`
  display: flex;
  flex-direction: row;
`

export const flexCenterColumn = css`
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
`

export const flexCenterRow = css`
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
`

export const flexCenter = css`
  display: flex;
  justify-content: center;
  align-items: center;
`

// 공통적으로 사용하는 테마를 가져와 적용
export const h1Bold = css`
  font-size: ${({theme}) =&amp;gt; theme.FONT_SIZE[&quot;h1&quot;]};
  line-height: ${({theme}) =&amp;gt; theme.FONT_LINE[&quot;h1&quot;]};
  font-weight: ${({theme}) =&amp;gt; theme.FONT_WEIGHT[&quot;bold&quot;]};
`

export const h3Regular = css`
  font-size: ${({theme}) =&amp;gt; theme.FONT_SIZE[&quot;h3&quot;]};
  line-height: ${({theme}) =&amp;gt; theme.FONT_LINE[&quot;h3&quot;]};
  font-weight: ${({theme}) =&amp;gt; theme.FONT_WEIGHT[&quot;regular&quot;]};
`&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;lt;Styled06.jsx&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1766924510436&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import React from 'react';
import BasicButton from '../../components/button/BasicButton';

const Styled06 = () =&amp;gt; {
  return (
    &amp;lt;div&amp;gt;
      &amp;lt;h1&amp;gt; 컴포넌트&amp;lt;/h1&amp;gt;
      &amp;lt;BasicButton 
        size={&quot;medium&quot;} shape={&quot;small&quot;} variant={&quot;primary&quot;} border={&quot;&quot;} font={&quot;h3&quot;} color={&quot;white&quot;}
      &amp;gt;LOGIN
      &amp;lt;/BasicButton&amp;gt;
      &amp;lt;BasicButton 
        size={&quot;&quot;} shape={&quot;&quot;} variant={&quot;sub&quot;} border={&quot;&quot;} font={&quot;&quot;} color={&quot;&quot;}
      &amp;gt;LOGIN
      &amp;lt;/BasicButton&amp;gt;
      &amp;lt;BasicButton 
        size={&quot;&quot;} shape={&quot;&quot;} variant={&quot;white&quot;} border={&quot;&quot;} font={&quot;&quot;} color={&quot;&quot;}
      &amp;gt;LOGIN
      &amp;lt;/BasicButton&amp;gt;
      &amp;lt;BasicButton 
        size={&quot;&quot;} shape={&quot;&quot;} variant={&quot;&quot;} border={&quot;&quot;} font={&quot;&quot;} color={&quot;&quot;}
      &amp;gt;LOGIN
      &amp;lt;/BasicButton&amp;gt;
    &amp;lt;/div&amp;gt;
  );
};

export default Styled06;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;재사용을 위한 컴포넌트 구조로&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;페이지에서 각각의 요소값을 쉽게 변경할 수 있음&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;-&amp;gt; 중복되는 세팅을 하나로 사용 가능함&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;=&amp;gt; 초반 세팅이 오래 걸리지만 수정 및 재사용이 용이하다&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;lt;결과화면&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;147&quot; data-origin-height=&quot;199&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bR7aQo/dJMcafrHpGe/RxhqxCsDE0ZU8OqVnOb0Kk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bR7aQo/dJMcafrHpGe/RxhqxCsDE0ZU8OqVnOb0Kk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bR7aQo/dJMcafrHpGe/RxhqxCsDE0ZU8OqVnOb0Kk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbR7aQo%2FdJMcafrHpGe%2FRxhqxCsDE0ZU8OqVnOb0Kk%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;147&quot; height=&quot;199&quot; data-origin-width=&quot;147&quot; data-origin-height=&quot;199&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/443&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://developernew.tistory.com/443&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1766924607479&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;React 리액트 - 폴더 구조, 리액트의 스타일&quot; data-og-description=&quot;리액트 기본 폴더 구조 [components][utils] - arrayheler.js - parseheler.js[consts] - key.js (상수, 문자열)[styles] // js의 장점 -&amp;gt; 동적 스타일 변경이 가능하다 -&amp;gt; 변수 제어 -&amp;gt; 속도가 엄청나게 빠름 - theme.js - global&quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/443&quot; data-og-url=&quot;https://developernew.tistory.com/443&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/Fz6TW/hyZQy3bk9V/GOK2iycHctNlZNRu3ubKp1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/dMvo1C/hyZQshAdN7/Ksdkku4eqsnc9E0KxR8JvK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cgSbAK/hyZPEXe2ac/7DwKv66gfVagezgpDK0zXk/img.png?width=1923&amp;amp;height=1015&amp;amp;face=0_0_1923_1015&quot;&gt;&lt;a href=&quot;https://developernew.tistory.com/443&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/443&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/Fz6TW/hyZQy3bk9V/GOK2iycHctNlZNRu3ubKp1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/dMvo1C/hyZQshAdN7/Ksdkku4eqsnc9E0KxR8JvK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cgSbAK/hyZPEXe2ac/7DwKv66gfVagezgpDK0zXk/img.png?width=1923&amp;amp;height=1015&amp;amp;face=0_0_1923_1015');&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;React 리액트 - 폴더 구조, 리액트의 스타일&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;리액트 기본 폴더 구조 [components][utils] - arrayheler.js - parseheler.js[consts] - key.js (상수, 문자열)[styles] // js의 장점 -&amp;gt; 동적 스타일 변경이 가능하다 -&amp;gt; 변수 제어 -&amp;gt; 속도가 엄청나게 빠름 - theme.js - global&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Frontend/React</category>
      <category>react</category>
      <category>리액트</category>
      <category>리액트 스타일</category>
      <category>리액트 스타일 적용</category>
      <category>리액트 컴포넌트</category>
      <category>컴포넌트</category>
      <author>Ayel</author>
      <guid isPermaLink="true">https://developernew.tistory.com/451</guid>
      <comments>https://developernew.tistory.com/451#entry451comment</comments>
      <pubDate>Sun, 28 Dec 2025 21:24:08 +0900</pubDate>
    </item>
    <item>
      <title>React 리액트 - 리액트 style 아이콘 [Font Awesome]</title>
      <link>https://developernew.tistory.com/450</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;icon&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;Font Awesome&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;- 다양한 아이콘 무료 사용 가능&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;- 애니메이션 아이콘 생성 가능&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;https://fontawesome.com/&lt;/span&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;Font Awesome&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;The internet's icon library + toolkit. Used by millions of designers, devs, &amp;amp; content creators. Open-source. Always free. Always awesome.&quot; data-og-host=&quot;fontawesome.com&quot; data-og-source-url=&quot;https://fontawesome.com/&quot; data-og-image=&quot;https://blog.kakaocdn.net/dna/W15iU/hyZPD474wE/AAAAAAAAAAAAAAAAAAAAAIaIf-pXFFCxQGJ0IFespMHSHPP3IshgSV1ZYglBslLE/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1767193199&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=b0%2Bg9l2JGxaePxVMZ9LDS1YoIFc%3D&quot; data-og-url=&quot;https://fontawesome.com&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://fontawesome.com&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://fontawesome.com/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://blog.kakaocdn.net/dna/W15iU/hyZPD474wE/AAAAAAAAAAAAAAAAAAAAAIaIf-pXFFCxQGJ0IFespMHSHPP3IshgSV1ZYglBslLE/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1767193199&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=b0%2Bg9l2JGxaePxVMZ9LDS1YoIFc%3D');&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;Font Awesome&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;The internet's icon library + toolkit. Used by millions of designers, devs, &amp;amp; content creators. Open-source. Always free. Always awesome.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;fontawesome.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 100.0%; text-align: justify;&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;yarn add styled-components @fortawesome/free-solid-svg-icons @fortawesome/free-regular-svg-icons @fortawesome/react-fontawesome styled-reset @fortawesome/fontawesome-svg-core react-router-dom&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;:&amp;nbsp;무료로 사용할 수 있는 아이콘 스타일 설치&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;- package.json에 설치됨&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;-&amp;gt; free-solid 및 free-regular 타입 아이콘 사용 가능&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1406&quot; data-origin-height=&quot;868&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/t8B4C/dJMcaaDU01u/RscfzlGx41dpjGI1LLu45K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/t8B4C/dJMcaaDU01u/RscfzlGx41dpjGI1LLu45K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/t8B4C/dJMcaaDU01u/RscfzlGx41dpjGI1LLu45K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Ft8B4C%2FdJMcaaDU01u%2FRscfzlGx41dpjGI1LLu45K%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;1406&quot; height=&quot;868&quot; data-origin-width=&quot;1406&quot; data-origin-height=&quot;868&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;원하는 아이콘을 찾아 이미지 효과 등 부여 가능&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;-&amp;gt; 컬러, 애니메이션 등 적용 가능&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;아이콘 적용&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;552&quot; data-origin-height=&quot;254&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ytGXZ/dJMcadAA4cL/dEbmfxHuuoxua7tXCWwWK0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ytGXZ/dJMcadAA4cL/dEbmfxHuuoxua7tXCWwWK0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ytGXZ/dJMcadAA4cL/dEbmfxHuuoxua7tXCWwWK0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FytGXZ%2FdJMcadAA4cL%2FdEbmfxHuuoxua7tXCWwWK0%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;552&quot; height=&quot;254&quot; data-origin-width=&quot;552&quot; data-origin-height=&quot;254&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;REACT &amp;gt; Kit(Single)의 아이콘 이름만 복사해 사용&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;Styled05.jsx&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;javascript&quot;&gt;&lt;code&gt;import { faComment, faCommentDots } from '@fortawesome/free-solid-svg-icons';
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
import React from 'react';
import S from './style';

const Styled05 = () =&amp;gt; {
&amp;nbsp;&amp;nbsp;return (
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;div&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;S.CommentIcon icon={faCommentDots} bounce /&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/div&amp;gt;
&amp;nbsp;&amp;nbsp;);
};

export default Styled05;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;style.js&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;javascript&quot;&gt;&lt;code&gt;import styled from &quot;styled-components&quot;;
import { FontAwesomeIcon } from &quot;@fortawesome/react-fontawesome&quot;;

const S = {}

&amp;nbsp;&amp;nbsp;// 아이콘 스타일링
&amp;nbsp;&amp;nbsp;S.CommentIcon = styled(FontAwesomeIcon)` 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;font-size: 100px;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;background-color: pink;
&amp;nbsp;&amp;nbsp;`

export default S;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;- 외부의 아이콘을 꾸미고 싶을 때 styled로 감싸 꾸며준다&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;-&amp;gt; styled(외부아이콘) 형태로 사용&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;-&amp;gt; 아이콘이지만 실제로는 폰트이기 때문에 폰트에 적용하는 이펙트 적용 가능&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;-&amp;gt; 사이즈, 컬러 등 변경&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;결과화면&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;370&quot; data-origin-height=&quot;292&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xpHUb/dJMcagxmtSL/9TRtwsn7stGM5Ru7pTPnc1/tfile.gif&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xpHUb/dJMcagxmtSL/9TRtwsn7stGM5Ru7pTPnc1/tfile.gif&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xpHUb/dJMcagxmtSL/9TRtwsn7stGM5Ru7pTPnc1/tfile.gif&quot; srcset=&quot;https://blog.kakaocdn.net/dn/xpHUb/dJMcagxmtSL/9TRtwsn7stGM5Ru7pTPnc1/tfile.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;370&quot; height=&quot;292&quot; data-origin-width=&quot;370&quot; data-origin-height=&quot;292&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/443&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://developernew.tistory.com/443&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;React 리액트 - 폴더 구조, 리액트의 스타일&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;리액트 기본 폴더 구조 [components][utils] - arrayheler.js - parseheler.js[consts] - key.js (상수, 문자열)[styles] // js의 장점 -&amp;gt; 동적 스타일 변경이 가능하다 -&amp;gt; 변수 제어 -&amp;gt; 속도가 엄청나게 빠름 - theme.js - global&quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/443&quot; data-og-image=&quot;https://blog.kakaocdn.net/dna/Fz6TW/hyZQy3bk9V/AAAAAAAAAAAAAAAAAAAAAL0oCqfFJbSiTu5butfLZzuLwjPytWL0yp72V6znHEzd/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1767193199&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=tMUyTBw433Kph4pUZnWx%2FF5rd5I%3D&quot; data-og-url=&quot;https://developernew.tistory.com/443&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/443&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/443&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://blog.kakaocdn.net/dna/Fz6TW/hyZQy3bk9V/AAAAAAAAAAAAAAAAAAAAAL0oCqfFJbSiTu5butfLZzuLwjPytWL0yp72V6znHEzd/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1767193199&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=tMUyTBw433Kph4pUZnWx%2FF5rd5I%3D');&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;React 리액트 - 폴더 구조, 리액트의 스타일&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;리액트 기본 폴더 구조 [components][utils] - arrayheler.js - parseheler.js[consts] - key.js (상수, 문자열)[styles] // js의 장점 -&amp;gt; 동적 스타일 변경이 가능하다 -&amp;gt; 변수 제어 -&amp;gt; 속도가 엄청나게 빠름 - theme.js - global&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt; &lt;a href=&quot;https://developernew.tistory.com/445&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://developernew.tistory.com/445&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1766911697614&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;React 리액트 - 폰트 스타일 적용 방법&quot; data-og-description=&quot;font : 상업적 이용 가능한 무료 한글 폰트 사이트 https://noonnu.cc 눈누상업적 이용 가능한 한글 폰트를 쉽게 찾아보세요.noonnu.cc 상업적으로 이용 가능한 유료 폰트를 포함해다양한 무료 폰트를 제&quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/445&quot; data-og-url=&quot;https://developernew.tistory.com/445&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bcnG3U/hyZPPR03HY/4R6Ka6ybAjb0O9COrU2F51/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bgoWnu/hyZQshB6Tf/x8y20bh9hcSK47WlgCAC80/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/eB813I/hyZPJqHI6U/5d61IWErM3tqTpQMkD1x31/img.png?width=1228&amp;amp;height=903&amp;amp;face=0_0_1228_903&quot;&gt;&lt;a href=&quot;https://developernew.tistory.com/445&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/445&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bcnG3U/hyZPPR03HY/4R6Ka6ybAjb0O9COrU2F51/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bgoWnu/hyZQshB6Tf/x8y20bh9hcSK47WlgCAC80/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/eB813I/hyZPJqHI6U/5d61IWErM3tqTpQMkD1x31/img.png?width=1228&amp;amp;height=903&amp;amp;face=0_0_1228_903');&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;React 리액트 - 폰트 스타일 적용 방법&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;font : 상업적 이용 가능한 무료 한글 폰트 사이트 https://noonnu.cc 눈누상업적 이용 가능한 한글 폰트를 쉽게 찾아보세요.noonnu.cc 상업적으로 이용 가능한 유료 폰트를 포함해다양한 무료 폰트를 제&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Frontend/React</category>
      <category>react</category>
      <category>리액트</category>
      <category>리액트 스타일</category>
      <category>리액트 아이콘</category>
      <author>Ayel</author>
      <guid isPermaLink="true">https://developernew.tistory.com/450</guid>
      <comments>https://developernew.tistory.com/450#entry450comment</comments>
      <pubDate>Sun, 28 Dec 2025 17:48:46 +0900</pubDate>
    </item>
    <item>
      <title>React 리액트 - 리액트 style 미디어 사이즈 적용 breakpoint.js</title>
      <link>https://developernew.tistory.com/449</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;breakpoint.js&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;216&quot; data-origin-height=&quot;88&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tm79F/dJMcaacQJ8s/xNmM4N6jrs8A10PaXLxGlK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tm79F/dJMcaacQJ8s/xNmM4N6jrs8A10PaXLxGlK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tm79F/dJMcaacQJ8s/xNmM4N6jrs8A10PaXLxGlK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Ftm79F%2FdJMcaacQJ8s%2FxNmM4N6jrs8A10PaXLxGlK%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;216&quot; height=&quot;88&quot; data-origin-width=&quot;216&quot; data-origin-height=&quot;88&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- 미디어 사이즈를 정의하는 파일&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- 모바일, pc, 태블릿 등 미디어별로 이펙트 부여 가능&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;styles &amp;gt; breakpoint.js&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;javascript&quot;&gt;&lt;code&gt;const size ={
&amp;nbsp;&amp;nbsp;mobile: &quot;480px&quot;,
&amp;nbsp;&amp;nbsp;tablet: &quot;768px&quot;,
&amp;nbsp;&amp;nbsp;laptop: &quot;1024px&quot;,
&amp;nbsp;&amp;nbsp;desktop: &quot;1280px&quot;
}

export const media = {
&amp;nbsp;&amp;nbsp;mobile: `(max-width: ${size.mobile})`,
&amp;nbsp;&amp;nbsp;tablet: `(max-width: ${size.tablet})`,
&amp;nbsp;&amp;nbsp;laptop: `(max-width: ${size.laptop})`,
&amp;nbsp;&amp;nbsp;desktop: `(max-width: ${size.desktop})`
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;style.js&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;javascript&quot;&gt;&lt;code&gt;import styled from &quot;styled-components&quot;;
import { fadeIn } from &quot;../../keyframes/keyframes&quot;;
import { media } from &quot;../../styles/breakpoint&quot;;

const S = {}

&amp;nbsp;&amp;nbsp;S.Title = styled.p`
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;${h1Bold}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;opacity: 0;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;animation: ${fadeIn} 1s ease-in forwards;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;@media ${media.mobile} {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;font-size: 10px;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;`

export default S;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;styles.js에 미디어 코드를 추가해 적용&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 100.0%; text-align: justify;&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;@media ${media.mobile} { }&lt;/span&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- 미디어 쿼리 내 font-size: 10px; 등 세부적인 사항 추가 가능&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;Styled04.jsx&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;javascript&quot;&gt;&lt;code&gt;import React from 'react';
import S from './style';

const Styled04 = () =&amp;gt; {
&amp;nbsp;&amp;nbsp;return (
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;div&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;S.Title&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;MY H1 FONT! APPLIED MY OWN GUIDE
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/S.Title&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;S.SubTitle&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;H3 REGULAR - MY FONT STYLE SUBTITLE
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/S.SubTitle&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;S.SnowBg
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;width={&quot;300px&quot;}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;height={&quot;300px&quot;}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;alt=&quot;snowbg&quot; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;/&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/div&amp;gt;
&amp;nbsp;&amp;nbsp;);
};

export default Styled04;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- 기존에 만들어 둔 코드의 스타일에 적용됨&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;결과화면&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;778&quot; data-origin-height=&quot;368&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kK46L/dJMcachqP6f/0egXwbTaVkltvftAXgCTx0/tfile.gif&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kK46L/dJMcachqP6f/0egXwbTaVkltvftAXgCTx0/tfile.gif&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kK46L/dJMcachqP6f/0egXwbTaVkltvftAXgCTx0/tfile.gif&quot; srcset=&quot;https://blog.kakaocdn.net/dn/kK46L/dJMcachqP6f/0egXwbTaVkltvftAXgCTx0/tfile.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;778&quot; height=&quot;368&quot; data-origin-width=&quot;778&quot; data-origin-height=&quot;368&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;https://developernew.tistory.com/448&lt;/span&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;React 리액트 - 리액트 style 애니메이션 적용&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;keyframes.js - keyframes 폴더로 애니메이션 이펙트 관리- keyframes &amp;gt; keyframes.js 파일 내에서 이펙트 구현 import { keyframes } from &amp;quot;styled-components&amp;quot;;export const fadeIn = keyframes&amp;#96; 0% { opacity: 0; transform: translate(0, -30px); &quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/448&quot; data-og-image=&quot;&quot; data-og-url=&quot;https://developernew.tistory.com/448&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/448&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/448&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; data-ke-size=&quot;size16&quot;&gt;React 리액트 - 리액트 style 애니메이션 적용&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;keyframes.js - keyframes 폴더로 애니메이션 이펙트 관리- keyframes &amp;gt; keyframes.js 파일 내에서 이펙트 구현 import { keyframes } from &quot;styled-components&quot;;export const fadeIn = keyframes` 0% { opacity: 0; transform: translate(0, -30px);&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt; &lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/445&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://developernew.tistory.com/445&lt;/a&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1766907985589&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;React 리액트 - 폰트 스타일 적용 방법&quot; data-og-description=&quot;font : 상업적 이용 가능한 무료 한글 폰트 사이트 https://noonnu.cc 눈누상업적 이용 가능한 한글 폰트를 쉽게 찾아보세요.noonnu.cc 상업적으로 이용 가능한 유료 폰트를 포함해다양한 무료 폰트를 제&quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/445&quot; data-og-url=&quot;https://developernew.tistory.com/445&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bcnG3U/hyZPPR03HY/4R6Ka6ybAjb0O9COrU2F51/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bgoWnu/hyZQshB6Tf/x8y20bh9hcSK47WlgCAC80/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/eB813I/hyZPJqHI6U/5d61IWErM3tqTpQMkD1x31/img.png?width=1228&amp;amp;height=903&amp;amp;face=0_0_1228_903&quot;&gt;&lt;a href=&quot;https://developernew.tistory.com/445&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/445&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bcnG3U/hyZPPR03HY/4R6Ka6ybAjb0O9COrU2F51/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bgoWnu/hyZQshB6Tf/x8y20bh9hcSK47WlgCAC80/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/eB813I/hyZPJqHI6U/5d61IWErM3tqTpQMkD1x31/img.png?width=1228&amp;amp;height=903&amp;amp;face=0_0_1228_903');&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;React 리액트 - 폰트 스타일 적용 방법&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;font : 상업적 이용 가능한 무료 한글 폰트 사이트 https://noonnu.cc 눈누상업적 이용 가능한 한글 폰트를 쉽게 찾아보세요.noonnu.cc 상업적으로 이용 가능한 유료 폰트를 포함해다양한 무료 폰트를 제&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/447&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://developernew.tistory.com/447&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1766908023898&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;React 리액트 - 리액트 style 활용 방법 theme.js&quot; data-og-description=&quot;theme.js - 테마 관련 정의 파일 - UI/UX 가이드에 정의된 값을 정의하는 파일 theme.js에서 전체 테마를 정의한 후 common.js에서 프로젝트에서 자주 쓰이는 공통 속성을 정의style.js에서 해당 폴더에 적용&quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/447&quot; data-og-url=&quot;https://developernew.tistory.com/447&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bqZgyP/hyZPNUczdC/3raGpetyPmKWnJkhfhEs6K/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/xl7uN/hyZPKpCSL2/PmnnZ73v9Ut0sVEMsGUGn0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800&quot;&gt;&lt;a href=&quot;https://developernew.tistory.com/447&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/447&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bqZgyP/hyZPNUczdC/3raGpetyPmKWnJkhfhEs6K/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/xl7uN/hyZPKpCSL2/PmnnZ73v9Ut0sVEMsGUGn0/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800');&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;React 리액트 - 리액트 style 활용 방법 theme.js&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;theme.js - 테마 관련 정의 파일 - UI/UX 가이드에 정의된 값을 정의하는 파일 theme.js에서 전체 테마를 정의한 후 common.js에서 프로젝트에서 자주 쓰이는 공통 속성을 정의style.js에서 해당 폴더에 적용&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/446&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://developernew.tistory.com/446&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1766908031809&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;React 리액트 - 리액트 style 활용 방법 global.js&quot; data-og-description=&quot;styles &amp;gt; global.js global.js는 리액트의 글로벌 스타일 정의 파일-&amp;gt; 프로젝트 전체 속성을 한꺼번에 정의할 수 있다 ** common.js가 공통적으로 자주 사용하는 속성이라면global.js는 프로젝트 전체 속성 및 &quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/446&quot; data-og-url=&quot;https://developernew.tistory.com/446&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/kiiq8/hyZPDjKcow/WUeSsHFRjzqUDVrZBXtaUk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/AkUe2/hyZPLoxxop/JST8ax5ojUZ8WIQPfkLcV1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Q0cEx/hyZQx4kCnu/3MowHyNCiNRKJoX9Sd0921/img.png?width=276&amp;amp;height=216&amp;amp;face=0_0_276_216&quot;&gt;&lt;a href=&quot;https://developernew.tistory.com/446&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/446&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/kiiq8/hyZPDjKcow/WUeSsHFRjzqUDVrZBXtaUk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/AkUe2/hyZPLoxxop/JST8ax5ojUZ8WIQPfkLcV1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Q0cEx/hyZQx4kCnu/3MowHyNCiNRKJoX9Sd0921/img.png?width=276&amp;amp;height=216&amp;amp;face=0_0_276_216');&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;React 리액트 - 리액트 style 활용 방법 global.js&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;styles &amp;gt; global.js global.js는 리액트의 글로벌 스타일 정의 파일-&amp;gt; 프로젝트 전체 속성을 한꺼번에 정의할 수 있다 ** common.js가 공통적으로 자주 사용하는 속성이라면global.js는 프로젝트 전체 속성 및&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/444&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://developernew.tistory.com/444&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1766908038729&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;React 리액트 - 리액트 style 활용 방법 common.js&quot; data-og-description=&quot;Style 컴포넌트 기본 구조 import React from 'react';import S from './style';const Styled01 = () =&amp;gt; { return ( EMAIL PW SUBMIT );};export default Styled01; - 이메일, 패스워드 입력창을 꾸미기 위해 form과 div 사용-&amp;gt; 스타일 적용&quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/444&quot; data-og-url=&quot;https://developernew.tistory.com/444&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/QGQmz/hyZPJYzSKg/OC7CNIkQSPZ77QCVTkhiqK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/wJ4eD/hyZQuGwVsJ/eBTlAuygFQ7P9YiiEfdwrK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cwar1D/hyZQs21kjZ/U2MUZ5IuGUDjaWhcUynp80/img.png?width=805&amp;amp;height=822&amp;amp;face=0_0_805_822&quot;&gt;&lt;a href=&quot;https://developernew.tistory.com/444&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/444&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/QGQmz/hyZPJYzSKg/OC7CNIkQSPZ77QCVTkhiqK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/wJ4eD/hyZQuGwVsJ/eBTlAuygFQ7P9YiiEfdwrK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cwar1D/hyZQs21kjZ/U2MUZ5IuGUDjaWhcUynp80/img.png?width=805&amp;amp;height=822&amp;amp;face=0_0_805_822');&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;React 리액트 - 리액트 style 활용 방법 common.js&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Style 컴포넌트 기본 구조 import React from 'react';import S from './style';const Styled01 = () =&amp;gt; { return ( EMAIL PW SUBMIT );};export default Styled01; - 이메일, 패스워드 입력창을 꾸미기 위해 form과 div 사용-&amp;gt; 스타일 적용&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/443&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://developernew.tistory.com/443&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1766908062419&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;React 리액트 - 폴더 구조, 리액트의 스타일&quot; data-og-description=&quot;리액트 기본 폴더 구조 [components][utils] - arrayheler.js - parseheler.js[consts] - key.js (상수, 문자열)[styles] // js의 장점 -&amp;gt; 동적 스타일 변경이 가능하다 -&amp;gt; 변수 제어 -&amp;gt; 속도가 엄청나게 빠름 - theme.js - global&quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/443&quot; data-og-url=&quot;https://developernew.tistory.com/443&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/Fz6TW/hyZQy3bk9V/GOK2iycHctNlZNRu3ubKp1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/dMvo1C/hyZQshAdN7/Ksdkku4eqsnc9E0KxR8JvK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cgSbAK/hyZPEXe2ac/7DwKv66gfVagezgpDK0zXk/img.png?width=1923&amp;amp;height=1015&amp;amp;face=0_0_1923_1015&quot;&gt;&lt;a href=&quot;https://developernew.tistory.com/443&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/443&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/Fz6TW/hyZQy3bk9V/GOK2iycHctNlZNRu3ubKp1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/dMvo1C/hyZQshAdN7/Ksdkku4eqsnc9E0KxR8JvK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cgSbAK/hyZPEXe2ac/7DwKv66gfVagezgpDK0zXk/img.png?width=1923&amp;amp;height=1015&amp;amp;face=0_0_1923_1015');&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;React 리액트 - 폴더 구조, 리액트의 스타일&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;리액트 기본 폴더 구조 [components][utils] - arrayheler.js - parseheler.js[consts] - key.js (상수, 문자열)[styles] // js의 장점 -&amp;gt; 동적 스타일 변경이 가능하다 -&amp;gt; 변수 제어 -&amp;gt; 속도가 엄청나게 빠름 - theme.js - global&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Frontend/React</category>
      <category>react</category>
      <category>리액트</category>
      <category>리액트 미디어 사이즈</category>
      <category>리액트 스타일</category>
      <author>Ayel</author>
      <guid isPermaLink="true">https://developernew.tistory.com/449</guid>
      <comments>https://developernew.tistory.com/449#entry449comment</comments>
      <pubDate>Sun, 28 Dec 2025 16:48:16 +0900</pubDate>
    </item>
    <item>
      <title>React 리액트 - 리액트 style 애니메이션 적용</title>
      <link>https://developernew.tistory.com/448</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;keyframes.js&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;211&quot; data-origin-height=&quot;31&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bQ06X4/dJMcahXmQXq/NG7tNfe6hTxrVsyt46iusk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bQ06X4/dJMcahXmQXq/NG7tNfe6hTxrVsyt46iusk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bQ06X4/dJMcahXmQXq/NG7tNfe6hTxrVsyt46iusk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbQ06X4%2FdJMcahXmQXq%2FNG7tNfe6hTxrVsyt46iusk%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;211&quot; height=&quot;31&quot; data-origin-width=&quot;211&quot; data-origin-height=&quot;31&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- keyframes 폴더로 애니메이션 이펙트 관리&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- keyframes &amp;gt; keyframes.js 파일 내에서 이펙트 구현&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;keyframes.js&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;javascript&quot;&gt;&lt;code&gt;import { keyframes } from &quot;styled-components&quot;;

export const fadeIn = keyframes`
&amp;nbsp;&amp;nbsp;0% {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;opacity: 0;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;transform: translate(0, -30px);
&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;100% {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;opacity: 1;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;transform: translate(0, 0);
&amp;nbsp;&amp;nbsp;}
`&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;style.js&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre class=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot; data-ke-language=&quot;javascript&quot;&gt;&lt;code&gt;import styled from &quot;styled-components&quot;;
import { flexCenter, flexCenterColumn, flexColumn, h1Bold, h3Regular } from &quot;../../styles/common&quot;;
import { height, width } from &quot;@fortawesome/free-solid-svg-icons/fa0&quot;;
import { fadeIn } from &quot;../../keyframes/keyframes&quot;;
import { media } from &quot;../../styles/breakpoint&quot;;
import { FontAwesomeIcon } from &quot;@fortawesome/react-fontawesome&quot;;

const S = {}

// SnowFlake
&amp;nbsp;&amp;nbsp;// 이미지 스타일
&amp;nbsp;&amp;nbsp;S.SnowImg = styled.img`
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;width: ${(width) =&amp;gt; width}; // props의 width를 width로만 사용 가능
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;object-fit: cover;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;border-radius: 8px;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;padding: 20px;
&amp;nbsp;&amp;nbsp;`;

&amp;nbsp;&amp;nbsp;// 박스 스타일
&amp;nbsp;&amp;nbsp;S.SnowImgWrapper = styled.div`
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;border: 1px pink;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;${flexCenterColumn}
&amp;nbsp;&amp;nbsp;`

&amp;nbsp;&amp;nbsp;S.SnowWrapper = styled.div`
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;width: 800px;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;height: 800px;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;border: solid 1px purple;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;${flexCenter}
&amp;nbsp;&amp;nbsp;`;

&amp;nbsp;&amp;nbsp;S.SnowBg = styled.div`
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;width: ${({width}) =&amp;gt; width};
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;height: ${(height) =&amp;gt; height};
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;background-image: url(&quot;/assets/images/styled/04.jpg&quot;);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;background-repeat: no-repeat;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;background-size: cover;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;background-position: center;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;animation: ${fadeIn} 1s ease-in forwards;
&amp;nbsp;&amp;nbsp;`

&amp;nbsp;&amp;nbsp;// Styled04
&amp;nbsp;&amp;nbsp;S.Title = styled.p`
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;${h1Bold}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;opacity: 0;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;animation: ${fadeIn} 1s ease-in forwards;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;`

&amp;nbsp;&amp;nbsp;S.SubTitle = styled.p`
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;${h3Regular}
&amp;nbsp;&amp;nbsp;`

export default S;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- 기존의 style.js폴더에 정의된 컴포넌트에 애니메이션 추가&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;- animation: ${fadeIn} 1s ease-in forwards;으로 글씨 및 이미지에 적용 가능&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;결과화면&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;854&quot; data-origin-height=&quot;368&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/M4hAn/dJMcafZwBK7/U7bcMREniuvKcYWpfXJmwK/tfile.gif&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/M4hAn/dJMcafZwBK7/U7bcMREniuvKcYWpfXJmwK/tfile.gif&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/M4hAn/dJMcafZwBK7/U7bcMREniuvKcYWpfXJmwK/tfile.gif&quot; srcset=&quot;https://blog.kakaocdn.net/dn/M4hAn/dJMcafZwBK7/U7bcMREniuvKcYWpfXJmwK/tfile.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;854&quot; height=&quot;368&quot; data-origin-width=&quot;854&quot; data-origin-height=&quot;368&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p style=&quot;text-align: left;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;https://developernew.tistory.com/447&lt;/span&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;React 리액트 - 리액트 style 활용 방법 theme.js&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;theme.js - 테마 관련 정의 파일 - UI/UX 가이드에 정의된 값을 정의하는 파일 theme.js에서 전체 테마를 정의한 후 common.js에서 프로젝트에서 자주 쓰이는 공통 속성을 정의style.js에서 해당 폴더에 적용&quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/447&quot; data-og-image=&quot;https://blog.kakaocdn.net/dna/bqZgyP/hyZPNUczdC/AAAAAAAAAAAAAAAAAAAAAOCJRBWqew7B-pYdjfqT_d937Y1OxDcdaSvhJNlimLkR/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1767193199&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=diz0%2F8uMi3UUpQdyhZQ%2Fa1apUoY%3D&quot; data-og-url=&quot;https://developernew.tistory.com/447&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/447&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/447&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://blog.kakaocdn.net/dna/bqZgyP/hyZPNUczdC/AAAAAAAAAAAAAAAAAAAAAOCJRBWqew7B-pYdjfqT_d937Y1OxDcdaSvhJNlimLkR/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1767193199&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=diz0%2F8uMi3UUpQdyhZQ%2Fa1apUoY%3D');&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;React 리액트 - 리액트 style 활용 방법 theme.js&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;theme.js - 테마 관련 정의 파일 - UI/UX 가이드에 정의된 값을 정의하는 파일 theme.js에서 전체 테마를 정의한 후 common.js에서 프로젝트에서 자주 쓰이는 공통 속성을 정의style.js에서 해당 폴더에 적용&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;https://developernew.tistory.com/446&lt;/span&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;React 리액트 - 리액트 style 활용 방법 global.js&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;styles &amp;gt; global.js global.js는 리액트의 글로벌 스타일 정의 파일-&amp;gt; 프로젝트 전체 속성을 한꺼번에 정의할 수 있다 ** common.js가 공통적으로 자주 사용하는 속성이라면global.js는 프로젝트 전체 속성 및 &quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/446&quot; data-og-image=&quot;https://blog.kakaocdn.net/dna/kiiq8/hyZPDjKcow/AAAAAAAAAAAAAAAAAAAAABmgqLbDCSoMLXaPS2E5Ccp3UxYIFqTG2Xun2ZhLyFUt/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1767193199&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=9zXDiZnnkviNzuPglCxWjQugC6w%3D&quot; data-og-url=&quot;https://developernew.tistory.com/446&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/446&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/446&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://blog.kakaocdn.net/dna/kiiq8/hyZPDjKcow/AAAAAAAAAAAAAAAAAAAAABmgqLbDCSoMLXaPS2E5Ccp3UxYIFqTG2Xun2ZhLyFUt/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1767193199&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=9zXDiZnnkviNzuPglCxWjQugC6w%3D');&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;React 리액트 - 리액트 style 활용 방법 global.js&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;styles &amp;gt; global.js global.js는 리액트의 글로벌 스타일 정의 파일-&amp;gt; 프로젝트 전체 속성을 한꺼번에 정의할 수 있다 ** common.js가 공통적으로 자주 사용하는 속성이라면global.js는 프로젝트 전체 속성 및&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;https://developernew.tistory.com/444&lt;/span&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;React 리액트 - 리액트 style 활용 방법 common.js&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;Style 컴포넌트 기본 구조 import React from 'react';import S from './style';const Styled01 = () =&amp;gt; { return ( EMAIL PW SUBMIT );};export default Styled01; - 이메일, 패스워드 입력창을 꾸미기 위해 form과 div 사용-&amp;gt; 스타일 적용&quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/444&quot; data-og-image=&quot;https://blog.kakaocdn.net/dna/QGQmz/hyZPJYzSKg/AAAAAAAAAAAAAAAAAAAAALwzm2az8WF6f7_NDVOGyqPcFy9uk75dj0IYmwdI1r6V/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1767193199&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=jr1iWEe18XAdWKYSXnTIjRwUBMk%3D&quot; data-og-url=&quot;https://developernew.tistory.com/444&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/444&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/444&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://blog.kakaocdn.net/dna/QGQmz/hyZPJYzSKg/AAAAAAAAAAAAAAAAAAAAALwzm2az8WF6f7_NDVOGyqPcFy9uk75dj0IYmwdI1r6V/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1767193199&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=jr1iWEe18XAdWKYSXnTIjRwUBMk%3D');&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;React 리액트 - 리액트 style 활용 방법 common.js&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Style 컴포넌트 기본 구조 import React from 'react';import S from './style';const Styled01 = () =&amp;gt; { return ( EMAIL PW SUBMIT );};export default Styled01; - 이메일, 패스워드 입력창을 꾸미기 위해 form과 div 사용-&amp;gt; 스타일 적용&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;https://developernew.tistory.com/443&lt;/span&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;React 리액트 - 폴더 구조, 리액트의 스타일&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;리액트 기본 폴더 구조 [components][utils] - arrayheler.js - parseheler.js[consts] - key.js (상수, 문자열)[styles] // js의 장점 -&amp;gt; 동적 스타일 변경이 가능하다 -&amp;gt; 변수 제어 -&amp;gt; 속도가 엄청나게 빠름 - theme.js - global&quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/443&quot; data-og-image=&quot;https://blog.kakaocdn.net/dna/Fz6TW/hyZQy3bk9V/AAAAAAAAAAAAAAAAAAAAAL0oCqfFJbSiTu5butfLZzuLwjPytWL0yp72V6znHEzd/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1767193199&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=tMUyTBw433Kph4pUZnWx%2FF5rd5I%3D&quot; data-og-url=&quot;https://developernew.tistory.com/443&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/443&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/443&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://blog.kakaocdn.net/dna/Fz6TW/hyZQy3bk9V/AAAAAAAAAAAAAAAAAAAAAL0oCqfFJbSiTu5butfLZzuLwjPytWL0yp72V6znHEzd/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1767193199&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=tMUyTBw433Kph4pUZnWx%2FF5rd5I%3D');&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;React 리액트 - 폴더 구조, 리액트의 스타일&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;리액트 기본 폴더 구조 [components][utils] - arrayheler.js - parseheler.js[consts] - key.js (상수, 문자열)[styles] // js의 장점 -&amp;gt; 동적 스타일 변경이 가능하다 -&amp;gt; 변수 제어 -&amp;gt; 속도가 엄청나게 빠름 - theme.js - global&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;https://developernew.tistory.com/445&lt;/span&gt;&lt;/p&gt;
&lt;figure data-ke-type=&quot;opengraph&quot; data-og-title=&quot;React 리액트 - 폰트 스타일 적용 방법&quot; data-ke-align=&quot;alignCenter&quot; data-og-description=&quot;font : 상업적 이용 가능한 무료 한글 폰트 사이트 https://noonnu.cc 눈누상업적 이용 가능한 한글 폰트를 쉽게 찾아보세요.noonnu.cc 상업적으로 이용 가능한 유료 폰트를 포함해다양한 무료 폰트를 제&quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/445&quot; data-og-image=&quot;https://blog.kakaocdn.net/dna/bcnG3U/hyZPPR03HY/AAAAAAAAAAAAAAAAAAAAALKyxykzUUDGnUroaMCoE67m6BylIz_3oxFgyjQAcKir/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1767193199&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=VkuycUw8MHknAQ3v%2FAhFuzXy%2FD8%3D&quot; data-og-url=&quot;https://developernew.tistory.com/445&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/445&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/445&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://blog.kakaocdn.net/dna/bcnG3U/hyZPPR03HY/AAAAAAAAAAAAAAAAAAAAALKyxykzUUDGnUroaMCoE67m6BylIz_3oxFgyjQAcKir/img.png?credential=yqXZFxpELC7KVnFOS48ylbz2pIh7yKj8&amp;amp;expires=1767193199&amp;amp;allow_ip=&amp;amp;allow_referer=&amp;amp;signature=VkuycUw8MHknAQ3v%2FAhFuzXy%2FD8%3D');&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;React 리액트 - 폰트 스타일 적용 방법&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;font : 상업적 이용 가능한 무료 한글 폰트 사이트 https://noonnu.cc 눈누상업적 이용 가능한 한글 폰트를 쉽게 찾아보세요.noonnu.cc 상업적으로 이용 가능한 유료 폰트를 포함해다양한 무료 폰트를 제&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;</description>
      <category>Frontend/React</category>
      <category>react</category>
      <category>리액트</category>
      <category>리액트 스타일</category>
      <category>리액트 애니메이션</category>
      <category>리액트 테마</category>
      <author>Ayel</author>
      <guid isPermaLink="true">https://developernew.tistory.com/448</guid>
      <comments>https://developernew.tistory.com/448#entry448comment</comments>
      <pubDate>Sun, 28 Dec 2025 16:37:55 +0900</pubDate>
    </item>
    <item>
      <title>React 리액트 - 리액트 style 활용 방법 theme.js</title>
      <link>https://developernew.tistory.com/447</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;b&gt;theme.js&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;213&quot; data-origin-height=&quot;89&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bbLqzI/dJMcaaqnVAl/JuBKKtyYBMulKw2s6QXZK1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bbLqzI/dJMcaaqnVAl/JuBKKtyYBMulKw2s6QXZK1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bbLqzI/dJMcaaqnVAl/JuBKKtyYBMulKw2s6QXZK1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbbLqzI%2FdJMcaaqnVAl%2FJuBKKtyYBMulKw2s6QXZK1%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;213&quot; height=&quot;89&quot; data-origin-width=&quot;213&quot; data-origin-height=&quot;89&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 테마 관련 정의 파일 &lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- UI/UX 가이드에 정의된 값을 정의하는 파일&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;theme.js에서 전체 테마를 정의한 후 &lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;common.js에서 프로젝트에서 자주 쓰이는 공통 속성을 정의&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;style.js에서 해당 폴더에 적용하는 스타일을 변경 가능하도록 정의해 사용&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;lt;styles &amp;gt; theme.js&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1766904076811&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;const theme = {};
  theme.PALETTE = {
    primary: {
      main: &quot;#ffd159&quot;,
      sub: &quot;#fff4d8&quot;
    },
    secondary: &quot;#f1ebf5&quot;,
    white: &quot;#fff&quot;,
    gray: {
      100: &quot;#f1ebf5&quot;,
      200: &quot;#aea8be&quot;,
      300: &quot;#605866&quot;
    },
    error: &quot;#eb6144&quot;,
    background: {
      white: &quot;#eee&quot;,
      gray: &quot;#f1ebf5&quot;,
      black: &quot;#333&quot;
    }
  }

  theme.FONT_SIZE = {
    h1: &quot;55px&quot;,
    h2: &quot;40px&quot;,
    h3: &quot;30px&quot;,
    h4: &quot;21px&quot;,
    h5: &quot;18px&quot;,
    h6: &quot;16px&quot;,
    h7: &quot;13px&quot;,
    h8: &quot;11px&quot;,
    h9: &quot;8px&quot;
  }

  theme.FONT_WEIGHT = {
    thin: &quot;100&quot;,
    regular: &quot;400&quot;,
    bold: &quot;800&quot;,
  }

  theme.FONT_LINE = {
    h1: &quot;75px&quot;,
    h2: &quot;55px&quot;,
    h3: &quot;41px&quot;,
    h4: &quot;29px&quot;,
    h5: &quot;25px&quot;,
    h6: &quot;22px&quot;,
    h7: &quot;17px&quot;,
  }

export default theme;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 가장 기본적으로 많이 쓰이는 스타일 템플릿&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 사용하고자 하는 전체 템플릿을 미리 정의해두고 사용&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;App.js&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1766904728535&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import React from 'react';
import './App.css';
import GlobalStyle from './styles/global';
import { ThemeProvider } from 'styled-components';
import theme from './styles/theme';
import Styled04 from './pages/styled/Styled04';

function App() {
  return (
    &amp;lt;&amp;gt;
      &amp;lt;ThemeProvider theme={theme}&amp;gt; 삭제금지: 프로젝트 전체 테마 적용
        &amp;lt;GlobalStyle /&amp;gt; 삭제금지: 프로젝트 전체 스타일 적용
        &amp;lt;Styled04 /&amp;gt;
      &amp;lt;/ThemeProvider&amp;gt;
    &amp;lt;/&amp;gt;
  );
}

export default App;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;- 메인 파일의 컴포넌트 위에 테마 적용&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #222222; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;테마 활용&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;styles &amp;gt; common.js&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1766904829605&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import { css } from &quot;styled-components&quot;

export const h1Bold = css`
  font-size: ${({theme}) =&amp;gt; theme.FONT_SIZE[&quot;h1&quot;]};
  line-height: ${({theme}) =&amp;gt; theme.FONT_LINE[&quot;h1&quot;]};
  font-weight: ${({theme}) =&amp;gt; theme.FONT_WEIGHT[&quot;bold&quot;]};
`

export const h3Regular = css`
  font-size: ${({theme}) =&amp;gt; theme.FONT_SIZE[&quot;h3&quot;]};
  line-height: ${({theme}) =&amp;gt; theme.FONT_LINE[&quot;h3&quot;]};
  font-weight: ${({theme}) =&amp;gt; theme.FONT_WEIGHT[&quot;regular&quot;]};
`&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;적용한 테마 파일의 수정을 용의하게 하기 위해&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;styles &amp;gt; common.js에 정의해준다&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;-&amp;gt; 필요 시 값을 변경해 특정 프로젝트에서 바로 수정 적용 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;연습문제&lt;/b&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;lt;Styled04.jsx&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1766905110405&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import React from 'react';
import S from './style';

const Styled04 = () =&amp;gt; {
  return (
    &amp;lt;div&amp;gt;
      &amp;lt;S.Title&amp;gt;
        MY H1 FONT! APPLIED MY OWN GUIDE
      &amp;lt;/S.Title&amp;gt;
      &amp;lt;S.SubTitle&amp;gt;
        H3 REGULAR - MY FONT STYLE SUBTITLE
      &amp;lt;/S.SubTitle&amp;gt;
    &amp;lt;/div&amp;gt;
  );
};

export default Styled04;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&amp;lt;styled &amp;gt; style.js&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1766905094060&quot; class=&quot;javascript&quot; data-ke-language=&quot;javascript&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import styled from &quot;styled-components&quot;;

const S = {}

  // Styled04
  S.Title = styled.p`
    ${h1Bold}
  `

  S.SubTitle = styled.p`
    ${h3Regular}
  `

export default S;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;styles &amp;gt; common.js에 정의한 내용을 활용하기 위해 &lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;작업 중인 폴더의 style.js 파일에서 불러와 사용&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;-&amp;gt; 필요 시 값을 변경해 특정 페이지에서 바로 수정 적용 가능&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&amp;lt;결과화면&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock widthContent&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1007&quot; data-origin-height=&quot;123&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cvO7yw/dJMcaacQJHZ/zan4qeQmqT1MjQRbmhHa31/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cvO7yw/dJMcaacQJHZ/zan4qeQmqT1MjQRbmhHa31/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cvO7yw/dJMcaacQJHZ/zan4qeQmqT1MjQRbmhHa31/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcvO7yw%2FdJMcaacQJHZ%2Fzan4qeQmqT1MjQRbmhHa31%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;1007&quot; height=&quot;123&quot; data-origin-width=&quot;1007&quot; data-origin-height=&quot;123&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/446&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://developernew.tistory.com/446&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1766903934598&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;React 리액트 - 리액트 style 활용 방법 global.js&quot; data-og-description=&quot;styles &amp;gt; global.js global.js는 리액트의 글로벌 스타일 정의 파일-&amp;gt; 프로젝트 전체 속성을 한꺼번에 정의할 수 있다 ** common.js가 공통적으로 자주 사용하는 속성이라면global.js는 프로젝트 전체 속성 및 &quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/446&quot; data-og-url=&quot;https://developernew.tistory.com/446&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/kiiq8/hyZPDjKcow/WUeSsHFRjzqUDVrZBXtaUk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/AkUe2/hyZPLoxxop/JST8ax5ojUZ8WIQPfkLcV1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Q0cEx/hyZQx4kCnu/3MowHyNCiNRKJoX9Sd0921/img.png?width=276&amp;amp;height=216&amp;amp;face=0_0_276_216&quot;&gt;&lt;a href=&quot;https://developernew.tistory.com/446&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/446&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/kiiq8/hyZPDjKcow/WUeSsHFRjzqUDVrZBXtaUk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/AkUe2/hyZPLoxxop/JST8ax5ojUZ8WIQPfkLcV1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/Q0cEx/hyZQx4kCnu/3MowHyNCiNRKJoX9Sd0921/img.png?width=276&amp;amp;height=216&amp;amp;face=0_0_276_216');&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;React 리액트 - 리액트 style 활용 방법 global.js&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;styles &amp;gt; global.js global.js는 리액트의 글로벌 스타일 정의 파일-&amp;gt; 프로젝트 전체 속성을 한꺼번에 정의할 수 있다 ** common.js가 공통적으로 자주 사용하는 속성이라면global.js는 프로젝트 전체 속성 및&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/444&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://developernew.tistory.com/444&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1766903938987&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;React 리액트 - 리액트 style 활용 방법 common.js&quot; data-og-description=&quot;Style 컴포넌트 기본 구조 import React from 'react';import S from './style';const Styled01 = () =&amp;gt; { return ( EMAIL PW SUBMIT );};export default Styled01; - 이메일, 패스워드 입력창을 꾸미기 위해 form과 div 사용-&amp;gt; 스타일 적용&quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/444&quot; data-og-url=&quot;https://developernew.tistory.com/444&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/QGQmz/hyZPJYzSKg/OC7CNIkQSPZ77QCVTkhiqK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/wJ4eD/hyZQuGwVsJ/eBTlAuygFQ7P9YiiEfdwrK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cwar1D/hyZQs21kjZ/U2MUZ5IuGUDjaWhcUynp80/img.png?width=805&amp;amp;height=822&amp;amp;face=0_0_805_822&quot;&gt;&lt;a href=&quot;https://developernew.tistory.com/444&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/444&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/QGQmz/hyZPJYzSKg/OC7CNIkQSPZ77QCVTkhiqK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/wJ4eD/hyZQuGwVsJ/eBTlAuygFQ7P9YiiEfdwrK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cwar1D/hyZQs21kjZ/U2MUZ5IuGUDjaWhcUynp80/img.png?width=805&amp;amp;height=822&amp;amp;face=0_0_805_822');&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;React 리액트 - 리액트 style 활용 방법 common.js&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Style 컴포넌트 기본 구조 import React from 'react';import S from './style';const Styled01 = () =&amp;gt; { return ( EMAIL PW SUBMIT );};export default Styled01; - 이메일, 패스워드 입력창을 꾸미기 위해 form과 div 사용-&amp;gt; 스타일 적용&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/443&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://developernew.tistory.com/443&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1766903989386&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;React 리액트 - 폴더 구조, 리액트의 스타일&quot; data-og-description=&quot;리액트 기본 폴더 구조 [components][utils] - arrayheler.js - parseheler.js[consts] - key.js (상수, 문자열)[styles] // js의 장점 -&amp;gt; 동적 스타일 변경이 가능하다 -&amp;gt; 변수 제어 -&amp;gt; 속도가 엄청나게 빠름 - theme.js - global&quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/443&quot; data-og-url=&quot;https://developernew.tistory.com/443&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/Fz6TW/hyZQy3bk9V/GOK2iycHctNlZNRu3ubKp1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/dMvo1C/hyZQshAdN7/Ksdkku4eqsnc9E0KxR8JvK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cgSbAK/hyZPEXe2ac/7DwKv66gfVagezgpDK0zXk/img.png?width=1923&amp;amp;height=1015&amp;amp;face=0_0_1923_1015&quot;&gt;&lt;a href=&quot;https://developernew.tistory.com/443&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/443&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/Fz6TW/hyZQy3bk9V/GOK2iycHctNlZNRu3ubKp1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/dMvo1C/hyZQshAdN7/Ksdkku4eqsnc9E0KxR8JvK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cgSbAK/hyZPEXe2ac/7DwKv66gfVagezgpDK0zXk/img.png?width=1923&amp;amp;height=1015&amp;amp;face=0_0_1923_1015');&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;React 리액트 - 폴더 구조, 리액트의 스타일&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;리액트 기본 폴더 구조 [components][utils] - arrayheler.js - parseheler.js[consts] - key.js (상수, 문자열)[styles] // js의 장점 -&amp;gt; 동적 스타일 변경이 가능하다 -&amp;gt; 변수 제어 -&amp;gt; 속도가 엄청나게 빠름 - theme.js - global&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic'; color: #000000;&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://developernew.tistory.com/445&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://developernew.tistory.com/445&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1766903981195&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;React 리액트 - 폰트 스타일 적용 방법&quot; data-og-description=&quot;font : 상업적 이용 가능한 무료 한글 폰트 사이트 https://noonnu.cc 눈누상업적 이용 가능한 한글 폰트를 쉽게 찾아보세요.noonnu.cc 상업적으로 이용 가능한 유료 폰트를 포함해다양한 무료 폰트를 제&quot; data-og-host=&quot;developernew.tistory.com&quot; data-og-source-url=&quot;https://developernew.tistory.com/445&quot; data-og-url=&quot;https://developernew.tistory.com/445&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bcnG3U/hyZPPR03HY/4R6Ka6ybAjb0O9COrU2F51/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bgoWnu/hyZQshB6Tf/x8y20bh9hcSK47WlgCAC80/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/eB813I/hyZPJqHI6U/5d61IWErM3tqTpQMkD1x31/img.png?width=1228&amp;amp;height=903&amp;amp;face=0_0_1228_903&quot;&gt;&lt;a href=&quot;https://developernew.tistory.com/445&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://developernew.tistory.com/445&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bcnG3U/hyZPPR03HY/4R6Ka6ybAjb0O9COrU2F51/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/bgoWnu/hyZQshB6Tf/x8y20bh9hcSK47WlgCAC80/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/eB813I/hyZPJqHI6U/5d61IWErM3tqTpQMkD1x31/img.png?width=1228&amp;amp;height=903&amp;amp;face=0_0_1228_903');&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;React 리액트 - 폰트 스타일 적용 방법&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;font : 상업적 이용 가능한 무료 한글 폰트 사이트 https://noonnu.cc 눈누상업적 이용 가능한 한글 폰트를 쉽게 찾아보세요.noonnu.cc 상업적으로 이용 가능한 유료 폰트를 포함해다양한 무료 폰트를 제&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;developernew.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Frontend/React</category>
      <category>react</category>
      <category>리액트</category>
      <category>리액트 스타일</category>
      <category>리액트 테마</category>
      <category>리액트 폴더 구조</category>
      <author>Ayel</author>
      <guid isPermaLink="true">https://developernew.tistory.com/447</guid>
      <comments>https://developernew.tistory.com/447#entry447comment</comments>
      <pubDate>Sun, 28 Dec 2025 16:12:17 +0900</pubDate>
    </item>
  </channel>
</rss>