목요일 [스터디모임_cu..]_API 만들기 수행_fail_추후 기약
- 소프트웨어공학수업 (6주 차) end
- 시스템 프로그래밍 (6주 차) end
- 자료구조 (6주 차) 1교시 수강
- 인프런 javascript 102강 중 2강 수강 (10분/829분)
1. 소프트 웨어 공학 수업 수강 [3/3] (어제 2/3 수강)
º 인터페이스의 구현 분리
인터페이스란? 공개된 메소드(함수)의 프로토타입(정보시스템의 미완성 버전 또는 중요한 기능들이 포함되어있는 시스템의 초기 모델)만을 정의해 놓은 것
º 단일 책임의 원칙
좋은 설계란 모듈의 응집도를 높이고, 결합도를 낮추는 설계
단일 책임의 원칙은 _클래스 한 가지에 한가지 책임(기능)을 갖도록 설계, _만일 클래스에 두 개의 책임이 존재하면 두개의 클래스로 분리하여 변경
º 개방 폐쇄의 원칙
확장(상속)에서는 열려 있어야 하고, 변경에는 닫혀 있어야 한다. -> 추상 클래스와 구체 클래스를 분리해야 함
변경에는 왜 닫혀있어야 하는지 = 특정 하위 클래스가 상위 클래스에 있는 공통의 기본 기능을 변경 및 간섭 금지
º 리스코프 교체의 원칙
기반 클래스는 파생 클래스로 대체할 수 있어야 한다. / 파생 클래스(신버전)에서 기반 클래스의 모든 메소드(구버전)를 지원하지 않으면 상속의 기본인 IS-A {포함} 관계가 성립이 안됨
- 인터페이스 분리의 원칙 클라이언트는 자신이 사용하지 않는 메서드와 의존 관계를 맺으면 안 된다.
º 의존 관계 역전의 원칙
-클라이언트는 구체 클래스가 아닌 추상 클래스(인터페이스)에 의존해야 한다.
º 전통적인 매트릭_(크기, 복잡도, 결합도, 응집도, 정보흐름)
º 객체지향 매트릭
복잡도 설계 매트릭 클래스 당 가중 매소드(WMC)
상속 트리의 깊이(DIT)
자식 노드의 개수(NOC)
클래스 사이의 결합(CBO)
클래스의 책임(RFC)
메소드의 응집 결핍(LCOM)
2. 시스템 프로그래밍 수강 [3/3]
º 스택 프레임 구조와 레지스터
스텍 프레임 구조(함수 내에 선언된 변수)
기존에 선언된 지역변수 접근 불가
SP 레지스터(스택 위치 기억을 위한 CPU 내 SP reg)
함수 호출_변수 증가 시 sp 레지스터 값 증가
함수 종료_선언된 변수 반환 레지스터 증가 값은 자료형에 따라 증감
º 함수 호출 인자의 전달 방식
함수 호출 방식 = 입력에 대한 출력 반환 값 존재
프로시저(SQL server에서 제공하는 프로그래밍 기능) 호출 = 입력에 대한 출력 반환값 X
인자의 전달 방식 CPU 제조사 표준에 따라 다름(지역 변수와 같이 스택에 할당)
스택에 저장되는 정보_지역변수, 전달 인자 값, 스택 프레임
º PUSH와 POP 명령어
º 메모리 구조와 프로그램 카운터
º 함수 호출과 함수 종료
º 함수 호출 규약
º 멀티 프로세스 기반 프로그램
º 메모리 구조 관점에서 본 프로세스와 쓰레드
º 커널 레벨 쓰레드와 유저 레벨
쓰레드 ; 멀티 프로그램 자체의 문제를 최소화하려 하면 저장하고 복원을 최소화, 조합
3. 자료구조 수강
º 스택 1
- stack - 쌓아놓은 더미 = 먼저 들어간 곳이 나중에 나감(후입 선출 LIFP: Last-in-First-Out) a.k.a 밑이 막혀있는 항아리
stack top-입출력이 이루어지는 부분 / stack bottom- 바닥 부분 / element- 스택에 저장되는 데이터/ empty stack- 스택에 요소가 없는.
스택 생성_create()::=
비어있는지 검사_is_empty(s)::=
가득 찾는지 검사_is_full(s)::=
push(s, e)::= 스택 맨 위에 요소에 e를 추가 = 올린 다음에 저장( ↑ -> ← )
pop(s)::= 스택의 맨 위에 있는 요소 삭제 = 삭제하고 숫자 하나
peek(s) ::= 스택의 맨 위에 있는 요소를 삭제하지 않고 반환한다.
스택의 용도_입력과 역순의 출력이 필요한 경우에 적합함 ex) 에디터에서 되돌리기(undo) 기능, 함수 호출에서 복귀 주소를 기억할 때(순환)_피보나치수열
배열로 구현한 스택(_int타입 1차원 배열 stack [MAX_STACK_SIZE] 필요)
top변수 : 스택에서 가장 최근에 입력된 자료를 가리키는 변수
stack [0] : 가장 먼저 들어온 요소 / stack [top] : 가장 최근에 들어온 요소 / 공백상태 : top-n
초기화 함수 init()
TIP : 구조체 포인터가 s인 경우 기존 top을 s-> top으로 변경/ stack배열도 s-> stack로 변경
4. javascript 강의
º msBox - 구글 스프레드시트가 갖고 있는 기능 中 표시하는 대화상자 // 경고창(alert)은 브라우저가 갖고있는 기능
º Google Apps Script = 여러 분야에서 사용할 수 있음
º 프로그래밍 언어-> 약속을 익히고, 문법을 익히는 것
º 환경이란? js는 탈 웹브라우저, 탈웹으로 다양한 분야에서 사용되고 있기에 분리해서 사용
언어를 사용하는 대상 _ 웹브라우저(alert), node.js(write), SreadSheet(msgBox)
script 안쪽에 기재
tomorrow wish list
. 17시 전까지 script 5개 내외 수강
. 자료구조 6주 차 3교시까지 수강
. js consoel use
'IT To do and To was' 카테고리의 다른 글
21년 12월 22일_데이터베이스, 디지털 공학개론, youtube강의 수강 (0) | 2021.12.22 |
---|---|
21년 12월 21일_비트센터 방문, 컴퓨터시스템 수강 (0) | 2021.12.21 |
21년 12월 20월_git, 깃허브 설치(할머니집 방문), 소스코드 깃의 올릴 경우 참고자료 (0) | 2021.12.20 |
21년 12월 18일_정보통신개론 수강, js script 강의 수강, 개발자를 하고자하는 이유+) (0) | 2021.12.18 |
21년 12월 17일_js수업 수강 및 자료구조 강의 수강 (0) | 2021.12.18 |