영어타자가 350타가 넘었다!! 처음에는 100타 정도 나왔었는데ㅋㅋㅋㅋ

의외인건 한글 타자보다 영타가 더 빠르다는 것이다...!

한글타자가 더 느리게 느껴지는 거라고 생각했는데 너무 차이가 난다..

다음에는 한타가 300타 넘게 나오게하고 영타도 360타를 목표를 해봐야겠다! 

DOM(문서 객체 모델)  //트리 구조

  • HTML과 XML 문서에 대한 구조적 정보를 제공하는 양식.
  • 웹 문서(HTML)의 모든 요소를 객체 형식으로 표현한 것->문서 내 특정 요소에 접근하는 방법을 제공
  • 문서 구조나 외양 및 내용을 바꿀 수 있도록 프로그램에서 접근할 수 있는 방법을 제공
  • 자바스크립트를 이용하여 웹 문서에 접근하고 제어할 수 있도록 객체를 사용해 웹 문서를 체계적으로 정리하는 방법
  • 웹 문서를 하나의 객체로 정의, 모든 요소를 '객체'로 인식하고 처리
  • 요소 노드, 텍스트 노드, 속성 노드, 주석노드

트리(계층구조)

노드, 루트, 부모노드, 자식 노드, 형제 노드

 

id선택자로 접근하는 getElementById()메서드//id 빼고 다 element에 s

요소명.getElementById("id명"): 유일값

