오운완 후 운동 기록을 인스타에 올린 다음 지인들 좋아요♡ 누르고 다니다가
스파르타 재직자 환급 과정 코딩교육
을 발견하고 안 그래도 퇴근 후 운동 하고 나서 심심하기도 하고, 커리어 전환 생각도 있던 차에 교육을 신청하고
1주차 시작!!! 일단......... 1주차에 뭘 배우는 전체적으로 봐야겠다.
주말에 복습 철저히 해서 괜찮으면 커리어 전환 하는 거고 아니면 어쩔 수 없고 ㅋㅋㅋㅋ
[스파르타코딩클럽] 웹개발 종합반 - 1주차 1
📕
[스파르타코딩클럽] 웹개발 종합반 - 1주차
매 주차 강의자료 시작에 PDF파일을 올려두었어요!
단축키 모음
새로고침
F5
저장
Windows: Ctrl + S
macOS: command + S
전체선택
Windows: Ctrl + A
macOS: command + A
잘라내기
Windows: Ctrl + X
macOS: command + X
콘솔창 줄바꿈
shift + enter
코드정렬
Windows: Ctrl + Alt + L
macOS: option + command + L
들여쓰기
Tab
들여쓰기 취소 : Shift + Tab
주석
Windows: Ctrl + /
macOS: command + /
[수업 목표]
1. 서버와 클라이언트의 역할에 대해 이해한다.
2. HTML, CSS의 기초 지식을 이해한다. 부트스트랩을 가져다 쓸 줄 안다!
3. Javascript 기초 문법을 익힌다.
[목차]
01. 1주차 오늘 배울 것
02. 필수 프로그램 설치
03. HTML, CSS 기본 내용
04. Quiz간단한 로그인 페이지 만들어보기
05. CSS 기초
06. 자주 쓰이는 CSS 연습하기
07. 폰트, 주석, 파일분리[스파르타코딩클럽] 웹개발 종합반 - 1주차 2
💡 모든 토글을 열고 닫는 단축키
Windows : Ctrl + alt + t
Mac : ⌘ + ⌥ + t
01. 1주차 오늘 배울 것
1) 서버/클라이언트/웹의 동작 개념
1. 네이버 웹페이지를 해킹해보자!
👉 크롬 창에서 보이는 웹페이지는 어떤 원리로 보여지는 것일까요?
원리를 알기 위해서, 일단 해킹부터 해보죠! (응?)
함께 해보아요 → '네이버뉴스'라고 쓰인 곳을 원하는 문구로 바꾸어보죠!
👉 앗! 바뀌었다!
08. 부트스트랩, 예쁜 CSS 모음집
09. CSS 꿀팁 한번 더 배우기
10. 본격 부트스트랩 써보기
11. Quiz포스팅박스를 완성하기!
12. Javascript 맛보기
13. Javascript 기초 문법 배우기(1)
14. Javascript 기초 문법 배우기(2)
15. Javascript 연습하기
16. 1주차 끝 & 숙제 설명
HW. 1주차 숙제 해설[스파르타코딩클럽] 웹개발 종합반 - 1주차 3
2. 웹의 동작 개념 (HTML을 받는 경우)
👉 네! 우리가 보는 웹페이지는 모두 서버에서 미리 준비해두었던 것을 "받아서",
"그려주는" 것입니다. 즉, 브라우저가 하는 일은 1) 요청을 보내고, 2) 받은 HTML 파일을 그려주는 일 뿐이죠.
👉 근데, 1)은 어디에 요청을 보내냐구요? 좋은 질문입니다. 서버가 만들어 놓은 "API"라는 창구에 미리 정해진 약속대로
요청을 보내는 것이랍니다.
예) https://naver.com/
→ 이것은 "naver.com"이라는 이름의 서버에 있는, "/" 창구에 요청을 보낸 것!
3. 웹의 동작 개념 (데이터만 받는 경우)[스파르타코딩클럽] 웹개발 종합반 - 1주차 4
👉 앗, 그럼 항상 이렇게 HTML만 내려주냐구요?
아뇨! 데이터만 내려 줄 때가 더~ 많아요.
사실 HTML도 줄글로 쓰면 이게 다 '데이터'아닌가요?
👉 자, 공연 티켓을 예매하고 있는 상황을 상상해봅시다!
좌석이 차고 꺼질때마다 보던 페이지가 리프레시 되면 난감하겠죠ㅠ?
이럴 때! 데이터만 받아서 받아 끼우게 된답니다.
👉 데이터만 내려올 경우는, 이렇게 생겼어요!
(소곤소곤) 이런 생김새를 JSON 형식이라고 한답니다.[스파르타코딩클럽] 웹개발 종합반 - 1주차 5
4. 1~5주차에 배울 순서!
1주차: HTML, CSS, Javascript
👉 오늘은 HTML과 CSS를 배우는 날! 즉, 4주차에 내려줄 HTML파일을 미리 만들어 두는 과정입니다. + 또, 2주차
에 자바스크립트를 능숙하게 다루기 위해서, 오늘 문법을 먼저 조금 배워둘게요!
2주차: jQuery, Ajax, API
👉 오늘은 HTML파일을 받았다고 가정하고, Javascript로 서버에 데이터를 요청하고 받는 방법을 배워볼거예요[스파르타코딩클럽] 웹개발 종합반 - 1주차 6
3주차: Python, 크롤링, mongoDB
👉 오늘은 드디어 '파이썬'을 배울거예요. 먼저 문법을 연습하고, 라이브러리를 활용하여 네이버 영화목록을 쫙 가져
와보겠습니다. (기대되죠!)
나는 문단이에요
ID:
PW:
로그인하기 [스파르타코딩클럽] 웹개발 종합반 - 1주차 20ID:
PW:
ID:
PW:
태그를 활용합니다. 코멘트는 class를 줘서 회색 글씨로! [코드스니펫] 별 표기 ⭐⭐⭐ [코드스니펫] 꿀팁 - 이모티콘 모음 https://kr.piliapp.com/facebook-symbols/
여기에 영화에 대한 설명이 들어갑니다.
⭐⭐⭐
나의 한줄 평을 씁니다
여기에 영화에 대한 설명이 들어갑니다.
⭐⭐⭐
나의 한줄 평을 씁니다
여기에 영화에 대한 설명이 들어갑니다.
⭐⭐⭐
나의 한줄 평을 씁니다
여기에 영화에 대한 설명이 들어갑니다.
⭐⭐⭐
나의 한줄 평을 씁니다
띄워놓은 페이지에서 빠르게 자바스크립트를 테스트해볼 수 있게, 개발자들을 위해 만들어둔 도구입니다. 새로고침
하면 모두 사라진다는 사실!
윈도우: F12
맥: alt(option) + command + iconsole.log(변수)
console.log(변수) 는, 콘솔 창에 괄호 안의 값을 출력해줍니다.
개발자가 결과값을 보기 편하도록!
console.log(변수1,변수2) 로 여러 변수를 한번에 출력할 수도 있어요.
아래를 복사해서 붙여넣어보세요.
console.log("Hello World!");
변수 & 기본연산
변수 대입( a = 2 )의 의미: "오른쪽에 있는 것을 왼쪽에 넣는 것!"
(2를 a라는 변수에 넣는다)[스파르타코딩클럽] 웹개발 종합반 - 1주차 35
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 -> 문자+숫자를 하면, 숫자를 문자로 바꾼 뒤 수행합니다.
변수명은 아무렇게나?
let first_name = 'bob' // snake case라고 합니다.
또는,
let firstName = 'bob' // camel case라고 합니다. 회사마다 규칙이 있죠.
과 같이, 쉽게 알아볼 수 있게 쓰는 게 중요합니다.
다른 특수문자 또는 띄워쓰기는 불가능합니다!
리스트 & 딕셔너리
리스트: 순서를 지켜서 가지고 있는 형태입니다.
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}을 출력
리스트와 딕셔너리의 조합[스파르타코딩클럽] 웹개발 종합반 - 1주차 36
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'
왜 필요할까요?
💡 순서를 표시할 수 있고, 정보를 묶을 수 있습니다.
앞에서 언급한 <스파르타과일가게>가 정말 잘 되어서 전국에서 손님이 찾아오고 있습니다. 대기표를 작성하기 위
해서 온 순서대로 이름, 휴대폰 번호를 적도록 하였는데요. 변수만을 사용한 모습은 다음과 같습니다.
let customer_1_name = '김스파';
let customer_1_phone = '010-1234-1234';
let customer_2_name = '박르탄';
let customer_2_phone = '010-4321-4321';
...(알아보기 힘듭니다.)
👉딕셔너리를 활용한다면 다음과 같이 고객 별로 정보를 묶을 수 있습니다.
let customer_1 = {'name': '김스파', 'phone': '010-1234-1234'};
let customer_2 = {'name': '박르탄', 'phone': '010-4321-4321'};
👉그리고 순서를 나타내기 위해 리스트를 사용하면, 이렇게나 깔끔해집니다.
let customer = [
{'name': '김스파', 'phone': '010-1234-1234'},
{'name': '박르탄', 'phone': '010-4321-4321'}
]
✅보기에도 깔끔해지고, 다루기도 쉬워지고, 고객이 새로 한 명 더 오더라도 .push 함수를 이용해 간단하게 대응
할 수 있습니다.
기본 함수들
사칙연산 외에도, 기본적으로 제공하는 여러 함수들이 존재합니다.
👉 왠지 이건 있을 것 같은데?(예 - 특정 문자를 바꾸고 싶다 등) 싶으면 직접 만들지 말고 구글에 먼저 찾아보세요!
예를 들면, '나눗셈의나머지'를 구하고 싶은 경우
let a = 20
let b = 7
a % b = 6
또, 특정 문자로 문자열을 나누고 싶은 경우
let myemail = 'sparta@gmail.com'
let result = myemail.split('@') // ['sparta','gmail.com']
result[0] // sparta
result[1] // gmail.com
let result2 = result[1].split('.') // ['gmail','com']
result2[0] // gmail -> 우리가 알고 싶었던 것![스파르타코딩클럽] 웹개발 종합반 - 1주차 37
result2[1] // com
myemail.split('@')[1].split('.')[0] // gmail -> 간단하게 쓸 수도 있다!
새로운 앨범 너무 멋져요!
호빵맨
새로운 앨범 너무 멋져요!
호빵맨
새로운 앨범 너무 멋져요!
호빵맨