분류 전체보기 (120) 썸네일형 리스트형 Serializable(1) Serializable(1) 날짜: 2021년 6월 11일 학습목표 Serializable과 NIO에대해서 알아보자. 그 중 이번 포스팅에서는 Serializable에 대해서만 알아보겠다. 프로젝트에서 객체에 Serializable을 구현해주지 않아서, 오류가 난적이 있었는데, 다행히?.. 고객사의 담당자분이 직접 디버깅....을 해주시고 Serializable을 써야한다고 말씀해주셨었고, 나는 솔루션 개발자분에게 또 여쭤보는.... 사태가 벌어졌었다. 그때도 멋도모르고 그냥 써야된다! 라고해서 썼었는데, 이번 포스팅을 통해서 Serializable은 무엇인지, 또 왜써야 하는지, 그때 그 프로젝트에서 왜 써야했고, 어떻게 작용했을지 생각해보자. Serializable 객체를 파일에 쓰고 읽는법 DMP .. Java I/O Java I/O 날짜: 2021년 6월 11일 학습목표 Java I/O 에 대해서 대학생때도 공부를 하지 않은 기억이 있다. 왜 인지는 모르겠지만, 이번 포스팅을 통해서 잘 알아보자. Java의 I/O란? Stream VS Reader&Writer Java의 I/O란? I/O는 프로그램에 있는 어떤 내용을 파일에 읽거나 저장할 일이 있을 때 다른 서버나 디바이스로 보낼 일이 있을 때 사용한다. 초기 자바에서는 I/O를 처리하기 위해 java.io 패키지만 제공했다. 바이트 기반의 데이터를 처리하는 Stream클래스, char 기반 문자열로 된 파일을 처리하는 Reader와 Writer를 제공했다. 자바에서 스트림이란? : 끊기지 않고 연속적인 데이터 JDK 1.4부터는 보다 빠른처리를 위해 NIO(New.. 람다와 스트림의 사용법(2) 람다와 스트림의 사용법(2) 날짜: 2021년 6월 10일 학습목표 Java8에 추가된 람다표현식과 스트림에 대해 알아보자. Thread코딩테스트를 풀어보려 했으나, Java8문법에 익숙해 지지 않아 기본적인 코드 흐름을 해석하기 힘들었다. 이번 포스팅에서는 코딩테스트의 문법을 해석하기위해, 람다표현식과 스트림 중 기본적인 스트림의 사용법에 대해서만 알아가는 것을 목표로 한다. 스트림의 사용법 forEach map 메소드 참조 Stream 자바의 스트림은 "뭔가 연속된 정보" 를 처리할 때 사용한다. 자바에서 연속된 정보란 무엇을 뜻할까? 우리는 어떤 연속된 정보를 처리해 왔을까? 배열 컬렉션 이 연속된 정보들 이라고 할 수있다. 이 중 컬렉션을 스트림을 사용할 수 있지만, 안타깝게도 배열은 불가능하다... 람다와 스트림의 사용법(1) 람다와 스트림의 사용법(1) 날짜: 2021년 6월 10일 학습목표 Java8에 추가된 람다표현식과 스트림에 대해 알아보자. Thread코딩테스트를 풀어보려 했으나, Java8문법에 익숙해 지지 않아 기본적인 코드 흐름을 해석하기 힘들었다. 이번 포스팅에서는 코딩테스트의 문법을 해석하기위해, 람다표현식과 스트림 중 기본적인 람다표현식사용법에 대해서만 알아가는 것을 목표로 한다. 람다표현식 람다표현식 람다표현식을 익혀 놓지 않으면, 코드를 읽는데 매우 어려움을 겪을수 있다. Java8이상을 사용한다면 반드시 알고 있어야한다. 앞서 익명 클래스에 대해서 공부해본적 이있다. 익명 클래스를 사용하면 가독성도 떨어지고 불편한데, 이런 단점을 보완한것이 람다 표현식이다. 람다 표현식은 인터페이스에 메소드가 "하나".. Page 선수지식 OS를 이해하기 위한 기본개념 Kernel(커널) 컴퓨터 전원을 켰을 때 메모리로 올라와 시스템이 동작되는 동안 계쏙 머무르는 부분으로 OS에서 가장 기초적이고 핵심적인 기능을 담당한다. 커널을 통해 메모리,파일,주변장치 등과 같은 시스템구성 자원을 관리할 뿐 아니라 시간관리, 프로세스관리, 스케줄링 등 핵심사항을 처리함(JVM의 메소드영역과 비슷한 느낌이다.) 하드웨어에 두 사람 이상이 동일한 작업을 실행시켰을 때 중재자의 역할을 하고, 여러사용자가 동시에 사용할때 각자 독자적으로 작업할 수있도록 영역을 확보해 준다. https://images.app.goo.gl/H6k6VktFFKDVFTqF9 Interrupt 프로그램 수행 중 현재 프로그램과 상관없는 사건이 발생하면, 인터럽트를 걸어 수행.. Thread(1) 선수지식 자바의 객체란 무엇인가? 프로그램 상에서 구현할 대상 클래스에 선언된 정보 그대로 생성된 실체이다. enum은 무엇인가? 관련이 있는 상수들의 집합 Java의 Object클래스는 어떤 클래스이고, 어떤 메소드가 있는가? .equals() .hashCode() .toString() 생성자에서 사용하느 super()가 어떤 용도로 사용되는지? 자식클래스에서 부모클래스의 생성자를 호출하는 메소드 자식클래스라 할지라도 부모클래스의 priavate한 변수와 메소드에 접근이 불가능하다. 생성자를 통해 private 리소스에 접근하기 위해서 사용할 수있다. 학습목표 쓰레드는 무엇인가? Runnable 과 Thread의 차이는 무엇인가? synchronized는 무엇인가? volatile은 무엇인가? 쓰레드는.. Set과 Queue -Reboot(4) 학습목표 Set이 무엇인지 Queue가 무엇인지 왜 Set 을 써야하는지 왜 Queue를 써야하는지 Set은 어디에 쓰이는지 Queue는 어디에 쓰이는지 Set과 다른 자료구조와의 차이점은 무엇인지 Queue의 다른자료구조와의 차이점은 무엇인지 Set을 구현한 구현체들은 무엇이 있고, 각 차이점은 ? Queue를 구현한 구현체들은 무엇이 있고, 각 차이점은? Queue란 무엇인가?? 큐는 FIFO의 용도로 사용한다. Fist In First Out의 약자로 먼저 들어온 애가 먼저 나가는 것을 말한다. 선입선출 구조이기 떄문에 서비스 대기열(버퍼)같은 경우에 사용하게 된다. Queue를 왜? 어디에 써야하는가? 앞서 말한 예시와 같이 서비스 대기열(버퍼)를 구현할 때 사용될수 있으며, 순서를 보장해야할때 .. 캐시 교체알고리즘 과 상황별 효율성 학습목표 LRU캐시 알고리즘외에 다른 캐시알고리즘은 어떤것이 있는지 알아보자. 찾아본 캐시알고리즘은 어떤 방식으로 캐시를 교체할까?? 알아본 캐시알고리즘들은 어떤상황에 쓰면 더 효율적일까?? 캐시알고리즘의 종류 FIFO(First In First Out) LRU(Least Recently Used) LFU(Least Frequently Used) MFU(Most Frequently Used) NUR(Not Used Recently) SCR(Second Chance Replacement) Random FIFO 가장 간단한 알고리즘으로, 메모리에 올라온지 가장 오래된 페이지를 교체한다. 각 페이지가 올라온 시간을 기록하거나, 큐에 저장하는 방식등으로 구현 https://medium.com/pocs/페이지-교.. 이전 1 ··· 8 9 10 11 12 13 14 15 다음