목록ComputerScience (16)
Nuke Olaf - Log Store
보호되어 있는 글입니다.
유닉스 계열의 운영체제에서는 텍스트 파일을 편집하기 위해서 vi 라는 문서 편집기를 사용한다. prog1.cpp 를 편집하는 상황을 예로 들어보자. (1) vi prog1.cpp 를 입력한다. prog1.cpp 가 이미 존재하는 경우, 그 file 을 읽어온다. 만약, prog1.cpp 가 존재하지 않으면 새 file 이 만들어지고, 빈 초기화면이 출력된다. (2) a 또는 i 를 입력하여 edit 모드로 바꿔준다. vi 는 command 모드와 edit 모드 두 상태 중 한 상태로 존재한다. 처음 vi 초기화면은 command 모드인데, file 을 수정하기 위해서는 a 또는 i 를 입력해서 edit 모드로 바꿔주어야 한다. (3) 원하는 내용을 입력하고 수정한다. 입력모드에서는 방향키를 이용하여 커서..

과제를 학교 실습 서버(리눅스)에 접속하여 제출해야 한다. 학교 실습 서버는 나와 물리적으로 떨어져 있다. 이런 서버를 원격 서버라고 한다. PuTTY 는 이러한 원격 서버에 접속하기 위해 사용하는 대표적인 프로그램이다. 사실 PuTTY 보다 MobaXterm 이 더 쉽고 사용하기 편리하다고는 하는데, 나는 PuTTY 를 사용할것이다. 이유는 교수님이 PuTTY 를 쓰라고 해서... 0. PuTTY 란? SSH란 Secure SHell의 약자로 네트워크 상의 다른 컴퓨터에 로그인하거나 원격으로 명령을 실행할 수 있는 프로그램 또는 프로토콜을 의미한다. 포트번호는 22번을 사용한다. 이러한 SSH를 이용해 서버에 접속하여 명령어를 전송하는 원격 서버 접속 프로그램이 PuTTY 이다. 사실 PuTTY 는 S..

학교에서 객체지향 프로그래밍 수업을 듣고있다. 그런데 실습과제를 학교 리눅스 서버에 접속해서 제출하라고 한다... 예전에 aws 로 내 웹사이트 서버 배포할때 리눅스 명령어를 조금 사용해 보았는데, 다시 리눅스 터미널 창을 보니까 기억이 가물가물하다. 그래서 교수님이 주신 유닉스 쉘 명령어 사용법 유인물을 공부하면서 정리해보았다. 리눅스 운영체제는 유닉스 운영체제로부터 파생되어 만들어졌다. 그래서 리눅스 명령어는 유닉스 명령어와 거의 비슷하다. 유닉스의 기본적인 쉘 명령어를 알아두면, 이를 리눅스에서도 사용할 수 있다. 0. 쉘(Shell) 이란? - 유닉스 또는 리눅스에서 운영 체제 상에서 다양한 운영 체제 기능과 서비스를 구현하는 인터페이스를 제공하는 프로그램 유닉스 운영체제(리눅스와 같은 유닉스 계..
1. 자료구조란? - 대량의 데이터를 효율적으로 관리할 수 있는 데이터의 구조 - 코드상에서 효율적으로 데이터를 처리하기 위해, 데이터의 특성에 따라 체계적으로 데이터를 구조화해야 한다. => 어떤 데이터 구조를 사용하느냐에 따라, 코드 효율이 달라진다 ex) 우편번호, 학생관리... 2. 대표적인 자료구조 (1) 배열 (2) 스택 (3) 큐 (4) 링크드 리스트 (5) 해쉬 테이블 (6) 힙 ... 등등 3. 알고리즘이란? - 어떤 문제를 풀기 위한 절차/방법 - 어떤 문제에 대해, 특정한 '입력'을 넣으면, 원하는 '출력'을 얻을 수 있도록 만드는 프로그래밍 - 얼마의 시간과 저장용량을 사용하느냐에 따라 좋은 알고리즘인지 아닌지가 판별 4. 자료구조와 알고리즘이 중요한 이유 - 어떤 자료구조와 알고리..

1. MVVM - Model View ViewModel MVVM 은 소프트웨어 아키텍쳐 패턴의 하나이다. * 아키텍처 패턴(architecture pattern) 이란, 주어진 문맥 안에서 소프트웨어 아키텍처의 공통적인 발생 문제에 대한 일반적인, 재사용 가능한 해결책을 의미한다. 아키텍처 패턴은 디자인 패턴과 비슷하지만 더 넓은 범위에 속한다. MVVM 에 대해 이해하기 위해서는 MVP 패턴에 대해 알고 있는 것이 좋다. MVVM 패턴은 MVP 패턴에서 파생되어 나왔기 때문이다. MVVM 패턴은 프로그램을 설계하기 위한 하나의 방법론이라고도 생각할 수 있다. 예를 들어서 메모장 안드로이드 앱을 만든다고 생각해보자. 패턴이나 아키텍처에 대해 전혀 몰랐을때, 나는 데이터를 가져오고 저장하는 코드, 데이터를..
mvp 의 Model 을 만들기 위해 구글의 architecture-sample 코드를 참고하는데, 구글 예제에서는 model 을 구현할 때 repository 라는 클래스를 만들어 사용하는 것을 볼 수 있었다. 쌩뚱맞게 model 에 왠 repositroy 가 있는거지? 하고 repository 가 무엇인지 찾아보니, 이게 레포지토리 디자인 패턴이라고 한다. mvp 패턴에서 Model 부분을 구현할때 데이터와 데이터에 액새스하는 로직을 분리하기 위해 레포지토리 패턴을 사용할 수 있다고 한다. 레포지토리 패턴이란 무엇이며, 왜 사용하고 어떻게 사용하는 것일까? 1. Repository Pattern 이란? 1.1 repository 이라는 단어의 의미 repository 는 "어떤것의 대량 저장소" 라는..

안드로이드에 mvp 패턴 적용하기(1) mvp 패턴이란? 안드로이드에 mvp 패턴 적용하기(2) Contract 작성 안드로이드에 mvp 패턴 적용하기(3) Model 정의 안드로이드에 mvp 패턴 적용하기(4) Presenter 만들기 안드로이드에 mvp 패턴 적용하기(5) Activity 에 View 구현 이제 Model 과 Presenter 를 만들었으니, View 를 만들고 Presenter 를 통해 View 와 Model 을 연결해 주도록 하자. View 를 구현하는 방법은 간단하다. Activity 에 전에 정의해두었던 Contract.View 인터페이스를 implement 하여 View 관련 함수들을 작성해주면 된다. 그 다음, MainActivity 의 onCreate 에서 버튼에 클릭 리..