๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ
-
[Java] Github API ์ฌ์ฉ๋ฒAndroid/Java 2021. 1. 14. 02:28
์ด ๊ธ์ "์จ๋ผ์ธ ์๋ฐ ์คํฐ๋ ๋ด์ฉ"์ ์ ๋ฆฌํ ๊ธ์ ๋๋ค. Github Token ๋ฐ๊ธ Github API๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์๋ Github ํ์ด์ง๋ฅผ ๊ฐ์ Personal access token์ ๋ฐ๊ธ๋ฐ์์ผ ํฉ๋๋ค. Github์์ ํ๋กํ์ ํด๋ฆญ ํ Setting -> Developer setting -> Personal access tokens ์์ผ๋ก ํด๋ฆญํฉ๋๋ค. ๋ฐ์ ๊ทธ๋ฆผ์์ token์ ์ฌ์ฉํ๋ scope๋ฅผ ์ค์ ํฉ๋๋ค. ์ ๋ issues์ comment๋ฅผ ํ์ธํ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ repo๋ง ํด๋ฆญํ๋ฉด ๋ฉ๋๋ค. Postman ๋ค์ด๋ก๋ https://www.postman.com/downloads/ ๊ณต์ ํํ์ด์ง์ ๋ค์ด๊ฐ์ Postman์ ๋ค์ด๋ก๋ ๋ฐ์ต๋๋ค. Postman์ ๊ฐ๋ฐํ API๋ฅผ ํ ์คํธํ๊ณ , ํ ์คํธ ๊ฒฐ..
-
[Java] JUnit5์ด๋? JUnit ํ ์คํธ ๋ฐฉ๋ฒAndroid/Java 2021. 1. 13. 20:11
์ด ๊ธ์ "์จ๋ผ์ธ ์๋ฐ ์คํฐ๋ ๋ด์ฉ"์ ์ ๋ฆฌํ ๊ธ์ ๋๋ค. JUnit5๋? JUnit์ ์๋ฐ ํ๋ก๊ทธ๋๋ฐ์ฉ ๋จ์ ํ ์คํธ๋ฅผ ํ ์ ์๋ ํ๋ ์์ํฌ์ ๋๋ค. ์์ฆ ํ๋ก๊ทธ๋๋ฐ์์๋ ํ ์คํธ ์ฃผ๋ ๊ฐ๋ฐ ๋ฉด์์ ์ค์์ ์ด ๋ถ๊ฐ๋ ๋งํผ ํ์ตํ ํ์๊ฐ ์์ต๋๋ค. JUnit5์ ์ด์ ๋ฒ์ ๊ณผ๋ ๋ฌ๋ฆฌ, JUnit5 = JUnit Platform + JUnit Jupiter + JUnit Vintage ์ฌ๋ฌ ๊ฐ์ ๋ชจ๋๋ก ๊ตฌ์ฑ๋์์ต๋๋ค. JUnit Platform JUnit Platform ์ JVM์์ ํ ์คํธ ํ๋ ์์ํฌ๋ฅผ ์์ํ๊ธฐ ์ํ ๊ธฐ๋ฐ์ ์ ๊ณตํฉ๋๋ค. ๋ํ, ํ๋ซํผ์์ ์คํ๋๋ ํ ์คํธ ํ๋ ์ ์ํฌ ๊ฐ๋ฐ์ ์ํ TestEngine API๋ฅผ ์ ์ํฉ๋๋ค. ๋ชจ๋๊ฐ ์ ์๋ IDEs(Intellj, Eclipse, VS Code), ๋น๋..
-
[Java] ์ฐ์ฐ์ (์ฐ์ , ๋นํธ, ๊ด๊ณ, ๋ ผ๋ฆฌ)Android/Java 2021. 1. 12. 21:08
์ด ๊ธ์ "์จ๋ผ์ธ ์๋ฐ ์คํฐ๋ ๋ด์ฉ"์ ์ ๋ฆฌํ ๊ธ์ ๋๋ค. ์ฐ์ ์ฐ์ฐ์ ์ฐ์ ์ฐ์ฐ์๋ ํผ์ฐ์ฐ์(๊ธฐ๋ณธ ๋ฐ์ดํฐ)์ ๋ํด ๊ฐ๋จํ ์ฐ์ ์ฐ์ฐ์ ์ํํ๋๋ฐ ์ฌ์ฉํ ์ ์๋ ์ฐ์ฐ์์ ๋๋ค. ์ด ์ฐ์ฐ์๋ ํ๋ ๋๋ ๋๊ฐ์ ํผ์ฐ์ฐ์์ ์ ์ฉํ ์ ์๋ ์ฐ์ฐ์์ ๋๋ค. intํ ํ์ ๋ณด๋ค ๋ฒ์๊ฐ ์์ ๋ฐ์ดํฐ ์ฐ์ฐ ์ intํ์ผ๋ก ๋ณํ ํ ์ฐ์ฐ์ ํฉ๋๋ค. intํ ํ์ ๋ณด๋ค ํฐ ๋ฒ์์ ๋ฐ์ดํฐ๊ฐ ์๋ค๋ฉด ์ฐ์ฐ ๊ฒฐ๊ณผ๋ intํ ๋ณด๋ค ํฐ ํ์ ์ด ๋ฐํ๋ฉ๋๋ค. public class Main { public static void main(String[] args) { int num1 = 500; int num2 = 200; System.out.println(num1+num2); // + operator -> 700 System.out.prin..
-
[Java] ์๋ฐ ๋ฐ์ดํฐ ํ์ , ๋ณ์ ๊ทธ๋ฆฌ๊ณ ๋ฐฐ์ดAndroid/Java 2021. 1. 11. 22:36
์ด ๊ธ์ "์จ๋ผ์ธ ์๋ฐ ์คํฐ๋ ๋ด์ฉ"์ ์ ๋ฆฌํ ๊ธ์ ๋๋ค. ๊ธฐ๋ณธํ ํ์ (Primitive type) ์๋ฐ๋ ์ด 8๊ฐ์ง์ ๊ธฐ๋ณธํ ํ์ ์ ๋ฏธ๋ฆฌ ์ ์ํ์ฌ ์ ๊ณตํฉ๋๋ค. ๊ฐ ํ์ ์๋ ๊ธฐ๋ณธ๊ฐ๋ค์ด ์กด์ฌํ๊ธฐ ๋๋ฌธ์ Null ๊ฐ์ด ์กด์ฌํ ์ ์๊ณ , Null๊ฐ์ ๋ฃ๊ณ ์ถ๋ค๋ฉด Wrapper ํด๋์ค๋ฅผ ํ์ฉํด์ผ ํฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์ ์ค์ ๊ฐ์ผ๋ก ์คํ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ๋ฉ๋๋ค. ๊ธฐ๋ณธํ ํ์ ์ ํน์ง์ CPU๋ ์ด์์ฒด์ ์ ๋ฐ๋ผ ๋ณํ์ง ์๋๋ค๋ ํน์ง์ด ์์ต๋๋ค. ์ฐธ์กฐํ ํ์ (Reference type) ๊ธฐ๋ณธํ ํ์ ์ ์ ์ธํ ํ์ ๋ค์ ๋ชจ๋ ์ฐธ์กฐํ ํ์ ์ผ๋ก new ํค์๋๋ก ๊ฐ์ฒด๋ฅผ ์์ฑํ์ฌ ๋ฐ์ดํฐ๊ฐ ์์ฑ๋ ์ฃผ์๋ฅผ ์ฐธ์กฐํ๋ ํ์ ์ ๋๋ค. ์ฐธ์กฐ ํ์ ์ ๋ฐ์ดํฐ์ ํฌ๊ธฐ๊ฐ ๊ฐ๋ณ์ , ๋์ ์ด๊ธฐ ๋๋ฌธ์ ๋์ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ๋ ํ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ๋ฉ๋๋ค. ์ฐธ์กฐ ํ์ ์..
-
[Java] JVM์ด๋? ์๋ฐ ์ฝ๋ ์คํAndroid/Java 2021. 1. 11. 01:28
์ด ๊ธ์ "์จ๋ผ์ธ ์๋ฐ ์คํฐ๋ ๋ด์ฉ"์ ์ ๋ฆฌํ ๊ธ์ ๋๋ค. JVM์ด๋? Java๋ ๋ค๋ฅธ ์ธ์ด์ ๋ฌ๋ฆฌ ํ๋ซํผ์ ์ข ์์ ์ด์ง ์๋ค๋ ํน์ง์ ๊ฐ์ง๊ณ ์์ต๋๋ค. ์ด๋ฌํ ํน์ง์ ๊ฐ์ง ์ ์๊ฒ ๋์์ฃผ๋ ์ํํธ์จ์ด๊ฐ JVM์ ๋๋ค. JVM์ Java Virtual Machine ์ฝ์ด๋ก ์๋ฐ ํ๋ก๊ทธ๋จ์ ์คํ์ํค๊ธฐ ์ํด ํ์์ ์ธ ๋ฐํ์ ํ๊ฒฝ์ ์ ๊ณตํ๋ ํ๋ก๊ทธ๋จ์ ๋๋ค. JVM์ ์ฃผ์ ์ญํ ๋ก ์๋ฐ ์์ค์ฝ๋๊ฐ ์ปดํ์ผ์ ํ์ฌ ๋ฐ์ดํธ์ฝ๋๋ก ๋ณํ๊ฒ ๋๋ฉด ๋ฐ์ดํธ์ฝ๋๋ฅผ ๊ฐ ์ด์์ฒด์ ์ ๋ง๋ ๊ธฐ๊ณ์ด๋ก ๋ค์ ๋ฒ์ญํ๋ ์ญํ ์ ๋ด๋นํ๊ณ ์์ต๋๋ค. ๊ทธ ์ธ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ, Garbage Collection ์ด๋ผ๋ ์ค์ํ ์ญํ ์ ์ํํ๊ณ ์์ต๋๋ค. ์ปดํ์ผ ๋ฐฉ๋ฒ ์๋ฐ๋ ๋น๋ ์, ์๋ฐ ํ์ผ(.java)์ ์๋ฐ ์ปดํ์ผ๋ฌ(javac.exe)๋ฅผ ์ด์ฉํ์ฌ JV..
-
[Android] Broadcast? Broadcast Receiver๋?Android 2021. 1. 8. 16:34
์ด ๊ธ์ ์๋๋ก์ด๋ 4๋ ์ปดํฌ๋ํธ ์ค ํ๋์ธ Broadcast Receiver์ ๊ดํ ๊ธ์ ๋๋ค. Broadcast ๊ฐ์ ์๋๋ก์ด๋ ์ดํ๋ฆฌ์ผ์ด์ ์ Publish-Subscribe ํจํด๊ณผ ์ ์ฌํ๊ฒ ์๋๋ก์ด๋ ์์คํ ๋๋ ๋ค๋ฅธ ์๋๋ก์ด๋ ์ดํ๋ฆฌ์ผ์ด์ ์ผ๋ก๋ถํฐ ๋ธ๋ก๋์บ์คํธ ๋ฉ์์ง๋ฅผ ๋ฐ์ต๋๋ค. ์์๋ก ํด๋ํฐ์ด ์ผ์ง ๋, ํด๋ํฐ์ด ์ถฉ์ ํ ๋์ ๊ฐ์ ์ด๋ฒคํธ๋ฅผ App์ ๋ฑ๋ก์ ํ๊ฒ ๋๋ฉด ์ด๋ฒคํธ ๋ฐ์ ์ ๋ธ๋ก๋์บ์คํธ ๋ฉ์์ง๊ฐ ์ ๋ฌ๋ฉ๋๋ค. ์์คํ ์ ํน์ ๋ธ๋ก๋์บ์คํธ ์ ํ์ ๋ฐ์ App์ผ๋ก ๋ธ๋ก๋์บ์คํธ๋ฅผ ์๋์ ์ผ๋ก ๋ผ์ฐํ ํฉ๋๋ค. ๋ธ๋ก๋์บ์คํธ์ ์๋ตํ๊ณ ๋ฐฑ๊ทธ๋ผ์ด๋ ์์ ์ ํ ๋ ๋จ์ฉํ์ง ์๋๋ก ์กฐ์ฌํด์ผ ํฉ๋๋ค. Broadcast ์ฌ์ฉ ๋งค๋ํ์คํธ ์์ ๋ธ๋ก๋์บ์คํธ ๋ฆฌ์๋ฒ๋ฅผ ์ ์ธํฉ๋๋ค. ๋ธ๋ก๋์บ์ํธ ๋ฉ์์ง๋ Intent ๊ฐ์ฒด๋ก w..
-
[Java] ๋์์ธ ํจํด(Decorator ํจํด)Android/Java 2021. 1. 8. 11:14
์ด ๊ธ์ "์ธํ๋ฐ Java ๋์์ธ ํจํด" ๊ฐ์๋ฅผ ๋ฃ๊ณ ๊ณต๋ถํ ๋ด์ฉ์ ๋ฐํ์ผ๋ก ๊ธ์ ์์ฑํ์์ต๋๋ค. Decorator ํจํด์ด๋? ์์ ํด๋์ค๋ฅผ ์ค์ ์ผ๋ก ์์๊ณผ ํฉ์ฑ์ ์ด์ฉํ์ฌ ํฐ ํด๋์ค๋ฅผ ๋ง๋๋ ํจํด์ ๋๋ค. ์ค์ฌ๋๋ ํด๋์ค๋ ๋ณ๊ฒฝ ์์ด ์ถ๊ฐ ํด๋์ค๋ฅผ ์์ฑํ์ฌ ์์์ ํ๋ฉด์ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋๋ ๋ฐฉ์์ ๋๋ค. ๋ชจ๋ฐ์ผ UI ๊ฐ๋ฐ์ ์ฃผ๋ก ๋ง์ด ํ์ฉ๋๋ ์๋ ํจํด์ ๋๋ค. Decorator ์ฌ์ฉ public abstract class Widget { public abstract int getColumns(); public abstract int getRows(); public abstract String getRowText(int row); public void show(){ for (int i = 0; i < getRo..
-
[Java] ๋์์ธ ํจํด(Adapter ํจํด)Android/Java 2021. 1. 7. 20:19
์ด ๊ธ์ "์ธํ๋ฐ Java ๋์์ธ ํจํด" ๊ฐ์๋ฅผ ๋ฃ๊ณ ๊ณต๋ถํ ๋ด์ฉ์ ๋ฐํ์ผ๋ก ์์ฑํ ๊ธ์ ๋๋ค. Adapter ํจํด์ด๋? ํ๋์ ํด๋์ค์ ์ธํฐํ์ด์ค๋ฅผ ๋ค๋ฅธ ํด๋์ค์ ์ธํฐํ์ด์ค๋ก ๋ณํํ ๋ ์ฃผ๋ก ์ฐ๋ ํจํด์ ๋๋ค. ์ด๋ ์ ๋ ๊ท๋ชจ๊ฐ ์๋ ๋ด๋ถ ์์คํ ์์ ์๋ก์ด ํด๋์ค๋ฅผ ์ ์ฉํ๋ ค๊ณ ์ธํฐํ์ด์ค๋ฅผ ๋ชจ๋ ์์ ํ๋ ๊ฒ์ ์ฌ์ค์ ๋ถ๊ฐ๋ฅํฉ๋๋ค. ์ด๋ด ๋ ๊ธฐ์กด์ ์ธํฐํ์ด์ค๋ฅผ ๋ค๋ฅธ ํด๋์ค์ ์ธํฐํ์ด์ค๋ก ๋ณํํ์ฌ ์ฌ์ฉํฉ๋๋ค. ์ด๋ฆ ๊ทธ๋๋ก ์ ๊ธฐ ์ด๋ํฐ๋ผ๊ณ ์๊ฐํ์ฌ ๋ค๋ฅธ ์ ๊ธฐ๋ ๊ธฐ๊ณ์ฅ์น๋ฅผ ์๋ก ์ฐ๊ฒฐํด์ ์๋ํ๊ฒ ํด์ฃผ๋ ๋๊ตฌ์ธ ๊ฒ์ฒ๋ผ Adapter ํจํด๋ ๋น์ทํ๊ฒ ์๋ํฉ๋๋ค. ์๋๋ก์ด๋์์๋ Adapter ํจํด์ ์์ฃผ ์ฌ์ฉ๋๊ณ ์์ต๋๋ค. ex) ListView, RecyclerView .. Adapter ํจํด ์ฌ์ฉ public in..