코딩에 관하여/Dart 언어에 관하여
DART [15.Static Keyword에 관하여]
Static은 인스턴스에 귀속 되지 않고 클래스에 통채로 귀속이 되는 것을 Static을 사용해서 저장합니다. void main(){ Employee aman = new Employee('김참새'); Employee bman = new Employee('박중부'); aman.printNameAndBuilding(); bman.printNameAndBuilding(); print("------------------------------------"); Employee.building = '안랩'; aman.printNameAndBuilding(); bman.printNameAndBuilding(); } class Employee{ static String building; String name; Emplo..
DART [14. Method Overriding에 관하여]
Method는 클래스 안의 함수를 Method라고 합니다. 이것을 덮어 쓰는 것을 Method Overriding이라고 합니다. void main(){ //Method Overriding //Method 덮어 쓰기 Parent parent = new Parent(3); Child child = new Child(3); print(parent.calculate()); print(child.calculate()); } class Parent { final int number; Parent( int number, ) : this.number = number; //Funtion 함수 //Method int calculate(){ return this.number * this.number; } } class Ch..
DART [13.Inheritance (상속)에 관하여]
상속이라는 것은 부모에게 자식이 무언가를 물려 받는 것을 상속이라고 합니다. void main(){ print ('---------------'); Idol rm = new Idol(name: 'rm' , group:'bts'); rm.sayName(); rm.sayGroup(); print('----------'); BoyGroup exo = new BoyGroup('xiu','exo'); //자식은 부모의 모든 것을 상속받지만 //부모는 자식의 어느것도 받지 않는다. //자식 끼리는 상속 받지 않는다. print(exo.name); print(exo.group); exo.sayMale(); } class Idol { String name; String group; Idol({ String name, ..
DART [12. getter와 setter에 대하여]
getter은 값을 가져올때 사용하고 setter은 값을 변경할때 사용합니다. void main(){ Idol muyaho = new Idol( name: '무야호', group: '할아버지' ); muyaho.sayName(); print(muyaho.name); muyaho.name = "호무야"; print(muyaho.name); } class Idol { String _name; //class 변수 앞에 _가 붙었다면 프라이빗 변수라는 뜻 입니다. String _group; Idol({ String name, String group, }) : this._name = name, this._group = group; void sayName(){ print('저는 ${this._name}입니다'); ..
DART [11.Class 선언 및 Constructor에 대하여]
Class는 OOP - Object Oriented Programming(객체지향 프로그래밍)에서 가장 중요한 부분입니다. class는 비슷한 성격의 또는 기능의 변수와 함수들을 모아놓은 것입니다. class를 선언할 떄는 main영역 밖에서 선언해야 합니다. class의 첫글자는 무조건 대문자여야 합니다. void main(){ Idol ohmygirl = new Idol(); ohmygirl.sayName(); } class Idol{ String name = '오마이걸'; void sayName(){ print('제 이름은 ${this.name}입니다'); } } 위 코드는 가장 간단하게 구현한 class입니다. 코드를 조금씩 뜯어 보겠습니다. class Idol{ String name = '오마이..
DART [10. Typedef에 대해서]
typedef를 실행하면 함수를 미리 시그니처화 합니다. 함수들을 변수처럼 바꾸기 위한 것을 Typedef라고 합니다. void main() { add(1,2); Operation oper = add; oper(1,2); } typedef Operation(int x,int y); void add(int x, int y){ print("${x+y}"); } 이런식으로 함수를 변수처럼 이용 할 수 있습니다. 근데 보시는것 처럼 왜쓰는건지 모르겠습니다. 코드만 복잡해 보이고 속도도 잡아 먹을것 같구.... 그렇습니다. 많이 안쓰입니다
DART [9. Funtion에 대하여]
함수는 프로그래밍에서 가장 중요한 요소입니다. 프로그래밍은 반복적인 활동을 효율적으로 할수 있게 하는데 그걸 도와주는 것을 함수라고 합니다. void main() { List testList = [1,1,2,3,5,8]; addList(testList); } addList(List testList){ int total = 0; for (int number in testList){ total += number; } print(total); } 함수명(파라미터){ 함수에서 작동할 명령어 } 함수를 사용하면 반복 작업들을 수월하게 해결 할 수 있습니다. 근데 파라미터에는 여러개가 있습니다. addList(List testList) 와 같은 그냥 파라미터와 addList(List testList,[int b =..
DART [8. Enum에 대하여]
Enum은 상태를 저장하는 옵션이다. enum Status{ approved, rejected, peding, } void main() { Status status = Status.approved; if(status == Status.approved){ print("OK"); }else{ print("NO"); } } 상태를 저장해서 쓰기때문에 오타날 위험이 줄어든다는 장점이 있다.