[웹개발 종합반] 1주차

Ariul·2022년 7월 3일
0
post-thumbnail
  • 이 글은 웹개발 종합반 강의를 수강하고 공부한 내용을 정리하는 용도로 작성되었습니다.
  • 추가학습이 필요한 부분은 ❓이렇게 표시하고 학습 이후 글을 업로드 합니다.

[💡학습 목표]
1. 서버와 클라이언트의 역할에 대해 이해한다.
2. HTML, CSS의 기초 지식을 이해한다. 부트스트랩을 가져다 쓸 줄 안다!
3. Javascript 기초 문법을 익힌다.

HTML

  • head 안에는 페이지의 속성 정보를, body 안에는 페이지의 내용을 담는다.

  • HTML 기초

    <!DOCTYPE html>
    <html lang="en">
    <head>
    	<meta charset="UTF-8">
    	<meta name="viewport" content="width=device-width, initial-scale=1.0">
    	<title>스파르타코딩클럽 | HTML 기초</title>
    </head>
    
    <body>
      <!-- 구역을 나누는 태그들 -->
      <div>나는 구역을 나누죠</div>
      <p>나는 문단이에요</p>
      <ul>
      <li> bullet point!1 </li>
      <li> bullet point!2 </li>
      </ul>
    
      <!-- 구역 내 콘텐츠 태그들 -->
      <h1>h1은 제목을 나타내는 태그입니다. 페이지마다 하나씩 꼭 써주는 게 좋아요. 그래야 구글 검색이 잘 되거든요.</h1>
      <h2>h2는 소제목입니다.</h2>
      <h3>h3~h6도 각자의 역할이 있죠. 비중은 작지만..</h3>
      <hr>
      span 태그입니다: 특정 <span style="color:red">글자</span>를 꾸밀 때 써요
      <hr>
      a 태그입니다: <a href="http://naver.com/"> 하이퍼링크 </a>
      <hr>
      img 태그입니다: <img src="https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png" />
      <hr>
      input 태그입니다: <input type="text" />
      <hr>
      button 태그입니다: <button> 버튼입니다</button>
      <hr>
      textarea 태그입니다: <textarea>나는 무엇일까요?</textarea>
    </body>
    </html>

CSS

  • CSS 기초

    #배경관련
    background-color
    background-image
    background-size
    background-position
    
    #사이즈
    width
    height
    
    #폰트
    font-size
    font-weight
    font-famliy
    color
    
    #테두리(귀퉁이)
    border-radius
    
    #간격
    margin//바깥 여백
    padding//안쪽 여백
  • 배경 Tip!

    background-image: url("https://www.ancient-origins.net/sites/default/files/field/image/Agesilaus-II-cover.jpg");
    backgroung-size: cover;
    background-position: center;
  • 폰트
    - 구글웹폰트 https://fonts.google.com/?subset=korean

    • link 태그를 복사해서 사이에, css를 복사해서 사이에 넣는다.
  • 주석 단축키: ctrl + /

  • css 파일 분리
    - 같은 폴더에 새로 만들기 -> 스타일시트 -> mystyle.css

    • head 태그에서 불러오기
        <link rel="stylesheet" type="text/css" href = "(css파일이름).css">
  • 박스 안의 내용물(content) 정렬

    display: flex;
    flex-direction: column; //column:세로, row:가로
    justify-content: center;
    align-items: center;
  • 그림자 효과: box-shadow: 0px 0px 3px 0px gray;

  • 부트스트랩 시작 템플릿

    <!doctype html>
    <html lang="en">
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
        <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet"
    integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
        <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js"
    integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM"
    crossorigin="anonymous"></script>
        <title>스파르타코딩클럽 | 부트스트랩 연습하기</title>
    </head>
    <body>
        <h1>이걸로 시작해보죠!</h1>
    </body>
    </html>
  • 부트스트랩 컴포넌트 5.0 https://getbootstrap.com/docs/5.0/components/buttons/

