정보처리기사(개념정리) - 4과목 프로그래밍 언어 활용
·
이론공부/정보처리기사 필기
□ 서브넷 ☆☆☆☆☆서브넷 마스크 구하기표준 서브넷 마스크□ □ □. □ □ □. □ □ □. □ □ □ 이렇게 IP주소가 있을 때 A~C클래스는 각 단이 255로 채워지는거다ex) A클래스 표준 서브넷 마스크 = 255.0.0.0, C클래스 표준 서브넷 마스크 = 255. 255. 255. 0서브넷 마스크 구하기ex) 203.76.25.1/26의 서브넷 마스크 값은?26자리를 네트워크ID로 사용한다는 의미이다 앞 24자리가 모두 1이고 마지막 주소의 앞 2자리가 1이다11000000(2) = 192 값이 서브넷 마스크 값이 된다.ex)IPv4의 C클래스 네트워크를 26개의 서브넷으로 나눈다면 서브넷 마스크 값은?255.255.255.xxx에서 마지막 주소값에서 □ □ □ □ □ □ □ □ 8자리중첫번째..
정보처리기사(개념정리) - 3과목 데이터베이스 구축
·
이론공부/정보처리기사 필기
□ 정규화 ☆☆☆☆☆도부이결다조(도메인 → 부분 → 이행 → 결정자 → 다치 → 조인)1NF(제1정규형) - 도메인 원자성모든 도메인이 원자값만 가져야함중첩된 테이블, 반복 그룹 제거2NF(제2정규형) - 부분적 함수 존속 제거1NF를 만족하면서, 기본키(복합키일 때만)의 일부분에만 종속된 속성 제거부분 함수 종속 제거3NF(제3정규형) - 이행적 함수 종속 제거2NF를 만족하면서, 이행적 함수 종속 제거ex) A → B, B → C, A → C인 경우, C는 B를 통해 A에 종속되므로 제거 대상BCNF(보이스 - 코드 정규형) - 결정자 → 후보키3NF를 만족하면서, 모든 함수 종속에서 결정자가 반드시 후보키더 엄격한 3NF종속성 보존이 안될 수 있음4NF(제4정규형) - 다치 종속 제거3NF + 다..
정보처리기사(개념정리) - 2과목 소프트 웨어 개발
·
이론공부/정보처리기사 필기
□ 정렬 알고리즘 시간 복잡도 ☆☆☆☆☆평균 O(n²) : 선삽버평균 O(n log n) : 퀵힙병 정렬 알고리즘 최선 (Best) 평균 (Average) 최악 (Worst) 선택 정렬O(n²)O(n²)O(n²)삽입 정렬O(n)O(n²)O(n²) 버블 정렬 O(n²) O(n²) O(n²)쉘 정렬O(n)O(n^1.5)O(n²)퀵 정렬O(n log n)O(n log n)O(n²)힙 정렬O(n log n)O(n log n)O(n log n)병합 정렬O(n log n)O(n log n)O(n log n)버킷 정렬O(d·n)O(d·n)O(d·n)□ 테스트 ☆☆☆☆☆테스트 유형 분류테스트 목적 : 회복, 안전, 강도, 성능, 구조, 회귀, 병행테스트 기반 : 명세기반, 구조기반, 경험기반테스트 하네스 도구테..
정보처리기사(개념정리) - 1과목 소프트 웨어 설계
·
이론공부/정보처리기사 필기
□ 애자일(Agile)기법 ☆☆☆☆☆XP(eXtreme Programming)스크럼 : Sprint(짧은 단위 기간)동안 개발, 매일 Daily Scurm을 통해 진행상황 공유FDD(Feature-Driven Development) : 기능 중심 개발, 기능 단위로 계획 → 설계 → 개발 → 검증 반복크리스탈 : 사람 중심의 경량 프로세스린(Lean) : 낭비를 줄이고 효율성을 극대화하여 빠르고 품질 높은 소프트웨어 개발7가지 원칙 : 낭비제거, 학습 강화, 의사 결정 지연, 빠른 전달, 권한 위임, 전체 최적화, 품질 내재화□ 익스트림 프로그래밍(XP) ☆☆☆☆☆익스트림 프로그래밍(XP, eXtreme Programming)은 애자일(Agile) 방법론의 대표적인 반복적·적응형(Iterative & A..
Thymeleaf - 변수(SpringEL)
·
Java & Spring/Thymeleaf
□ Controller@GetMapping("/variable") public String variable(Model model) { User userA = new User("userA", 10); User userB = new User("userB", 20); ArrayList list = new ArrayList(); list.add(userA); list.add(userB); HashMap map = new HashMap(); map.put("userA", userA); map.put("userB", userB); model.addAttribute("user", userA); ..
Thymeleaf - text, utext
·
Java & Spring/Thymeleaf
□ text- th:text="${data}"HTML 컨텐츠에 데이터를 출력th:text 사용 - [[${data}]]HTML 컨텐츠 안에서 직접 데이터 출력(태그 속성 X)컨텐츠 안에서 직접 출력하기 = [[${data}]] □ utext : 텍스트를 이스케이프 처리하지 않음- th:utext="${data}"th:utext = - [(${data})][(...)] = [(${data})] - 페이지 예시 @GetMapping("/text-unescaped") public String textUnescaped(Model model) { model.addAttribute("data", "Hello Spring!"); return "basic/text-unescape..
스프링 MVC - 기본기능
·
Java & Spring/Spring
□ HTTP 요청 파라미터※ 참고사항@ModelAttribute 생략 가능String, int 같은 단순 타입 = @RequestParamargument resolver 로 지정해둔 타입 외 = @ModelAttribute- @RequestParamHTTP 요청 파라미터(query string 또는 form data)를 메서드 파라미터에 바인딩할 때 사용.단일 파라미터나 간단한 자료형에 주로 사용됨.@GetMapping("/hello")public String hello(@RequestParam String name) { return "Hello " + name;} - @ModelAttribute폼 객체나 커맨드 객체처럼, 파라미터가 객체일 경우 사용.요청 파라미터들을 객체의 필드에 바인딩함 (자동..
스프링 MVC - 구조 분석
·
Java & Spring/Spring
□ 동작순서핸들러 매핑으로 핸들러 조회핸들러 어댑터 조회핸들러 어댑터 실행□ 핸들러 매핑0 = RequestMappingHandlerMapping : 애노테이션 기반의 컨트롤러인 @RequestMapping에서 사용1 = BeanNameHandlerMapping : 스프링 빈의 이름으로 핸들러를 찾는다.□ 핸들러 어댑터0 = RequestMappingHandlerAdapter : 애노테이션 기반의 컨트롤러인 @RequestMapping에서 사용1 = HttpRequestHandler Adapter : HttpRequestHandler 처리2 = SimpelControllerHandlerAdapter : Controller 인터페이스 처리□ 뷰 리졸버1 = BeanNameViewResolver : 빈 이름..
스프링 MVC - 멀티 쓰레드
·
Java & Spring/Spring
□ 쓰레드애플리케이션 코드를 하나하나 순차적으로 실행하는 것은 쓰레드자바 메인 메서드를 처음 실행하면 main이라는 이름의 쓰레드가 실행쓰레드가 없다면 자바 애플리케이션 실행이 불가능쓰레는 한번에 하나의 코드 라인만 수행동시 처리가 필요하면 쓰레드를 추가로 생성- 요청 마다 쓰레드 생성장점동시 요청을 처리리소스가 허용할 때 까지 처리가능하나의 쓰레드가 지연 되어도, 나머지 쓰레드는 정상 동작단점쓰레드 생성 비용은 매우 비쌈요청 마다 쓰레드를 생성하면 응답 속도가 늦어짐쓰레드는 컨텍스트 스위칭 비용이 발생쓰레드 생성에 재한이 없기 떄문에 요청이 너무 많이 오게 되면 임계점을 넘어 서버가 죽을 수 있음- 쓰레드 풀특징필요한 쓰레드를 쓰레드 풀에 보관하고 관리쓰레드 풀에 생성 가능한 쓰레드의 최대치를 관리, ..
스프링 MVC - 웹 애플리케이션의 이해
·
Java & Spring/Spring
□ 웹 서버(Web Server)HTTP 기반으로 동작정적 리소스 제공정적파일 HTML, CSS, JS, 이미지, 영상ex) NGINX, APACHE□ 웹 애플리케이션 서버(WAS - Web Application Server)HTTP 기반으로 동작웹 서버 기능 포함 + 정적 리소스 제공 가능프로그램 코드를 실행해서 애플리케이션 로직 수행동적 HTML, HTTP API(JSON)서블릿, JSP, 스프링 MVCex) Tomcat, Jetty, Undertow□ 서블릿(Servelet)서버 TCP/IP 연결 대기, 소켓 연결HTTP 요청 메세지를 파싱해서 읽기POST 방식, /save URL 인지Content-Type 확인HTTP 메세지 바디내용 파싱저장 프로세스 실행비즈니스 로직 실행HTTP 응답 메세지 생..