전체 글
-
Java: 입출력(I/O) 스트림(Stream) 기초 개념각종 학습 요약/Java 2022. 5. 20. 14:19
입출력(I/O) 스트림(Stream) 기초 개념 데이터를 주고받는 도구인 스트림에 대한 개념을 알아봅니다. 스트림이란? 프로그램은 통신한다. 통신의 대상은 시스템이 될 수도 있고, 파일이 될 수도 있다. 무엇이 되었든, 그 대상과 데이터를 주고 받을 수 있다. 그렇게 데이터를 주고 받으려면 데이터가 오가는 길목이 필요하다. 그것이 바로 스트림이다. 주체를 기준으로 데이터가 들어오는 스트림을 Input Stream이라고 하고, 데이터를 내보내는 스트림을 Output Stream이라고 한다. Java에서의 스트림 1 - (File)Input/OutputStream Java에서 기본적인 Input/OutputStream은 바이트 단위로 데이터를 읽고 전송한다. 근데 기본 스트림대로 한 바이트 한 바이트 나르고..
-
코드스테이츠 백엔드 부트캠프 2주차 & 3주차 회고 - 2부회고 2022. 5. 20. 12:16
코드스테이츠 백엔드 부트캠프 2주차 & 3주차 회고 2부 2부는 3주차를 지내며 정리했던 생각을 바탕으로 자유회고를 남겨볼까 한다. 아마도 불안에 대한 이야기를 할 것 같다. 엄청 길게 쓰고 있었는데, 이게 또 그렇게 힘을 낭비할 일은 또 아닌 것 같아서 그냥 짧게만 적어본다. "불안해." 새벽에 잠을 깨는 일이 부쩍 늘었다. 한번 깨면 한두 시간은 그냥 깨어있다. 아무리 피곤하고, 아무리 잠들어 보려고 해도 안되었다. 아까 못 풀었던 문제들, 이해 못한 개념들, 답하지 못한 / 묻지 못한 질문들, 그런게 뇌에 엉겨붙어서 배치처럼 백그라운드에서 쉬지 않고 돌아갔다. 며칠은 그러려니 했다. 컨디션이란게 본디 왔다갔다 하는 거니까. 그런데 일주일이 넘어갔다. 점점 낮 시간이 힘겨워졌다. 그제서야 알 수 있었..
-
TIL: 백엔드 부트캠프 18일차 (w/코드스테이츠)Today I Learned & WIL, MIL 2022. 5. 19. 23:15
220519_TIL & 학습 평가 1. TIL Java 심화 Enum class Lambda Stream 블로깅 커리큘럼 진도에 맞춰 블로깅 중. 가능하면 내가 설명하는 언어로 쓰려고 노력 중. 미루고 미뤄둔 3주차 회고 작성중. 근데 낼모레(사실상 내일)이면 또 4주차 회고 작성일. ㅋㅋ 바쁘다보니 차일피일이다... 2. 학습 평가 학습 난이도: RPE 6 학습 집중도: RPE 6 습득 수준: RPE 6 👇참고: 수준을 정하는 주관적 척도 * 긍정적인 경우는 어려움이 아니라 반대로 생각했다. * 0: 휴식 / 1: 아주 아주 쉬움 / 2: 쉬움 * 3: 보통 / 4: 어떤 부분은 조금 어려웠음 * 5: 어려움 / 6: 노력해도 모르겠는 부분이 많다 / 7: 너무 어려움 * 8: 못 따라가겠어... 노력..
-
Java: 람다와 스트림의 기본적인 이해와 사용법 - 2각종 학습 요약/Java 2022. 5. 19. 12:20
Java: 람다(lambda)와 스트림(Stream)의 기본적인 이해와 사용법 - 2 이전 글에서 람다의 아주 기초적인 형태나 개념은 익혔을 거라 생각하고, 이번 글에서는 주로 스트림을 활용하는 방법에 대해 알아보려고 한다. 주요 메서드 소개가 주가 될 것 같다. 아래 글을 따라가며 순차적으로 스트림을 열고 - 스트림 중간에 특정연산을 거쳐서 - 스트림의 결과값을 가지고 뭔가 산출해내면 된다(아래 예시처럼). 메서드 하나하나씩 써보자..! /* 예시 */ psvm { sout(func()); } int func() { return Intstream.range(1,5) /* '스트림 열기' 파트에서 하나 고르고(param은 설명보고 적당히 넣자) */ .skip(3) /* '스트림 사..
-
Java: 람다와 스트림의 기본적인 이해와 사용법 - 1각종 학습 요약/Java 2022. 5. 19. 12:19
Java: 람다(lambda)와 스트림(Stream)의 기본적인 이해와 사용법 - 1 람다에 대한 깊은 이해를 제공하는 글은 이미 많은 것 같다. 이 글은 람다를 몰랐던 사람이 람다로 익명함수를 즉시 사용해볼 수 있도록 방법을 소개하고, 사용하기 위한 아주 기본적인 이해를 위한 글이다. 람다 사용 한 줄 요약 메서드 시그니처에서 파라미터만 남기고, 화살표를 넣자. 리턴도 생략 가능. (경우에 따라 더 줄이는 것도 가능) 변경 예시1: public void run(int x) { System.out.println(x); } => (x) -> { sout(x); } 변경 예시2: public int function(int x) { return x + 10; } => (x) -> { x + 10; } 그렇다고..
-
Java: Enum 클래스의 기본적인 이해각종 학습 요약/Java 2022. 5. 19. 09:29
Java: 열거형(enumerated type, enum)의 기본적인 이해 enum은 대개 상수 역할을 하는 식별자를 말한다. Java에서는 enum을 별도의 클래스 형식으로 다룬다. 전통적인 static final 상수에 비교해 어떤 점이 좋은지, 작성 방법과 사용 방법, 주의점을 기초적인 내용만 간략하게 다뤄보려고 한다. static final을 쓰면 되지 왜 그런걸 써? 문자열이나 숫자를 상수(static final)로 사용하는 것에 비해, 툴 레벨에서 지원받는 기능이 많다(오토컴플릿, 오타 표시 등). 수용할 값을 명확히 제한할 수 있다. (리터럴 비교가 아닌, 객체 비교로 인한 안정성) 컴파일 타임 타입안정성 보장. (변경될 일이 '확실히' 없다.) 코드에 맥락이 생긴다. 장점은 ..
-
Java: 내부 클래스(Inner Class)의 기본적인 이해각종 학습 요약/Java 2022. 5. 18. 11:41
Java: 내부 클래스(Inner Class)의 기본적인 이해 Inner Class란? 말 그대로, 클래스 안에 정의된 클래스다. 내부 클래스를 감싸고 있는 클래스는 상대적으로 외부 클래스라고 불리게 된다. 클래스 안에 정의되는 클래스다보니, 아무래도 바깥의 클래스와 어떤 연관을 가지느냐를 중요히 생각해볼 필요가 있다. 내부 클래스의 유형은 네 가지가 있는데, 이제 아래의 설명에서 하나씩 천천히 알아가보자. 참고 : 아래의 설명에서 Inner Class, 이너클래스, 내부클래스, nested class, 중첩클래스라는 말을 혼용하게 될 것 같다. 당연히 전부 같은 의미다. 내부 클래스의 유형: 먼저 크게 두가지로 - 인스턴스 내부클래스/스태틱 내부클래스 "클래스 안의 클래스"라는 설명을 들었을 때, 보통..
-
TIL: 백엔드 부트캠프 16일차 with 코드스테이츠Today I Learned & WIL, MIL 2022. 5. 17. 18:25
220517_TIL & 학습 평가 1. TIL Java: 제네릭 Generic Java: 컬렉션 Collections 페어 프로그래밍 : Java 컬렉션 프레임워크 사용해서 문제풀기 2. 학습 평가 학습 난이도: RPE 5 학습 집중도: RPE 6 습득 수준: RPE 6 👇참고: 수준을 정하는 주관적 척도 * 긍정적인 경우는 어려움이 아니라 반대로 생각했다. * 0: 휴식 / 1: 아주 아주 쉬움 / 2: 쉬움 * 3: 보통 / 4: 어떤 부분은 조금 어려웠음 * 5: 어려움 / 6: 노력해도 모르겠는 부분이 많다 / 7: 너무 어려움 * 8: 못 따라가겠어... 노력해도 모르겠고, 뭘 봐야할지도 모르겠어.. 흰건 종이고, 검은건 글자다... * 9: 이제 진짜 더는 무리다. 누가 알려줘도 모르겠어. *..