분류 전체보기 193

2장 화면 설계-(1) UI 요구사항 확인

1. UI와 UX의 개념 - UI는 User Interface의 약자로 사용자와 시스템 사이에서 의사소통 할 수 있도록 고안된 물리적 가상의 매게체인데 쉽게 말해 기기나 SW의 화면에서 사용자가 접하는 화면이다. - UX는 User Experience의 약자로 제품과 시스템, 서비스를 사용자가 직/간접적으로 경험하며 느끼고 생각하는 총체적 경험을 의미하는데, UX는 UI를 포함하고 있다. 2) UI의 유형 UI의 유형에는 크게 4가지가 있는데, CLI, GUI, NUI, OCI가 있다. CLI는 Command Line Interface의 약자로 명령어를 텍스트로 입력해 조작하는 사용자 인터페이스이다. GUI는 Graphical User Interface의 약자로 그래픽 환경을 기반으로 해 마우스나 전자펜..

정보처리기사 - 1장 요구사항 확인(현행 시스템 분석)

현행 시스템 파악 정의 : 현행 시스템 파악은 현행 시스템이 어떤 하위 시스템으로 구성되어 있고, 제공 기능 및 연계 정보, 기술 요소 등을 사용하는지 파악하는 활동 1) 소프트웨어 아키텍쳐 4+1 뷰 고객의 요구사항을 정리해 놓은 시나리오를 4개의 관점에서 바라보는 소프트웨어 적인 접근 방법으로 각 구조는 아키텍처 개념을 제시하고, 4개의 구조의 충돌 유무 및 시스템의 요구사항을 충족시키는지 확인하기 위해 유스케이스를 사용한다. 4개의 뷰와 이 4뷰를 검증하기 위한 유스케이스 뷰를 4+1이라고 표현하며 4개의 뷰는 (논리, 프로세스, 구현, 배포)로 구성되어 있다. 논리 뷰(Logical View)는 설계자와 개발자 관점에서 시스템의 기능적 요구사항이 어떻게 제공되는지를 설명해주는 뷰 프로세스 뷰(Pr..

정보처리기사 - 1장 요구사항 확인(소프트웨어 개발 방법론)

해당 내용은 2022 정보처리기사 수제비 실기책을 참고해 작성한 내용입니다. 1. 소프트웨어 개발 방법론 1) 소프트웨어 생명주기 ( SDLC : Software Developement Life Cycle) : 요구분석부터 유지보수까지 전 공정을 체계화한 절차로 시스템 개발의 운용과 유지보수를 거쳐 생애를 마칠 때까지 밟는 순서에 대한 작업 프로세스를 모델화 한 것이다. 이 생명주기의 모델에는 4가지가 있는데, 폭포수(waterfall) 모델, 프로토타이핑(prototyping) 모델, 나선형(spiral) 모델, 반복적(iteration) 모델이 있다. 1) 폭포수 모델(Waterfall Model)은 개발 시 단계를 완료한 후에 다음 단계로 넘어가는 모델로 가장 오래된 모델이다. 선형 순차적 모델으로..

Repository와 Service

공부를 하던 도중 궁금한 점이 생겼다. 우리가 DB와 관련된 작업을 하기 위해선 Repository와 Service를 만들어야하는데, 다른 사람들이 작성한 코드를 보면 기능을 Repository에서 구현하기도 하고, Service에서 구현하기도 하는데, 왜 이렇게 구분하는지가 궁금했다. (기존에 나는 service에서 구현) 김영한 님이 말하길 DB에 접근하는 코드는 Respository에 위임하고, Service 패키지에는 비즈니스 로직과 관련된 코드를 위임하는데, 이렇게 구분해두면 비즈니스 로직및 관련 부분에 오류가 발생하면 Service를 확인하고, DB 접근과 관련된 문제가 발생하면 Repository를 확인하면 된다고 한다. 서비스에서 DB계층을 연결하려고 하면 Repository라는 저장소를 ..

스프링/백엔드 2022.06.12

자료형과 BigDecimal 그리고 소수점(부동, 고정)

자료형 언어마다 다양한 변수의 타입을 지원하며, 값의 범위와 종류는 다르다. 기본 자료형과 참조 자료형으로 나눌 수 있는데 다음과 같다 기본 자료형 (8) = boolean, char, byte, short, int, long, float, doule 참조 자료형 = 기본 자료형을 제외한 나머지 타입(클래스, 인터페이스, 배열, 열거 타입) 기본 자료형은 실제 값을 저장하고, 참조 자료형은 값이 저장되어 있는 주소를 저장한다. 그래서 기본 자료형은 스택 메모리에 저장되며 비 객체 타입이라 null 값을 가질 수 없고, (만약 null 값을 넣고 싶다면 Wrapper Class를 활용해야 한다.) 자료형의 길이가 불변이다. 하지만 참조 자료형은 Null 값을 가질 수 있으며, new를 이용해 생성하는 모든..

Language/Java 2022.05.22

