Today's Dev Notes(2018-11-22) 안녕하세요, Brad입니다. 오늘 수업시간에 다루었던 Q&A를 우선 정리해볼게요. 그런데 수업시간에 다루었던 내용 중 어제 제가 궁금하였던 부분은 그 부분에 정리해놓을게요! Q&A Mustache @index + 1을 어떻게 하면 될까요? Mustache의 Helper를 이용하면 가능합니다. 하지만 너무 복잡하다고 하네요. 또는 {{@index_1}} 을 사용하면 1부터 인덱스가 매겨집니다. HTML 들여쓰기 template engine부분은 들여쓰기 적용하지 않는 것이 좋습니다. 보여지는 화면으로 봤을 때 template engine때문에 하나 더 들여쓰면 그 질서가 깨지기 때문입니다. 삭제 구현시 기준점 삭제 구현을 할 때 어떤 데이터(예를들어 u..
Today's Dev Notes(2018-11-21) 안녕하세요, Brad입니다. 어제부터 로그인 기반 구현하는 부분을 계속 진행했었는데요. 여러가지 경우의 수(예를들어 비정상적인 경로로 들어왔을 때)를 고려하다보니 여러 예외처리를 고려해야했고 자연스럽게 코드가 길어지고, 리팩토링 하는 방법을 고민하다보니 시간을 많이 보냈던 것 같아요. 포비가 했던 결국은 '자바'라는 말을 자연스럽게 깨닫게 되네요! 기능을 아는 것은 그것으로 끝나지만 설계에 대한 고민은 명확한 답이란 없으니까요. 그럼 오늘 했던 고민들을 적어볼게요. 고민 부분 댓글 처리 댓글에서 Name속성은 어디서 가져와야할까요? model에 넣어줄 때 그곳에서 해야할까요? 결국은 question안에 FK로 User가 담겨져 있었고 Mustache ..
programmers 단어 변환 이 문제는 어제부터 시작했었는데요. 테스트 케이스 5개 중 1개가 계속 틀려서 결국 해결하지 못하고 오늘로 넘겼던 문제입니다. 틀린 이유를 여러가지로 생각해봤었는데요. 참 허무하지만 저의 이해의 부족으로 틀렸던 것이더라구요. 그럼 어떤 과정으로 해결해왔는지 간략하게 정리해보겠습니다. 맨 처음에는 BFS(너비 우선 탐색)으로 접근하였는데요. 맨 처음 제출하여 틀린 소스코드는 다음과 같습니다. class Solution { public int solution(String begin, String target, String[] words) { List wordList = Arrays.asList(words); boolean[] visit = new boolean[wordList..
Today's Algorithm(2018-10-19) programmers 네트워크 깊이/너비 우선 탐색으로 풀 수 있는 문제 중 가장 간단한 형태의 문제 중 하나가 아닐까 생각합니다. 한마디로 연결되어 있는 네트워크의 개수를 구하라는 것이죠. 모두가 이어져 있으면 1개, 만약 모두 연결되어 있지 않으면 n이 반환되는 것입니다. 이 경우 '깊이 우선 탐색', '너비 우선 탐색' 모두 사용 가능한데요. 저는 Queue를 이용한 '너비 우선 탐색'을 이용하였습니다. 대략적인 풀이 방법은 다음과 같습니다. n개의 반복문을 돌면서 방문하지 않은 컴퓨터를 하나 고릅니다. 방문하지 않은 컴퓨터를 큐에 넣고 방문 표시 및 네트워크 개수를 +1 증감합니다. 이 큐가 비워질 때까지 반복합니다. 그 반복문 안에서 우선 큐..
Today's Dev Notes(2018-11-19) 안녕하세요, Brad입니다. 오늘은 '로그인 기반 개발'에 대하여 배웠는데요. 그 이전에 미션 진행간 각자 모르는 것들에 대한 질문이 있었습니다. 우선 그 부분부터 정리해보죠. 절대경로 / 상대경로의 차이는 뭔가요? 절대경로는 전체 경로를 /(루트)부터 full로 적어주는 것을 의미하고, 상대경로는 현재 경로를 바탕으로 ..(상위로 이동) 또는 .(현재경로) 을 이용하여 경로를 설정하는 것을 말합니다. 상대경로는 현재 경로에 따라 제 각기 설정해줘야 하는 단점때문에 현업에서는 절대경로를 많이 쓴다고 합니다! /로 시작하면 절대 경로라고 이해하면 될까요? 네! 그렇게 이해하면 됩니다. css는 '/' 바로 밑에 위치하나요? 파일 탐색은 static경로의..
Today's Dev Notes(2018-11-18) 안녕하세요, Brad입니다. 오늘은 주말은 맞아 지난주에 배웠던 qna미션 step2까지 혼자서 만들어보는 연습을 해봤는데요. 혼자 진행하면서 잘 생각이 안났던 부분, 참고했던 부분에 대해 정리해볼게요. step2까지의 처음부터 혼자 힘으로 해보기 html 중복제거 base.html에서는 {{# block "contents"}} {{/ block}}와 같이 'block' 키워드가 사용되어야 하며, 해당 컨텐츠 부분 html에서는 {{# partial "contents"}} {{/ partial}}와 같이 'partial' 키워드가 사용되어야 합니다(키워드 혼동 주의!) templates폴더 안에서 해당 html Mapping하기 MvcConfig 클래..