donghs1541의 등록된 링크

 donghs1541로 등록된 네이버 블로그 포스트 수는 11건입니다.

자바 스프링 + 코딩테스트 고찰 [내부링크]

최근 인프런을 통해 강의를 계속 접하면서 자바스프링에 대한 지식을 쌓고 있다. 사실 프로젝트들을 대학생활, 경진대회에서 경험하면서 느낀 것인데 내가 DB, 언어, 서버 등을 구현하고 실제로 프로젝트를 만들어봤지만 정확히 어떠한 디자인패턴을 사용하고 이게 왜 좋은지? (객체지향프로그래밍)을 대충 알고 있었지만 강의를 들으면서 이해할 수 있었다. 이 글을 얼마나 볼지는 모르겠으나 인프런의 김영한님의 java spring 강의를 정말 추천한다. 일단 그 유명한 배민 개발리더에 계시면서 강의를 만드시다 보니 자바 스프링의 지식도 지식이지만 실무적인 기술들을 많이 접할 수 있었다. 아직 강의를 다 듣진 않았지만 정말 좋은 것 같다. .......

프로그래머스 완주하지 못한 선수 Level 1 [내부링크]

문제 Programmers 완주하지 못한 선수 (Level 1) https://programmers.co.kr/learn/courses/30/lessons/42576?language=python3 문제 해석 및 풀이 방법 1. completion내에 있는 리스트와 participant의 리스트를 비교해서 없는 리스트를 추출하면 그게 정답이다. 2. 주의할 점은 동명이인이 있음으로 무작정 for문돌린다고 안될 것 같다. 3. 그래서 해시테이블 구조인 딕셔너리(java로치면 hashmap)을 이용하여 서로 비교후 일치하지 않는 값을 뺴네 정답으로 추출한다. 내가 작성한 소스코드 먼저 빈 딕셔너리를 2개 생성 후 예외처리를 통해 키값이 없으면 생성해주고 있으면 값을 +1해준다. 그 후 2개의 딕셔너리의 키값을 통해 비교 후.......

정적 웹, 동적 웹 특징 [내부링크]

인터넷의 웹사이트들은 크게 두 가지 분류로 나뉜다. 정적 웹페이지, 동적 웹페이지이다. 정적 웹 정적 웹은 말 그대로 움직이지 않는 언제 접속해도 같은 리소스를 건네주는 웹사이트를 말한다. 예를 들자면 정적 웹사이트에 접속하면 서버는 마치 진열대에 놓인 상품처럼 이미 프로그래머들이 작성해 놓은 파일들을 그대로 클라이언트의 브라우저에 건내준다 물론 계속 변하는 시간 , 주사위 또는 서버에 직접 추가요청을해서 받아오는 기능들이 있기도하다. 이 것들은 모두 JavaScript로 구현한다. 이러한 정적 웹페이지는 회사의 소개글, 또는 이력서 등 처럼 웹페이지에서 변경내용이 거의 없거나 없을때 사용한다. 동적 웹 동적웹은 정적 웹.......

서울 스타트업 회사 인턴십 면접 탈락. [내부링크]

최근 ict인턴십이라는 학교에서 학점 연계로 진행하는 인턴십이 있어 서울 여의도에 있는 스타트업 한곳에 지원하게 됐었다. 면접에서는 처음에는 코딩테스트를 쳤었는데 거기에 대한 질문 (링크드리스트 중복 확인방법에 대한 코드),(후위순환을 통한 값 충족) 그리고 내 프로젝트 경험 및 거기에 관한 기술 질문 마지막으로는 회사에서 원하는 인재상등을 물어봤다 (갈등시 방법, 웹페이지 경험, 성격 등) 면접에서 답변은 잘했다고 생각했고 면접 분위기도 매우 좋았었다. 그런데 면접 후 발표가 났는데 탈락했다. 정말 감사하게도 면접 코멘트를 해주셨다. 그 코멘트가 나는 백엔드업무에 지원을 했었는데 "새로운 도전에 대한 열의와 성.......

MVC와 템플릿 엔진 [내부링크]

MVC : Model, View, Controller https://developer.mozilla.org/ko/docs/Glossary/MVC 이 것을 참고하자면 MVC(모델-뷰-컨트롤러)는 사용자 인터페이스, 데이터 및 논리 제어를 구현하는데 널리 사용되는 소프트웨어 "디자인 패턴"이다. 사실 정보처리기사를 따면서 디자인 패턴에 대해 겉핥기 식으로 알았는데 싱글톤, MVC등 자바를 공부하다 보니 더 상세히 이게 이랬구나를 아는 것 같다. 그래서 다음과 같이 설명하자면 Model : 데이터와 비지니스 로직을 관리한다. View : 레이아웃과 화면을 처리한다 Controller: 명령을 모델과 뷰 부분으로 라우팅한다. 인프런의 김영한님의 강의에서 다시 요약하자면 뷰: 화면을 그리는데 모든.......

스프링 빈(Spring Bean) [내부링크]