String 과 JVM

1. String 객체의 생성(new , "")과 메모리 속 저장 String은 Java에서 가장 많이 사용하는 클래스라고 해도 과언이 아니다. String의 생성자는 매우 많아서 다 외우는 것보다 필요에 의해 찾아서 사용하는 편이 더 좋다. 일반적으로 Java에서 이 String 객체를 생성하는 2가지 방법이 있다. 1. String literal인 큰 따옴표("")를 사용하는 것. 예시 : String name = "symbol" 2. new 연산자를 이용하는 것. 예시 : String name = new String("symbol") 소스 코드를 직접 작성해서 실행해보면 의문점이 생길 수 있다. 과연 1번과 2번을 통해 생성한 객체에 동일한 문자열을 주고 같다, 다르다를 출력해보면 어떻게 나올까? ..

Language/Java 2022.05.22

로깅 간단히 알아보기

서비스를 개발하고 테스트를 할 때, 그 로직이 잘 동작하는지를 확인하는 방법은 다양하다. 그 중에서 나는 보통 출력문 하나를 넣어서 잘 출력이 되는지를 확인하고는 했는데, 이러한 방식은 실무에서 사용하지 않고 사용을 권장하지 않는다. 그래서 출력문이 아닌 별도의 로깅 라이브러리를 사용해 로그를 출력하는데, 이 로깅 라이브러리의 종류가 매우 많다. 그래서 몇 개의 예시를 통해 정리해보고자 한다. @RestController public class LogTestController { // 이 코드는 로그를 선언하는 방법이다. private final Logger log = LoggerFactory.getLogger(getClass()); // 5번라인의 로그 선언 방법 외에도 아래 2개의 방법이 있다. pr..

스프링/백엔드 2022.05.18

예외 처리(Exception)

예외(Exception) 1. 예외(Exceptipn)란? 실생활이나 혹은 코드를 작성하거나, 서비스를 운영할 때 우리가 예상치 못한 방향으로 흘러갈 수 있다. 결국 이러한 예외를 우리가 직접 처리를 해야하는데, 자바에서는 예외(Exception)이라는 것을 던져버린다. 예외는 내부적 혹은 외부적 문제로 인해 발생하는 오류이다. 예외가 발생되면 프로그램은 종료된다는 점에서 에러와 동일하나, 예외는 예외 처리를 통해 프로그램을 종료하지 않고 계속 동작시킬 수 있다. 예시로 null인 객체에 메소드를 호출하거나, 5칸 짜리 배열이 있는데, 6번째 인덱스 값을 출력하라던지 등이 여기에 포함된다. 자바를 맛 본 사람이라면 대충 어떤 방식으로 예외 처리가 진행되는지 알 것이다. = try - catch 다음과 같..

Language/Java 2022.05.15

인터페이스와 추상클래스 그리고 Enum

1. 인터페이스(interface)란? 한 클래스가 다양한 클래스를 상속받아 다양한 기능을 사용하면 얼마나 좋을까? 하지만 다중 상속을 자바에서는 지원하지 않는다. 그래서 자바에서는 인터페이스를 이용해 다중 상속을 지원하고 있는데, 인터페이스(interface)는 클래스와 달리 객체를 생성할 수 없는, 클래스에서 구현해야하는 일종의 작업 명세서이다. 다른 클래스를 작성할 때 기본이 되는 틀을 제공하면서, 클래스 사이의 중간 매개 역할까지 담당하는 일종의 추상클래스이다. (인터페이스와 상속은 엄연하게 다름!) 상속이 부모 클래스의 기능을 자식 클래스가 물려 받는 것이라고 한다면, 인터페이스는 하위 클래스에 특정한 메소드가 반드시 존재하도록 강제한다. 일반적으로 인터페이스는 이렇게 구현한다. (추가적으로 인..

Language/Java 2022.05.14

2022 제 1회 정보처리기사 실기 시험을 끝내며...

중간고사 기간, 중간고사가 끝나도 쉴 틈이 없었다.... 왜?? why??? 바로 대망의 정보처리기사 실기 시험이 '나'를 기다리고 있었기 때문이다. 중간고사가 끝나고 하던 스터디도 중단하고 실기에 온전한 집중을 쏟았다... '수제비' 라는 책을 통해 실기고사를 준비했고, 수제비 카페와 파이널 모의고사, 인터넷 기출문제 등 하루도 쉬지않고 달려왔다 결과가 나와봐야 알겠지만 불합격이지 않을까 싶다 기출을 돌리고, 수제비 카페의 데일리 문제를 풀고, 페코페코 문제, 파이널 모의고사 등 기출과 예상문제, 개념을 계속 돌려보며 쉽게 외우려고 나만의 정리 노트와 요약본을 위주로 외웠다. 한 문제라도 더 맞추려고, 시험 전날은 날을 새워가며 디자인 패턴과 총 정리본을 반복해서 암기 할 수 있도록 노력했다. 과 동기..

자격증 2022.05.10