Programming 33

JAVA - I/O 와 XML

노드스트림 I/O와 Stream I/O 데이터의 입력(input)과 출력(output) 데이터는 한쪽에서 주고 한쪽에서 받는 구조로 되어있음. 이때 입력과 출력의 끝단: 노드(node) 두 노드를 연결하고 데이터를 전송할 수 있는 개념: 스트림(Stream) 물의 흐름이나 전기의 흐름과 같은 개념 스트림은 단방향으로만 통신이 가능하며 하나의 스트림으로 입력과 출력을 같이 처리할 수 없음. Node Stream의 종류와 naming Node stream : node에 연결되는 스트림 InputStream의 주요 메서드 read() close() 바이트 한 개씩 읽음 Buffer 만큼 씩 읽음 Reader의 주요 메서드 read() close() Buffer 만큼 씩 읽음 outputSteam write()..

Programming/Java 2022.07.31

JAVA - Exception Handling & Collection Framework

에러와 예외 어떤 원인에 의해 오동작 하거나 비정상적으로 종료되는 경우 심각도에 따른 분류 Error 메모리 부족, Stack overflow와 같은 일단 발생하면 복구할 수 없는 상황 프로그램의 비 정상적 종료를 막을 수 없음 → 디버그 Exception 읽으려는 파일이 없거나 네트워크 연결이 안되는 등 수습될 수 있는 비교적 상태가 약한 것들 프로그램 코드에 의해 수습 될 수 있는 상황 exception handling(예외 처리)란? 예외 발생시 프로그램의 비 정상 종료를 막고 정상적인 실행 상태를 유지하는 것 예외의 감지 및 예외 발생시 동작 코드 작성 필요 예외 클래스 계층 checked exception 예외에 대한 대처 코드가 없으면 컴파일이 진행되지 않음. unchecked exceptio..

Programming/Java 2022.07.31

JAVA - OOP(3)

추상클래스 추상 클래스 정의 자손 클래스에서 반드시 재정의 사용되기 때문에 조상의 구현이 무의미한 메서드 메서드의 선언부만 남기고 구현부는 세미퀄른으로 대체 구현부가 없다는 의미로 abstract키워드를 메서드 선언부에 추가 객체를 생성할 수 없는 클래스라는 의미로 클래스 선언부에 abstract를 추가한다. 추상 클래스의 특징 abstract 클래스는 상속 전용의 클래스 클래스에 구현부가 없는 메서드가 있으므로 객체를 생성할 수 없음. 하지만 상위 클래스 타입으로써 자식으로 참조할 수는 있다. 조상 클래스에서 상속 받은 abstract 메서드를 재정의 하지 않은 경우 클래스 내부에 abstract메서드가 있는 상황이므로 자식 클래스는 abstract 클래스로 선언되어야한다. 추상 클래스를 사용하는 이유..

Programming/Java 2022.07.31

JAVA - OOP(2)

oop is A.P.I.E Abstraction(추상화) 현실의 객체를 추상화해서 클래스를 구성 Polymorphism(다형성) 하나의 객체를 여러가지 타입(형)으로 참조할 수 있다. Inheritance(상속) 부모 클래스의 자산을 물려받아 자식을 정의함으로 코드의 재사용이 가능하다. Encapsulation(데이터 은닉과 보호) 데이터를 외부에 직접 노출시키지 않고 메서드를 이용하여 보호 할 수 있다. 상속 기존 클래스의 자산(멤버)를 자식 클래스에서 재사용하기 위한 것 부모의 생성자와 초기화 블록은 상속하지 않는다. 기존 클래스의 멤버를 물려 받기 때문에 코드의 절감할수있다. 부모의 코드를 변결하면 모든 자식들에게도 적용 → 유지 보수성 향상 상속의 적용 extends 키워드 사용 Object 클래..

Programming/Java 2022.07.31

JAVA - OOP(1)

객체 지향 프로그래밍(OOP) 객체란? 주체가 아닌 것,주체가 활용하는 것 객체지향 프로그래밍 주변의 많은 것들을 객체화 해서 프로그래밍 하는 것 객체지향은 객체를 많이 만드는 것을 추천한다? 객체지향 프로그래밍의 장점 블록 형태의 모듈화된 프로그래밍 신뢰성 높은 프로그래밍이 가능하다 추가/수정/삭제가 용이하다 재 사용성이 높다 현실 세계 객체, 클래스,프로그램의 객체(instance,object)의 관계 현실의 객체가 갖는 속성과 기능은 추상화(abstraction) 되어 클래스에 정의된다! 클래스는 구체화 되어 프로그램의 객체(instance,object)가 된다 프로그램의 클래스와 객체 클래스 객체를 정의해 놓은 것 즉 객체의 설계도,틀 클래스는 직접 사용할 수 없고 직접 사용되는 객체를 만들기 위..