Javascript

  1. 변수

    • let 으로 변수 선언
    let num = 20
    num = 'Bob'
    // 변수는 값을 저장하는 박스예요.
    // 한 번 선언했으면, 다시 선언하지 않고 값을 넣습니다.
    • 사칙연산, 그리고 문자열 더하기 기본적으로 가능
    let a = 1
    let b = 2
    a+b // 3
    a/b // 0.5
    let first = 'Bob'
    let last = 'Lee'
    first+last // 'BobLee'
    first+' '+last // 'Bob Lee'
    first+a // Bob1 -> 문자+숫자를 하면, 숫자를 문자로 바꾼 뒤 수행합니다.
    • 변수명
      1) snake case let first_name = 'bob'
      2) camel case let firstName = 'bob'
  2. 자료형

    • 리스트 : 순서를 지켜서 가지고 있는 형태
    let a_list = [] // 리스트를 선언. 변수 이름은 역시 아무렇게나 가능!
    // 또는,
    let b_list = [1,2,'hey',3] // 로 선언 가능
    b_list[1] // 2 를 출력
    b_list[2] // 'hey'를 출력
    // 리스트에 요소 넣기
    b_list.push('헤이')
    b_list // [1, 2, "hey", 3, "헤이"] 를 출력
    // 리스트의 길이 구하기
    b_list.length // 5를 출력
    • 딕셔너리 : 키(key)-밸류(value) 값의 묶음
    let a_dict = {} // 딕셔너리 선언. 변수 이름은 역시 아무렇게나 가능!
    // 또는,
    let b_dict = {'name':'Bob','age':21} // 로 선언 가능
    b_dict['name'] // 'Bob'을 출력
    b_dict['age'] // 21을 출력
    b_dict['height'] = 180 // 딕셔너리에 키:밸류 넣기
    b_dict // {name: "Bob", age: 21, height: 180}을 출력
    • 리스트와 딕셔너리의 조합
    names = [{'name':'bob','age':20},{'name':'carry','age':38}]
    // names[0]['name']의 값은? 'bob'
    // names[1]['name']의 값은? 'carry'
    new_name = {'name':'john','age':7}
    names.push(new_name)
    // names의 값은? [{'name':'bob','age':20},{'name':'carry','age':38},{'name':'john','age':7}]
    // names[2]['name']의 값은? 'john'
  3. 함수

    • 기본 생김새
    // 만들기
    function 함수이름(필요한 변수들) {
    	내릴 명령들을 순차적으로 작성
    }
    // 사용하기
    함수이름(필요한 변수들);
    • 짝/홀수 onclick 함수
    <script>
      let count = 1;
      function hey() {
        if (count % 2 == 0) {
          alert('짝짝짝👏');
        } else {
          alert('홀홀홀🎅');
        }
        count += 1;
      }
    </script>
  4. 조건문

    • if, else if, else
    function is_adult(age){
    	if(age > 20){
    		alert('성인이에요')
    	} else if (age > 10) {
    		alert('청소년이에요')
    	} else {
    		alert('10살 이하!')
    	}
    }
    is_adult(12)
  5. 반복문

    for (1. 시작조건; 2. 반복조건; 3. 더하기) {
    	4. 매번실행
    }
    1 -> 2체크하고 -> (괜찮으면) -> 4 -> 3
    -> 2체크하고 -> (괜찮으면) -> 4 -> 3
    -> 2체크하고 -> (괜찮으면) -> 4 -> 3
    -> 2체크하고 -> (괜찮으면) -> 4 -> 3
    와 같은 순서로 실행됩니다.
    i가 증가하다가 반복조건에 맞지 않으면, 반복을 종료하고 빠져나옵니다.
    let scores = [
      {'name':'철수', 'score':90},
      {'name':'영희', 'score':85},
      {'name':'민수', 'score':70},
      {'name':'형준', 'score':50},
      {'name':'기남', 'score':68},
      {'name':'동희', 'score':30},
    ]
    for (let i = 0 ; i < scores.length ; i++) {
        console.log(scores[i]);
    }
    // 이렇게 하면 리스트 내의 딕셔너리를 하나씩 출력할 수 있고,
    for (let i = 0 ; i < scores.length ; i++) {
    	if (scores[i]['score'] < 70) {
    		console.log(scores[i]['name']);
    	}
    }
    // 이렇게 하면 점수가 70점 미만인 사람들의 이름만 출력할 수도 있습니다.
    function show_gus(index) {
    	for (let i = 0; i < mise_list.length; i++) {
    		let mise = mise_list[i];
    		if (mise["IDEX_MVL"] < index) {
    			let gu_name = mise["MSRSTE_NM"];
    			let gu_mise = mise["IDEX_MVL"];
    			console.log(gu_name, gu_mise);
    		}
    	}
    }
    // 이러면 아래와 같은 것이 가능!
    show_gus(40) // 40보다 작은 구만 출력!
    show_gus(35) // 35보다 작은 구만 출력!
profile
정성과 진심을 담아 흔적을 기록하자💡

0개의 댓글