ES5 와 ES6 비교 



꼭 알아야하는 이유는 구버전의 브라우저에서는 ES6를 지원하지 않기때문 ..?


https://es6console.com/


왼쪽 패널에서 ECMAScript 6 문법으로 코드를 작성하고 변환을 누르면 자동으로 오른쪽 패널에 ECMAScript 5 문법으로 변환된 코드를 표시해줍니다.


우선 간단하게 몇개만 확인해보자 


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
 
//es5 문법
 
function greetings (name) {
 
 return 'hello ' + name
 
}
 
 
//es6 문법
 
const greetings = (name=> {
 
 return `hello ${name}`;
 
}
 
 
 
//es5 문법
 
var obj1 = {a : 1, b : 2
var obj2 = {a : 2, c : 3, d : 4
var obj3 = Object.assign (obj1, obj2)
 
 
//es6 문법
 
const obj1 = {a : 1, b : 2
const obj2 = {a : 2, c : 3, d : 4
const obj3 = {... obj1, ... obj2}
 
 
 
//es5 문법
 
var obj1 = { a: 1, b: 2, c: 3, d: 4 }
var a = obj1.a
var b = obj1.b
var c = obj1.c
var d = obj1.d
 
//es6 문법
 
const obj1 = { a: 1, b: 2, c: 3, d: 4 }
const {
  a,
  b,
  c,
  d
= obj1
 
 
 
 
//es5 문법
var a = 1
var b = 2
var c = 3
var d = 4
var obj1 = { a: a, b: b, c: c, d: d }
 
//es6 문법
var a = 1
var b = 2
var c = 3
var d = 4
var obj1 = { a, b, c, d }
 
 
 
//es5 문법
function isGreater (a, b, cb) {
  
  var greater = false
  if(a > b) {
    greater = true
  }
  cb(greater)
}
isGreater(12function (result) {
  if(result) {
    console.log('greater');
  } else {
    console.log('smaller')
  }
})
 
//es6 문법
 
const isGreater = (a, b) => {
 return new Promise ((resolve, reject) => {
  if(a > b) {
   resolve(true)
  } else {
   reject(false)
  }
 })
}
isGreater(12)
 .then(result => {
    console.log('greater')
 })
 .catch(result => {
    console.log('smaller')
 })
 
//es5 문법
var myModule = { x: 1, y: function(){ console.log('This is ES5') }}
module.exports = myModule;
//es6 문법
const myModule = { x: 1, y: () => { console.log('This is ES5') }}
export default myModule;
 
//es5 문법
var myModule = require('./myModule');
//es6 문법
import myModule from './myModule';
import {x, y, z} from './myModule';
 
cs


코드가 매우 간결해지고 가독성도 좋아지고 좋음 



웹팩에대하여 


향후에 웹팩 옵션 수정 할 때 다시 자세하게 알아보기하고 Webpack이 뭐하는지만 일단 알아보자


https://webpack.js.org/


사이트에 들어가보면 메인에




나 또한 웹팩설정에 대하여 아직 잘 모른다 ㅎㅎ 

위에 이미지만 딱 봤을 때 아 ~ 어떤 느낌인지 


설정도 잘은 모르겠지만 

무엇을 어떻게 묶어서 어떻게 내보내고 불러올지 설정하지 않을까... 


bundle your assets  


JS , .png ,sass , jpg 등등   웹팩으로 딱 묶는 거구나 !!!



내가 기존에 작성했던 HTML 을보면



페이지마다 스크립트 또는 CSS 다 불러와야하고 그나마 include를 써서 하긴했다만 그것도 페이지별로 다르니 

필요없는 스크립트를 브라우저에서 로딩하게되고 불필요한 자원을 낭비하게 된다.....


그래서 webpack을 사용하는 것 아닐까?





CSS는  css-loader 가 


FILE 은 file-loader 가


여기서 한가지 알아야 할 것은 


최신 브라우저는 대부분 ES6 형태를 실행 가능하지만 구버전에서는 실행할 수 없기 때문에 ES5로 변환해줘야한다.


import React, { Component } from 'react';
import logo from './logo.svg';
import './App.css';


다음과 같은 import 는 ES6문법이다.


ES6 문법으로 작성 되어진 JS 코드들을 ES5로 변경해야한다 


이것을 가능하게 해주는 것이 Babel-loader 일단 웹팩에 대해서는 이정도로 알고 나중에 설정할 때 더 알아보기로 하자


자세하게 알아보려면 사이트 들어가서 Documentation 읽어보세요 ㅎㅎ 







create-react-app 도구는 npm 또는 yarn 으로 설치 할 수 있음 


패키지를 모든 디렉터리에서 사용 할 것이므로 전역으로 설치 


1
2
3
4
5
6
7
8
9
10
11
12
13
14
node --version
v8.11.3
 
yarn --version
1.10.1
 
 
<npm 으로 설치> 
 
npm install -g create-react-app
 
<yarn 으로 설치>
 
yarn global add create-react-app
cs


터미널에서  다음과 같이 입력


$ create-react-app my_project


명령어를 실행하면 자동으로 my_project에 필요한 로컬 모듈을 설치해줌


$ cd my_project

$ yarn start


자동으로 웹 프라우저로 http://localhost:3000/ 로 리액트 초기 프로젝트 페이지가 열림 






리액트를 시작하기 앞서 VScode 유용한 확장 프로그램을 설치하겠습니다.



1. ESLint ( 자바 스크립트 문법을 체크)




2. Relative Path ( 상대경로 작성 시 편리하게 )




3. Guides ( 들여쓰기 가이드라인)




4. React code Snippets ( 리액트 관련 스니펫 모음)




구글에 검색해보시면 더 유용한 확장 프로그램이 많이 있어요 .. 필요하신건 설치하셔서 진행하시면 되겠습니다.~




1. 리액트 시작하기 





시작하기 설치 항목




1. node.js 


https://nodejs.org/ko/



2. npm 또는 yarn 


https://yarnpkg.com/lang/en/


3. 코드 에이터 ( vscode , atom  등등)


https://code.visualstudio.com/


참고로 Atom 같은경우는 생각보다 메모리를 많이 잡아먹어서 ㅠㅠ 버벅거림 ㅠㅠ 첨엔 안그랬는데 왜이렇게 무거워졌는지 VScode를 추천함 !!!




설치 방법은 어렵지 않음 .. 거진 next 만 누르면 설치 됨 ㅎㅎ


yarn은  npm install yarn -g  로 설치해도 됨 ㅎㅎ ~







추가로 Git 을 설치하셔 버전 관리도 추천 드립니다.







1. w3schools

https://www.w3schools.com/html/



대중적으로 이용하는 사이트 이다 . 단계별로 기초부터 잘 정리되어있고 예제가 어렵지 않아 영어로 되어있긴하나

어렵지 않습니다.


2. poiemaweb

http://poiemaweb.com/



이론부터 자세하게 설명되어있고 UI/UX가 잘 되어있다 ㅎㅎ 

무엇보다 가장 큰 장점은 한글로 되어있다 ㅎㅎ 



추가적으로 

jsbin

http://jsbin.com/?html,css,output


텍스트 에디터를 설치하여 연습해도 되지만 정말 프로그램 처음 완전 처음 시작하신다면  JSBIN을 추천드립니다.


로그인이 필요없으며 ,우측 상단에 Run with JS 버튼을 누르면  작성된 내용이 바로 출력 되는점이 매력이다.


'웹 프론트엔드 > HTML' 카테고리의 다른 글

1강 HTML5  (0) 2018.02.04
웹 디자인 Text 에디터  (0) 2018.02.04


HTML(HyperText Markup Language) 

웹 페이지를 기술하기위한 마크업 언어



html 파일을 만든 후 

brackets 의 경우 html:5 를 작성 후 Tab키를 누르면


1
2
3
4
5
6
7
8
9
10
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    
</body>
</html>
cs

이렇게 자동완성이 됩니다. 

HTML5의 경우 <!DOCTYPE html>

시작을 해야합니다.  

document는 <html> </html> 사이에 작성하며 

<head>사이에는 meta 정보들이 들어갑니다. 

웹 브라우저에 나타내는 요소들은 <body> 사이에 작성합니다.


1
2
3
4
5
6
7
8
9
10
11
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <h1>Hello World</h1>   
     <p>안녕하세요! HTML5</p>
</body>
</html>
cs


body 안에 

<h1>Hello World</h1>   
     <p>안녕하세요! HTML5</p>


요소를 추가하고 


우측 상단에 번개 표시 를 눌러보자 !

이제 여러가지 바꿔가면서 출력을 해보시면서 테스트를 해보세요 ~


'웹 프론트엔드 > HTML' 카테고리의 다른 글

1. HTML 웹 디자인 학습 사이트 모음  (2) 2018.02.15
웹 디자인 Text 에디터  (0) 2018.02.04

내가 사용해본 애디터 툴은 AtomBrackets  이렇게 두가지 이다.

설치방법은 간단하니 설치하여 두가지 다 사용해보는 것을 추천드립니다.

Atom의 경우 유명한 GIthub , Brackets의 경우 Adobe 둘다 막강하죠 

사실 뭘 쓰나 먼져 접한 툴을 사용할 가능성이 크죠 ㅎㅎ 둘다 너무너무 사용하기 좋기 때문입니다.


설치방법은 

Atom

https://atom.io/



 

아톰 화면


Brackets

 http://brackets.io/




 두가지 다 설치나 사용은 어렵지 않습니다.

다만 개인적인 소견으로는 입문에게는 브라켓은 한글을 지원하기 때문에 

초보차에게 더 편할것 같아요  익숙해지면 아톰도 사용해 보시길 권장해드립니다.


'웹 프론트엔드 > HTML' 카테고리의 다른 글

1. HTML 웹 디자인 학습 사이트 모음  (2) 2018.02.15
1강 HTML5  (0) 2018.02.04

+ Recent posts