<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://1lisalozf.github.io/feed.xml" rel="self" type="application/atom+xml" /><link href="https://1lisalozf.github.io/" rel="alternate" type="text/html" /><updated>2026-08-11T16:40:58+00:00</updated><id>https://1lisalozf.github.io/feed.xml</id><title type="html">공부하자예람아</title><subtitle>Kimyeram&apos;s academic portfolio</subtitle><author><name>김예람</name><email>rlaexram@pukyong.ac.kr</email></author><entry><title type="html">개발기초</title><link href="https://1lisalozf.github.io/posts/2026/08/11/blog-post-16/" rel="alternate" type="text/html" title="개발기초" /><published>2026-08-11T00:00:00+00:00</published><updated>2026-08-11T00:00:00+00:00</updated><id>https://1lisalozf.github.io/posts/2026/08/11/blog-post-16</id><content type="html" xml:base="https://1lisalozf.github.io/posts/2026/08/11/blog-post-16/"><![CDATA[<h2 id="html">HTML</h2>

<h3 id="커밋타입">커밋타입</h3>
<p>feat(ure): 새로운 기능 추가
fix: 버그 및 오류 수정
docs: 문서 수정 (README 등)
style: 코드 포맷팅, 세미콜론 누락 등 로직 변경 없는 수정
refactor: 코드 리팩토링 (기능 변화 없음)
test: 테스트 코드 추가 또는 수정
chore: 빌드 업무 수정, 패키지 매니저 설정 등 기타 작업</p>

<h3 id="server-vs-client">Server VS Client</h3>
<ul>
  <li>Client : 서비스를 요청(UI화면 구성하고 보여줌) -&gt; 프론트엔드</li>
  <li>Server : 서비스를 제공(요청을 수신하고 처리, 데이터 관리) -&gt; 백엔드</li>
</ul>

<h3 id="서버-클라이언드-구조">서버 클라이언드 구조</h3>
<ul>
  <li>
    <p>이 원리에 대해 이해를 해야지 어떤 개발자들이 어떤 파트에서 프로그래밍을 하는지를 알 수 있음</p>
  </li>
  <li>
    <p>브라우저를 여는 우리의 개인 컴퓨터와 그 브라우저를 클라이언트라고함.</p>
  </li>
  <li>
    <p>URL을 입력하고 엔터를 누르는 순간 인터넷망을 통해 서버쪽에 데이터를 요청하게 됨.</p>
  </li>
  <li>
    <p>서버 같은 경우 클라이언트가 데이터를 요청하면 그 요청에 따라서 데이터를 보내주는 것</p>
  </li>
  <li>
    <p>데이터를 요청하고 받는 원리이기 때문에 클라이언트 서버라는 이름이 붙여졌음.</p>
  </li>
</ul>

<h3 id="align-items-속성">align items 속성</h3>
<ul>
  <li>stretch : 아이템을 늘려서 컨테이너의 교차축 가득 채움</li>
  <li>center : 교차축의 가운데로 정렬</li>
  <li>flex-start / start : 교차축의 시작 위치로 정렬</li>
  <li>flex-end / end : 교차축의 끝 위치로 정렬</li>
  <li>baseline : 내부 텍스트의 기준선에 맞춰 정렬</li>
</ul>

<h3 id="display--flex">display : flex;</h3>
<ul>
  <li></li>
</ul>]]></content><author><name>김예람</name><email>rlaexram@pukyong.ac.kr</email></author><category term="ㄴWAPs" /><summary type="html"><![CDATA[HTML]]></summary></entry><entry><title type="html">폴더 구조 정리법</title><link href="https://1lisalozf.github.io/posts/2026/07/13/blog-post-14/" rel="alternate" type="text/html" title="폴더 구조 정리법" /><published>2026-07-13T00:00:00+00:00</published><updated>2026-07-13T00:00:00+00:00</updated><id>https://1lisalozf.github.io/posts/2026/07/13/blog-post-14</id><content type="html" xml:base="https://1lisalozf.github.io/posts/2026/07/13/blog-post-14/"><![CDATA[<p>공식 문서 :
https://ko.legacy.reactjs.org/docs/faq-structure.html#is-there-a-recommended-way-to-structure-react-projects</p>

<h3 id="폴더-정리를-왜-해야하는가">폴더 정리를 왜? 해야하는가</h3>
<ul>
  <li>이름만 봐도 ‘이게 어떤 기능을 하는지’가 보여야함</li>
  <li>협업할때도, 유지보수 할 때도 시간을 아낄 수 있음</li>