Programming/Java 2022.07.31

JAVA - 기본, 배열, 다차원 배열

JAVA 기본 Variable(변수)란? 자료를 저장하기 위한 메모리 공간으로 타입에 따라 크기가 달라짐. 메모리 공간에 값을 할당 후 사용 type 타입이란? 데이터의 종류 기본형 미리 정해진 크기의 메모리 사이즈로 표현 변수 자체에 값 저장 참조형 크기가 미리 정해질 수 없는 데이터의 표현 변수에는 실제 값을 참조할 수 잇는 주소만 저장 기본형의 크기 논리형 boolean : true, false 정수형 byte : 8bit ⇒ -128 ~ 127 short : 16bit ⇒ -32768 ~ 32767 int : 32bit ⇒ -2147483648~2147483647 약 20억 ling : 64bit ⇒ -9223372036854775808 ~ 9223372036854775807 실수형 float :..

Programming/Java 2022.07.31

Next.js를 AWS EC2에 올려서 배포하기

지금까지 작업한 작업물을 실제 배포를 해봅시다. 다양한 방법으로 서버를 올릴 수 있는데 그중 저는 AWS에서 lightsail를 이용하였습니다. lightsail나 EC2나 똑같이 작업 시행해 본 결과 둘 다 잘되는 것을 확인했습니다. gcp는 확인하지 못하였지만 비슷하게 될 것 입니다. 또한 참고한 사이트들은 아래에 참고에 작성해 놓겠습니다. 2022.06.06 기준 인스턴스 생성하기 aws lightsail에 들어가서 Create instance를 클릭하기 리눅스에서 OS only에서 우분투 20.04를 설치합니다. 나머지는 건드리지 않아도 되고 마지막에 인스턴스 이름은 원하는 것으로 변경하면 됩니다. 생성을 누르면 첫 화면에서 위 그림처럼 생성이 되고 있을 겁니다. 조금만 기다리면 실행 중으로 바뀔..

Programming/nextjs 2022.06.06

Next.js 간단한 첫 블로그를 만들어 보자(6): API Routes

https://nextjs.org/learn/basics/api-routes Learn | Next.js Production grade React applications that scale. The world’s leading companies use Next.js by Vercel to build pre-rendered applications, static websites, and more. nextjs.org nextjs의 첫 앱을 만드는 방법이며 영어로 된 문서를 한글로 작성해보며 작성하고 있습니다. 틀린 부분도 있겠지만.. 지적해주시면 수정해 놓겠습니다~ Next.js는 API Routes를 지원하므로 API 엔드포인트를 Node.js 서버리스 기능으로 쉽게 생성할 수 있습니다. 블로그 앱에서 꼭..

Programming/nextjs 2022.06.05

Next.js 간단한 첫 블로그를 만들어 보자(5): 동적 라우팅(Dynamic Routes)(2)

오랜만에 이어서 글을 작성하겠습니다. 여러가지로 바빠서 작성 못했지만 이제 꾸준히 작성하여 마무리 짓겠습니다! 이전에 이어서 아래 주소를 들어가면 시작하는 곳이 똑같을 거예요 https://nextjs.org/learn/basics/dynamic-routes/render-markdown Learn | Next.js Production grade React applications that scale. The world’s leading companies use Next.js by Vercel to build pre-rendered applications, static websites, and more. nextjs.org nextjs의 첫 앱을 만드는 방법이며 영어로 된 문서를 한글로 작성해보며 작성하고 ..

Programming/nextjs 2022.06.04

Next.js 간단한 첫 블로그를 만들어 보자(5): 동적 라우팅(Dynamic Routes)(1)

이전 글에서 데이터를 채워 놓은 상태이지만 개별 블로그 페이지를 만들지 않은 상태입니다. 오늘은 그 개별 블로그 페이지를 만들어봅시다.! https://nextjs.org/learn/basics/dynamic-routes Learn | Next.js Production grade React applications that scale. The world’s leading companies use Next.js by Vercel to build pre-rendered applications, static websites, and more. nextjs.org nextjs의 첫 앱을 만드는 방법이며 영어로 된 문서를 한글로 작성해보며 작성하고 있습니다. 틀린 부분도 있겠지만.. 지적해주시면 수정해 놓겠습니다~..

Programming/nextjs 2022.04.26
728x90