본문 바로가기

전체 글192

[Spring Boot] 스프링 부트 : 초기 개발환경 설정 및 프로젝트 빠르게 생성하기 Eclipse를 사용하게 되면 자체 Spring Starter Project를 이용하면 쉽게 설정이 가능하지만, 인텔리제이 커뮤니티 버전을 사용하다 보면 해당 설정을 일일이 지정해줘야 한다. 인텔리제이 Ultimate 버전에는 spring initializr가 포함 되어 있지만, Community 에서는 그 역시 불가능하다. 그렇기에 웹 상에서 spring initializr를 설정 하면 보다 빠르게 생성을 할 수 있다. https://start.spring.io/ 위의 해당 사이트에서 접속하여 Dependecies를 설정을 미리 해주면 Gradle로 일일이 주입을 안해줘도 된다. 2021. 3. 21.
[Windows] 윈도우에서 Git 업데이트 명령어(CLI) 윈도우에서 Git을 GUI 방식으로 업데이트 하는 것보다 CLI 방식이 있나 찾아보다 알게 되었다. $ git update-git-for-windows 상세설명) 기타 환경 설정 포함 참고 Git, 설치 및 업데이트(Windows) - BELLSTONE 1. Git Git은 컴퓨터 파일의 변경사항을 추적하여 여려명의 사용자 사이에서 작업을 효율적으로 처리하기 위한 분산 버전 관리 시스템입니다. 소프트웨어 개발에서 소스 코드 관리에서 주로 사용 park-jongseok.github.io 2021. 3. 21.
[programmers] 프로그래머스 Level1 체육복 (파이썬 Python) [programmers] 프로그래머스 Level1 체육복 (파이썬 Python) * 문제출처 : 프로그래머스 코딩 테스트 연습, 알고리즘 문제 1) 문제 프로그래머스 체육복 파이썬 코딩테스트 연습 - 체육복 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번 programmers.co.kr 2) 코드 1) 그리디 풀이 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 def solution(n, lost, reserve): answer = n - len(lost) re.. 2021. 3. 21.
보안에 대한 최소한의 관심을 가지게 된 배경 : 본인의 아이디는 안전 합니까? 예전 보안에 대해 무지했을 때, 나의 아이디를 내 의지와 상관없이 누군가 블로그를 운영을 하고 있었던 것을 알게 되었다. 뿐만 아니라 타 사이트에서 정보 유출건으로 인해 내 개인정보가 내 의지와 상관없이 유출이 된적도 있었다. 이렇게 내 관리 부주의로 인해 발생한 경우도 있지만, 타 사이트의 부주의로 인해 발생한 경우도 있다. 이러한 경험을 바탕으로 내가 할 수 있는 최소한의 방안은 무엇일까? 를 생각해보게 되었다. 자연스럽게 보안에 조금씩 관심을 가지게 되었다. 전문적인 지식을 갖추는게 가장 이상적이 겠지만 이상은 이상일뿐 내가 현실에서 나를 지킬 수 있는 수단은 최소한의 보안 지식을 갖추는게 중요하다고 생각한다. 본인이 할 수 있는 최소한의 준비는 해놓아야 한다. (결국, 일차적으로 내가 할 수 있는.. 2021. 3. 20.
[Java] 자바 : 인터페이스(interface) 개념과 동시에 다형성 개념 익히기 Java 자바 : 인터페이스(Interface)로 바라보는 다형성 개념 인터페이스란? "클래스에 역할을 부여하기 위한 역할 정의 방법." 책에서 목차를 생각하면 쉽다.(글쓴이의 말하고자 하는 바의 전체 개념을 목차에다 설명하고 자세한 설명은 해당 페이지에 가면 정리가 되어있다.) interface Book{ // 책을 읽을거야 근데 그 방법은 아직 설명X, 그냥 나 이렇게 하겠다고만 선언 public void readContext(); // 내용이 없는 껍데기 메소드 - > 프로토 타입 메소드 = 추상 메소드 // 나는 나의 생각을 적을거야 어떻게? 아직 그건 몰라~ public void writemyOpinion(); } class Mybook implements Book { //@메소드 오버라이딩 p.. 2021. 3. 19.
[Java] 자바 : (상속)부모 생성자 호출을 위한 super 부모와 자식 클래스 관계에서, 자식 객체를 생성과 동시에 초기화를 하기위해서는 부모의 생성자가 우선적으로 호출이 필요하다. 이러한 부모 클래스에 있는 생성자를 호출하기 위해서 자식 클래스에서 super를 사용한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 class Main { ... Child c = new Child("김김김", 1, "혼자음식먹기"); ... } class Parent { protected String name; protected int age; public Parent(String name, int age) { this.name = name; this.age = age; } } class Child ext.. 2021. 3. 18.
[Java] 자바 : 메소드 오버로딩(Overloading) vs 메소드 오버라이딩(Overiding) 차이점? 메소드 오버로딩(Overloading)과 메소드 오버라이딩(Overriding) 한 번에 이해하기 본론으로 가기전, 명확한 개념을 딱 집어서 이해하기 보다는 그림으로 이해하는것이 가장 쉽습니다. 또한 기준이 되는 것은 클래스 1개의 내부에서 일어나는 일인지 혹은 2개 이상의 클래스에서 발생하는지를 기준으로 접근하시면 쉽습니다. 또한 영어단어를 기반으로 이해하기 보다는, 클래스 상에서 어떻게 쓰이는지 중점적으로 보고 머리에 그림을 그리며 이해하면 쉽습니다. [ 판단 기준 ] - 클래스 1개에서 일어나는가? - 2개 이상의 클래스에서 일어나는가? * 오버로딩(Overloading) 한 클래스(n=1)내에 똑같은 이름의 메소드를 여러 개 선언 하는 것. class ONE{ ... ... void upgrade.. 2021. 3. 18.
[Java] 자바 : (상속) 업 캐스팅 개념? 영어 단어 뜻 Upcasting의 의미란 무엇인가? * casting 무언가를 선정한다는 의미이며 길거리 케스팅을 생각하면 쉽게 이해 할 수 있다. 그런 케스팅을 기반으로 위를 나타내는 Up이 추가되었다. 그럼 최종적으로 위에거를 선택한다 라는 뜻이 된다. 그렇다면 자바상에서 업케스팅이란? 클래스 기반으로 이루어져있는 자바에서 "상속"이라는 개념속에서 등장한다. 즉, 부모 클래스의 타입을 그대로 물려받는다는 뜻이다. 이 말의 의미는 최소 2개 이상의 클래스가 있어야 성립이 된다. 그렇다면 왜 쓸까? 다양한 객체들을 부모의 타입으로 관리 할 수가 있기 때문이다. 예를들어 Problem) : 중복되는 코드가 넘쳐난다. Horse h = new Horse(); Lion l = new Lion(); Cat c .. 2021. 3. 18.
[Java] 자바 : 햇갈리는 this? 원리로 이해하는 개념 자바를 공부하다보면 this라는 것이 나온다. 이는 파이썬에서 self와 비슷하다. 하지만 왜 쓰는지 이유가 햇갈릴 때가 있다. 어떠한 개념이 나왔다는 것은 어떠한 문제점이 발생하여 해당 개념을 도입했다는 것이다. 발생한 문제점이 무엇인지 먼저 살펴보자. Problem) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 class Main { public static void main(String args[]) { User u = User("회원1", 1); } } class User { private String name; private int num; public User(String name, int num){ name = name; num = num; } } cs * 실행 로직 1... 2021. 3. 17.
[Java] 자바 : 접근 제한자 private을 우회적으로 접근하는 getter, setter 이해하기 2021.03.17 - [* Language/Java] - [Java] 자바 : 접근 제한자 큰 그림 이해하기 [Java] 자바 : 접근 제한자 큰 그림 이해하기 자바를 공부하다 보면 접근제한자라는 개념이 나온다.(public, private, default, protected) 이 접근제한자를 전체 큰 틀에 맞춰 빠르게 이해해보자. 접근제한자란 무엇인가? 공개 범위를 결정하는 하나 codinglevelup.tistory.com 이전 글에서 자바 전체에서 다루는 접근제한자에 대한 전체 큰 틀을 잡아봤다. 이 중 private에 대한 이해를 해볼려고 한다. 생각 해보기 private을 통하면 완전 비공개를 통해 어떠한 외부에도 공개를 하지 않는다. 하지만 인가된 사람이 접근을 할려고 할 때는 어떻게 해야 .. 2021. 3. 17.