</ul>

<h3 id="폴더-이름">폴더 이름</h3>
<ul>
  <li>간단하고 눈에 익는 단어</li>
</ul>

<h3 id="src-폴더source">src 폴더(source)</h3>
<p>프로젝트에서 실제로 작성하는 소스 코드가 들어가는 폴더</p>
<ul>
  <li>공통된 요소는 프로젝트 최상단에 두기</li>
</ul>

<h3 id="기능별로-나누기">기능별로 나누기</h3>
<p>프로젝트 구조에 대한 일반적인 방법 중 하나는 CSS, JS 그리고 테스트 파일을 기능이나 라우트로 분류된 폴더에 같이 두는 방법</p>

<h3 id="너무-깊게-생각하지-말-것">너무 깊게 생각하지 말 것</h3>
<p>파일 구조를 선택하는 것에 있어 5분 이상 시간을 투자하지 말기</p>]]></content><author><name>김예람</name><email>rlaexram@pukyong.ac.kr</email></author><category term="ㄴetc" /><summary type="html"><![CDATA[공식 문서 : https://ko.legacy.reactjs.org/docs/faq-structure.html#is-there-a-recommended-way-to-structure-react-projects]]></summary></entry><entry><title type="html">html tag</title><link href="https://1lisalozf.github.io/posts/2026/07/13/blog-post-15/" rel="alternate" type="text/html" title="html tag" /><published>2026-07-13T00:00:00+00:00</published><updated>2026-07-13T00:00:00+00:00</updated><id>https://1lisalozf.github.io/posts/2026/07/13/blog-post-15</id><content type="html" xml:base="https://1lisalozf.github.io/posts/2026/07/13/blog-post-15/"><![CDATA[<h2 id="html">HTML</h2>

<h3 id="기본세팅">기본세팅</h3>
<ol>
  <li>&lt;!DOCTYPE html&gt;로 시작</li>
  <li>
    <html lang="en"> 영어로 웹사이트를 만드는 것이 아니면 "ko"로 설정

</html>
  </li>
</ol>
<head>
  <meta charset="UTF-8" />
  &lt;meta name="viewport" content="width=device-width, initial-scale=1.0&gt;
  <title>제목명</title>
<head>
<body>
</body>
&lt;/html&gt;

### 속성
<태그 속성="값">내용</태그>

### 주석
`<!--주석에 쓰고 싶은 애요 !-->`

https://velog.io/@sally3921/2-HTML%EC%8B%9C%EC%9E%91%EA%B3%BC-HTML-tag

이어서...

### tag 종류
1. 제목 태그 &lt;h1~6&gt;&lt;/h1~6&gt;
2. 본문 태그 <p></p>
3. 목록 태그 <ul></ul> or <ol></ol>
  - <ul type="circle">
  - ul 안에는 꼭 li 인 list 태그를 써야하고, ul과 ol은 서로 중첩해서도 가능하다.
  - ul : 순서 없는 목록
  - ol : 순서 있는 목록
4. 문자 꾸미기 태그
```
<!--글씨 두껍게-->
<b></b>
<strong></strong>
<!--이탤릭-->
<i></i>
<!--기울여서 강조하기-->
<em></em>
<!--중간줄-->
<del></del>
<!--밑줄-->
<u></u>
```

------
### `<img />, <a>, <span>`
1. `<img />`태그
- `<img src="이미지 주소" alt="이미지 로드가 안될때 작성되는 메시지" />`

2. `<a>`태그
- 인라인 태그로서, 페이지를 이동하는 하이퍼링크다.
- `<a href="페이지 링크" target="문서가 열릴 위치 표시">`버튼 이름`</a>`
  - href : 이동할 페이지의 링크
  - target : 링크 된 페이지를 열었을 때 문서가 열릴 위치 표시
    - _blank :새로운 탭이 열림
    - 원래는 기본값이 현재 탭에서 열리는 거라서 target 설정안하면 현재 탭에서 자동으로 열림
3. `<span>`태그
- 문장 안의 특정 글자나 일부분을 묶어주는 태그
- 특별한 모양이나 의미는 없다.
- inline태그로, div안에 들어가는 경우가 많고 한줄에 들어감<br /><br />

***inline 요소**
- 한 줄 안에서 필요한 부분만 차지하는 HTML요소
  - inline 요소 : 글자처럼 한 줄에 이어짐
  - block 요소 : 상자처럼 한 줄을 통쨰로 차지함

사용자 입력 tag
-----

1. form
- `<input />`을 담는 역할
- 서버로 input의 데이터를 전송시키는 역할이라서 백엔드로 데이터를 보낼때 쓰인다.
<br />

```
<form>
    <input type="button" value="전송" /> 
    <button>버튼</button> <!--기본값이 서버로 제출임-->
    <button type="button">버튼1</button><br /> <!--이건 type을 바꿨기 때문에 서버로 전송이 아닌 그냥 버튼이 됌, 기능역할을 하게 됌
    저기다가 type = "submit"을 하게 되면 기본값이 되는 것-->

    <!--placeholder 속성 : 사용자에게 어떠한 값을 입력하라고 안내해주는 역할-->
    <!-- value 속성 : 기본값으로 들어가있음. 그러나 지울 수는 있음-->
    <input type="text" placeholder="이름" value="wow" /><br />
    <input type="text" placeholder="이름" value="Good" readonly="" /><br /> <!--readonly : 읽을 수만 있음-->
    <input type="password" placeholder="비밀번호" /><br />

    <!--체크박스 속성 : 여러개 체크 가능, value는 서버로 보내주는 값이고, >옆에 값은 사용자에게 보여지는 값 
    여기선 food라는 체크박스 하나에 들어가있는 박스들임, on/off 이기 때문에 하나를 선택할수도 , 안할수도, 여러개 할수도 있는 경우엔 체크박스
    checked : 기본값으로 체크가 되어있는 것, 해제가능-->
    <input type="checkbox" name="food" value="pizza" />피자<br />
    <input type="checkbox" name="food" value="chicken" checked="" />치킨<br />

    <!--radio : 여러 선택지 중 하나만 선택 가능, 무조건 하나는 선택해야할때 사용함! , name이 같은 것 중에 하나를 선택하게끔 함!-->
    <input type="radio" name="hobby" value="camping" />캠핑<br />
    <input type="radio" name="hobby" value="hiking" />등산<br />
    <input type="radio" name="hobby" value="swimming" />수영<br />
    <!--이렇게 이름이 다르면 여러개 선택 가능함!-->
    <input type="radio" name="hobby_1" value="camping" />캠핑<br />

    <!-- date : 날짜가 생성됌-->
    <input type="date" /><br />
    <input type="time" /><br />
    <input type="datetime-local" /><br /> <!--년월일, 시간까지 전부다 선택가능-->

    <!--select : 선택 메뉴를 만드는 tag임. value를 꼭 해줘야한다. 이유는 그래야 서버에 들어가기 떄문.-->
    <select>
      <optgroup label="아시아">
        <option value="korea">대한민국</option>
        <option value="japan">일본</option>
        <option value="china" disabled="">중국</option> <!--disabled : 아예 선택이 안되게 만드는 것. Input에다가도 넣을 수 있음, 서버에도 안보내짐-->
      </optgroup>
      <optgroup label="북아메리카">
        <option value="u.s.a">미국</option>
        <option value="canada">캐나다</option>
      </optgroup>
      
    </select>

  </form>
```
</span></a></span></a></ul></head></head>]]></content><author><name>김예람</name><email>rlaexram@pukyong.ac.kr</email></author><category term="ㄴetc" /><summary type="html"><![CDATA[HTML]]></summary></entry><entry><title type="html">[React] 7. state</title><link href="https://1lisalozf.github.io/posts/2026/07/12/blog-post-13/" rel="alternate" type="text/html" title="[React] 7. state" /><published>2026-07-12T00:00:00+00:00</published><updated>2026-07-12T00:00:00+00:00</updated><id>https://1lisalozf.github.io/posts/2026/07/12/blog-post-13</id><content type="html" xml:base="https://1lisalozf.github.io/posts/2026/07/12/blog-post-13/"><![CDATA[<h2 id="state">state</h2>

