no image
[고2 영어] 1학기 1차 지필평가
according to ...에 따르면 considerate 사려 깊은, 배려하는 author 작가 creative 창의적인 be impressed by ...에 감명을 받다 cross-country 크로스컨트리 be over 끝나다 destiny 운명 be worthy of ...할 가치가 있다 donate 기부하다, 기증하다 bobsledder 봅슬레이 선수 dynamic 활발한, 역동적인 break free from ...에서 도망치다, 벗어나다 easygoing 마음 편한, 태평한 colleague 동료 encouragement 격려 come up with ...을 생각해 내다, (해답 등을) 찾아내다 era 시대 confident 자신감 있는, 확신하는 fascinated 매료된, 마음을 빼앗긴..
2024.03.23
[고2 게임 프로그래밍] 3 - (4)
using System.Collections; using System.Collections.Generic; using UnityEngine; public class TimeController : MonoBehaviour { // 카운트다운 & 카운트 업 public bool isCountDown = true; // 카운트다운으로 시간 측정(true) // 게임 최대시간(초), 카운트다운->이 값~0까지/카운트업->0~이 값까지 public float gameTime = 0; public bool isTimeOver = false; // 타이머 정지 public float displayTime = 0; // 화면에 표시되는 시간 float times = 0; // 현재 시간 void Start() { //..
2024.03.21
no image
[고2 응용 프로그래밍] (JS)
기본 양식 나이 계산하기 var 변수; // 변수 선언변수 = prompt("텍스트", ""); // 입력창documet.write("텍스트"); // 출력and 연산자 if () else // 조건문alert("텍스트"); // 출력창구구단 구구단 // css 형식 지정for (변수 지정; 조건문; 변수++) {} // 반복문if문 for문 font-size:1.5em; // 폰트 크기line-height:2; // 행간text-align:center; // 가운데 정렬switch문 switch (변수) { // 값 받기case "1": // 값이 1이라면~break; // switch문 종료default: // 기타 값}요약
2024.03.20
[고2 게임 프로그래밍] 3 - (3)
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; // 추가(UI) public class GameManager : MonoBehaviour { Button btn; // 버튼 컴포넌트형 변수 public GameObject mainImage; // 메인이미지를 담아주는 게임오브젝트형 변수 public GameObject panel; // 패널 public GameObject restartButton; // 리스타트 버튼 public GameObject nextButton; // 넥스트 버튼 public Sprite gameOverSpr; // 게임오버 스프라이트(이미지) p..
2024.03.18
no image
[고2 수학] 1학기 1차 지필평가
지수가 자연수일 때의 지수법칙 $a,\,b$가 실수이고 $m,\,n$이 자연수일 때 $a^{m}a^{n}=a^{m+n}$$(a^{m})^{n}=a^{mn}$$(ab)^{n}=a^{n}b^{n}$$(\frac{a}{b})^{n}=\frac{a^{n}}{b^{n}}\,(단,\,b≠0)$$a^{m}÷a^{n}=\begin{cases}a^{m-n}\;\,(m>n)\\\quad1\;\quad(m=n)\,(단,\,a≠0)\\\frac{1}{a^{n-m}}\quad(m 더보기$2^{4}×2^{5}=2^{4+5}=2^{9}$$(2^{4})^{5}=2^{4×5}=2^{20}$$(2×3)^{5}=2^{5}×3^{5}$$(\frac{2}{3})^{5}=\frac{2^{5}}{3^{5}}$$..
2024.03.17
no image
[고2 일본어] 1학기 1차 지필평가
일본은 훗카이도, 혼슈, 시코쿠, 규슈의 4개의 큰 섬과 6,800여개의 크고 작은 섬으로 이루어져 있다.일본의 행정구역은 1도(都), 1도(道), 2부(府), 43현(県)이다.  히라가나 50음도\あ단い단う단え단お단あ행あ/a/い/i/う/u/え/e/お/o/か행か/ka/き/ki/く/ku/け/ke/こ/ko/さ행さ/sa/し/shi/す/su/せ/se/そ/so/た행た/ta/ち/chi/つ/tsu/て/te/と/to/な행な/na/に/ni/ぬ/nu/ね/ne/の/no/は행は/ha/..
2024.03.14
[고2 게임 프로그래밍] 3 - (2)
using System.Collections; using System.Collections.Generic; using UnityEngine; public class PlayerController : MonoBehaviour { Rigidbody2D rb; // 리디즈바디형 변수 float axisH = 0.0f; // 키보드 좌우방향 입력 public float speed = 3.0f; // 이동속도 public float jump = 9.0f; // 점프력 public LayerMask groundLayer; // 착지할 수 있는 지면 레이어형 변수 bool goJump = false; // 점프 개시 플래그 bool onGround = false; // 지면에 서 있는 플래그 // 애니메이션처리 An..
2024.03.14
no image
[고2 응용 프로그래밍] 1학기 2차 지필평가
구조적 프로그래밍 설계 1. 구조적 프로그래밍 설계 구조순차구조: 프로그램 코드가 위에서 아래로 일직선으로만 실행되는 구조선택구조: 분기형 구조로, 주어진 조건 만족 여부에 따라 처리 대상과 순서를 전달하는 구조     //if, if-else반복구조: 반복형 구조로, 조건이 만족할 때까지 동작을 반복하는 구조     // while, for  2. 구조적 프로그래밍 언어 개발 절차요구사항 분석: 고객이 원하는 요구사항을 수집하여 명세화하는 단계구조적 분석: 고객이 원하는 기능, 시스템 환경, 데이터를 종합하여        데이터 흐름도(Data Flow Diagram)를 작성하는 단계        대표적인 기법에는 ERD(Entity Relation Diagram)과 DFD(Data Flow Diagr..
2024.03.13
no image
[고2 문학] 1학기 1차 지필평가
문학의 기능과 가치인식적 기능: 독자를 인간과 세계에 대하여 새롭게 이해하도록 이끈다.윤리적 기능: 독자를 윤리적 성찰로 이끈다.미적 기능: 독자의 마음에 미적 쾌감을 솟게 하고 독자의 정서를 풍부하게 한다.  의인법: 사람이 아닌 대상에게 사람의 특성을 부여하는 비유법        // 비둘기가 날 좋아하는지 날 보고 웃어요활유법: 무생물을 생물인 것처럼, 감정이 없는 것(무정물)을 감정이 있는 것(유정물)처럼 표현하는 수사법        // 아침이 날개를 펴다.중의법: 한 단어에 두 가지 이상의 뜻을 곁들이는 수사법        // 청산리 별계수야 수이감을 자랑마라돈호법: 이름을 불러 주의를 불러일으키는 수사법        // 아희야, 무릉이 어디메오 나는 옌가 하노라영..
2024.03.13
according to ...에 따르면 considerate 사려 깊은,
배려하는
author 작가 creative 창의적인
be impressed by ...에 감명을 받다 cross-country 크로스컨트리
be over 끝나다 destiny 운명
be worthy of ...할 가치가 있다 donate 기부하다,
기증하다
bobsledder 봅슬레이 선수 dynamic 활발한,
역동적인
break free from ...에서 도망치다,
벗어나다
easygoing 마음 편한,
태평한
colleague 동료 encouragement 격려
come up with ...을 생각해 내다,
(해답 등을) 찾아내다
era 시대
confident 자신감 있는,
확신하는
fascinated 매료된,
마음을 빼앗긴

 

frustrated 실망한,
좌절한
method 방법
get closer to ...에 접근하다 motivate 동기를 부여하다
have ... in mind ...을 염두에 두다 obstacle 장애물
have an influence on ...에 영향을 끼치다 outgoing 사교적인,
외향적인
imaginative 상상의,
상상력이 풍부한
overcome 극복하다
in one's own words ... 자신의 말로 participate in ...에 참여하다
innovative 혁신적인,
독창적인
personality 성격
logical 논리적인, 
타당한
pleased 기쁜,
즐거운
make a fortune 돈을 벌다 realistic 현실적인
merchant 상인 restriction 제약,
제한

 

semester 학기 starving 굶주린
set a goal 목표를 세우다 stick to ...을 고수하다,
계속 유지하다
silly 우스운,
터무니없는
talented 재능 있는
sophomore 2학년 unfortunate 불행한
specify 명시하다,
구체화하다
willingly 기꺼이

 


 

tame
길들인
to train an animal to stay calm and to make it used to being with them
동물이 침착함을 유지하고 그들과 함께 있는 데 익숙해지도록 훈련시키다
envy
부러움
to wish that you had something that another person has
다른 사람이 가지고 있는 것을 당신도 갖고 싶어하다
inspiration
영감
someone or something that gives you ideas for doing something
당신에게 어떤 일을 하기 위한 아이디어를 주는 사람이나 사물
criticism
비판
the act of saying that something or someone is bad
어떤 것이나 누군가가 나쁘다고 말하는 행위
sniff
맡다
to smell something by taking air in through your nose
코로 공기를 흡입하여 냄새를 맡다
unfamiliar
생소한
to not have any knowledge or experience of something; not known to you
어떤 것에 대한 지식이나 경험이 없다; 당신에겐 알려지지 않음
representative
대표
typical of people or things in a particular group
특정 집단에 속한 사람이나 사물의 전형적인 모습
attack
공격
to use violence to harm a person, animal, or place
사람, 동물, 장소에 해를 끼치기 위해 폭력을 사용하다
portray
그리다
to show or describe someone or something in a painting, film, book, or other artistic work
그림, 영화, 책, 기타 예술 작품에서 누군가나 사물을 보여주거나 설명하다
coexist
공존하다
to live or exist at the same time or in the same place
같은 시간이나 같은 장소에 살거나 존재하다

 

sarcastic 빈정대는, 비꼬는
skeptical 회의적인
cynical 냉소적인
chic 세련된
critical 비판적인

 


 

1. Do you have a role model?

 

 

Many students have probably set goals and plans for the new semester already.

많은 학생들은 이미 아마도 새로운 학기에 대한 목표와 계획을 세웠을 거예요.

 

 

According to a study, it may be easier for you to stick to them if you have a role model.

한 연구에 따르면, 여러분들에게 역할 모델이 있다면, 그것들을 지키는 게 더 쉬울지도 모른다고 합니다.

▶ it(가주어), to stick to (진주어)

 

 

 

[Jihu] I think role models influence our lives in a positive way by giving us dreams, hopes, and lessons.

[지후] 저는 역할 모델이 우리에게 꿈, 희망, 교훈을 줌으로써 긍정적으로 우리의 삶에 영향을 미친다고 생각합니다.

 

 

Reading his books such as Charlie and the Chocolate Factory and Matilda,

I found myself fascinated by his interesting stories and creative characters.

'찰리와 초콜릿 공장', '마틸다'와 같은 그의 책을 읽으면서,

저는 제가 그의 흥미로운 이야기와 창의적인 인물들에 매력을 느낀 것을 알게 되었어요.

 

 

As a result, I became more confident and hopeful about my future.

결과적으로 저는 제 미래에 대해 더 자신감이 생겼고 더 희망에 차게 되었어요.

 

 

Like Roald Dahl, I want to be a writer who can have a positive influence on readers, too.

Roald Dahl처럼, 저도 독자들에게 긍정적인 영향을 줄 수 있는 작가가 되고 싶어요.

▶ who: 관계대명사

 

 

[Hyeri] My role model is Kim Mandeok, a female merchant during the Joseon Dynasty. 

[혜리] 제 역할 모델은, 조선시대 여성 상인인 김만덕이에요.

▶ merchant : 상인

 

 

However, she overcame all of her difficulties and created her own destiny as a merchant all by herself.

하지만 그녀는 모든 그녀의 어려움들을 극복했고 상인으로서의 그녀만의 운명을 혼자서 만들어나갔습니다.

▶ all by oneself : 완전히 혼자서

 

 

Whatever job I have in the future, I'll try to overcome the obstacles around me rather than complain about them.

미래에 제가 어떤 직업을 갖든지, 제 주변의 장애물에 대해 불평하기보다 오히려 그것들을 극복하도록 노력할 것이에요.

▶ whatever = no matter what : 양보 부사절 (무슨 직업을 갖더라도) ​

 

 

[Minjun] I have role models, too. They are the main characters in the film Cool Runnings.

[민준] 저도 역할 모델이 있습니다.​ 그들은 영화 '쿨 러닝'의 주인공들입니다.

 

 

That may be because their situation seemed very similar to mine.

그것은 그들의 상황이 제 상황과 매우 비슷해 보였기 때문일지도 모릅니다.


 

Sometimes I feel frustrated when my colleagues and I don't get attention or support from people.

때로 저는 제 동료들과 제가 사람들로부터 관심과 지지를 받지 못할 때 좌절감을 느낍니다.

▶ frustrated : 좌절감을 느끼는

▶ colleague : 동료

 

 

However, when this happens, I motivate myself by thinking about the characters in Cool Runnings.

하지만 이런 일이 일어날 때 저는 ‘쿨러닝’의 등장인물들을 생각하면서 제 자신에게 동기를 부여합니다.

▶ motivate : 동기부여하다

 

 

[Saemi] However, if a role model means someone who is worthy of my respect, then I have that kind of person.

[새미] 하지만, 역할 모델이 제가 존경할 만한 사람을 의미한다면, 저에게 그런 유형의 사람이 있습니다.

 

In addition, once she taught me something, she made me explain it back to her in my own words.

게다가, 일단 그녀가 제게 무언가를 가르쳐주면 그녀는 제가 그것을 저만의 말로 다시 그녀에게 설명하도록 했습니다.

▶ once 주어 + 동사 ~ : 일단 ~하면

▶ made(사역동사) + me(목적어) + explain(원형 부정사) ~

 

 

I don't think a role model needs to be someone famous or special.

저는 역할 모델이 유명하거나 특별한 사람이어야 한다고 생각하지 않습니다.

 


 

2. A Sunday Painter Chasing His Dream

 

A lion sniffs at the woman but does not seem to attack her.

사자 한 마리가 그 여성의 냄새를 맡지만 그녀를 공격할 것 같아 보이진 않습니다.

▶ sniff : 냄새를 맡다


The rich and sharp colors of the painting fascinate us and its stillness makes us feel like we are actually there.

그림의 풍부하고 선명한 색채가 우리 마음을 사로잡고고요함우리가 실제 거기에 있는 것처럼 느끼도록 합니다.

▶ fascinate : 매료시키다

▶ stillness : 고요함

▶ makes(사역동사) + us(목적어) + feel(원형 부정사) ​


It is the unfamiliar combination of things that exist in two different worlds, reality and fantasy.

그것은 두 가지 다른 세상인 현실과 환상이라는 세계 속에 존재하는 사물의 어색한 조합입니다.

▶ unfamiliar : 친숙하지 않는, 어색한


He led a mostly unremarkable life, working as a Paris customs service officer until his late forties.

그는 40대 후반까지 파리의 세관 공무원으로 일하면서 주로 특별할 것 없는 삶을 살았습니다.



When Rousseau first showed four paintings at the Salon exhibition in 1886, people did not respond favorably to them.

루소가 처음으로 1886년에 살롱전에서 네 개의 그림을 선보였을 때, 사람들은 그것들에 호의적으로 반응하지 않았습니다.

▶ favorably : 호의적으로



One critic even said, "Monsieur Rousseau paints with his feet with a blindfold over his eyes.

한 비평가는 심지어 “Monsieur Rousseau는 눈가리개그의 눈 위에 얹고 그의 발로 그림을 그린다.”라고 말했습니다.

▶ blindfold : 눈가리개

▶ with + a blindfold(목적어) + (being) over his eyes : ~한 채로


In spite of such harsh criticism, Rousseau never gave up his style.

그러한 혹독한 비판에도, 루소는 결코 그의 기법을 포기하지 않았습니다.

▶ in spite of = despite : ~에도 불구하고

▶ harsh : 혹독한, 가혹한

'----------고2---------- > 영어' 카테고리의 다른 글

[고2 영어] 1학기 2차 지필평가  (0) 2024.05.01
[고2 영어] 연습 문제  (0) 2024.04.27
[고2 영어] 단어 암기  (0) 2024.04.07
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class TimeController : MonoBehaviour
{
    // 카운트다운 & 카운트 업
    public bool isCountDown = true; // 카운트다운으로 시간 측정(true)
    // 게임 최대시간(초), 카운트다운->이 값~0까지/카운트업->0~이 값까지
    public float gameTime = 0;
    public bool isTimeOver = false; // 타이머 정지
    public float displayTime = 0;   // 화면에 표시되는 시간

    float times = 0;     // 현재 시간

    void Start()
    {
        // 카운트 다운이면, 시간이 감소돼야 되므로 게임최대시간(gameTime)이 표시돼야
        if (isCountDown)
        {
            displayTime = gameTime;
        }
    }

    // 시간 종료가 아닐때만 실행
    void Update()
    {
        if (isTimeOver==false)
        {
            // 시작시간부터 경과시간 구하기
            times += Time.deltaTime; // times = times + Time.deltaTime;
            if (isCountDown) // 카운트 다운일 때
            {
                displayTime = gameTime - times;
                if (displayTime <= 0.0f)
                {
                    displayTime = 0.0f;
                    isTimeOver = true;
                }

            }
            else // 카운트 업일 때
            {
                displayTime = times;
                if (displayTime >= gameTime)
                {
                    displayTime = gameTime;
                    isTimeOver = true;
                }
            }
            Debug.Log("현재시간(times): " + displayTime);
        }
    }
}

기본 양식

<!DOCTYPE html>
<html>
<head>
    <title>제목</title>
</head>
<body>
    <script>

    </script>
</body>
</html>

나이 계산하기

<!DOCTYPE html>
<html>
<head>
    <title>나이 계산하기</title>
</head>
<body>
    <script>
        var currentYear = 2024;
        var birthYear;
        var age;

        birthYear = prompt("태어난 연도를 입력하세요. (YYYY)", "");
        age = currentYear - birthYear + 1;
        document.write(currentYear + "년 현재<br>");
        document.write(birthYear + "년에 태어난 사람의 나이는 " + age + "세입니다.");
    </script>
</body>
</html>

  • var 변수; // 변수 선언
  • 변수 = prompt("텍스트", ""); // 입력창
  • documet.write("텍스트"); // 출력

and 연산자

<!DOCTYPE html>
<html>
<head>
    <title>조건문</title>
</head>
<body>
    <script>
        var numberOne = prompt("50미만의 숫자를 입력하세요.");
        var numberTwo = prompt("50미만의 숫자를 입력하세요.");

        if (numberOne < 50 && numberTwo < 50) 
            alert("두 개의 숫자 모두 50 미만이군요.");
        else 
            alert("조건에 맞지 않는 숫자가 있습니다.");
    </script>
</body>
</html>

  • if () else // 조건문
  • alert("텍스트"); // 출력창

구구단

<!DOCTYPE html>
<html>
<head>
	<title>구구단 - for문</title>
	<link rel="stylesheet" href="css/gugudan.css">
</head>
<body>
	<h1>구구단</h1>
	<script>
		var i, j;

		for (i = 1; i <= 5; i++) {
			document.write("<div>");
			document.write("<h3>" + i + "단</h3>");
			for (j = 1; j <= 9; j++) {
				document.write(i +" X " + j + " = " + i*j + "<br>");
			}
			document.write("</div>");
		}
	</script>
</body>
</html>

  • <link rel="stylesheet" href="폴더명/파일명.css"> // css 형식 지정
  • for (변수 지정; 조건문; 변수++) {} // 반복문

if문

<!DOCTYPE html>
<html>
<head>
    <title>조건문</title>
</head>
<body>
    <script>
        var userNumber = prompt("숫자를 입력하세요.");

        if (userNumber % 3 === 0) 
            alert("3의 배수입니다.");
        else 
            alert("3의 배수가 아닙니다.");
    </script>
</body>
</html>

for문

<!DOCTYPE html>
<html>
<head>
	<title>1에서 5까지 더하기</title>
	<style>
		body {
			font-size:1.5em;
			line-height:2;
			text-align:center;
		}
	</style>
</head>
<body>
	<script>
		var i;
		var sum = 0;

		for(i = 1; i < 6; i++) {
			sum += i;
		}
		document.write("1부터 5까지 더하면 " + sum);
	</script>
</body>
</html>
  • font-size:1.5em; // 폰트 크기
  • line-height:2; // 행간
  • text-align:center; // 가운데 정렬

switch문

<!DOCTYPE html>
<html>
<head>
	<title>세션 선택 - switch문</title>
	<link rel="stylesheet" href="css/switch.css">
</head>
<body>	
	<script>
		var session = prompt("관심 세션을 선택해 주세요. 1-디바과, 2-보안과, 3-인공과, 4-게임과");
		
		switch (session) {
			case "1" : document.write("<p>디바과 세션은 <strong>101호</strong>에서 진행됩니다.</p>")
				break;
			case "2" : document.write("<p>보안과 세션은 <strong>201호</strong>에서 진행됩니다.</p>")
				break;
			case "3" : document.write("<p>인공과 세션은 <strong>301호</strong>에서 진행됩니다.</p>")
				break;
			case "4" : document.write("<p>게임과 세션은 <strong>401호</strong>에서 진행됩니다.</p>")
				break;
			default: alert("잘못 입력했습니다.");
		}
	</script>
</body>
</html>
  • switch (변수) { // 값 받기
    case "1": // 값이 1이라면~
    break; // switch문 종료
    default: // 기타 값
    }

요약

<!DOCTYPE html>
<html>
<head>
    <title>제목</title>
    <link rel="stylesheet" href="folder/file.css">
    <style>
        body {
            font-size:1.5em;
            line-height:2;
            text-align:center;
        }
    </style>
</head>
<body>
    <script>
        var value;
        value = prompt("입력창", "");
        document.write("출력");
        alert("출력창");
        
        // if문
        var x = 3;
        var y = 3;
        if (x<5 && y<5)
        {
            document.write("참");
        }
        else
        {
            document.write("거짓");
        }

        // for문
        for (i=1; i<=5; i++)
        {
            document.write("<div>");
            document.write("<h3>" + i + "단</h3>");
            for (j=1; j<=5; j++)
            {
                document.write(i + "X" + j + "=" + i*j + "<br>");
            }
            document.write("</div>");
        }

        // switch문
        var session = prompt("1, 2, 3");
        switch(session)
        {
            case "1": document.write("1")
                break;
            case "2": document.write("2")
                break;
            case "3": document.write("3")
                break;
            defalut: alert("기타");
        }
    </script>
</body>
</html>
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI; // 추가(UI)

public class GameManager : MonoBehaviour
{
    Button btn; // 버튼 컴포넌트형 변수

    public GameObject mainImage;     // 메인이미지를 담아주는 게임오브젝트형 변수
    public GameObject panel;          // 패널
    public GameObject restartButton; // 리스타트 버튼
    public GameObject nextButton;    // 넥스트 버튼

    public Sprite gameOverSpr;  // 게임오버 스프라이트(이미지)
    public Sprite gameClearSpr; // 게임 클리어 스프라이트(이미지)

    Image titleImage; // 이미지를 표시하는 Image 컴포넌트형 변수

    void Start()
    {
        // 패널 숨기기
        panel.SetActive(false);
        // 게임스타트 이미지가 1초후 사라지게
        Invoke("HideImage", 1.0f);
    }

    // 게임 클리어, 게임 오버
    void Update()
    {
        // 게임 클리어일때
        if(PlayerController.gameState == "gameClear")
        {
            mainImage.SetActive(true); // 게임클리어 이미지보이기
            panel.SetActive(true);     // 패널(버튼이미지2개) 보이기
            // 리스타트 버튼 무효화(비활성화)
            btn = restartButton.GetComponent<Button>();
            btn.interactable = false;
        }
        // 게임 오버일때
        else if(PlayerController.gameState == "gameOver")
        {
            mainImage.SetActive(true); // 게임오버 이미지보이기
            panel.SetActive(true);     // 패널(버튼이미지2개) 보이기
            // 넥스트 버튼 무효화(비활성화)
            btn = nextButton.GetComponent<Button>();
            btn.interactable = false;
        }
        // 게임 중일때
        else if(PlayerController.gameState == "playing")
        {
            
        }
    }

    void HideImage()
    {
        mainImage.SetActive(false);
    }
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;

public class ChangeScene : MonoBehaviour
{
    public string sceneName; // 불러올 씬 이름 저장

    public void Load()
    {
        SceneManager.LoadScene(sceneName);
    }
}

지수가 자연수일 때의 지수법칙

 

$a,\,b$가 실수이고 $m,\,n$이 자연수일 때

 

  1. $a^{m}a^{n}=a^{m+n}$

  2. $(a^{m})^{n}=a^{mn}$

  3. $(ab)^{n}=a^{n}b^{n}$

  4. $(\frac{a}{b})^{n}=\frac{a^{n}}{b^{n}}\,(단,\,b≠0)$

  5. $a^{m}÷a^{n}=\begin{cases}a^{m-n}\;\,(m>n)\\\quad1\;\quad(m=n)\,(단,\,a≠0)\\\frac{1}{a^{n-m}}\quad(m<n)\end{cases}$

 

더보기
  1. $2^{4}×2^{5}=2^{4+5}=2^{9}$

  2. $(2^{4})^{5}=2^{4×5}=2^{20}$

  3. $(2×3)^{5}=2^{5}×3^{5}$

  4. $(\frac{2}{3})^{5}=\frac{2^{5}}{3^{5}}$

  5. $2^{4}÷2^{5}=\frac{1}{2^{5-4}}=\frac{1}{2}$

 


 

지수함수

 

거듭제곱의 성질

 

$a>0,\,b>0$이고 $m,\,n$이 $2$ 이상의 정수일 때

 

  1. $\sqrt[n]{a}\sqrt[n]{b}=\sqrt[n]{ab}$

  2. $\frac{\sqrt[n]{a}}{\sqrt[n]{b}}=\sqrt[n]{\frac{a}{b}}$

  3. $(\sqrt[n]{a})^{m}=\sqrt[n]{a^{m}}$

  4. $\sqrt[m]{\sqrt[n]{a}}=\sqrt[mn]{a}$

 

더보기
  1. $\sqrt[5]{2}×\sqrt[5]{3}=\sqrt[5]{2×3}$

  2. $\frac{\sqrt[5]{2}}{\sqrt[5]{3}}=\sqrt[5]{\frac{2}{3}}$

  3. $(\sqrt[5]{2})^{4}=\sqrt[5]{2^{4}}=\sqrt{2^{\frac{4}{5}}}$

  4. $\sqrt[4]{\sqrt[5]{2}}=\sqrt[4×5]{2}=\sqrt[20]{2}$

 


 

0 또는 음의 정수인 지수

 

$a≠0$이고 $n$이 양의 정수일 때

 

  1. $a^{0}=1$

  2. $a^{-n}=\frac{1}{a^{n}}$

 

더보기
  1. $2^{0}=1$

  2. $2^{-3}=\frac{1}{2^{3}}$

 


 

유리수인 지수

 

$a>0$이고 $m,\,n\,(n≥2)$이 정수일 때

 

  1. $a^\frac{m}{n}=\sqrt[n]{a^{m}}$

  2. $a^\frac{1}{n}=\sqrt[n]{a}$

 

더보기
  1. $2^\frac{3}{4}=\sqrt[3]{2^{4}}$

  2. $2^\frac{1}{4}=\sqrt[4]{2}$

 

 


 

 

로그함수

 

로그의 정의

 

$a>0,\,a≠1,\,N>0$일 때
$\qquad a^x=N\,\Longleftrightarrow\,x=log_a{N}$

 

더보기

$\qquad 2^4=16\,\Longleftrightarrow\,4=log_2{16}$

 


 

로그의 밑의 변환

 

$a>0, a≠1, b>0, c>0, c≠1$일 때
$\qquad log_a{b}=\frac{log_c{b}}{log_c{a}}$

 

더보기

$\qquad log_4{8}=\frac{log_2{8}}{log_2{4}}=\frac{3log_2{2^3}}{2log_2{2^2}}=\frac{3}{2}$

 


 

상용로그 (log N)

 

10을 밑으로 하는 로그

 

$\log{1000}=log_{10}{10^3}$
$\qquad=3log_{10}{10}$
$\qquad=3$

 


 

지수함수

 

실수 전체의 집합을 정의역으로 하는 함수

$y=(\frac{1}{2})^x$
$y=\pi^x$

 

 


 

시초선과 동경

 

호도법

 

1라디안$=\frac{180°}{\pi}$

$1°=\frac{\pi}{180}라디안$



일본은 훗카이도, 혼슈, 시코쿠, 규슈의 4개의 큰 섬과 6,800여개의 크고 작은 섬으로 이루어져 있다.

일본의 행정구역은 1도(都), 1도(道), 2부(府), 43현(県)이다.

 


 

히라가나 50음도
あ단
い단
う단
え단
お단
あ행
あ/a/
い/i/
う/u/
え/e/
お/o/
か행
か/ka/
き/ki/
く/ku/
け/ke/
こ/ko/
さ행
さ/sa/
し/shi/
す/su/
せ/se/
そ/so/
た행
た/ta/
ち/chi/
つ/tsu/
て/te/
と/to/
な행
な/na/
に/ni/
ぬ/nu/
ね/ne/
の/no/
は행
は/ha/
ひ/hi/
ふ/hu/
へ/he/
ほ/ho/
ま행
ま/ma/
み/mi/
む/mu/
め/me/
も/mo/
や행
や/ya/
 
ゆ/yu/
 
よ/yo/
ら행
ら/ra/
り/ri/
る/ru/
れ/re/
ろ/ro/
わ행
わ/wa/
 
 
 
を/o/
ん/N/
ん을 제외한 50음도 글자는 청음이다.

 


 

いえ(i e) ねこ(ne ko) 고양이
き(ki) 나무 はな(ha na)
いす(i su) 의자 みみ(mi mi)
かさ(ka sa) 우산 やま(ya ma)
すし(su shi) 스시 ゆき(yu ki)
て(te) さくら(sa ku ra) 벚나무, 벚꽃
つき(tsu ki) かわ(ka wa)
いぬ(i nu) 강아지

 


 

탁음 / 반탁음

が/ga/ ぎ/gi/ /gu/ /ge/ /go/
ざ/za/ じ/zi/ /zu/ /ze/ /zo/
だ/da/ ぢ/zi/ /zu/ /de/ /do/
ば/ba/ /bi/ /bu/ /be/ /bo/
 
ぱ/pa/ /pi/ /pu/ /pe/ /po/

 


 

かぜ(ka ze) 바람 まど(ma do) 창문
ここ(ko ko) 여기 ごご(go go) 오후
 
こ(pe ko pe ko) 몹시 배가 고픈 모양 ぴかぴか(pi ka pi ka) 반짝반짝 빛나는 모양
へらへら(he ra he ra) 실없이 자꾸 웃는 모양 ぺらぺら(pe ra pe ra) 유창하게 말하는 모양
 
かぞく(ka zo ku) 가족 くだもの(ku da mo no) 과일
ぴよぴよ(pi yo pi yo) 삐약삐약

 


 

요음

「い」를 제외한 い단 글자의 오른쪽 아래에 작은 「や·ゆ·よ」를 붙여 만든 소리로, 앞의 글자와 합쳐서 1박으로 발음한다.

きゃ/kya/ きゅ/kyu/ きょ/kyo/
しゃ/sha/ しゅ/shu/ しょ/sho/
ちゃ/cha/ ちゅ/chu/ ちょ/cho/
にゃ/nya/ にゅ/nyu/ にょ/nyo/
ひゃ/hya/ ひゅ/hyu/ ひょ/hyo/
みゃ/mya/ みゅ/myu/ みょ/myo/
りゃ/rya/ りゅ/ryu/ りょ/ryo/
 
ぎゃ/gya/ ぎゅ/gyu/ ぎょ/gyo/
じゃ/zya/ じゅ/zyu/ じょ/zyo/
びゃ/bya/ びゅ/byu/ びょ/byo/
 
ぴゃ/pya/ ぴゅ/pyu/ ぴょ/pyo/

 


 

かいしゃ(ka i sha) 회사 ひゃく(hya ku) 100
しゅくだい(shu ku da i) 숙제 じしょ(zi sho) 사전
 
いしゃ(i sha) 의사 いしや(i shi ya) 석수
 
おちゃ(o cha) かしゅ(ka shu) 가수
しょくじ(sho ku zi) 식사

 


촉음 / 발음

き(ni k ki) 일기 あさて(a sat te) 모레
すぐ(ma s su gu) 곧장, 곧바로 (kippu)
 
(sa m po) 산책 たく(se n ta ku) 음악
がく(o ŋ ga ku) 세탁 (de N wa) 전화
 
びっくり(Bi k ku ri) 깜짝 놀람 てんぷら (Te m pu ra) 튀김
ほんや (Ho n ya) 서점

 

장음

あ단 + かあさん(okaːsaN) 어머니  
い단 + さん(oniːsaN) 형, 오빠
う단 + すうがく(suːgaku) 수학
え단 + ねえさん(oneːsaN) 언니, 누나 え단 + せい(seːto) 학생
お단 + とお(toːka) 10일 お단 + とうさん(otoːsaN) 버지

 

おばあさん
(O ba a sa n)
할머니 きいろい
(ki i ro i)
노란색 ゆうびんきょく
(Yu u bi n kyo ku)
우체국

 


 

인사말

 

만났을 때 인사말
おはよう。(오하요-) 안녕
(아침 인사)
こんにちは。(곤니치와) 안녕,
안녕하세요
(낮 인사)
こんばんは。(곤방와) 안녕,
안녕하세요
(저녁 인사)
헤어질 때 인사말
じゃあね。(쟈-네) 안녕,
잘 가
さようなら。(사요-나라) 안녕히 가세요,
안녕히 계세요
きをつけてね。
(키오추케테네)
조심해서
다녀와

 

すみません。
(수미마센)
죄송합니다. おやすみなさい。
(오야수미나사이)
안녕하 주무세요
いいえ。
(이-에)
아니요. おやすみ。
(오야수미)
잘 자
ってきます。
(잍테키마수)
다녀올게, 다녀오겠습니다 ただいま。
(타다이마)
다녀왔어, 다녀왔습니다
ってらっしゃい。
(잍테랏샤이)
잘 다녀와, 다녀오세요 おかえりなさい。
(오카에리나사이)
다녀오셨어요

 

'----------고2---------- > 일본어' 카테고리의 다른 글

[고2 일본어] 1학기 2차 지필평가  (0) 2024.05.01
[고2 일본어] 연습 문제  (3) 2024.04.24
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerController : MonoBehaviour
{
    Rigidbody2D rb;            // 리디즈바디형 변수
    float axisH = 0.0f;        // 키보드 좌우방향 입력
    public float speed = 3.0f; // 이동속도
    public float jump = 9.0f;  // 점프력

    public LayerMask groundLayer; // 착지할 수 있는 지면 레이어형 변수

    bool goJump = false;   // 점프 개시 플래그
    bool onGround = false; // 지면에 서 있는 플래그

    // 애니메이션처리
    Animator animator;     // 애니메이터 컴포넌트형 변수
    public string stopAnime = "PlayerStop";
    public string moveAnime = "PlayerMove";
    public string jumpAnime = "PlayerJump";
    public string goalAnime = "PlayerGoal";
    public string deadAnime = "PlayerOver";

    string nowAnime = "";
    string oldAnime = "";

    // 게임상태 저장
    // 플레이 하는 중이 아니면 '플레이어 조작' 등의
    // 처리를 하지 않게
    public static string gameState = "playing";


    void Start()
    {
        // 리지드바디 컴포넌트 가져오기
        rb = GetComponent<Rigidbody2D>();
        // 충돌시 회전 금지
        rb.constraints = RigidbodyConstraints2D.FreezeRotation; // rb.freezeRotation = true;

        // 애니메이션 처리
        animator = GetComponent<Animator>();
        nowAnime = stopAnime;
        oldAnime = stopAnime;

        gameState = "playing"; // 게임중(초기화상태)
    }

    // 키보드가 계속 눌렸는지 감지(물리력없음)
    void Update()
    {
        // 게임 상태가 플레이 중이 아니면 즉시 메서드동작을 중단
        if (gameState != "playing")
        {
            return;
        }

        axisH = Input.GetAxisRaw("Horizontal"); // +1, -1, 0 중에 하나
        if (axisH > 0)
        {
            transform.localScale = new Vector2(1, 1);
        }
        else if (axisH < 0)
        {
            transform.localScale = new Vector3(-1, 1); // 좌우반전
        }
        if (Input.GetButtonDown("Jump"))
        {
            Jump();
        }
    }

    // 실제 이동(물리력)
    void FixedUpdate()
    {
        // 게임 상태가 플레이 중이 아니면 즉시 메서드동작을 중단
        if (gameState != "playing")
        {
            return;
        }

        // 착지 판정
        onGround = Physics2D.Linecast(transform.position, transform.position - (transform.up * 0.1f), groundLayer);

        // 지면위에 있을 때(onGround가 참일때) 또는(||) 좌우방향키 눌렸을때 - 좌우이동 가능
        // 지면위에 있으면서 점프키가 눌렸을 때 - 점프가능
        if (onGround || axisH != 0)
        {
            rb.velocity = new Vector2(axisH * speed, rb.velocity.y);
        }
        if (onGround && goJump)
        {
            rb.AddForce(new Vector2(0, jump), ForceMode2D.Impulse);
            goJump = false;
        }
        if (onGround) // 지면위-대기, 이동
        {
            if (axisH == 0)
            {
                nowAnime = stopAnime;
            }
            else
            {
                nowAnime = moveAnime;
            }
        }
        else // 공중에 있을때-점프
        {
            nowAnime = jumpAnime;
        }
        if (nowAnime != oldAnime)
        {
            oldAnime = nowAnime;
            animator.Play(nowAnime);    // 애니메이션 재생
        }
    }

    // 점프
    void Jump()
    {
        goJump = true;
    }

    // 접촉 시작
    void OnTriggerEnter2D(Collider2D collision)
    {
        if (collision.gameObject.tag == "Goal")
        {
            Goal();
        }
        else if (collision.gameObject.tag == "Dead")
        {
            GameOver();
        }
    }


    // 게임클리어일때
    void Goal()
    {
        animator.Play(goalAnime);
        gameState = "gameClear";
        GameStop(); // 게임중지
    }

    // 게임오버일때
    void GameOver()
    {
        animator.Play(deadAnime);
        gameState = "gameOver";
        GameStop(); // 게임중지
        // 게임오버시 동작 추가
        // 데드영역에 닿으면 조금 위로 튀어올랐다가 떨어지기
        // 데드영역 충돌감지 판정을 비활성화하기
        GetComponent<CapsuleCollider2D>().enabled = false;
        rb.AddForce(new Vector2(0, 5), ForceMode2D.Impulse);
    }

    // 게임중지
    void GameStop()
    {
        gameState = "gameEnd";
        Rigidbody2D rb = GetComponent<Rigidbody2D>();
        rb.velocity = new Vector2(0, 0);
    }
}

구조적 프로그래밍 설계

 

1. 구조적 프로그래밍 설계 구조

  1. 순차구조: 프로그램 코드가 위에서 아래로 일직선으로만 실행되는 구조
  2. 선택구조: 분기형 구조로, 주어진 조건 만족 여부에 따라 처리 대상과 순서를 전달하는 구조     //if, if-else
  3. 반복구조: 반복형 구조로, 조건이 만족할 때까지 동작을 반복하는 구조     // while, for

 


 

2. 구조적 프로그래밍 언어 개발 절차

  1. 요구사항 분석: 고객이 원하는 요구사항을 수집하여 명세화하는 단계
  2. 구조적 분석: 고객이 원하는 기능, 시스템 환경, 데이터를 종합하여
            데이터 흐름도(Data Flow Diagram)를 작성하는 단계
            대표적인 기법에는 ERD(Entity Relation Diagram)과 DFD(Data Flow Diagram)가 있음
  3. 구조적 설계: 재활용, 결합도를 낮춰 독립성을 높이는 단계
  4. 구조적 프로그래밍: 순차, 선택, 반복의 논리 구조로 구성하여 프로그램 복잡성을 최소화하여 프로그래밍하는 단계

 

데이터 흐름도 DFD(Data Flow Diagram)

  • 데이터 흐름도 DFD(Data Flow Diagram): 데이터 각 기능을 분할하여 표현한 구조도. 모듈에 대응하여 개발함.
    • 프로세스(Process)
      1. 과 원안의 이름으로 표현하고,
        데이터를 원하는 데이터로 변환하여 출력시키기 위한 과정
      2. 원안의 이름은 프로세스가 수행하는 프로세스
        또는 일을 수행하는 행위자를 기술함
      3. 항상 입력되는 데이터를 입력할 수 있어야함
      4. 자체적으로 데이터 생성 불가능
      5. 항상 새롭게 개발할 수 있는 가치를 부가해야 함
    • 데이터 흐름(Data Flow)
      1. DFD의 구성요소들 간의 인터페이스를 나타냄
      2. 주로 프로세스들 사이를 연결하고,
        데이터 저장소로부터 데이터 흐름을 나타내기도 함
      3. 부여되지 않은 화살표로 표시하거나 명칭을 부여함
        (참조를 위해 명칭 부여를 권장함)
      4. 서로 다른 데이터 흐름에는 같은 이름을 부여하지 않음
    • 데이터 저장소(Data Flow)
      1. 저장되어 있는 정보 집합임
      2. 저장되는 저장소 파일, 때로는 휴지통일 수도 있음
      3. 데이터 변동 표시 X
      4. 데이터 흐름을 표시함으로써 데이터의 입출력을 나타냄
      5. 표기법은 두 개의 직선인 평행선으로 나타내고,
        평행선 안에 명칭을 부여함
    • 외부 엔티티(External Entity)
      1. 액터는 데이터를 생성, 소비함으로써
        데이터 흐름도를 주도하는 활성 객체임
      2. 액터는 데이터 흐름도의 입력과 출력에 붙음
      3. 프로세스 처리 과정의 데이터 발생의 시작 및 종료를 나타냄
      4. DFD 범위 밖에 사각형 형태로 표시함
  • 자료사전 DD(Data Dictionary): 자료나 의미나 자료의 단위 및 값에 대한 사항을 정의하는 도구
  • 상태 전이도 STD(State Transition Diagram): 보통 어떤 상태에서 다른 상태로 변경되는 과정을 작성
  • 소단위 명세 Minispec(Mini Specification): 나눌 수 없는 부분까지 기능을 분리하여 작성한 명세서

 


 

3. DFD 설계 방법

  1. 업무를 분석하여 프로세스에 대한 입출력 데이터 흐름을 식별, 업무의 주변 경계에 표시함
  2. 데이터 흐름에 필요한 외부 엔티티를 정의함
  3. 입력 → 출력, 출력 → 입력, 중간 지점부터의 데이터 흐름을 식별함
  4. 모든 접속 관계 데이터 흐름에 명칭을 부여함
  5. 프로세스에 대해 입출력 데이터 흐름의 명칭에 따라 이름을 부여함
  6. 프로세스에 관련된 데이터 저장소를 정의함
  7. 상위 레벨 DFD 작성 → 하위 레벨의 DFD로 분할하여 최하위 레벨까지 그림
  8. 세분화를 계속하여 최종 데이터 흐름도를 단순한 기능들만으로 그릴 수 있는 단계까지 분할함

 


 

구조적 프로그래밍 언어 활용

 

1. 구조적 프로그래밍 언어: 하나의 프로그램이 구조를 갖도록 만들어 나가는 프로그래밍 방법

  1. 절차식 언어: 위에서 아래로 순서대로 실행되는 방식의 프로그램            // C
  2. 명령어 언어: 필요한 함수를 호출함. 명령은 메인 → 서브프로그램으로 하향식 방식을 이용함     // 파이썬
  3. 함수 중심 언어: 독립적인 행위를 할 수 있는 작은 단위로 나뉘며, 함수를 이용하여 구성함

 


 

2. 구조적 프로그래밍 유형

  1. C 언어: 미국의 벨 연구소, 시스템 소프트웨어 개발 언어, 이식성이 좋음, 시스템의 제어나 자료의 처리를 담당
  2. 파스칼(Pascal): 니클라우스 워드가 개발, 구조적 프로그래밍, 문법이 간결함, 구조적 프로그램 언어로 이용
  3. 에이다(Ada): 장시간 운용 가능한(Long-Lived) 대규모 시스템(System in the Large)을 위한 언어

 


 

3. 주요 구현 언어 문법

  1.  조건문: 명령어 흐름을 제어할 수 있는 역할을 하는 명령어 문장
    • if문: 참(TRUE, 1) 또는 거짓(FALSE, 0)이 나옴
    • if~else문: 다중의 조건을 체크할 수 있음
    • switch문: 정수 값에 해당하는 case 값을 찾아 명령어를 수행하고 종료.
      없다면 deafult 구문을 수행하고 종료.
  2. 반복문
    • for 반복문: 'for (초깃값; 반복 조건식; 증가 또는 감소)', ~번 반복
    • while 반복문: 'while (반복 조건식)', ~까지 반복
    • do-while 반복문: 한 번 작동한 후 ~까지 반복

 


 

객체지향 프로그래밍 설계

 

1. 객체지향 설계 원칙의 이해

  1. 객체지향 속성
    • 캡슐화: 객체의 속성과 행위를 하나로 묶고, 은닉하는 기법
    • 추상화: 공통적인 부분만 하나로 모은 것
    • 다형성: 같은 모양의 함수가 상황에 따라 다르게 동작하는 것
      • 오버로딩: 함수의 매개 변수 숫자, 타입 등을 다르게 해서 사용하는 기법
      • 오버라이딩: 상위 클래스의 메소드를
        하위 클래스에서 똑같은 이름으로 재정의하는 것
    • 정보 은닉: 캡슐화 정보들을 밖에서 접근 불가능하도록 하는 것
    • 상속성: 부모 클래스에서 새로운 기능을 추가해 자식 클래스를 만들어 사용하는 기법
  2. 객체지향 설계 원칙
    • 단일 책임 원칙(Single Responsibility Principle): 클래스는 각각 하나의 책임만 가져야 함
    • 개방-폐쇄 원칙(Open Closed Principle): 확장에는 열려 있고 수정에는 닫혀 있어야 함
    • 리스코프 치환 원칙(Liskov Substitution Principle):
      자식 클래스는 자신의 부모 클래스를 대체할 수 있다는 원칙
    • 인터페이스 분리 원칙(Interface Segregation Principle):
      사용하지 않는 인터페이스는 구현하지 말아야 한다는 원칙
    • 의존 역전 원칙(Dependency Inversion Principle): 변화가 없는 것에 의존해야 한다는 원칙

 


 

2. UML의 이해

  • 유즈케이스 다이어그램: 시스템 개발 과정에서 의사소통이 원활하게 이루어지도록
    표준화한 대표적인 객체지향 모델링 언어
    유스케이스 다이어그램
  • 클래스 다이어그램(Class Diagram): 클래스를 도식화하여 시스템의 특정 모듈이나 구조를 나타냄
    • 속성(Attribute): 보통 명사형으로 표현, 클래스의 멤버 변수로 사용됨
    • 행동(Operation): 다이어그램에서 가장 하단에 위치.
      클래스가 수행할 수 있는 동작을 기술함.
  • 시퀀스 다이어그램: 문제 해결을 위한 객체를 정의.
    객체 간 상호작용 메시지 시퀀스를 시간의 흐름에 따라 나타내는 다이어그램
    시퀀스 다이어그램
    • 활성 객체: 시스템의 행위자 혹은 시스템 내의 유효한 객체 라이프라인(Life Line)을 가짐
    • 메시지(Message): 서로 다른 객체 간의 상호작용 혹은 의사소통 통신을 정의하는 요소.
      선 + 화살표로 표시
    • 활성 박스(Activation Box): 객체 라이프라인 위에 그려지는 박스.
      객체의 정보 처리가 실행된다는 것을 나타냄

 


 

객체지향 프로그래밍 언어 활용

 

1. 객체지향 프로그래밍 언어: 데이터 추상화 → 객체 생성 → 상호작용 로직을 구성하는 프로그래밍 방법

  1. 객체지향 프로그래밍 언어 구성요소: 기본적으로 클래스 구조에서 시작. 클래스의 기본 구성요소는 변수와 메소드.
    • 클래스(Class): 같은 종류의 집단에 속하는 속성과 행위를 정의한 것
      • 일반적으로, 클래스 이름 = 소스 파일명
      • 프로그램은 여러 클래스로 구성됨. 실행을 위해서 main() 메소드 사용
    • 객체(Object): 클래스의 인스턴스(Instance). 자신 고유의 데이터를 가지며 클래스에서 정의한 행위를 수행 가능.
      • main() 메소드는 프로그램이 실행하는 진입점.
        new() 연산을 통해 인스턴스를 생성함.
      • main() 에서 클래스부에 선언된 변수는 인스턴스를 통해 사용함
      • 인스턴스에서 변수와 메소드 사용은
        인스턴스명 다음에 변수명, 메소드명과 같은 형식으로 사용
    • 메소드(Method): 클래스로부터 생성된 객체를 사용하는 방법. 객체에 명령을 내림.
    • 속성(Property): 한 클래스 내에 객체들이 가지고 있는 데이터 값을 단위별로 정의한 것
  2. 접근 지정자
    1. public: 모든 접근을 허용
    2. protected: 자기 자신 클래스 및 상속받은 자식 클래스에서의 접근을 허용
    3. private: 자기 자신 클래스 내부의 메소드만 접근을 허용
    4. default: 명시하지 않은 경우. 같은 패키지라면 접근 가능.

 


 

2. 객체지향 프로그래밍 언어 기본 문법

  1. 데이터 타입: 원시형 자료는 char, boolean, byte, short, int, long.
    비원시 자료형은 원시형 자료형을 묶은 단독의 자료형.

    객체지향 데이터타입
  2. 변수와 메소드: 변수는 데이터를 저장하기 위한 메모리 공간에 대한 이름. 크기를 알아야 필요한 공간 확보 가능.
    • 변수 선언 방법: [접근제어자] 타입 변수명
      • 접근제어자: 변수의 접근 범위를 지정한 것.
        public, private, protected, default 등.
      • 타입: 자료형으로 타입을 지정한 것
    • 변수 유형
      • 멤버 변수(Member Variable): 클래스부에 선언된 변수.
        인스턴스 변수와 클래스 변수로 구분됨.
      • 인스턴스 변수(Instance Variable): 클래스가 인스턴스될 때
        초기화되는 변수. 인스턴스로만 접근 가능.
      • 매개 변수(Parameter): 메소드에 인자로 전달되는 값을 받기 위한 변수.
        메소드 내에서 지역변수처럼 사용.
      • 지역변수(Local Variable): 메소드 내에서 선언된 변수.
        멤버 변수와 동일한 이름 가능. 지역적으로 우선일 때 사용.
      • 클래스 변수(Class Variable): static으로 선언된 변수.
        인스턴스 생성 없이 클래스 이름의 변수명으로 사용 가능.
        main() 메소드에서 참조 가능.
    • 메소드: 특정 객체의 동작이나 행위를 정의한 것.
      '[접근제어자] 리턴 타입 메소드명([인자..]) {    }'
      • 접근제어자: 메소드의 접근 범위를 지정함
      • 리턴 타입: 함수 내에서 결과를 보내는 위치. 리턴이 없다면 void를 사용.
    • 연산자(Operator): 프로그램에서 변수의 값들을 계산하기 위해 사용함
      (대입연산, 사칙연산, 비트연산, 관계연산 등)

 


 

디자인 패턴:  객체지향 프로그래밍 시 문제에 대한 설계 사례를 분석하여 해결하기 위한 방법론

  1. 디자인 패턴 구조
    • 콘텍스트(Context): 문제가 발생하는 여러 상황을 기술
    • 문제(Problem): 패턴이 적용되어 해결될 필요가 있는 여러 디자인 이슈들을 기술
    • 해결(Solution): 문제를 해결하도록 설계를 구성하는 요소들과 책임 관계, 협력 관계를 기술
  2. 디자인 패턴의 종류
    • GoF 디자인 패턴: 23가지의 디자인 패턴이 있고, 구현 방식에 따라
      생성(Creational), 구조(Structural), 행위(Behavioral) 3가지로 분류함.
    • GoF 디자인 패턴의 분류:
생성 패턴 구조 패턴 행위 패턴
Abstract Factory
Builder
Factory Methods
Prototype
Singleton
Adaptor
Bridge
Composite
Decorator
Facade
Flyweight
Proxy
Chain of Responsibillity
Command
Interpreter
Iterpreter
Mediator
Memonto
Observer
State
Strategy
Template Method
Visitor

 


 

스크립트 언어 설계

1. 스크립트 언어(Scripting Language): 응용소프트웨어를 제어하는 컴퓨터 프로그래밍 언어

  1. 스크립트 언어 특징: 최종 사용자가 응용프로그램의 동작을 사용자의 요구에 맞게 수행할 수 있도록 도와줌
    • 인터프린터 언어(=컴파일러 언어): 코드를 작성함과 동시에
      인터프리터가 기계어로 번역하고 실행함
    • 단순한 구문: 타 프로그래밍 언어에 비해 단순한 구문과 의미를 내포함
    • 컴파일 시간 소요: 컴파일된 프로그램보다 실행 시간이 오래 걸림
    • 신속한 활용: 빠르게 배우고 작성하기 위해 고안된 언어기 때문

 


 

2. 기능 설계서와 화면 설계서

  • 기능 설계서: 개발자는 기능 명세서를 보고 전체 구조와 설계를 고려하여 '어떻게'를 개발함
항목 설명
화면 입력 내용 입력 전, 입력 중, 입력 후 상태가 어떻게 되는지 기재됨
버튼 이벤트 내용 비활성화, 활성화, 선택했을 때 액션에 대한 내용이 기재됨
에러 상황 사용자가 올바르지 않은 액션을 했을 때 어떻게 처리할지 기재됨
제한 개수 데이터 제한 개수 설정
외부 액션 데이터를 외부 수단(문자/이메일 등)으로 콘택트하는 시기/상황/메세지를 설계함
로직 내용 데이터가 나열되었을 때 표시되는 로직(추천/최신/인기)을 기재함
  • 화면 설계서: 파워포인트(Powerpoint), 스토리보드(Storyboard), 와이어프레임(Wireframe), 목업(Mockup) 등
    • 와이어프레임: 기획 단계에서 페이지 레이아웃이나 화면 이동,
      구성요소에 대한 내용을 기술한 문서
    • 스토리보드: 와이어프레임의 내용에 디스크립션 등을 포함한 설계 문서
    • 목업: 설계 단계에서 실제 화면과 같은 형태의 모형
  • 프로토타입: 인터렉션(Interaction, 상호작용)이 포함되어 테스트가 가능한 형태
  • UI 디자인: 화면의 모양이나 기능 등을 표현하는 것

 


 

스크립트 언어 활용

1. 스크립트 언어의 유형과 원리

  • 스크립트 프로그래밍 언어 유형
    • JavaScript(자바스크립트): 표준 HTML 문서 내에 삽입됨. 인터랙티브한 웹 페이지를 만들 수 있음
    • jQuery: HTML 문서에 삽입하여 사용할 수 있는 자바스크립트 라이브러리
    • JSP(JavaServer Pages): 코드를 직접 삽입하여 웹 브라우저에서 표현할 수 있도록 전달해줌
    • PHP(Hypertext Preprocessor): HTML 서버 스크립트 프로그래밍 언어.
      MySQL DB 환경에서 주로 같이 사용됨.
    • ASP(Active Server Pages): 윈도 서버에서 운영할 수 있도록 개발된
      스크립트 방식의 웹 프로그래밍 언어
    • Python: 객체지향 스크립트 프로그래밍 언어로 개발 기간이 단축되고 독립적임
    • VBScript: Visual Basic(비주얼베이직) 기반의 스크립트 프로그래밍 언어
  • 스크립트 프로그래밍 원리
    1. 스크립트 코드 작성: 최초 스크립트 코드를 작성함
    2. Byte Code 변환: 스크립트 엔진은 위에서부터 한 줄씩 해석하며
      가상 머신이 이해할 수 있게 변환함
    3. 기계어 변환: 가상 머신은 Byte Code를 CPU가 이해할 수 있는 기계어로 변환함
    4. CPU 코드 변환: CPU는 가상 머신이 만들어낸 기계어를 수행함
자바스크립트 코드

int a = 10;
int b = 20;
function(arg) {
console.log(arg);
}
자바스크립트 엔진 바이트 코드


ADD r0,
[6] LdamSmi [1]
가상머신 기계어

0010 1010
0010 1010
0010 1010
0010 1010
0010 1010
결과물

 


 

2. JavaScript 언어: 객체지향의 프로그래밍 언어로 웹 브라우저에서 주로 사용됨

  • 자바스크립트 구현 예

  • 자바스크립트 작성 방법
    • 자바스크립트는 HTML 문서 내에서 태그를 통해 작성됨
    • 작성되는 위치는 스크립트 태그 영역
    • .js 확장자를 갖는 외부 파일 형태로 작성 가능
      1. 영역 내부의 태그 내부에 자바스크립트 코딩을 작성함
      2. .js 확정자를 갖는 외부 자바스크립트 코드 파일을 생성하고 적용함

 

문학의 기능과 가치

  • 인식적 기능: 독자를 인간과 세계에 대하여 새롭게 이해하도록 이끈다.
  • 윤리적 기능: 독자를 윤리적 성찰로 이끈다.
  • 미적 기능: 독자의 마음에 미적 쾌감을 솟게 하고 독자의 정서를 풍부하게 한다.

 


 

  • 의인법: 사람이 아닌 대상에게 사람의 특성을 부여하는 비유법
            // 비둘기가 날 좋아하는지 날 보고 웃어요
  • 활유법: 무생물을 생물인 것처럼, 감정이 없는 것(무정물)을 감정이 있는 것(유정물)처럼 표현하는 수사법
            // 아침이 날개를 펴다.
  • 중의법: 한 단어에 두 가지 이상의 뜻을 곁들이는 수사법
            // 청산리 별계수야 수이감을 자랑마라
  • 돈호법: 이름을 불러 주의를 불러일으키는 수사법
            // 아희야, 무릉이 어디메오 나는 옌가 하노라
  • 영탄법: 감탄사나 감탄조사를 이용해 감정을 나타내는 수사법
            // 오! 보았는고!
  • 도치법: 말의 차례를 바꿔 쓰는 문장 표현법
            // 나는 달린다, 내일을.
  • 행갈이: 글의 줄을 바꿈
            // 나는 너를 잃어
            // 버렸다.
  • 행간 걸침: 앞 행의 끝 구절이 다음 행에 걸친 시구
            // 나는 나의 시간을 잃어
            // 버렸다 내꿈도

 


 

봄눈 오는 밤

 


 

봄꽃

꽃에게로 다가가면
부드러움에
찔려 - 긍정적 행위

삐거나 부은 마음 - 상처 입은 마음
금세

환해지고 - 치유
선해지니

봄엔
아무
꽃침이라도 맞고 볼 일 - 역설, 마음의 상처를 치유해주는 강한 힘

 


 

1. 제재 정리

갈래 자유시(제약 없는 시), 서정시(개인의 감정을 표현한 시)
제재 봄꽃
주제 아름다운 봄꽃의 힘
해제 이 시는 봄꽃의 부드러움이 가진 힘을 노래하고 있다.
봄꽃은 부드럽고 연약해 보이지만,
사람들의 마음속 상처를 치유하는 힘을 지니고 있음을
'꽃침'이라는 역설적인 비유를 통해 드러내고 있다.

 

2. '꽃'을 '침'에 빗대어 표현한 까닭

: 꽃에는 사람들의 마음을 환하게 하고 선하게 하여, 삐거나 부은 마음을 치유하는 힘이 있다고 생각했기 때문이다.
즉 '꽃'을 '침'에 비유함으로써 부드러운 것, 아름다운 것이 가진 힘을 드러내고자 한 것이다.

 

3. 작품에 사용된 심상과 추상적 대상의 구체화

  • 시각적 심상: 환해지고 / 선해지니
  • 촉각적 심상: 부드러움 / 찔려
  • 추상적 대상의 구체화: 삐거나 부은 마음

 


 

19세

<앞부분의 줄거리>
잘난 형에 대한 열등감으로 가득한 나(정수)는 대관령의 넓은 채소밭을 본 뒤
학교를 그만두고 하루빨리 농사를 짓겠다고 선언한다.

 

1. 제재 정리

갈래 성장소설
성격 자전적(자기 삶을 쓴 소설), 회고적(과거를 되돌아 보는 소설)
주제 한 소년의 꿈과 방황을 통한 성장
시점 1인칭 주인공 시점

 

2. 구성

13세~16세 여러 일을 겪으며 성장한 '나'는 고1 때의 겨울, 학교를 그만두고 농사일을 하겠다는 뜻을 표현함.
17세 (개학 전후) '나'는 학교를 그만두고 농사일을 하겠다는 것에 반대하는 아버지와 갈등함.
아버지는 두 가지 조건을 걸고 '나'가 농사를 짓도록 허락함.
17세 ~ 18세 '나'는 승태를 비롯한 친구들과 협력하여 고랭지 배추 농사를 준비함.
'나'는 운 좋게 풍작을 거두어 큰돈을 벌고, 어른이 된 듯이 행동함.
18세 추수 무렵 '나'는 자신의 행동이 어른 노릇이 아니라 어른놀이였음을 깨달음.
19세 '나'는 두 살 아래 후배들의 동급생이 되어 학교로 돌아감.

 

3. 인물 특성

나(이정수) 자신의 생각을 반드시 관철시키고자 함. 고집이 세고 주관이 뚜렷함.
아버지 농사꾼. '나'가 스스로 자신의 삶을 개척하도록 도와 줌.
공부를 잘하는 모범생. '나'에게 열등감을 느끼게 하는 존재
승태 '나'의 절친한 친구. '나'가 하고자 하는 일을 적극적으로 지지해 줌.
승희 누나 승태의 누나. '나'의 첫사랑

 

※ 그때에도 자기 경제권을 가지고 있는 아이 같은 어른은 그 판에 낄 수 있어도
    어른 같은 아이는 그 판에 낄 수 없는 것이다.

아이 같은 어른: '나'
어른 같은 아이: 형

 


 

'나'와 아버지의 갈등 양상과 해소 과정

'나'
학교를 그만두고
빨리 농사를 짓고자 함.
← 갈등 → 아버지
그 나이 때 하지 않으면
안 되는 일이 있기 때문에 반대함.
<해소>
[허락 조건]
첫 해에 지은 농사가 실패하면
다음해에 다시 학교로 갈 것
아버지가 보내 주는 책들을
다 읽을 것

 

농사짓기 전후에 따른 '나'의 생각 변화

농사를 짓기 전 학교를 그만두고 농사를 지음. 농사를 지은 후
- 빨리 어른이 되고 싶음.
- 농사를 지어 자기 경제권을 가져야
    어른이 된다고 생각함.
- 자신의 나이에 맞는 일을 하지 못하고
    있다는 생각이 듦.
- 자신의 어른 노릇은 어른놀이였음을 깨달음.

 


 

풀 비린내에 대하여

 

1. 제재 정리

갈래 경수필: 일상적 (중수필: 논리적)
성격 일상적, 성찰적, 생태적
주제 지동차를 사용하는 바람직한 태도와 생태주의에 대한 성찰

 

2. '풀 비린내' 사건을 전후하여 자동차에 대한 글쓴이의 인식과 행동의 변화

[자동차에 대한 인식]
나를 어디로든 데려다주는 안락한 공간
[글쓴이의 행동]
처음에는 필요할 때만 자동차를 사용하다가
점점 목적 없이 차를 모는 일이 많아지는 등
자동차라는 감성적 기계에 길들여졌다.
['풀 비린내' 사건]
수많은 풀벌레가 달리는 차체에 부딪혀 죽음.
자동차가 다른 생명체를 해칠 수 있는
도구가 될 수도 있다고 생각하였다.
차를 유지하되 사용을 최소화하고
차를 소유하되 그에 종속되지 않으려 했다.

 

3. '이'와 '개'의 죽음을 소재로 한 고려 시대의 글과 비교하기

갈래 고전수필, 설(사실+의견)
주제 모든 생명은 소중하다.
교훈 생명 존중, 세상 일을 인간의 관점으로만 판단하지 말 것
공통적인 관점 모든 생명이 차별 없이 소중하다는 생태주의의 관점

 


 

쉽게 씌어진 시

 

1. 제재 정리

성격 저항적, 성찰적, 미래지향적
주제 어두운 시대 현실에서 비롯된 고뇌와 자아성찰
특징 상직적 시대 多, 두 자아의 대립과 화해

 

2. 화자의 태도가 달라진 점

1~7연 삶에 대한 반박.
일제강점 하에서 무기력하게 유학 생활을 하는 스스로를 위함,
회의적인 시선으로 봄.
"부끄러움"
8~10연 현실 극복 의지
: 시대의 운명을 수용하되, 절망이나 체념을 하지 않음.
희망찬 미래(광복)를 기다리는 '나'.

 

3. '나'의 자아 성찰

시간: 밤 '나'의 처지: 암울한 시대 현실과 일본 유학하는 상황
공간: 육첩방

 

4. 두 자아의 갈등과 화해

[현실적 자아]
무기력한 '나'
← 갈등 → [내면적(이상적) 자아]
극복하고자 하는 '나'
'밤비', '어둠' '등불', '아침'
자아 성찰: '부끄러움'

 


 

보리타작

 

제재 정리

갈래 한시
성격 사실적, 성찰적
주제 농민들의 건강한 노동과 농민의 이해를 통한 자기 삶의 성찰
특징 일상적 언어 → 생동감, 현장감
감각적 이미지 多

 


 

비 오는 날이면 가리봉동에 가야 한다

 

배경 1980년대 부천 원미동
주제 오해로 인한 타자 와의 갈등과 타자 이해를 통한 화해
특징 실제 공간 → 소시민의 삶을 사실적으로 묘사

 

'임 씨'에 대한 '그'와 '아내'의 태도 변화를 다음과 같이 정리해 보자.

[임씨의 행동] [그와 아내의 태도]
젊은 인부와 함께 목욕탕 배수 공사를 함. 부업으로 하는 일이라 실력도 없으면서
공사는 대충하고 많은 대가를 받아 가려 한다고 생각함.
늦은 시각까지 최선을 다해
옥상 방수 공사를 마무리함.
처음 생각했던 것과는 달리 성실하고 꼼꼼하며 실력이 있다고 생각하지만,
완전히 의심을 풀지는 않고 처음에 산정했던 금액을 다 받기가 민망해서
그렇게 했다고 의심함.
처음 견적서에 적힌 비용보다
훨씬 적은 비용을 청구함.
임 씨가 성실하고 실력과 책임감이 있을 뿐만 아니라 정직한 인물이라는 것을 알고, 처음에 가졌던 자신들의 오해를 부끄럽게 생각함.

'----------고2---------- > 문학' 카테고리의 다른 글

[고2 문학] 1학기 2차 지필평가  (3) 2024.05.01