안드로이드 스튜디오는 코드작성과 빌드가 분리됨! vscode와 같은 IDE(통합개발환경)을 사용하면, javascript 코드를 작성한 후에 “어떻게 컴파일을 하세요, 어떻게 빌드를 하세요.” 와 같은 내용을 작성한 기억이 없는데, 왜 안드로이드 스튜디오는 빌드에 관한 설명이 필요한 걸까? - 그 이유는 안드로이드 스튜디오는 코드작성과 빌드가 구분되어 있기 때문이다. 안드로이드 스튜디오는 코드 편집만 하는 IDE이고, 빌드는 gradle 파일에서 설정을 하고, 라이브러리를 받아서 수행한다. +참고 빌드와 컴파일? 빌드란 코드를 실행가능한 형태로 변환하는 것, 컴파일은 빌드 프로세스 안에 포함되며, 사용자가 작성한 코드를 기계어나 중간 언어로 변화시키는 것 이구나 매니패스트 파일이란? 이 코드들을 ‘빌드(..
팀노바(기초과정)에서 공부를 하면서, 받았던 피드백이다. 다음의 나쁜 습관을 고치기 위해서, 의식적으로 노력해야 겠다. - 코드의 반복이 많다 - 코드확장을 막 한다 - 어떤 기술을 쓸때, 어떤 이점이 있는지 고민하지 않는다. 막쓴다. - 과제에 적합한 노력을 하지 않는다. 곁다리에 신경쓴다. (인정욕구 ↑) - 학습 우선순위를 먼저 생각하지 않는다 - 과제를 할때, 어떻게 공부를 할지 멘토링 받고 설계하지 않는다. - 메소드를 여러개 이곳 저곳에 쓴다 - 된다, 안된다는 것을 기준으로 판단해서 과제 목표에 정확히 타깃하지 못한다 - 도파민형 인간이라 추진력이 좋지만, 성실함이 부족하다 - 무관심한 영역에는 취약하다 - 평가에 대해 예민하다 - 상대 팀원을 잘 관찰하고 흡수하려는 노력이 없다 - 처음 본..
enum 클래스, List 클래스 및 Map 클래스는 모두 Java 프로그래밍에서 데이터를 구조화하고 조작하는 데 사용되는 클래스들입니다. 공통점 데이터 저장 및 관리: 모두 데이터를 저장하고 조작하는 목적으로 사용됩니다. 컬렉션: 모두 컬렉션 프레임워크의 일부로서, 여러 개의 값을 다루는 데 도움을 줍니다. 차이점 Enum 클래스 enum 클래스는 고정된 값의 집합을 나타내는데 사용됩니다. 보통 상수 값을 표현하기 위해 사용되며, 값이 제한된 경우에 유용합니다. enum 클래스의 각 요소는 해당 열거 타입의 유일한 인스턴스입니다. switch 문에서 사용할 때 코드의 가독성을 높일 수 있습니다. enum Day { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRI..
객체참조 //참조형 //c2 = c1 ; c2가 c1의 풍선(값)을 가리킨다. c1과 값을 공유한다 System.out.println("____________"); Camera c1 = new Camera(); Camera c2 = new Camera(); c1.name = "카메라1"; c2.name = "카메라2"; System.out.println(c1.name); System.out.println(c2.name); c2 = c1; //c2가 c1의 값을 grab!!! c2와 c1이 값을 공유 System.out.println(c1.name); System.out.println(c2.name); c2.name = "고장난 카메라"; //c2만 바뀌어도 c1 값이 바뀜. 왜냐? 값을 공유하니까! Sy..
여러 그림을 보아도 이렇다할 규칙을 찾기 어려웠다. 그래서 그냥 원의 방정식을 사용해서 내부에 있는 점들만 *로 나올 수 있도록 했다 1. 입력값 = 반지름 입력값은 정수로 받는다 입력값이 커질수록 반지름이 커져 원의 범위가 넓어지는 형태 2. 일단 사각형을 작성하였다. for (int i = -r; i
풀이방법 1. 변곡점 기준으로 도형을 자른다 2. 위 삼각형의 너비길이를 기준으로, 아래 삼각형의 너비길이를 구한다. 3. 주의 ! - 두번째 반복문식에서는 i와 관련있는 식을 쓸것, 그렇지 않으면(만약 number 기준) 사각형이 만들어짐 import java.util.Scanner; public class 마름모 { public static void main(String[] args) { int number = scan.nextInt();// 스캔값이 1일때 그냥 *이 나오는 것을 피하고 싶다면 +1을 해도 좋다 int number = scan.nextInt(); int maxWidth = 2 * number -1; //1. 위 삼각형 for (int i = 0; i < number; i++) { f..
자바의 입력기능(Scanner) 자바에서 데이터를 출력하는 명령은 System.out이고, 데이터를 입력받을때는 System.in을 이용합니다. 데이터를 입력받을때는 표준 JAVA API인 Scanner 클래스를 사용합니다 스캐너 사용방법 0. import java.util.Scanner; 1. 스캐너 객체 생성 Scanner scan = new Scanner(System.in); 2.입력받을 데이터 타입에 따른 메서드 호출 scan.next(), scan.nextLine(), scan.nextInt(), scan.nextDouble() 등 -next(): 공백을 포함하지 않는 문자열을 입력받을 때 -nextLine(): 공백을 포함한 문자열을 입력받을 때 -nextInt(): 정수를 입력받을 때 -ne..
명시적 형변환과 묵시적 형변환은 반대 개념입니다. 자동형변환(묵시적 형변환 Implicit Casting) 작은 데이터 타입에서 큰 데이터 타입으로 값이 자동으로 형변환되는 것을 말합니다. 이때 데이터의 손실이 없거나 무시할 수 있는 경우 등이 해당됩니다. ex) 큰 바구니에 작은 사과를 담는 경우 자동으로 상수부분이 float => double로 자동 형변환이 일어납니다. 더 큰 데이터 타입인 double이 더 작은 데이터 타입인 float 보다 표현범위가 크므로, 변수에 정보손실 없이 값을 저장할 수 있다. 명시적 형변환(Explicit Casting) 큰 데이터 타입에서 작은 데이터 타입으로 값이 변환되는 것을 의미합니다 이때 명시적으로 변환 연산자를 사용해야 합니다! 이때는 데이터 손실이 일어날 ..