<h3 id="propstate-차이점">prop·state 차이점</h3>
<p>prop은 외부자를 위한 것
state는 내부자를 위한 데이터</p>

<h3 id="state란">state란?</h3>
<p>화면에서 계속 바뀔 수 있는 값을 저장하는 공간
-&gt; 쇼핑몰 장바구니 개수, 좋아요 수, 입력창에 작성한 글자, 로그인 여부 처럼 사용자 행동에 따라 변하는 값들을 state로 관리함</p>

<h3 id="리렌더링">리렌더링</h3>
<p>state가 변경되면 React가 해당 컴포넌트를 다시 실행하고, 변경된 값을 화면에 보여주는 것.</p>]]></content><author><name>김예람</name><email>rlaexram@pukyong.ac.kr</email></author><category term="React" /><summary type="html"><![CDATA[state]]></summary></entry><entry><title type="html">[React] 6. 이벤트</title><link href="https://1lisalozf.github.io/posts/2026/07/08/blog-post-12/" rel="alternate" type="text/html" title="[React] 6. 이벤트" /><published>2026-07-08T00:00:00+00:00</published><updated>2026-07-08T00:00:00+00:00</updated><id>https://1lisalozf.github.io/posts/2026/07/08/blog-post-12</id><content type="html" xml:base="https://1lisalozf.github.io/posts/2026/07/08/blog-post-12/"><![CDATA[<h2 id="이벤트">이벤트</h2>

