어제는 Flutter란 무엇일까라는 기초적인 내용을 배웠고
오늘은 좀 더 전문적인 과정을 배운 것 같다.
물론 노트북이 좋지 않아 대부분 수기로 작성하였고 vscode등
아직 설치하지 못한 것들이 많다.
1-10강까지 들었으며 플러터 플러그인 및 프로젝트 열기 및 실행,
변수선언, 반복문, 함수를 공부했다.
변수선언부터 너무 힘들었다 계속해서 반복해서 들을 예정이다.
우선 변수란 값을 담아두는 박스이다.
이런 변수는 vscode가 아닌 dartpad에서 실행했다.
다트에서 기본적으로 제공하는 타입이 있는데,
int, double, string, bool, list, set, map등이 있다.
위 타입들은 타입에 맞는 값만 기입이 가능하다.
이와 반대로 var은 2, 문자열, true, false등 모든 값을 사용가능하게하며
알아서 타입추론을 자동적으로 진행한다.
반복문이란 반복해서 무엇인가를 처리할때 사용하는 기술이다.
반목문에는 대표적으로 for문이 있는데,
이는 반복적인 문자를 심플하게 해결 가능하게한다.
또 for문은 ;(세미콜론)을 기준으로 3개로 나눠진다.
맨앞은 시작점이며 중간은 종료하는 조건이다. 그리고 마지막은 종료처리를 의미한다.
다음으로 괄호가 표시되어있는데 괄호 안에 있는 건 {비즈니스 로직 수행 영역}이다.
"for (var i=0; i<7; i++) {
비즈니스 로직 수행 영역
}"
반복문에는 for문 말고도 여러가지 종류가있다.
foreach,forin,while,dowhile등이 존재한다.
함수란 프로그램 내에서 특정 작업을 수행하기 위해
코드블록 내에 비즈니스 로직을 작성하여 원하는 값을 반환하거나 변수를 통해 데이터를 담아두는 기능이다.
함수의 구성
"반환타입, 함수이름(매게변수1, 매개변수2, .....) {
//비즈니스 로직 구현부
return 반환값;
}"
우선 반환타입은 함수가 반환하는 값의 타입을 명시하고있음며 반환값이 없으면 void를 사용한다.
반대로 반환값이 있으면 반환 타입으로 표시하는데 이는 다트 제공 타입과 똑같다.
함수이름은 함수를 호출할때 사용하는 이름이며 개발자들이 함수를 보고 추측하기에 함수 이름은
비즈니스 로직을 대표할 수 있는 명확한 이름을 작성해야한다.
매게변수는 함수가 입력박는 값들이며, 갯수 제한이 없고 콤마로 구분해 여러개를 정의할 수 있다.
로직이란 함수가 수행할 작업을 정의하는 코드 블록이다
반환값은 함수가 작업을 완료한 후 호출한 곳으로 돌려주는 값이다.
return키워드를 사용해 반환하며, 반환값은 1번 반환 타입과 같은 타임의 데이터를 반환해야한다.
강의에서 듣기론 메게변수를 표기하는 방법은 두가지가 있다고 했던 것 같다.
하나는 포지셔널 파라미터, 하나는 네임드 파라미터이다
포지셔널 파라미터는 (int a, int b)로 기입하면 되고 위치가 매우 중요하다고한다.
위치가 바뀔 시 결과값이 다르기 때문이다.
네임드 파라미터는 숫자가아닌 이름으로 기입되어있다.
({required int frontValue,required int endValue})로 표기하며
위치가 바뀌어도 이름으로 연산하기에 값이 동일하다고 한다.
또 네임드 파라미터에는 옵션이 있는데
이는 ?로 표기되며 값이 와도되고 안와도된다는 뜻을 가지고있다.
즉 위의 required는 필수로 불러와야할때 사용하면되고
?는 필수가 아닌 와도되고 안와도되는 상황에 사용하면된다.
하지만 required와 ? 둘 중 하나는 꼭 사용해야하며 안쓸시 오류가 난다.
또 ontap~가 있는데
on은 이벤트를 발생시킬때, tap는 앱 사용자의 터치를 표기하는 것이며
웹은 click으로 표기한다.뭐 둘중에 하나만 써도 상관없다고한다.
이렇게 변수선언,반복문, 함수등 기초지만 조금의 심화과정에 들어온 것 같다.
어렵다..그래도 계속 반복하고 연습해서 내걸로 만들겠다.