요소명.querySeletor("css선택자"(#))

요소명.querySeletorAll(): 원소 여러개

class 값으로 접근하는 getElementsByClassName() 메서드

태그 이름으로 접근하는 getElementsByTagName() 메서드

다양한 방법으로 접근하는 querySelector(),querySeletorAll()

노드.querySeletor(선택자)

노드.querySeletorAll(선택자 또는 태그)

 

웹 요소의 내용을 수정하는 innerText, innerHTML

요소명.innerText = 내용//설정

요소명.innerHTML=내용

 

속성을 가져오거나 수정하는 getAttribute(), setAttribute()

getAttribute("속성명")

setAttribute("속성명", "값")

&nbsp: 줄바꿈 없는 공백

 

addEventListener()메서드

요소.addEventListener(이벤트, 함수, 캡처여부);

 

텍스트 노드를 사용하는 새로운 요소 추가하기

1.요소 노드 만들기-createElement()

document.createElement(노드명)

2.텍스트 노드 만들기 - createTextNode()

document.createTextNode(텍스트);

3.자식 노드 연결하기-appendChild()

부모노드.appendChile(자식노드)

document.getElementById("createBtn").addEventListener("click", function(){
        let newItem=document.createElement("li");
        let subject = document.querySelector("#subject");
        let newText = document.createTextNode(subject.value);
        newItem.appendChild(newText);

        let itemList = document.querySelector("#itemList");
        itemList.appendChild(newItem);

        subject.value="";
    })

*기본틀

 document.getElementById().addEventListener("",function(){

    })

parentNode 프로퍼티

노드.parentNode

removeChild()

부모노드,removeChild(자식노드)

 

jQuery는 빠르고 작고 기능이 풍부한 JavaScript라이브러리

 jQuery 라이브러리는 .js 확장자로 작성

 

'HTML+CSS+자바스크립트' 카테고리의 다른 글

jQuery 동적으로 요소 생성하기  (0) 2023.06.12
객체  (0) 2023.06.02
객체  (0) 2023.05.31
함수, 이벤트  (0) 2023.05.30
Js변수  (0) 2023.05.26

객체: 객체에 포함된 데이터 하나를 가리켜 객체의 프로퍼티라고 부른다. 

  • Object()생성자: 권장하지 않음, 코드가 간결한 객체 리터럴을 사용
  • 객체 리터럴: let member = {name: "홍길동", email: "javauser1234@naver.com"}; //=이 아니라 (:)콜론, 프로퍼티들은 쉼표(,)로 구분-프로퍼티 접근: 프로퍼티 값에는 모든 데이터 타입의 값과 표현식을 대입할 수 있다. 변수에 대입된 객체 안의 프로퍼티 값을 읽거나 쓸 때는 마침표(.) 또는 대괄호([]), 객체에 없는 프로퍼티를 읽으려소 하면 undefined, 객체 리터럴 안에 어떠한 프로퍼티도 작성하지 않으면 빈 객체 생성
  • 생성자 함수: 첫글자 대문자 ex) function Hobby
  • ES6의 클래스

자바스크립트는 prototype 기반 언어이다.

객체를 원형(prototype) 형재로 생성, 그 안에 기능을 위한 함수나 변수를 추가

prototype 기반 언어에서의 객체 생성 과정

빈 객체의 생성 아무런 기능이 없는 상태의 빈 객체를 생성
변수(필드)의 추가 빈 객체 안에 변수들을 추가해 넣는다.
함수(메서드)의 추가 빈 객체 안에 함수들을 추가해 놓는다.

JSON(Javascript Object Notation): 텍스트-기반의 경량의 데이터교환형식, 구분형식은 Javascript를 따르지만 언어로부터 완전히 독립적이기 때문에 서로 다른 프로그래밍 언어 간에 데이터 교환하기 위해 현재 가장 널리 사용되는 표기법

자바스크립트에서는 JSON이 두가지 측면으로 사용

자바스크립트의 문법으로 사용

json 자체가 하나의 데이터로서 사용

json의 특징

javascript를 기반으로 만들어졌으며 특정 언어에 종속되지 않는 완벽한 독립적인 텍스트 형식을 가지고 있다.

json 객체의 데이터는 이름(key)/값(value)의 쌍으로 구성{ }

기본형식: let 객체명 = {이름: 값, 이름: 값, 이름:값 };

(with 키워드) 객체명을 with로 선언하고 코드를 줄여준다.

let view = "";

with(info){

view+="이름:"+name;

...

}

json에 배열 데이터 할당하기

let 객체명 = {이름:값, 이름:["값1", "값2", "값n"], 이름: 값};

할당된 데이터에 접근하기 위해서는 "객체명.이름[인덱스]"로 접근

json을 포함하는 json 

let 객체명 = {

하위객체명:{이름:값, 이름:값},

하위객체명:{이름:값, 이름:값},

하위객체명:{이름:값, 이름:값}

};

json 데이터의 하위 제이터로 접근하고자 할 경우는 .을 통하여 계층을 표현한다.//반복 불가능

객체명.하위객체명.값의이름

json을 포함하는 배열//반복가능

let 객체명 = [

하위 객체명 : [

{이름: 값, 이름:값},

{이름: 값, 이름:값},

{이름: 값, 이름:값}

]

};

json 데이터의 하위 데이터로 접근하고자 할 경우는.을 통하여 계층을 표현한다.

객체명.하위객체명[index].값의이름

json을 포함하는 배열

parse() : String 객체를 JSON으로 변환해 준다.

stringify() : JSON 객체를 String으로 변환해 준다.

 

'HTML+CSS+자바스크립트' 카테고리의 다른 글

jQuery 동적으로 요소 생성하기  (0) 2023.06.12
DOM  (0) 2023.06.05
객체  (0) 2023.05.31
함수, 이벤트  (0) 2023.05.30
Js변수  (0) 2023.05.26

form 객체

input, select, textarea, button.. 사용자에게 입력을 받기 위한 용도로 사용되는 HTML 태그

정규식: 특정한 규칙을 가진 문자열의 집합

다시 정규 표현식을 정리하면 다음과 같습니다. 정규 표현식(Regular Expression) 특정한 규칙을 가진 문자열 집합을 표현하는데 사용하는 형식 언어
정규 표현식을 이용하면 입력된 문자열에 대한 특정 조건 검색, 일치 여부 판단, 치환에 대한  조건문을 간단히 처리할 수 있다.

정의 방법

1.RegExp 객체를 이용한 생성

let 객체명= new RegExp ('정규 표현식' [, 'flag'])

2.정규 표현식 리터럴을 이용한 생성

let 객체명 = /정규표현식/

g: Global-문자열 내의 모든 패턴을 찾아준다. 

test() 메서드는 정규 표현식 문자열이 일치하는지 뜻하는 논리값을 반환

"문자".match(pattern) 메소드: 첫번째 받은 정규 표현식과 일치하는 문자열을 순서대로 저장해서 배열로 반환한다. 일치하는 값이 존재하지 않으면 null을 반환한다.

 

[]

[^]

{}

()

|

정규 표현식의 메타 문자 문자열의 패턴을 나타내는 문자열 문자마다 지정된 특별한 뜻이 담겨있다. a (일반문자열) : 문자열 내에 a라는 문자열이 존재하는지 검색 [abcd] : 문자열 내에 a,b,c,d 중에 하나라도 일치하는 문자가 있는지 검색 ^(캐럿) : 문자열의 시작을 의미 $ : 문자열의 끝을 의미 \w (word, 단어) : 아무 글자 (단, 띄어쓰기, 특수문자, 한글 X) \d (digit, 숫자) : 아무 숫자(0~9 중 하나) \s (space, 공간) : 아무 공백 문자(띄어쓰기, 엔터, 탭 등) [0-9] : 0부터 9까지 모든 숫자 [ㄱ-힣] : ㄱ부터 힣까지 모든 한글 [a-z] : 모든 영어 소문자 [A-Z] : 모든 영어 대문자 * 특수문자의 경우 각각을 입력하는 방법밖엔 없음   단, 메타문자와 중복되는 특수문자는   앞에 \(백슬래시)를 추가하여 escape로 만들어 사용 * 수량 관련 메타 문자 a{5} : a문자가 5개 존재 == aaaaa a{2,5} : a가 2개 이상 5개 이하 == aa, aaa, aaaa, aaaaa a{2,} : a가 2개 이상 * : 0개 이상 == 0번 이상 반복 == 있어도 되고, 없어도 되고 + : 1개 이상 == 1번 이상 반복 ? : 0개 또는 1개 . : 1칸 (개행문자를 제외한 문자 하나)

 

Date 객체: 자바스크립트에서 날짜와 시간을 다루는데 사용되는 객체

컴퓨터의 시간과 날짜를 알아낼 수 있고, 특정 날짜 정보를 저장해 놓을 수도 있다. 

let 객체명 = new Date();

let 객체명 = new Date(년, 월-1, 일);

getFullYear(), getMonth(), getTime()(날짜간격), getDay(),...

 

브라우저와 관련된 객체: 웹 브라우저와 관련된 모든 객체들의 집합

window, document, navigator, history, location, screen

 

브라우저의 창 제어 기능

toolbar, location, status, menubar, scrollbars, resizable, width, height

window.close(): 창 닫기

document 객체: HTML 문서의 구조나 내용을 제어하기 위한 기본 기능을 갖고 있다.

 

 

'HTML+CSS+자바스크립트' 카테고리의 다른 글

DOM  (0) 2023.06.05
객체  (0) 2023.06.02
함수, 이벤트  (0) 2023.05.30
Js변수  (0) 2023.05.26
자바스크립트  (0) 2023.05.25

함수

  • 동작해야할 목적대로 명령을 묶어 좋은것
  • 각 명령의 시작과 끝을 명확하게 구별할 수 있음
  • 묶은 기능에 이름을 붙여서 어디서든 같은 이름으로 명령을 실향할 수 있음
  • 자바스크립트에는 이미 여러 함수가 만들어져 있어서 가져다 사용할 수 있음 (alert)

매개변수와 인수, return문

익명함수, 즉시 실행 함수, 화살표 함수

 

이벤트: 동작, 행위>>브라우저에서의 동작, 행위: click, keydown, keyup, mouseover, drag, submit, change,...

이벤트 리스너: 이벤트가 발생하는 것을 대기하고 있다가 이벤트가 발생하는 것이 감지되면 연결된 기능(함수) 수행

이벤트 핸들러(이벤트 처리기): 이벤트가 발생했을 때 처리하는 함수

이벤트가 발생한 HTML 태그에 이벤트 처리기를 직접 연결

<태그 on이벤트명 = "함수명">

 

인라인 이벤트 모델: 요소 내부에 이벤트를 작성

window.onload

내장 객체의 제공: 모든 웹 브라구저 개발사들이 공통 기능의 필요성을 인지하고, 사정네 객체명과 함수(메서드)들을 통일하여 구현한 뒤, 브라두저 안에 내장시켜 놓았다.

브라우저를 제어하기 위한 내장 객체(BOM)

window, location,history, navigator, screen

HTML 요소를 제어하기 위한 내장 객체

document, image, form

'HTML+CSS+자바스크립트' 카테고리의 다른 글

객체  (0) 2023.06.02
객체  (0) 2023.05.31
Js변수  (0) 2023.05.26
자바스크립트  (0) 2023.05.25
CSS고급 선택자  (0) 2023.05.24

-객체지향, 애자일 방법론, 정렬 알고리즘, SQL, 데이터베이스 정규화 등

 

1과목 소프트웨어 설계: 애자일 소프트웨어, 스크럼, 객체지향기법, UI 설계도구, UML 다이어그램, 클래스 설계원칙, GoF(Gangs of Four)디자인 패턴

 

1과목 소프트웨어 설계

애자일(Agile)

  • 기만하다, 재빠르다, 민첩하다
  • 옛날 방식의 일처리->유연하게
  • 원칙-'가볍지만 충분한'
- +
프로세스와 도구 개인과의 상호작용
문서화 제대로 동작하는 소프트웨어의 개발에 집중
고객과의 계약 협상 고객과의 협력

애자일 방법론 유형- 애자일을 실천하기 위한 도구

XP(eXtreme Programming) 스크럼(SCRUM)
-의사소통 개선과 즉각적 피드백
-5가지 가치
용기(고객의 요구사항에 대응하는)
단순성(가장 효율적인 코딩)
의사소통(고객과 개발자)
피드백(빠른 의사결정)
존중
-프로젝트 관리를 위한 상호, 점진적 개발방법론
-XP와 달리 진행 체계 수립, 역할, 정의에 중점
-기존 폭포수 모델이나 프로토타이핑같은 모델과 달리 모든 LifeCycle을 담지 않는다.
-5가지 가치- 확약, 전념, 정직, 존중, 용기

스크럼

  • Product Owner(PO): 제품 책임자, 제품에 대한 요구사항 즉 백로그를 작성하는 주체
  • Scrum Master(SM): 스크럼팀의 스크럼이 잘 수행될 수 있도록 도와주는 역할. 객관적으로 도와주고 문제해결
  • 백로그: 요구사항 리스트
  • 제품 백로그: 전체 기간 동안 개발할 백로그
  • 스프린트: 애자일은 짧은 기간 동안에 동작하는 SW를 사용자에게 제공하면서 피드백을 받고 수정한다. "짧은 기간(1주~4주)"에 해당(xp는 더 짧음 1주~2주)
  • 속도(Velocity): 한 번의 스프린트에서 한 팀이 어느정도의 제품 백로그를 감당할 수 있는지에 대한 추정치로 볼 수 있다.

스토리보드

  • 어떤일을 어떤 순서에 의해서 해야할지

목업(내가 HTML CSS 화면 짤때 했던것)

  • 디자인, 사용방법설명, 평가 등을 위해 실제 화면과 유사하게 반든 정적인 형태의 모형
  • 시각적으로만 구성 요소를 배치하는 것으로 일반적으로 실제로 구현되지는 않음

프로토타입

  • 실제 구현된것처럼 테스트가 가능한 동적인 형태의 모형

유스케이스

 

2과목 소프트웨어 개발

단위 테스트, 스텁, 드라이버, 스텍, 큐, 정형 기술 검토(FTR)의 지침, 소프트웨어 재공학(Analysis, Migration, Restructuring, Reverse ngineering), 소프트웨어 패키징, 화이트박스 테스트, Selection Sort, Bubble Sort, Quick Sort

소프트웨어 품질 관련 국제 표준 ISO/IEC25000

 

정형 기술검토 FTR(Formal Technical Review): S/W 개발 산출물 대상 요구사항 일치여부, 표준 준수 및 결함 발생여부를 검토하는 정적 분석기법, 프로젝트 이해관계자들이 모여 프로젝트 산출물의 오류 발견 및 고객의 요구사항과 품질을 만족하는지 검토하는 품질보증기법

  • 검토될 제픔에 대한 체크 리스트를 개발
  • 자원과 시간 일정을 할당
  • 문제 영역을 명확히 표현하고 의제를 제한
  • 제품의 검토에만 집중
  • 검토의 과정과 결과를 재검토
  • 논쟁과 반박을 제한
  • 참가자의 수를 제한
  • 사전 준비를 강요하고 사전에 작성한 메모들을 공유
  • 모든 검토자들을 위해 의미있는 훈련을 진행
  • 해결책이나 개선책에 대해서 논하지 않음
품질표준/인증 설명
ISO/IEC 9126 품질 특성과 측정 기준 제시
(기능성/ 신뢰성/ 사용성/ 효율성/ 유지보수성/ 이식성)
평가 방법이 없음
ISO/IEC 14598 소프트웨어 제품 평가
(표준개요/ 측정계획관리/개발자/ 획득자/ 평가자/ 평가모델)

ISO/IEC 12119 정보기술, 패키지 소프트웨어 대한 품질 요수사항 및 시험을 위한 국제 표준
(제품 설명서, 사용자 문서, 실행 프로그램)
ISO/IEC 25000 소프트웨어 품질평가 모델인 ISO/IEC 9126와 소프트웨어 평가절차 모델 ISO/IEC 14598,ISO/IEC 12119를 통합
System and Software Quality Requirements and Evaluation으로 줄여서 SQuaRE라고도 한다.

2500n: 품질 관리 부분

2501n: 품질 모델 부분

2502n: 품질 측정 부분

2503n: 품질 요구사항 부분

2504n: 품질 평가 부분

 

5과목 정보 시스템 구축 관리

소프트웨어 생명주기 모델, DoS(Denial of Service)공격, Secure코딩, 테일러링, DES, AES, 취약점 관리

 

리눅스: UMASK

  • 모든 파일과 디렉터리-소유권, 권한 존재
  • 소유권-소유자(Owner), 소유 그룹(Group), 기타 사용자(Other)로 분류
  • 권한-읽기(Read), 쓰기(Write), 실행(Execute)
  • UMASK-소유권에 대한 권한을 지정해 주는 것, 권한 허가 X, 권한 제한 O 기능
  • 파일의 최대 권한은 666, 디렉터리는 777
wtmp 성공한 로그인/로그아웃 정보를 담고 있는 로그파일
btmp 실패한 로그인 시도에 대한 기록을 담고 있는 파일
utmp 현재 로그인 사용자 상태 정보를 담고 있는 로그파일

3과목 데이터 베이스 구축

SELECT, DML, DCL, DDL, 무결성, 논리적 설계/ 물리적 설계, E-R Diagram, Locking, View, 정규화/반정규화

 

SQL "Distinct", "Count"

selet from 전부다

selete DISTINCT from 중복없이 한 개씩

count는 개수

 

1. DDL(Data Define Language, 데이터 정의어)

  • CREATE
  • ALETER
  • DROP

2.DML(Data Manipulation Language, 데이터 조작어)

  • SELETE
  • INSERT
  • UPDATE
  • DELETE

3,DCL(Data Control Language, 데이터 제어어)

  • COMMIT
  • ROLLBACK
  • GRANT
  • REVOKE

정규화 반정규화

 

4과목 프로그래밍 언어 활용

결한도/응집도, TCP/IP, IPv6, 변수명, paging/segmentation, 프로그래밍 언어(Java, C, Python), Subnet mask 21년 2회 기출문제 풀이 66번 참조

 

+ Recent posts