<h3 id="onclick">onClick</h3>
<ul>
  <li>onClick={function(<strong>event</strong>)}{
event.preventDefault();
}</li>
</ul>

<h3 id="함수-호출">함수 호출</h3>
<p>props.함수명();</p>

<h3 id="파라미터">파라미터</h3>
<p>함수가 값을 받을 수 있도록 만들어 둔 자리 이름
(함수 안으로 들어오는 값을 담는 변수)</p>

<p><code class="language-plaintext highlighter-rouge">function sayHello(name) {
  console.log(name + "님 안녕하세요!");
}</code></p>

<p>=&gt; 여기서 name이 파라미터
=&gt; sayHello(“예람”); 이라고 출력값을 넣어주면 name에 예람이 들어감</p>

<h3 id="event">event</h3>
<p>사용자가 화면에서 뭔가 했을 때 React가 알아차리는 신호</p>

<p>```function Button() {
  function handleClick() {
    alert(“버튼을 클릭했어요!”);
  }</p>

<p>return (
    &lt;button onClick={handleClick}&gt;
      클릭
    &lt;/button&gt;
  );
}<code class="language-plaintext highlighter-rouge">
-&gt; 기본 예시
</code>`
onClick은 “클릭 이벤트가 발생하면”이라는 뜻
handleClick은 “그때 실행할 함수”</p>

<p>```function InputBox() {
  function handleChange(event) {
    console.log(event.target.value);
  }</p>

<p>return &lt;input onChange={handleChange} /&gt;;
}```</p>

<p>event.target.value는 사용자가 input에 입력한 값</p>]]></content><author><name>김예람</name><email>rlaexram@pukyong.ac.kr</email></author><category term="React" /><summary type="html"><![CDATA[이벤트]]></summary></entry><entry><title type="html">[React] 5. props(추가)</title><link href="https://1lisalozf.github.io/posts/2026/07/04/blog-post-11/" rel="alternate" type="text/html" title="[React] 5. props(추가)" /><published>2026-07-04T00:00:00+00:00</published><updated>2026-07-04T00:00:00+00:00</updated><id>https://1lisalozf.github.io/posts/2026/07/04/blog-post-11</id><content type="html" xml:base="https://1lisalozf.github.io/posts/2026/07/04/blog-post-11/"><![CDATA[<h2 id="props">Props</h2>

<h3 id="props란">Props란?</h3>
<p>properties의 줄임말로, 부모 컴포넌트에서 자식 컴포넌트로 데이터를 전달하기 위한 읽기 전용 객체</p>

<ul>
  <li>부모 컴포넌트 : 자식 컴포넌트에게 전달할 데이터를 Props로 지정</li>
  <li>자식 컴포넌트 : 부모로부터 전달받은 데이터를 Props 객체를 통해 사용함</li>
</ul>

<p>Props는 컴포넌트의 재사용성을 극대화하는 핵심적인 문법</p>

<h3 id="props의-필요성">Props의 필요성</h3>
<p>Props를 사용하지 않으면, 코드의 중복을 유발하고 유지보수가 어렵다.</p>

<h3 id="props를-사용한-예시">Props를 사용한 예시</h3>
<p>function UserProfile(props) {
  return &lt;div&gt;Hello! {props.name}&lt;/div&gt;;
}</p>

<p>function App() {
  return (
    &lt;div&gt;
      {/* <Component PropsKey="Value"></Component> 형식으로 데이터 전달 */}
      <UserProfile name="철수"></UserProfile>
      <UserProfile name="영희"></UserProfile>
      <UserProfile name="길동"></UserProfile>
    &lt;/div&gt;
  );
}</p>

<p>export default App;</p>

