분류 전체보기(141)
-
[Java] 변수
변수란 무엇인가 변수는 하나의 값을 저장할 수 있는 메모리 공간을 의미한다. 프로그램은 작업을 처리하는 과정에서 데이터를 메모리에 저장할 경우가 생긴다. 이때 변수를 사용하는데 한 가지 타입의 값만 저장할 수 있다. 변수 선언 변수를 사용하기 전에 선언을 해야 한다. 변수 선언은 어떤 타입의 데이터를 저장할 것인지, 변수 이름을 결정한다. int x, y, z; double value; 변수 이름은 메모리 주소에 붙여진 이름으로 프로그램은 변수 이름을 통해서 메모리 주소에 접근한다. 변수 명명 규칙 첫 번째 글자는 문자 or $ or _ 이어야 하고 숫자로 시작할 수 없다. 영어 대소문자를 구분한다. 카멜케이스를 쓰는 것이 관례 문자 수 제한이 없다. 자바 예약어는 사용할 수 없다. 변수 이름만 보고 어..
2024.03.06 -
[Java] 자바 개발 환경 구축하기
자바 개발 도구 설치 자바 프로그램 개발하려면 Java SE의 구현체인 JDK를 설치해야 한다. Java SE 구현체는 JDK와 JRE가 있는데 JDK는 프로그램 개발에 필요한 JVM, 라이브러리 API, 컴파일러 등 개발 도구가 포함되어 있고 JRE는 프로그램 실행에 필요한 JVM, 라이브러리 API만 포함되어 있다. 자바 프로그램을 컴파일하기 위해선 JDK가 필요하고 바이트코드로 실행만 하려면 JRE만 있으면 되겠다. JDK는 오라클에서 무료로 다운로드 받을 수 있다. JDK 설치하면 bin 디렉토리에 컴파일러(javac.exe)와 JVM 구동 명령어(java.exe)가 포함되어 있다. 자바 환경 변수 PATH 설정하기 시작 -> 제어판 -> 시스템 및 보안 -> 시스템 -> 고급 시스템 설정 고급 ..
2024.03.01 -
[Java] 자바에 대해 알아보자
자바 소개 자바는 Oak라는 언어에서 시작되었는데 이는 가전제품에서 사용될 목적이었다. 인터넷 등장과 함께 인터넷에서 실행되는 프로그래밍 언어로 사용되었고 자바로 이름이 변경되었다. 썬 마이크로시스템즈에서 1995년에 JAVA 언어를 발표한 후 현재까지 사용되고 있는 프로그래밍 언어다. 1995년부터 1999년까지 윈도우 프로그램 개발이 주류여서 메모리 및 CPU를 많이 사용하기 때문에 윈도우 프로그래밍 언어로 부적합했다. 1999년부터 인터넷이 활성화되면서 웹 애플리케이션 구축 언어로 급부상을 하는데... 기업체 및 공공기관의 다양한 서버 운영체제에서 한 번 작성한 코드로 모든 곳에서 실행 가능한 언어가 자바뿐이었기 때문이다. 가전제품용 프로그래밍 언어에서 서버 애플리케이션 개발하는 언어로 자리 잡게 ..
2024.02.29 -
[Redux] Redux 기본
리덕스를 사용하려면 리덕스를 우선 설치해야 한다. npm install redux 웹 브라우저에서 앱 상태를 관찰하고 디버깅할 수 있도록 redux-devtools-extension 툴을 설치한다. npm install -D @redux-devtools/extension 앱 상태를 저장할 전역 스토어를 초기화 하기 위한 store 파일을 만든다. createStore 앱 상태를 보관하는 redux 저장소를 반환하는 함수다. 세 개의 인자를 전달받는다. reducer 현재 상태와 액션을 전달받아 다음 상태를 반환하는 함수다. 전달 받은 액션에 대응되는 작업을 하여 상태를 변경한다. preloadedState 초기 상태이다. enhancer 미들웨어나 서드파티 기능을 저장소에 추가하기 위해 지정한다. Red..
2023.05.11 -
[React] Context API 기본
리액트에 내장된 상태 관리 라이브러리인 Context API는 특정 컨텍스트 내의 모든 컴포넌트 간에 데이터를 공유할 수 있다. 명시적으로 다른 컴포넌트에 속성값 형태로 데이터를 전달할 필요가 없다. createContext 컴포넌트에 제공하고 읽을 수 있는 컨텍스트를 생성하는 함수다. 인자로 기본값을 전달할 수 있다. context.Provider Provider 하위에 있는 모든 컴포넌트들은 context 값을 공유한다. Provider의 value 속성값에 context 값을 대입할 수 있다. useContext 컨텍스트를 구독하고 읽을 수 있는 리액트 훅이다. 구독하고자 하는 컨텍스트 인스턴스를 전달하면 컨텍스트의 값을 반환한다.
2023.05.10 -
[Flutter] No Directionality Widget found. RichText widgets require a Directionality widget ancestor.
runApp에 Text 위젯을 바로 전달했더니 발생하던 에러다. 텍스트 방향을 고려하는 Text 위젯을 사용할 때 Directionality 위젯이 필요하다는 것을 알 수 있다. 참고로 Directionality는 텍스트 방향에 민감한 렌더 객체의 방향을 결정하는 위젯이다. textDirection 필드로 텍스트 방향을 명시하고 child 필드에 Text 위젯을 전달하였더니 잘 작동 되는 것을 볼 수 있었다. runApp(new Directionality( textDirection: TextDirection.ltr, child: Text("Hello, world"))); 하지만 상태바에 텍스트 값이 가려지는 걸 볼 수 있다..... 이러한 귀찮은 설정이 필요하기 때문에 MaterialApp이나 Widge..
2023.05.03