내가 할 수 있을까?
어려운 이유 → 생소함
Programming Language 또한 의사소통을 위한 언어이다.
배워야 하는 이유 : 이공계, 소프트웨어 취업
잘하려면 관심, 좋은 경험, 지구력 필요하다.
많은 노출이 필요하다.
Method
프로그래밍 언어 또한 사람이 만들었다.
누구나 이해할 수 있는 상식적인 구조로 되어있다.
dart 언어를 담는 프레임워크 → flutter
Main Method : 시작과 끝
Method 만드는 방법
- method의 종류, 즉 타입을 지정해야 한다.
- 어떤 방법과 기능(logic)으로 데이터를 처리할지 지정한다.
- Method 내에서 처리한 데이터의 값을 반환한다.
기본 모양
int addNumber(int data){
...
...
...
return 정수;
}
int → 데이터 타입
addNumber → method name
int data →데이터를 추가하는 부분
{ } 중괄호 → body, 기능
return → 반환 값
DartPad
DartPad
dartpad.dev
웹상에서 쉽게 dart를 코딩할 수 있는 사이트
문장에서 마침표를 찍듯이 마지막에 ;(세미콜론)을 꼭 붙여줘야 한다
method를 사용할 때 소괄호를 꼭 사용해야 한다
예제
void main() {
print(add());
}
int add(){
return 3+4;
}
Variable
변수 → 상자
데이터 → 내용
타입
문자 : String
숫자(정수) : int
실수 : double
참 거짓 : Boolean
=
같다는 뜻이 아니라 할당한다는 뜻이다.
Camel Case
가독성을 위해
예시 → isLogin
메소드도 변수에 할당할 수 있을까?
가능하다
예제
void main() {
int num = 77;
double num2 = 9.8;
bool isLogin = true;
print(num);
print(num2);
print(isLogin);
print("");
print("Hi, how are you?");
print("I am fine. Thanks, and you?");
print("I am good!");
int num3 = add();
print(num3);
}
int add(){
int a = 30;
int b = 20;
return a + b;
}
Class
Programming language → 통역사
Method → 기능
변수 → 상자
객체(object) → 보이던 보이지 않던, 일상생활에서 이름을 붙여서 말하는 모든 것
class → 설계도
인스턴스 → 생성된 객체
객체
현실세계 : 유형이던 무형이던 이미 존재하고 있는 것
프로그래밍 : 필요에 따라서 고민하고 정의해서 새롭게 만들어 내야 할 대상
Class
Classification(분류)의 줄임말
대문자로 시작
예제
class Person{
String name = "준서";
int age = 100;
int add(){
return 5+5;
}
}
void main() {
Person p = Person();
print(p.add());
}
생성자
dart는 typed language라고도 한다. 즉, 타입이 아주 중요하다.
따로 생성자를 만들지 않으면, dart는 기본 생성자를 자동으로 만든다.
flutter에는 null safety가 있다.
Non nullable 변수에는 null 값이 할당될 수 없음
클래스 내에서 생성된 변수에는 선언과 동시에 초기화 되어야 함
멤버 변수 : 클래스 안의 변수
생성자
인스턴스 초기화 메소드
클래스는 반드시 생성자를 가져야 함
생성자를 통해서만 인스턴스를 만들 수 있다.
AutoMobile() {
...
...
}
클래스 명과 똑같은 이름
argument를 받을 소괄호
중괄호로 body
Null safety
변수에 null 값이 필요하거나 값이 나중에 할당되어야 하는 경우를 위해서 이를 위한 해결책도 존재함
타입 뒤에 ? 붙이기
값이 할당 될 수도 있고 안될 수도 있다.
예제
class Person{
String? name;
Person(this.name);
}
void main() {
Person p1 = Person("준서");
print(p1.name);
Person p2 = Person("민수");
print(p2.name);
Person p3 = Person("철수");
print(p3.name);
Person p4 = Person("영아");
print(p4.name);
}
'공부 > flutter' 카테고리의 다른 글
| 코딩셰프 flutter 순한맛 시즌1 정리 (0) | 2023.07.17 |
|---|---|
| 코딩셰프 플러터 강의 로드맵 (0) | 2023.07.11 |