<h3 id="props-전달하고-받기">Props 전달하고 받기</h3>
<ol>
  <li>부모 : Props 전달하기
    <ul>
      <li>key = {value} 형태로 Props를 전달함
        <ul>
          <li>key : Props의 이름(카멜 케이스 권장)</li>
          <li>value : 전달할 데이터. 문자열은 따옴표로, 그 외 표현식은 중괄호로 감싸서 전달함.</li>
        </ul>
      </li>
    </ul>
  </li>
  <li>자식 : Props 받기
    <ul>
      <li>자식 컴포넌트는 함수의 첫 번째 매개변수로 props 객체를 통째로 전달받음.</li>
    </ul>
  </li>
</ol>

<p>방법 A : Props 객체 직접 사용</p>
<ul>
  <li>$props.속성명$ 형태로 데이터에 접근할 수 있음</li>
</ul>

<p>// ChildComponent.jsx
export default function ChildComponent(props) {
  console.log(props); // { name: “영희”, age: 25, user: { name: “철수”, age: 20 } }</p>

<p>return (
    &lt;div&gt;
      &lt;p&gt;이름: {props.name}&lt;/p&gt;
      &lt;p&gt;나이: {props.age}&lt;/p&gt;
      &lt;p&gt;다른 사용자: {props.user.name}&lt;/p&gt;
    &lt;/div&gt;
  );
}</p>

<p>방법 B : 구조 분해 할당</p>
<ul>
  <li>매개변수 위치에서 객체 구조 분해 할당 문법을 사용하면 코드가 훨씬 간결해짐
필요한 props 키를 {}안에 직접 명시하여 변수처럼 바로 사용할 수 있음</li>
</ul>

<p>// ChildComponent.jsx
export default function ChildComponent({ name, age, user }) {
  return (
    &lt;div&gt;
      &lt;p&gt;이름: {name}&lt;/p&gt;
      &lt;p&gt;나이: {age}&lt;/p&gt;
      &lt;p&gt;다른 사용자: {user.name}&lt;/p&gt;
    &lt;/div&gt;
  );
}</p>

<h3 id="props는-읽기-전용이다">Props는 읽기 전용이다</h3>
<p>자식 컴포넌트는 부모로부터 받은 Props를 절대로 직접 수정해서는 안됨.</p>]]></content><author><name>김예람</name><email>rlaexram@pukyong.ac.kr</email></author><category term="React" /><summary type="html"><![CDATA[Props]]></summary></entry><entry><title type="html">[React] 4. 컴포넌트만들기, 5. props</title><link href="https://1lisalozf.github.io/posts/2026/07/01/blog-post-10/" rel="alternate" type="text/html" title="[React] 4. 컴포넌트만들기, 5. props" /><published>2026-07-01T00:00:00+00:00</published><updated>2026-07-01T00:00:00+00:00</updated><id>https://1lisalozf.github.io/posts/2026/07/01/blog-post-10</id><content type="html" xml:base="https://1lisalozf.github.io/posts/2026/07/01/blog-post-10/"><![CDATA[<h2 id="컴포넌트만들기">컴포넌트만들기</h2>
<h3 id="사용자-정의-태그">사용자 정의 태그</h3>
<ul>
  <li>리액트에서 제일 중요한 개념</li>
  <li><strong>리액트에서 사용자 정의 태그를 만들때는 반드시 대문자로 시작해야함</strong></li>
  <li>ex. <img src="/images/post_images/07-01-01.png" alt="alt text" /></li>
</ul>

<h3 id="컴포넌트component">컴포넌트(Component)</h3>
<ul>
  <li>컴포넌트를 통해 UI를 재사용 가능한 개별적인 여러 조각으로 나누고, 각 조각을 개별적으로 살펴볼 수 있다.</li>
  <li>왜? 사용하는가
    <ul>
      <li>가독성, 재사용성, 유지보수 용이성</li>
    </ul>
  </li>
</ul>

<h2 id="props">props</h2>
<h3 id="props-1">Props</h3>
<ul>
  <li>컴포넌트의 외부에서 사용하는 입력값(임의의 입력), 속성을 나타내는 데이터</li>
  <li>상위 컴포넌트가 하위 컴포넌트에 값을 전달할 때 사용하는 속성</li>
  <li><img src="/images/post_images/07-01-02.png" alt="alt text" /></li>
</ul>

