목록분류 전체보기 (80)
dev_eun

1. 파일(File) 데이터를 위한 컨테이너 일련의 바이트 no format 디스크 파일에서 각 바이트는 개별적으로 주소로 접근 가능 외부 장치에 대해 균일한 인터페이스파일 시스템(File System)컴퓨터 파일과 데이터를 저장하고 체계화하는 방식 파일을 검색하고 접근하기 쉽다. 데이터 저장 장치에 사용된다(하드 디스크, CD-ROM). 파일 시스템에 접근하는 구조 2. UNIX file access primitevs UNIX primitives(유닉스 기본 요소) 이름 설명 open 파일이 없으면 생성하고 파일을 열어 파일을 읽기, 쓰기 create 빈 파일 생성 close 연 파일 닫기 read 파일로부터 정보를 추출 write 파일의 정보를 입력 lseek 파일에서 읽고 쓰는 offset 변경 u..

Unix 대표 특징 대화형 시스템 : 유저가 명령을 내리면 시스템은 그 명령을 수행하고 결과를 출력 높은 이식성 : C언어로 구성이 되어 있기 때문에 타 기종에 이식이 유용 멀티 태스킹 시스템 : 동시에 여러 개의 프로세서 수행 가능 멀티 유저 시스템 : 여러 명의 사용자가 동시에 사용 가능 쉘 프로그래밍 : 반복적이고 복잡한 명령어를 대화식으로 처리 가능 계층적 파일 시스템 : 사용자가 그룹 간의 디렉토리 및 파일을 효과적으로 운용 1. UNIX 구조 유닉스는 크게 커널, 쉡, 유틸리티로 이루어져 있습니다. 커널(Kernel) 커널은 하드웨어와 OS사이의 인터페이스 역할을 하는 것으로 시스템 프로그램 계층입니다. 커널에서는 기본적으로 네트워크, 프로세스 관리, 파일 관리, 장치 관리, 멀티태스킹 등의 ..
프로젝트에서 팀원이 만든 restful API에 POST 요청을 해야 하는데, 어떻게 하는지 몰라서 방황했다. 잊어버릴까봐 기록 참고 : privatedevelopnote.tistory.com/18 [안드로이드/Android] HttpURLConnection 을 이용한 Multipart/form-data 파일 업로드 안드로이드 6.0 부터 Apache HTTP Client가 제거되었다. Android Develop에서는 HttpURLConnection 을 사용하라고 한다. 본론으로 들어가서 HttpURLConnection을 이용해 파일업로드를 하는 방법을 알아보도록.. privatedevelopnote.tistory.com 참고 코드 public class HttpConnection extends Asy..
1. 웹뷰(WebView)에서 안드로이드 함수 사용하기 onCreate() 함수에 JavascriptInterface 추가하기 mWebView.addJavascriptInterface(new WebBridge(), "BRIDGE"); WebBridge는 웹뷰와 통신할 직접 만든 클래스입니다. "BRIDGE"는 웹뷰와 안드로이드를 이어주는 string입니다. 자신이 설정해서 사용하시면 됩니다. Bridge Class 만들기 webView에서 사용할 함수를 모두 생성합니다. class WebBridge { @JavascriptInterface public void testAndroid() { // 실행할 내용 } } react에서 실행하기 react에서 WebBridge에서 생성했던 함수를 호출합니다. 리턴..
[Chapter 6] 상속 기본 용어 상속 : 객체 단위 코드를 재사용하는 방법 재정의 : 기존의 선언 및 정의된 코드를 유지하면서 새롭게 바꾸는 방법 메소드 재정의 : 클래스에 있는 메소드를 자유롭게 재정의 상속 객체 단위 코드를 재사용하는 방법 상속 받는 클래스와 상속하는 클래스 사이의 관계를 고려해 프로그램 작성 기본 형식 class 파생클래스이름 : 접근제어지시자 부모클래스이름 public 접근 제어 지시자를 통한 상속 파생 클래스 인스턴스가 생성되면 기본 클래스의 생성자 호출 파생 클래스는 private 접근 제어 지시자로 선언된 멤버를 제외한 기본 클래스의 멤버에 접근 가능 식별자 검새 순서에 근거 사용자 코드에서 파생 클래스의 인스턴스를 통해 기본 클래스 메소드 호출 가능 메소드 재정의(Ov..
[Chapter 5] 연산자 다중 정의 용어 연산자 함수 : 연산자 다중 정의 : 연산자 함수 연산자를 이용하듯 호출할 수 있는 메소드 클래스에서 다중 정의를 하게 되면 기본 자료형처럼 연산을 할 수 있음 형변환 연산자 operator 변환할자료형() 덧셈 연산자 클래스이름 operator+(const 클래스이름& param) 클래스 형식을 리턴하므로 이동 생성자 호출 void를 반환하게 되면 연속으로 연산 불가능 다중 정의 가능 -> 클래스이름 operator+(다른자료형 param) 대입 연산자 단순 대입 연산자 클래스이름& operator=(const 클래스이름& param){ // 자신에 자신을 대입할 경우 대비 if(this == ¶m) return; // 깊은 복사 수행 delete m..
[Chapter 4] 복사 생성자와 임시 객체 용어 복사 생성자 : 깊은 복사 : 얕은 복사 : 임시 객체 : 이동 시맨틱 : 복사 생성자 객체의 복사본을 생성할 때 호출되는 생성자 디폴트 복사 생성자 : 복사 생성자를 생략하면 디폴트 생성자처럼 컴파일러가 '알아서' 만들어 줌 클래스 내부에서 멤버 변수에 포인터 변수를 동적 할당 및 해제할 경우 조심해야 함 복사 생성자가 호출되는 경우 명시적으로 객체의 복사본을 생성하는 방식으로 선언 함수 형태로 호출 : 매개변수로 사용 함수 형태로 호출 : 반환 타입으로 사용 // 매개변수가 상수형 참조 클래스이름(const 클래스이름 &rhs); 복사 생성자 차단 방법 명시적으로 복사 생성자 삭제 ... Class(const Class& rhs) = ..
[Chapter 3] 클래스 용어 인터페이스 함수 : 함수가 내부적으로 어떻게 상호작용하는지 사용자가 알지 않아도 되는 함수 생성자 : 객체가 생성될 때 자동으로 호출되는 함수 소멸자 : 객체가 소멸될 때 자동으로 호출되는 함수 객체 지향 프로그래밍 개요 사용자의 편의성을 극대화 해야 한다 사용자의 실수를 제작자가 차단해야 한다 ==> 제작자와 사용자 관점을 분리해서 생각 사용자 관점에서? 함수가 구조체의 멤버로 들어간 것 클래스 기본 문법 class 클래스이름{ 접근제어지시자: 멤버변수선언; 멤버함수선언및정의; } 멤버 변수 초기화 생성자 인스턴스가 생성될 때 자동으로 호출된다. class myClass { myClass(){ // 생성자 함수 myData = 10; // 멤버 변수 초기화 } ... ..