별의 공부 블로그 🧑🏻‍💻

🗒️ 2017/05 (184)

728x90
  1. 2017.05.10 git log

    git log : 기록 보기 *git log 명령의 옵션 옵션 설명 git log -p 각 커밋에 적용된 실제 변경 내용을 보여줌. git log --word-diff diff 명령의 실행 결과를 단어 단위로 보여줌. git log --stat 각 커밋에서 수정된 파일의 통계 정보를 보여줌. git log --name-only 커밋 정보 중에서 수정된 파일의 목록을 보여줌. git log --relative-date 정확한 시간을 보여주는 것이 아니라 1일 전, 1주 전처럼 상대적인 시간을 비교하는 형식으로 보여줌. git log --graph 브랜치 분기와 병합 내용을 아스키 그래프로 보여줌. - 실제로 자주 유용하게 사용하는 옵션 중 하나는 git log --graph 명령. 내용 출처 : 만들면서 ..

  2. 2017.05.10 .gitignore

    .gitignore : 불필요한 파일 및 폴더 무시 1) 커맨드 라인에서 touch 명령어를 이용해서 .gitignore 파일을 생성$ touch .gitignore$ ls$ ls -al 2) gitignore.io (https://www.gitignore.io/)에 접속해서 자신의 운영체제와 프로그래밍 언어 이름 등을 입력하고 오른쪽의 버튼을 클릭.3) 화면에 생성된 내용을 .gitignore 파일 안에 복사한 후 저장.4) 커맨드 라인에서 .gitinore 파일을 저장소에 커밋.$ git add .gitignore$ git commit -m "added '.gitignore' file" 내용 출처 : 만들면서 배우는 Git, GitHub 입문 (윤웅식 지음, 한빛미디어)

  3. 2017.05.10 vim

    - vim : 리눅스나 UNIX에서 사용할 수 있는 텍스트 편집기 - vim에서 작성을 시작하려면 [i] 키를 누름. 그러면 일반 모드에서 입력 모드로 전환이 되고, 커서가 바뀌면서 작성할 수 있는 상태라는 걸 알려줌. - 작성 후에 [Esc] 키를 누르면 일반 모드로 돌아옴. - :을 입력하면 명령어를 입력할 수 있는 명령 모드로 전환됨. - wq를 입력하면 저장(w) 후 종료(q) 됨. *vim에서 사용하는 주요 명령어 목적 현재 모드 키 입력 모드 전환(현재 위치부터 쓰기) 일반 I 입력 모드 전환(다음 줄부터 쓰기) 일반 O 입력 모드 전환(한 칸 뒤부터 쓰기) 일반 A 일반 모드 전환(입력 또는 명령 모드에서) 입력, 명령 Esc 명령 모드 전환 일반 (일반 모드에서): 저장 명령 W 종료 명령..

  4. 2017.05.10 Git 기본 명령어 & 필수 UNIX 명령어

    *저장소 사용에 필요한 Git 기본 명령어 목표 명령어 설명 저장소 생성 git init 실행한 위치를 Git 저장소로 초기화함. 저장소에 파일 추가 git add 파일이름 해당 파일을 Git이 추적할 수 있게 저장소에 추가함. 저장소에 수정 내역 제출 git commit 변경된 파일을 저장소에 제출함. 저장소 상태 확인 git status 현재 저장소의 상태를 출력함. *저장소 사용을 위한 branch 명령어 목표 명령어 설명 저장소에 브랜치 추가 git branch 이름 '이름'의 브랜치를 만듦. 작업 중인 브랜치 변경 git checkout 브랜치이름 현재 작업 중인 '브랜치이름'을 변경함. 브랜치 병합하기 git merge 브랜치이름 현재 작업 중인 브랜치에 '브랜치이름'의 브랜치를 끌어와 병합함..

  5. 2017.05.09 리스트뷰 (ListView) 사용 예시 3

    1. MainActivity.java 123456789101112131415161718192021package ... import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.widget.ListView; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ListView listView = (ListView) fin..

  6. 2017.05.09 리스트뷰 (ListView) 사용 예시 2

    1. MainActivity.java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 package org.androidtown.javaandandroidchap14; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.widget.ArrayAdapter; import android.widget.ListView; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate..

  7. 2017.05.09 리스트뷰 (ListView) 사용 예시 1

    1. MainActivity.java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 package org.androidtown.javaandandroidchap14; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.widget.ListView; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.lay..

  8. 2017.05.09 인터페이스 (Interface) & 추상 클래스(Abstract Class)와 어댑터(Adapter)

    1. 캡슐화 - 하나의 객체가 그 안에서 모든 기능을 수행하도록 하는 것을 말함. - 캡슐이나 풍선처럼 막에 싸여 있다면 모든 기능을 다른 객체가 건드릴 수 없으며 명령만 내릴 수 있음. 2. 인터페이스(Interface) - 인터페이스란 클래스에 접근할 수 있는 방법이 무엇인지를 정의한 것. - 사람들을 보호하기 위해 만든 옛날의 성을 생각해보면, 성을 '클래스'라고 하고, 성벽과 성문으로 성을 둘러싸는 것을 '인터페이스'라고 생각할 수 있음. - 즉, 인터페이스를 통해 사람들이 성을 드나들 수 있음. 3. '구현한다(Implement)'의 의미 - 구현한다는 것은 메서드를 위해 만든 중괄호 안에 실행할 수 있는 기능을 넣는다는 의미임. - 인터페이스에서는 껍데기만 있고 실행될 코드가 없던 것에 직접 ..

  9. 2017.05.09 프레임 레이아웃을 이용한 버튼 클릭 시 그림 전환

    1. MainActivity.java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 package ... import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.Button; import android.widget.ImageView; public class MainActivity extends AppCompatActivity { ..

  10. 2017.05.08 연결 리스트로 구현된 리스트 ADT 테스트 프로그램

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 12..

  11. 2017.05.08 이중 연결 리스트의 다항식 프로그램

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 #include #include // 연결 리스트의 노드의 구조 typedef struct..

  12. 2017.05.07 스택 (Stack) & 큐 (Queue)

    1. MainActivity.class 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687package ... import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.Button;import android.widget.EditText; import java.util.Stack;import java.util...

  13. 2017.05.06 스피너 (Spinner)

    12345678910111213141516171819202122 String[] groups = {"친구", "가족"};... Spinner spinner = (Spinner) findViewById(R.id.spinner);... ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_spinner_item, groups); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);... spinner.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onIte..

  14. 2017.05.06 버튼을 누를 때 마다 스크롤뷰에 담겨진 레이아웃에 텍스트뷰 넣는 방법

    1. MainActivity.java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 package ... import android.graphics.Color; import android.os.Bundle; import android.support.v7.app.AppCompatActiv..

  15. 2017.05.06 instanceof 연산자

    instanceof 연산자 - 객체가 어떤 클래스의 인스턴스인지 확인할 수 있는 연산자. - 객체가 어떤 클래스의 인스턴스인지 확인하고 싶을 때 instanceof 앞에 오는 객체가 뒤에 오는 클래스의 인스턴스면 true 값을 리턴.

  16. 2017.05.06 클래스 변수(메서드)와 인스턴스 변수(메서드)

    클래스 변수 인스턴스 변수 모든 실제 객체에서 접근하여 그 값을 사용하거나 바꿀 수 있음. 각각의 실제 객체에서 사용됨. static 키워드를 붙임. static 키워드가 없음. 클래스라는 틀 안에 들어 있는 변수. 실제 객체 안에 들어 있는 변수. '클래스 이름' + '.' + '변수 이름'으로 접근. '실제 객체' + '.' + '변수 이름'으로 접근 1 2 3 4 public class Person { public static int total = 0; // 클래스 변수 public int age = 0; // 인스턴스 변수 } Colored by Color Scripter cs 클래스 메서드 인스턴스 메서드 static 키워드를 붙임. static 키워드가 없음. 클래스라는 틀 안에 들어 있는 메..

  17. 2017.05.06 접근 권한을 알려주는 키워드

    1. private : 같은 클래스 안에서만 접근하여 사용할 수 있음. 2. public : 아무 클래스에서나 접근하여 사용할 수 있음. 3. protected : 이 클래스에서 상속받은 자식 클래스에서만 접근하여 사용할 수 있음. - class 키워드 앞에는 public 키워드만 사용할 수 있음. -> 클래스는 다른 곳에서 접근할 수 있는지 없는지만 구분하면 되므로 public이 붙어 있으면 접근할 수 있고, public이 붙어 있지 않으면 접근할 수 없음. - 예외적으로 같은 파일이나 같은 패키지 안에 들어 있는 클래스는 public 키워드가 붙어 있지 않아도 접근할 수 있음. - import 키워드 뒤에 패키지와 클래스 이름을 넣어주면 다른 패키지에 있는 클래스도 접근할 수 있음.

  18. 2017.05.06 [C] 이중 연결 리스트(Doubly Linked List)

    이중 연결 리스트(Doubly Linked List) - 응용 프로그램에서의 특정 노드에서 양방향으로 자유롭게 움직일 수 있는 리스트 구조. - 하나의 노드가 선행 노드와 후속 노드에 대한 두 개의 링크를 가지는 리스트. - 링크가 양방향이므로 양방향으로 검색이 가능해짐. - 공간을 많이 차지하고 코드가 복잡해진다는 단점이 있음. - 실제 응용에서는 이중 연결 리스트와 원형 연결 리스트를 혼합한 형태가 많이 사용됨. - 헤드 노드(head node)라는 특별한 노드를 추가하는 경우가 많음. - 헤드 노드는 데이터를 가지고 있지 않은 특별한 노드를 의미함. cf) 헤드 포인터 : 리스트의 첫 번째 노드를 가리키는 포인터 - 헤드 노드가 존재하면 삽입, 삭제 알고리즘이 간편해짐. - 이중 연결 리스트에서의 ..

  19. 2017.05.05 Getter, Setter 함수

    - 클래스 안의 변수에 직접 접근하지 않고 함수를 만들어 그 결과 값을 참조하도록 변경할 때 대부분의 함수는 단순히 return 키워드를 사용해 변수를 함수의 결과 값으로 던져주는 역할만 하게 됨. - 이런 함수들을 Getter 함수라고 부르고 'get'이라는 단어 뒤에 변수의 이름을 붙여줌. - 거꾸로 변수에 값을 집어넣는 함수를 Setter 함수라고 하고 'set'이라는 단어 뒤에 변수의 이름을 붙여줌. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 class Leg { String left = "왼쪽"; String right = "오른쪽"; public String getLeft() { return left; } public void s..

  20. 2017.05.05 [안드로이드 스튜디오] 안드로이드 스튜디오 프로젝트 폴더 용량 줄이는 방법 (How to Reduce Android Studio Project Size)

    프로젝트 폴더 안에 있는 'build' 폴더를 삭제하면 된다. Delete the 'build' folder which is in the project folder. Infromation Resourece : http://stackoverflow.com/questions/31902142/reduce-android-studio-project-size

  21. 2017.05.05 다른 클래스에 MainActivity 클래스 전달

    1. MainActivity.java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 package ... import android.app.Activity; import android.os.Bundle; import android.support.v7.app.AppCompatA..

  22. 2017.05.05 이벤트 처리 방법

    1. 리스너(Listener)란? - 사용자가 어떤 명령을 내리는지 전달받아 처리하기 위해 대기하는 객체. 2. OnClickListener란? - 사용자가 화면을 클릭했을 때 미리 넣어둔 코드를 실행할 수 있도록 해줌. 3. 콜백(Callback) 메서드란? - 버튼을 클릭했을 때, 버튼에 미리 설정한 리스너 객체의 메서드를 호출하게 되는데 이렇게 PC나 스마트폰 등 컴퓨터에서 자동으로 어떤 메서드를 호출해주는 것을 '콜백'이라고 함. - 콜백이라는 말은 컴퓨터가 다시 사용자가 만든 메서드를 호출해준다는 의미이며, 이 때문에 이런 목적으로 만든 메서드를 '콜백 메서드'라고 함. 4. 이벤트(Event)와 이벤트 핸들러(Event Handler) - 사용자가 버튼을 클릭했을 때 버튼에 미리 설정한 OnC..

  23. 2017.05.05 비교 연산자 (Comparative Operation)

    - == 연산자는 그 앞과 뒤에 피연산자가 오고 두 개의 피연산자가 같으면 true, 다르면 false를 만들어 냄. - 두 개의 값이 다른지를 확인하는 연산자는 != - == 연산자나 != 연산자는 if문에 자주 사용됨. - 두 개의 문자열을 비교할 때 == 연산자를 사용하지 않음. -> String 자료형은 물론 그 외의 다른 객체 자료형으로 선언한 변수에 들어간 값을 비교할 때는 .equals() 메서드를 사용함. ex) 1 2 3 4 5 String a = "안녕"; String b = "안녕"; if (a.equals(b)) { ... } cs - 크기를 비교하는 연산자 : >, =,

  24. 2017.05.05 화면이 터치되었을 때, X 좌표 및 Y 좌표를 알아내는 방법

    1. MainActivity.java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 package ... import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.MotionEvent; import android.view.View; import android.widget.EditText; import android.widget.FrameLayout; public class MainActivity extends AppCompatActivity { Ed..

  25. 2017.05.04 What is BitCoin?

  26. 2017.05.03 String 자료형

    - String은 문자열을 담기 위한 객체 자료형. - 객체 자료형은 기본 자료형과 다른 특성이 있으며 new 연산자를 이용해서 만듦. - String 자료형은 워낙 많이 사용되기 때문에 자바에서는 new 연산자를 사용하지 않고 기본 자료형처럼 바로 데이터를 넣을 수도 있도록 해둚. - 문자열은 큰 따옴표("")안에 넣어줌. 1 2 String name = "Kim"; String name = new String("Kim"); cs

  27. 2017.05.03 상수 (Constant)

    - final : 상수를 만드는 키워드 - static을 붙이면 클래스 안에 있는 코드에서 뿐만 아니라 클래스 밖에서도 사용할 수 있음. (MainActivity.value07) 예) MainActivity.java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 public class MainActivity extends AppCompatActivity { EditText editText; EditText editText2; TextView textView2; int value05 = 100; final int value06 = 100; static final int v..

  28. 2017.05.03 숫자와 문자열을 서로 바꿔주는 메서드

    - 문자열 -> Integer.parseInt() -> 숫자 숫자 -> String.valueOf() -> 문자열 예) MainActivity.java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 public class MainActivity extends AppCompatActivity { EditText editText; EditText editText2; TextView textView2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.lay..

  29. 2017.05.03 자료형 (Type)

    Type Size boolean 1 Bit byte 1 Byte short 2 Byte int 4 Byte long 8 Byte float 4 Byte double 8 Byte char 2 Byte

  30. 2017.05.03 색 (Color)

    투명도 R G B # 00 ~ ff 00 ~ ff 00 ~ ff 00 ~ ff - 흔히 빨간색, 녹색, 파란색(Red, Green, Blue - RGB)라고 말하는 세 가지 색상을 조합하여 원하는 색상을 만들게 되는데 각 색상은 두 자리 16진수로 표시됨. - 색상 값을 지정할 때는 '#' 기호를 앞에 붙이게 되는데 이 기호와 RGB 색상 값 사이에 알파 값을 추가로 붙일 수 있음. -> 값이 00에 가까워질수록 투명해지고, ff에 가까워질수록 불투명해짐. #ffff0000 : (불투명한) 빨간색 #ff00ff00 : (불투명한) 초록색 #ff0000ff : (불투명한) 파란색

728x90


📖 Contents 📖