<h3 id="props-타입">Props 타입</h3>
<p><strong>1. 문자열 타입 프로퍼티</strong></p>
<ul>
  <li>프로퍼티 타입이 문자열인 경우, 프로퍼티 값을 표현할 때는 큰 따옴표(““)를 사용함.
    <ul>
      <li><code class="language-plaintext highlighter-rouge">&lt;MyComponent name="헬로리액트!"&gt;</code></li>
    </ul>
  </li>
</ul>

<p><strong>2. 문자열 이외 타입의 프로퍼티</strong></p>
<ul>
  <li>문자열 타입 이외의 프로퍼티 값은 중괄호({})를 사용함.
    <ul>
      <li><code class="language-plaintext highlighter-rouge">&lt;MyComponent 
  boolProp= {true} //boolean
  arrProp= {['a','b','c']} //배열
  objProp=  //객체
  funcProp= {() =&gt; { alert('알림창'); }}  //함수 
/&gt;</code></li>
    </ul>
  </li>
</ul>

<h3 id="proptypes--데이터-타입-검증하기">PropTypes : 데이터 타입 검증하기</h3>
<ul>
  <li>PropTypes는 상위 컴포넌트로부터 전달받은 데이터의 타입을 확인하는 라이브러리
    <ul>
      <li>상위 컴포넌트로부터 전달받은 props가 유효하지 않은 타입의 데이터가 전달되는 경우 콘솔에 에러 경고문이 출력됨.</li>
    </ul>
  </li>
</ul>]]></content><author><name>김예람</name><email>rlaexram@pukyong.ac.kr</email></author><category term="React" /><summary type="html"><![CDATA[컴포넌트만들기 사용자 정의 태그 리액트에서 제일 중요한 개념 리액트에서 사용자 정의 태그를 만들때는 반드시 대문자로 시작해야함 ex.]]></summary></entry><entry><title type="html">[React] 1.개발환경구축</title><link href="https://1lisalozf.github.io/posts/2026/06/30/blog-post-9/" rel="alternate" type="text/html" title="[React] 1.개발환경구축" /><published>2026-06-30T00:00:00+00:00</published><updated>2026-06-30T00:00:00+00:00</updated><id>https://1lisalozf.github.io/posts/2026/06/30/blog-post-9</id><content type="html" xml:base="https://1lisalozf.github.io/posts/2026/06/30/blog-post-9/"><![CDATA[<p>https://youtube.com/playlist?list=PLuHgQVnccGMCOGstdDZvH41x0Vtvwyxu7&amp;si=VIaIMF7-f92nbuuH</p>

<p><br /></p>

<h3 id="목차">목차</h3>
<ol>
  <li>개발 환경 소개 및 Vite 개념 설명</li>
  <li>개발 환경 세팅</li>
  <li>Vite로 React 프로젝트 생성하기</li>
  <li>VSCode 확장 추천 및 폴더 구조 설명
<br /><br />
—–</li>
</ol>

<h3 id="1-개발-환경-소개-및-vite-개념-설명">1. 개발 환경 소개 및 Vite 개념 설명</h3>

<p><strong>React는 JS 기반 <em>UI라이브러리</em>이다.</strong></p>
<ul>
  <li><strong>라이브러리(Library)</strong> : 다양한 기능을 제공함으로써 개발자가 필요한 함수를 호출해서 사용
    <ul>
      <li>React, jQuery…</li>
    </ul>
  </li>
  <li><strong>프레임워크(Framework)</strong> : 개발자가 작업하기 위한 전체적인 틀을 제공해서 개발자가 그 틀 안에서만 맞춰서 작업을 해야함(단점이기도 함)
    <ul>
      <li>Spring Boot, Django…</li>
    </ul>
  </li>
</ul>

<p><strong>프레임워크(Framework)와 라이브러리(Library)의 차이점</strong></p>
<ul>
  <li>제어 프름에 대한 주도성이 누구에게 / 어디에게 있는가?</li>
  <li>프레임워크는 스스로 제어 흐름의 주도성을 갖는 반면, 라이브러리는 개발자가 가지고 있다.</li>
  <li>프레임워크는 집, 라이브러리는 그 집 안의 가구.</li>
  <li>프레임워크는 글램핑, 라이브러리는 캠핑</li>
</ul>

<p>외부 라이브러리 없이 브라우저가 인식하는 FrontEnd언어는 HTML, CSS, JS뿐임.
그래서 인식못하는 언어는 플러그인을 붙이거나 이해하는 언어로 번역해주는 도구를 사용함.</p>
<ul>
  <li>플러그인(Plug-in) : 기존 프로그램에 콘센트를 꼽듯이 새로운 기능이나 부속 프로그램을 덧붙여 확장하는 소프트웨어</li>
  <li>소프트웨어 : 컴퓨터의 실행을 지시하는 컴퓨터 프로그램들로 구성</li>
