전체 글
-
우아한 테크코스 - 3기 1주 차 프리코스 후기생각과 일상/혼자의 생각 2020. 12. 17. 17:32
우아한 테크코스 3기 지원해 합격하고, 3주간 프리코스를 진행했다. 프리코스를 진행하며 자바를 처음 공부하게 돼 많이 헤맸지만, 주어진 과제를 혼자 해 나가며 많이 성장함을 느꼈고, 완료했을 때 성취감을 느꼈다. 물론 다른 지원자분들과 코드를 비교해보면 참 많이 부족함도 느꼈지만 좋은 코드들을 보며 더 공부하고 배워야겠다고 다짐할 수 있는 기회가 됐다. 3주 차까지의 프리코스가 모두 끝나고 최종 온라인 코딩 테스트를 기다리고 있다. 프리코스가 진행되는 3주 간은 프리코스 과제에 대해 정리를 해가며 블로그에 올릴 여유가 없었기 때문에 지금이라도 정리해보려 한다. 도움이 되는 내용은 없고 그냥 개인 기록용.. 1주 차 미션은 숫자야구 게임이었다. 처음 미션을 보고, 기능 구현 목록 작성에만 이틀 정도가 걸렸..
-
Java 8 - 3. Stream공부일기/Java 8 2020. 12. 16. 16:35
1. Stream 연속된 데이터를 처리하는 Operation들의 모음. 스트림은 데이터를 담고 있는 저장소가 아니며, 스트림으로 처리되는 데이터 소스는 변경되지 않는다. 오직 한 번만 처리하며 무제한일 수 있다. 중개 오퍼레이터와 종료 오퍼레이터로 나눌 수 있다. 중개 오퍼레이션 Stream을 리턴한다. Stateless / Stateful 오퍼레이션으로 더 상세하게 구분할 수도 있다. (대부분은 Stateless지만 distinct나 sorted 처럼 이전 이전 소스 데이터를 참조해야 하는 오퍼레이션은 Stateful 오퍼레이션이다.) filter, map, limit, skip, sorted, ... 종료 오퍼레이션 Stream을 리턴하지 않는다. collect, allMatch, count, for..
-
Java 항해일지 - 4. 제어문 및 과제공부일기/자바 스터디 2020. 12. 12. 00:06
제어문 지금까지 배운 코드의 실행은 위에서 아래로 한 문장씩 순차적으로 진행됐다. 그러나 실제 프로그램을 만들 땐 조건에 따라 문장을 건너뛰거나, 같은 문장을 반복해서 수행해야하는 경우도 있다. 이렇게 프로그램의 흐름을 바꾸는 역할을 하는 문장들을 제어문이라고 한다. 제어문에는 조건문과 반복문이 있다. 조건문은 조건에 따라 다른 문장이 수행되게 하고, 반복문은 특정 문장을 반복해서 수행하게 한다. 조건문 if문 가장 대표적인 조건문. '조건식'과 '괄호{ }'로 이루어져 있다. 조건식이 참(true)이면 괄호{ } 안의 문장을 수행한다. if ( 조건식) { //조건식이 참(true)일 때 수행될 문장들을 적는다. } 예를 들어 아래와 같은 코드의 출력결과는 어떻게 될까? class Ex { public..
-
Java 8 - 2. 인터페이스의 변화공부일기/Java 8 2020. 12. 7. 20:17
1. 인터페이스 기본 메소드와 스태틱 메소드 기본 메소드 (Default Methods) 인터페이스에 메소드 선언이 아니라 구현체를 제공하는 방법 해당 인터페이스를 구현한 클래스를 깨트리지 않고 새 기능을 추가할 수 있다. 기본 메소드는 구현체가 모르게 추가된 기능으로 그만큼 리스크가 있다. 컴파일 에러는 아니지만 구현체에 따라 런타임 에러가 발생할 수 있다. 반드시 문서화 할 것. (@implSpec 자바독 태그 사용) Object가 제공하는 기능 (equals, hasCode)는 기본 메소드로 제공할 수 없다. 구현체가 재정의해야 한다. 본인이 수정할 수 있는 인터페이스에만 기본 메소드를 제공할 수 있다. 인터페이스를 상속받는 인터페이스에서 다시 추상 메소드로 변경할 수 있다. 인터페이스 구현체가 재..
-
Java 8 - 1. 함수형 인터페이스와 람다 표현식공부일기/Java 8 2020. 12. 6. 20:13
1. 함수형 인터페이스란? 추상 메소드를 단 하나만 가지고 있는 인터페이스 static 메소드나, default 메소드는 몇 개를 갖고 있던 상관없으나 추상메소드는 단 하나여야 한다. @FunctionalInterface 어노테이션을 지닌 인터페이스 2. 람다 표현식이란? 함수형 인터페이스의 인스턴스를 만드는 방법으로 쓰일 수 있다. 함수형 인터페이스를 구현할 때 쓸 수 있는 표현 방법으로 코드를 간결하게 할 수 있다. 메소드의 매개변수, 리턴 타입, 변수로 만들어 사용할 수 있다. 3. 자바에서 함수형 프로그래밍 순수 함수 (Pure function) 함수 밖에 있는 값을 참조하거나 변경하려 하면 안 된다. 오직 함수 내부에서 쓰는 값(매개변수)만 사용하는 것을 지향해야 한다. 사이드 이팩트가 없다. ..
-
Java 항해일지 - 3. 연산자공부일기/자바 스터디 2020. 11. 25. 17:54
연산자란? 계산을 하기 위해 사용하는 기호. 단항 연산자 연산자 사용법 기능 설명 ++ v++ 후위 증가 v값 반환 후 v값 1 증가 ++v 전위 증가 v값 1 증가 후 v값을 반환 -- v-- 후위 감소 v값 반환 후 v값 1 감소 --v 전위 감소 v값 1 감소 후 v값 반환 + +a 1을 곱함 a값에 1 곱한 후 반환 - -a -1을 곱함 a값에 -1 곱한 후 반환 ~ ~a 비트를 전환(부호 바뀜) 제일 왼쪽 비트 0인 경우 1(음수)로 반환 제일 왼쪽 비트 1인 경우 0(양수)으로 반환 ! !boolean boolean 타입을 바꿈 true -> false false -> true 예시 public class Main { public static void main(String[] args) { i..
-
파이썬으로 시작하는 데이터 사이언스 - 4. 데이터 전처리공부일기/부스트코스 2020. 11. 24. 19:02
앞서 사용한 csv파일을 그대로 사용해 서울에 위치한 종합병원만을 찾아보자. 텍스트 데이터 색인하기 .str.contains() df_seoul_hospital.loc[~df_seoul_hospital["상호명"].str.contains("종합병원"), "상호명"].unique() .str.contains()를 사용하게 되면 해당 컬럼에서 ()안에 들어있는 문자가 포함됐는지를 boolean 타입으로 출력한다. ~df_seoul_hospital["상호명"].str.contains("종합병원") 을 하게되면 ()안의 문자가 포함 안 된 인덱스를 나타낸다. .loc을 사용해 "상호명"에 종합병원이 포함된 인덱스들을 필터링하고, "상호명" 컬럼만 가져와 unique()로 어떤 값들이 있는지 list로 표현한다...
-
파이썬으로 시작하는 데이터 사이언스 - 3. 데이터 요약 및 추출공부일기/부스트코스 2020. 11. 20. 21:49
데이터는 앞에서 진행했던 데이터 그대로 진행한다. 11. 기초 통계값 보기 기초 통계 수치 mean() df[["위도", "경도"]].mean() "위도"와 "경도" 각각의 평균 값을 알 수 있다. median() df["위도"].medain() 중간 값인 37.23465231770329 가 출력된다. max() df["위도"].max() "위도"에서 최댓값인 38.499658570559795 를 출력. min() df["위도"].min() "위도"에서 최솟값인 33.2192896688307 를 출력. count() df["위도"].count() 91335 를 출력. NaN이 아닌 값의 개수를 출력한다. 기초통계값 요약하기 describe() describe를 사용해 데이터를 요약가능하다. 기본적으로 수..