[learning javascript] chapter 1. 첫 번째 애플리케이션

첫 번째 애플리케이션

사용할 프로그램

주석에 관해

코드의 의미를 설명. 나 외에 사람들이 알아 보기 쉽도록.. 종류는 //, /* */ 가 있음

시작하기

  1. main.css 생성
    /* 추후 추가 예정 */
    
  2. index.html 생성 ```html

My first application

Welcome to Learning Javascript, 3rd Edition.

---

## 자바 스크립트 콘솔
- 프로그램을 진단할 때 사용하는 텍스트 전용 도구
- 브라우저마다 단축키가 다름
    - 파이어폭스(윈도우/리눅스) : Ctrl + Shift + K
    - 파이어폭스(맥) : Command + Option + K
- 위 index.html 불러온 페이지에서 자바스크립트 콘솔을 열면 해당 로그가 보여야함

## 제이쿼리
- 많이 사용하는 스크립트 라이브러리
- CDN을 통해 가져오는 방법 (인터넷에 연결되어 있어야 함)
```html
<script src="https://code.jquery.com/jquery-2.1.1.min.js"></script>

단순한 그래픽 그리기

- 모든 HTML 요소에 id 부여 가능. 너무 남발하지 말고, 적절히 사용해야 함.
- main.css 수정
```css
#mainCanvas {
    width: 400px;
    height: 400px;
    border: solid 1px black;
}

// TO-DO

paper.view.draw();

- 캔버스 중앙에 녹색 원을 그림 (TO-DO주석을 다음 행으로 교체)
```javascript
var c = Shape.Circle(200, 200, 50);     //x좌표, y좌표, 반지름
c.fillColor = 'green';

반복적인 작업 자동화하기

사용자 입력 처리하기

Hello, World

최종 작성 소스 정리

index.html

<html>
    <head>
        <link rel="stylesheet" href="css/main.css">
    </head>
    <body>
        <h1>My first application</h1>
        <p>Welcome to <i>Learning Javascript, 3rd Edition</i>.</p>
        <canvas id="mainCanvas"></canvas>

        <script src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/paper.js/0.9.25/paper-full.min.js"></script>
        <script src="js/main.js"></script>
    </body>
</html>

main.js

$(document).ready(function() {
    'use strict';
    paper.install(window);
    paper.setup(document.getElementById('mainCanvas'));
    
    var c = Shape.Circle(200, 200, 80);
    c.fillColor = 'black';
    var text = new PointText(200, 200);
    text.justification = 'center';
    text.fillColor = 'white';
    text.fontSize = 20;
    text.content = 'hello world';
    
    var tool = new Tool();
    tool.onMouseDown = function(event) {
        var c = Shape.Circle(event.point.x, event.point.y, 20);
        c.fillColor = 'green';    
    };

    paper.view.draw();
    console.log('main.js loaded');
});

main.css

#mainCanvas {
    width: 400px;
    height: 400px;
    border: solid 1px black;
}