</ul>

<p>코드를 번역해주는 도구를 <em>번들러(Bundler)</em>라고 하는데, 예전엔 Webpack를 썼지만, 요즘은 Vite(속도가 훨씬 빠름)를 많이 씀.</p>

<p>리액트를 만드는 데에는 class vs function이 있음.
-&gt; funtion으로 진행될 예정</p>

<p>– 개정판 3까지</p>]]></content><author><name>김예람</name><email>rlaexram@pukyong.ac.kr</email></author><category term="React" /><summary type="html"><![CDATA[https://youtube.com/playlist?list=PLuHgQVnccGMCOGstdDZvH41x0Vtvwyxu7&amp;si=VIaIMF7-f92nbuuH]]></summary></entry><entry><title type="html">네이밍 규칙(Repository, )</title><link href="https://1lisalozf.github.io/posts/2026/06/28/blog-post-8/" rel="alternate" type="text/html" title="네이밍 규칙(Repository, )" /><published>2026-06-28T00:00:00+00:00</published><updated>2026-06-28T00:00:00+00:00</updated><id>https://1lisalozf.github.io/posts/2026/06/28/blog-post-8</id><content type="html" xml:base="https://1lisalozf.github.io/posts/2026/06/28/blog-post-8/"><![CDATA[<p><br /></p>

<h2 id="repository-명명-규칙">Repository 명명 규칙</h2>

<h3 id="프레임워크or언어---이름---기능">프레임워크(or언어) - 이름 - 기능</h3>

<p>###</p>
<ol>
  <li>소문자를 사용해라</li>
  <li>대시(-)를 사용해라</li>
  <li>구체적으로 작성해라</li>
  <li>일관성 있게 작성해라</li>
</ol>

<h3 id="예시">예시</h3>
<ol>
  <li>algorithm-study</li>
  <li>mysql-study</li>
</ol>

<h3 id="기본적인-명명-규칙">기본적인 명명 규칙</h3>
<ol>
  <li>Git 저장소 이름에 사용되는 Keyword는 의미론(Sementic)적으로 작성합니다.</li>
  <li>Git 저장소 이름에 사용되는 Keyword의 표기는 카멜(Camel) 표기법을 사용합니다.</li>
  <li>Git 저장소 이름 규칙(Naming convention)에 사용되는 고유 명사는 대문자로 표기합니다.</li>
  <li>Git 저장소 이름에 사용되는 Keyword 간의 구분은 ‘하이픈(-)’을 사용합니다.</li>
  <li>Git 저장소 이름 규칙(Naming convention)은 Proejct name-Project development</li>
  <li>enviroment-Project purpose 의 형태로 제안합니다.</li>
  <li>(선택 사항) Git 저장소 이름 규칙은 git repository라는 것을 나타내기 위해 git.으로 시작합니다.</li>
</ol>

<h2 id="네이밍-규칙">네이밍 규칙</h2>

<h3 id="네이밍규칙을-왜-사용하는가">네이밍규칙을 왜 사용하는가?</h3>
<ul>
  <li>소스 코드를 읽고 이해하는데 필요한 비용 절약</li>
  <li>코드 리뷰 시 이슈에 좀 더 집중할 수 있도록 도와줌</li>
</ul>

<h3 id="보편적인-네이밍규칙">보편적인 네이밍규칙</h3>

<p><strong>1. 카멜 케이스(camel Case)</strong><br />
첫 글자는 소문자, 두번째 단어부터는 띄어쓰기 없이 대문자로 표기<br />
ex. visitorName
<br /></p>

<p><strong>2. 파스칼 케이스(PascelCase)</strong><br />
모든 단어를 띄어쓰기없이 대문자로 시작 <br />
ex. VisitorName
<br /></p>

<p><strong>3. 스네이크 케이스(snake_case)</strong><br />
모든 단어를 소문자로 작성하고 단어사이에 언더바를 넣기<br />
ex. visitor_name
<br /></p>

<p><strong>4. 케밥 케이스(kebab-case)</strong><br />
모든 단어를 소문자로 작성하고 단어사이에 대시를 넣기<br />
ex. visitor-name
<br /></p>]]></content><author><name>김예람</name><email>rlaexram@pukyong.ac.kr</email></author><category term="etc" /><summary type="html"><![CDATA[]]></summary></entry><entry><title type="html">간단한 방학계획 &amp;amp; 상담내용</title><link href="https://1lisalozf.github.io/posts/2026/06/11/blog-post-7/" rel="alternate" type="text/html" title="간단한 방학계획 &amp;amp; 상담내용" /><published>2026-06-11T00:00:00+00:00</published><updated>2026-06-11T00:00:00+00:00</updated><id>https://1lisalozf.github.io/posts/2026/06/11/blog-post-7</id><content type="html" xml:base="https://1lisalozf.github.io/posts/2026/06/11/blog-post-7/"><![CDATA[<h2 id="to-do-list">TO DO LIST</h2>