스프링 빈은 Spring IOC 컨테이너가 관리하는 자바 객체를 Bean이라고 부른다. spring bean을 IoC(Inversion of Control)에 등록하는 방법은 크게 두가지로 나뉜다 1. annotation을 이용한 방법(@Service , @repository, @Controller 등) 2. 빈 설정파일에 직접 등록하는 방법 내가 지금 공부하고 있는 스프링(김영한)강의 에서는 둘다 하는 방법을 알고 있어야 한다고 한다. 앞서 IoC, DI(의존성 주입) 이라는 개념을 숙지하고 이 것에 대한 것을 알고 있어야 한다 해서 글을 쓴다. 아마 이 글을 보시는 분은 IOC와 DI가 무엇인지 한번 숙지해보고 오길 바란다. 1. annotation을 이용한 방법 스프링에서 컨테이너를 등록할때 컴포넌트와 관련된.......

MVC패턴 및 POST, GET 방식에 관한 고찰 [내부링크]

김영한님의 Spring강의를 듣는 와중 POST, GET 방식에 관한 지식들을 배우고 실습해보았다. 또 앞서 공부하고 실습중인 MVC패턴에 대해 공부하면서 느꼈는데 이거 생각해보니 대학시절 소프트웨어공학설계시간에 배우고 프로젝트로 진행한 Entity, Control, Boundary가 아닌가?라고 생각했다. 찾아보니 둘은 매우 유사했고 나는 학교에서 배운게 이렇게 쓰였구나를 느낄 수 있었다. 다시 복습하자면 MVC패턴은 디자인패턴 중 하나이고 Model, View, Contorller로 나누어진다 Model은 Entity와 같은역할을 한다.(비지니스 로직 처리) View는 Boundary와 유사하고 인터페이스 역할을 한다(사용자가 보는 부분) Controller는 Control과 유사하고 명.......

JPA(Spring-Data-JPA) [내부링크]

이번에는 JPA에 대해 알아보자 이 기술은 Spring에 국한된게 아니고 java전체에 이용이 가능하다. 그전에 앞서 JDBC라는 것을 간단히 알아보자. JDBC 먼저 JDBC는 JAVA에서 DB에 접근하고, SQL을 날릴 수 있게 해주는 자바의 표준API이다. DriverManager를 이용하여 각 드라이버들을 로딩 ,해제한다 JDBC의 흐름은 JDBC 드라이버 로드 -> DB 연결 -> DB에 데이터를 읽거나 쓰기 -> DB 연결 종료이다. 그리고 드라이버를 로드 할 때는 각 데이터베이스마다 써야할 명령문이 다르기 때문에 유의 해야한다. 이게 JDBC의 코드의 예시다 현재 Spring Boot를 이용중여서 스프링 부트가 데이터베이스에 대해 어느정도 관리 해주기 때문에 getCo.......

AOP( Aspect Oriented Programming), 관점 지향 프로그래밍 이란? [내부링크]

AOP란? AOP는 애플리케이션 전체에 걸쳐 사용되는 기능을 재사용하도록 지원한다. 그럼 AOP는 언제 사용해야 할까? 예를 들어서 모든 메소드의 호출 시간을 측정한다고 가정해보자. 그러면 메소드마다 이런 식의 방법으로 하나하나 시간을 재서 호출 시간을 볼 수 있다. 하지만 이런 메소드가 10000개 100000개가 된다면 하나하나 다치다가 정년을 마칠 수도 있을 것이다. 거기다가 유지보수를 할때 매우 불편하다. 시간을 측정하는 요소는 사실 핵심 비지니스 로직도 아니고 또 핵심 비지니스 로직과 섞여버려서 보기도 불편하고 변경을 할 때도 모든 로직을 찾아가야한다. 이러한 문제점을 해결해주는 것이 바로 AOP이다. 간단히 살명하자면 공.......

코딩테스트 프로그래머스 체육복 Level 1 [내부링크]

문제 Programmers 체육복 (Level 1) https://programmers.co.kr/learn/courses/30/lessons/42862?language=python3 문제 해석 및 풀이 방법 1. 체육복은 바로 옆 사람에게 줄 수 있다. reserve값 +- 1 == lost 값과 같을때만 줄 수 있다. 2. 또 자기자신에게 줄 수 있다. 자기 자신도 도둑이 훔쳐갈 수 있기 때문에. reserve == lost 일때 3. 그래서 결론적으로 lost 내의 값을 지우고 그 후 수업을 듣는 학생과 뺴려고 했다. n-len(lost)(결과) 내가 작성한 소스코드 결론 솔직히 이 문제를 보자말자 바로 느낌이 와서 정말 30초만에 코드를 짰었다. 그런데 계속 2~3개가 실패가 나는 것이였다. 처음 코드에는 중복제.......

첫 개발 블로그 개설 [내부링크]

첫 블로그를 개설해 보았다. 나만의 일기처럼 쓸 수 있는 공간이 필요하기도 하고 요즘 대학교4학년 1학기가 끝나고 취업자리를 알아보는 중. 포트폴리오를 어떻게 구성하면 좋을까에 대해 고민하다 블로그와 github를 개설하게 되었다. 사실 이전에 만들 프로젝트들과 경력아닌 경력들을 보관해 두었지만 이것을 인터넷에 올려서 정리하면 나 또 그리고 타인이 보기에도 편할 것 같다. 앞으로 내가 개발자로서 배워가며 얻는 지식과 성과들을 저장해보겠다.