Back-end/Study <자바의 정석>

Back-end/Study <자바의 정석>

[Tools] Java 스터디 <자바의 정석> : 자바를 시작하기 전에

▼ Why ? 이번에 복학하면서 백엔드에 관심이 생겼고 Spring이라는 프레임워크를 다루기 전에 Java에 대한 개념을 잡고자 동아리에서 진행하는 자바 스터디에 참여하게 되었다. 스터디의 목표는 Spring을 다루기 위한 기반을 잡기 위해, 강의나 책을 하나 골라 그것을 메인으로 정하고 이번 여름 방학까지 학습을 끝내는 것이다. "자바의 정석"이라는 책을 고르된 이유는 이 책은 굳이 몰라도 되는 부분까지 설명되어 있다고는 하지만, 이왕 자바 스터디까지 진행하는거, 다소 심화적인 내용까지 다뤄보는 것도 괜찮을 것 같아 이 책으로 선정하게 되었다. 스터디는 매주 학습 범위를 정하고 각자 블로그에 학습한 내용을 정리한 뒤, 자신이 맡은 파트를 스터디 시간에 설명해주며 복습하는 방식으로 진행해보려고 하고 공부..

Back-end/Study <자바의 정석>

[Tools] Java 스터디 15주차 & 마무리 : 네트워킹 (Networking)

🌑 네트워킹 (Networking) ✔️ 클라이언트 / 서버 (Client / Server) 🔹네트워킹 (Networking) ? 두 대 이상의 컴퓨터를 케이블로 연결하여 네트워크를 구성하는 것 ➜ 컴퓨터들을 연결해서 (1)데이터를 손쉽게 주고 받거나 (2)자원프린터와 같은 주변기기를 함께 공유하기 위해 사용 🔹 서버 ? 클라이언트 ? Server : 서비스를 제공하는 컴퓨터(Service Provider) Client : 서비스를 사용하는 컴퓨터(Service User) 🔹 서비스 ? 서버가 클라이언트로부터 요청받은 작업을 처리하여 그 결과를 제공하는 것을 뜻한다 서버가 제공하는 서비스의 종류에 따라 파일 서버 (File server) 메일 서버 (Mail server) 어플리케이션 서버 (Applic..

Back-end/Study <자바의 정석>

[Tools] Java 스터디 13주차 : 날짜와 시간 & 형식화 (date, time and formatting)

🌑 날짜와 시간 ✔️ Calander & Date 🔹 Calander · GregorianCalendar Calander class는 추상클래스(abstract class)이기 때문에 직접 객체를 생성하지 않고, getInstance() 메서드를 통해 완전히 구현된 class의 instance를 얻어야 한다. ➠ 최소한의 변경으로 프로그램을 실행시키기 위해 ! // Calendar class를 구현한 class로는 GregorianCalendar와 BuddhistCalendar가 있다. Calendar cal = Calendar.getInstance(); // Code-1 Calendar cal2 = new GregorianCalendar(); // Code-2 🔻 태국(BuddhistCalendar)을..

Back-end/Study <자바의 정석>

[Tools] Java 스터디 12주차 : 람다 (Lamda) & 스트림 (Stream)

🌑 람다식 (Lamda expression) ✔️ 람다식 ? 🔹 람다식(Lamda expression) : 메서드를 하나의 '식(expression)'으로 표현한 것 class, 메서드, 객체 필요 X ➜ 람다식 자체만으로 메서드의 역할을 수행 ➜ 즉, 메서드라는 개념보다 '익명 함수(function; 특정 class에 속하지 X)'라고 하는 것이 적절하다 쉽게 말하면 메서드를 변수처럼 다룰 수 있게 된다 (반환값, 매개변수) 메서드를 변수처럼 다루는 것이 어떻게 가능한가? (아래 "함수형 인터페이스 - @FunctionalInterface" 관련 내용 참고) 람다식을 참조변수로 다룬다는 것 ➜ 메서드를 통해 람다식을 주고받을 수 있다는 의미, 즉 메서드를 변수처럼 주고받는 것이 가능 ➜ 사실은 메서드가..

Back-end/Study <자바의 정석>

[Tools] Java 스터디 11주차 : 쓰레드 (Thread)

🌑 프로세스 (Process) & 쓰레드 (Thread) ✔️ 프로세스 (Process) 🔹 프로세스 (Process) ? 프로그램을 실행하면 OS로부터 실행에 필요한 자원(데이터, 메모리)을 할당받아 프로세스가 된다 이 프로세스의 자원을 이용해서 작업을 수행하는 것이 쓰레드(Tread) ! 프로세스 ➜ 작업공간 / 쓰레드 ➜ 노동자 하나의 프로세스가 가질 수 있는 쓰레드의 개수는 제한 X ➜ 단, 쓰레드가 작업을 수행하는데 개별적인 메모리 공간(호출스택)을 필요로 하기 때문에, 프로세스의 메모리 한계에 따라 생성할 수 있는 쓰레드의 수가 결정 (실제로 메모리 한계에 다다를 일은 거의 없니 이 부분은 걱정할 필요 X) ✔️ 멀티태스킹(Multi-tasking) & 멀티쓰레딩(Multi-threading)..

Back-end/Study <자바의 정석>

[Tools] Java 스터디 10주차 : 지네릭스(Generics) & 열거형(Enumeration) & 애너테이션(Annotation)

🌑 지네릭스 (Generics) ✔️ Generics 🔹 Generics 란 ? 다양한 타입의 객체들을 다루는 메서드나 Collection class에 컴파일 시의 타입체크(compile-time type check)를 해주는 기능 ➠ 객체의 타입 안정성을 제공 타입체크와 형변환을 생략할 수 있으므로 코드가 간결해진다 ➠ Collection class는 보통 한 종류의 객체를 담는 경우가 많기 때문에 매번 타입체크를 하고 형변환하는 것은 비효율적 ! ✔️ Generic class 🔹 Generic class의 선언 class Box { // Generic 타입 T를 선언 T item; void setItem(T item) { this.item = item; } T getItem() { return ite..

Uykm
'Back-end/Study <자바의 정석>' 카테고리의 글 목록