<h4 id="종강-전">종강 전</h4>
<ul>
  <li>웹프로그래밍 과제 마무리하기</li>
  <li>1학기 마무리 작업
    <ul>
      <li>출석 인증 &amp; 성적 확인 마무리</li>
    </ul>
  </li>
</ul>

<h4 id="종강-후">종강 후</h4>
<ul>
  <li>프로젝트 기획</li>
  <li>6월호 고래의 꿈 작업</li>
  <li>홍보부 32기 최종 카드뉴스</li>
  <li>33기 컨셉 만들기</li>
</ul>

<h4 id="방학">방학</h4>
<ul>
  <li>1인 프로젝트 개발(리액트 공부)</li>
  <li>방학 간 블로그(개발 블로그)쓰기 챌린지</li>
  <li>개발 공부
    <ul>
      <li>개발 단축키</li>
      <li>함수 공부</li>
      <li>깃허브 사용법</li>
      <li>프로그래밍 표기법
<br /> 이런 자잘자잘하지만 도움되는 것들 공부</li>
    </ul>
  </li>
  <li>컴퓨터공학 분야 공부
    <ul>
      <li>컴퓨터 비전, 그래픽스, 애니메이션 …</li>
    </ul>
  </li>
</ul>

<h2 id="상담-내용">상담 내용</h2>
<ul>
  <li>2026/06/22</li>
  <li>필주님과….</li>
</ul>

<ol>
  <li><strong>진로 고민</strong>
    <ul>
      <li>프론트엔드 분야를 깊게 파고드는 것이 좋을지, 1인 개발을 하면서 폭넓게 개발분야를 경험해보는게 좋을지?
        <ul>
          <li>특히 프론트엔드 분야는 AI가 많은 부분을 해주고 있기 때문에 진로로선 잘 모르겠음</li>
        </ul>
      </li>
    </ul>
    <ul>
      <li>프론트엔드 포트폴리오 관련
<br />작은 프로젝트라도 포트폴리오를 만들어보는것도 좋은 방법. 개발 프로젝트 &amp; 공부 병행해라. 단, 공부는 시험기간에 하는것이 아닌 항상 하는 것.
<br /><br />
      - 프론트엔드를 깊게 들어가기보다는 많은 분야를 경험해보고 그 경험들로 빨리 높은 곳으로 올라가라(진두지휘 할 수 있는 사람)
  <br /><br />
      - 어려운 공부를 해라. 사람의 손을 많이 타는 분야를 하는것이 좋음. =&gt; 이걸 하는게 연구실임. 연구실, 석/박사에 대해 너무 선을 긋고 생각하지말기.</li>
    </ul>
  </li>
</ol>

<p><br /></p>

<ol>
  <li><strong>공부법</strong>
    <ul>
      <li>정리하는 습관을 들여라.
        <ul>
          <li>시험 공부는 시험기간에 하는게 아니라 매주 하는 것… 이전 수업 내용을 정리하고 이해가 된 상태에서 들어가야 다음 수업을 이해할 수 있다.</li>
          <li>대화 방식에 있어서도 의사 소통이 되려면 뭐가 중요한지를 알고 말해야 조리있게 말할 수 있다.
<br /><br /></li>
        </ul>
      </li>
      <li>왜?에 대해서 항상 생각을 해야한다.
        <ul>
          <li>어떤걸 물어봤을 때 3분이건, 3시간이건 말할 수 있어야함.</li>
          <li>왜?라는 질문에 혼자 생각하는 시간이 정말 중요함. 이걸 하다보면 그에 대한 동기부여도 생김.</li>
        </ul>
      </li>
    </ul>
  </li>
</ol>]]></content><author><name>김예람</name><email>rlaexram@pukyong.ac.kr</email></author><category term="etc" /><summary type="html"><![CDATA[TO DO LIST]]></summary></entry></feed>