2022/07 8

Chapter 06. 스프링 MVC(Model-View-Controller)

6.1 스프링 MVC(Model-View-Controller) 전체 구조 소개 6.1-1 스프링 MVC 소개 - 스프링 MVC는 현 시점 국내 IT 서비스 실무에서 가장 많이 활용되는 웹 개발 기술이다. - 웹 개발 기술 변화: HTML(HyperText Markup Language) -> CGI(Common Gatewat Interface) -> Servlet -> Spring MVC -> (미래에는 무엇이 쓰일까?) - 스프링 MVC는 오랫동안 사용되고 있다. - MVC란 소프트웨어 디자인 패턴을 뜻한다. - MVC의 등장: 스파게티처럼 엉켜있는 코드가 MVC, SRP(단일 책임 원칙)과 함께 깔끔하게 정리된다. - MVC를 성공적으로 사용하면 사용자 인터페이스로부터 비즈니스 로직을 분리하여 애플리케..

2022-07-27 [8회차] 알고리즘 스터디

1. 카카오 프렌즈 컬러링북 - lv 2 출처 https://school.programmers.co.kr/learn/courses/30/lessons/1829 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr MySol) 9.1ms - 전형적인 DFS알고리즘 문제이다. import java.util.Arrays; // 프로그래머스 컬러링북 - DFS public class Test1 { static int[][] Direction = {{-1, 0}, {1, 0}, {0, -1}, {0, 1}}; static boolean[][] Visited; static..

[스쿨선발대] 백엔드 스쿨 7월 수강후기

1. Part1 통과 소감 매주 코딩테스트, 컴퓨터과학 퀴즈를 준비하고 진도에 맞춰 수업을 듣느라 시간이 모자랐습니다. 커리큘럼 상에는 매주 30~40시간 분량의 강의를 들어야한다고 되어 있지만 그 외에 강의 복습, 테스트 리뷰를 하다보면 생각보다 스케줄이 빡빡합니다. 백엔드 스쿨 2기 수강생 중에는 직장인, 대학생, 육아와 공부를 병행하시는 분들까지 바쁘신 분들이 꽤 많습니다. 그에 비하면 저는 시간적으로 여유롭지만 그럼에도 불구하고 시간이 부족했습니다. 제가 컴퓨터 전공이 아니다보니 더 힘들었습니다. 그래도 커리큘럼에 맞춰 충실히 공부하면 하루하루 뿌듯하고 나중에는 저한테 많이 도움이 될 것이라 생각하기 때문에 버틸 수 있었습니다. 맨 처음에 제로베이스 백엔드 스쿨 (2기) 개강했을 때(5/9)는 슬..

2022-07-20 [7회차] 알고리즘 스터디

1. 파티 - 골드 3 출처 https://www.acmicpc.net/problem/1238 1238번: 파티 첫째 줄에 N(1 ≤ N ≤ 1,000), M(1 ≤ M ≤ 10,000), X가 공백으로 구분되어 입력된다. 두 번째 줄부터 M+1번째 줄까지 i번째 도로의 시작점, 끝점, 그리고 이 도로를 지나는데 필요한 소요시간 Ti가 들어 www.acmicpc.net Sol) 스터디원 코드 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Arrays; import java.util.Comparator; import java.util.PriorityQueue..

Chapter 03. 자바에서 스프링으로

3.1 실습 프로젝트 소개 - 편의점 결제 서비스 프로그램 - 스프링 부트 앱을 아주 쉽게 만들어 준다. -> 최근에는 maven보다는 gradle을 많이 쓰는 추세이다. =====================인텔리제이 얼티밋 설치======================= - 인텔리제이 얼티밋 깔고 실행시킨 화면 package com.ran.convpay; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class ConvpayApplication { public static void m..

Chapter 02. OOP(Object Oriented Pragramming)와 스프링 프레임워크

1.OOP(Object Oriented Pragramming, 객체 지향 프로그래밍)를 하는 이유 cf) 구들의 모든 서비스의 코드 라인 수는 ? 20억 줄...(2015년 기준) - 이렇게 많은 양을 어떻게 관리할까? (OOP를 잘 하는 방법) 1) 분류 - 코드를 적절히 잘 분류해야한다. 2) 교체 - 특정 모듈을 통째로 변경해야할 수도 있다. - 따라서, OOP는 소프트웨어를 말랑하게 유지하기 위한 것이라고 볼 수 있다. 2. OOP를 잘 하는 방법 - OOP는 데이터(상태, field)와 로직(행위, methods)이 응집되서 상호 교류하면서 동작하도록 만드는 프로그래밍 기법을 말한다. -> OOP를 잘하는 방법 - 분류, 교체 SOLID 원칙 SRP(Singli Responsibility Pri..

[백준][프로그래머스] 다이나믹 프로그래밍

1. 등굣길 - lv 3 출처 https://school.programmers.co.kr/learn/courses/30/lessons/42898 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Sol) // 프로그래머스 - 등굣길 import java.util.Arrays; public class Practice2 { public static int solution(int m, int n, int[][] puddles) { int mod = 1000000007; int[][] board = new int[n + 1][m + 1]; for(int i = 0;..

2022-06-29 [5회차] 알고리즘 스터디

1. 색종이 만들기 - 실버 2 출처: 백준 2630번 https://www.acmicpc.net/problem/2630 2630번: 색종이 만들기 첫째 줄에는 전체 종이의 한 변의 길이 N이 주어져 있다. N은 2, 4, 8, 16, 32, 64, 128 중 하나이다. 색종이의 각 가로줄의 정사각형칸들의 색이 윗줄부터 차례로 둘째 줄부터 마지막 줄까지 주어진다. www.acmicpc.net MySol) - while문으로 작성하려 해서 결국 못 풀었다. - 재귀함수, 백트래킹을 이용해서 풀어야한다. Sol) 스터디원 코드 - 종이를 자를지 말지 결정한다. - 재귀함수 인덱스 두 가지를 넘긴다. - 두 번째 방법: cut2() -> gap은 간격의 길이 -> boolean cutFlag: 잘라야 하는지 ..