본문 바로가기

전체 글71

dart문법_List.generate List.generate()는 Dart에서 리스트(List)를 생성할 때 사용하는 유용한 메서드입니다. 주어진 크기만큼의 리스트를 생성하고, 각 요소를 특정 규칙에 따라 초기화할 수 있도록 해줍니다.기본 구조dart코드 복사List.generate(length, (index) => element)매개변수 설명length: 생성할 리스트의 길이 (즉, 리스트 안에 몇 개의 요소가 들어갈지 지정).(index) => element: 각 요소를 초기화하는 함수. 이 함수는 **현재 인덱스(index)**를 인자로 받아 해당 위치에 들어갈 값을 반환합니다.리턴값List.generate()는 길이가 length인 리스트를 반환하며, 각 요소는 (index) => element 함수에 따라 초기화됩니다.예제 1: .. 2024. 11. 12.
오늘 배운 이것 저것. Flutter 기초 MaterialApp vs CupertinoApp- MaterialApp은 Google의 디자인 - CupertinoApp은 Apple의 디자인 레이아웃 나누기세로 : Row, 가로 : Column 자료 파일 추가시 pubspec.yaml 수정할것.ex) assets 폴더가 주석 처리되어 있 SafeArea 위젯: 핸드폰 화며 상단의 알림표시줄을 가리지 않게 하는 위젯 Text 위젲 사용 예시Text("Woman", style: TextStyle(fontWeight: FontWeight.bold)), 2024. 11. 11.
프로젝트 진행하며 배운 몇 가지들..(문법) print(min(0, 5)); // 둘 중 작은 값 리턴print(max(0, 5));  // 둘 중 큰 값 리턴 int damage = max(0, attack - monster.defense); 굉장히 간단한 함수인데 별거 아니다 싶은데이걸 나는 조건문으로 처리했다. 눈에 익혀두고 자연스럽게 생각 날 수 있도록 해야겠다. 코드 리뷰시간에 max함수 보는데 코드가 간단하고 깔끔하게 정리되는 것이 놀라웠음. 2024. 11. 8.
3주차 과제 콘솔 전투 RPG 게임 트러블 슈팅 1. 문제 정의    - monster클래스를 만듬. game클래스에서 monster 생성자 생성하면서 정의.      game에서 정의된 monster클래스의 변수를 character클래스에서 사용하고 싶은데      방법을 알지 못함 2. 사실 수집    - character클래스에서 정의된 함수를 game에서 실행해야 함. 3. 원인 추론    - 클래스를 이용하는 방법 미숙 4. 조사 방법 결정    - 구글 서칭 5. 조사 방법 구현    - character클래스에서 정의된 함수를 game에서 호출할 때 monster를 매개변수로 전달     - 전달된 매개변수 monster을 이용하여 character클래스에서 사용 6. 결과 관찰    - 원하는 값 도출 2024. 11. 7.
다트문법_random함수 import 'dart:math'; int i = Random().nextInt(최대값); 최대값이 5면 0~4까지만 반환됨. 2024. 11. 6.
dart에서 파일 저장하기 var file = File('../save/result.txt');   fileSave(){     String contents = '입력내용 var file = File('../save/result.txt');  fileSave(){    String contents = '입력내용';     file.writeAsStringSync(contents);   } 2024. 11. 5.
프로젝트 진행하며 배운 몇 가지들.. final file = File('../assets/characters.txt');다른 폴더의 파일을 쓰고 싶은데 작업하는 폴더의 밖에 있는 폴더일 경우앞에 '..'을 추가하여 루트폴더에서 찾아가는 경로를 만들어 해결. List monsterList = []클래스를 '자료형'으로 하는 List를 만들 수 있음. RegExp regex = RegExp(r'^[a-zA-Z가-힣]+$');정규표현식 - 영문, 한글 2024. 11. 4.
2주차 과제 콘솔쇼핑몰 트러블 슈팅 1. 문제 정의    - 상품을 장바구니에 담을 때 유저가 입력하는 한글 값을 프로그램이 인식하지 못함. 2. 사실 수집    - 영문, 숫자, 한글을 입력하여 영문과 숫자가 입력되는지 확인. 3. 원인 추론    - 영문, 숫자를 정상적으로 인지하므로 코드 문제는 아닌 것으로 확인.    - 한글 인코딩 문제로 추정 4. 조사 방법 결정    - 구글 서칭    - 팀원간 문제 공유    - 튜터님께 문의 5. 조사 방법 구현    - 팀원이 공유해준 방법으로 settings.json 수정하여 확인    - 윈도우와 vscode 프로그램간 환경 문제로 상품명을 영문으로 수정 6. 결과 관찰    - settings.json파일 수정하였으나 변화 없어 원상복구함    - 상품명을 영문으로 수정하여 구현함 2024. 11. 1.
2주차 과제 후기 및 문제해결 콘솔 프로그램 만들기가 과제였음. git bash에서만 에뮬레이터 프로젝트만 생성해봐서 콘솔에 띄우는 방법을 몰라 몇시간 날림.→ 윈도우 기준 vscode에서 ctrl + shift + p 를 누르고 dart를 입력하면 콘솔 프로젝트 생성하는 부분이 나옴. 실행 방법은 bin 폴더에서(cd bin) dart main.dart 입력하면 실행됨.  String? text = stdin.readLineSync(); 문제숫자, 영문은 입력되는데 한글을 못받아줌. → 포기. 대상을 영문으로 고쳤음. 2024. 10. 31.
dart문법_메서드, 생성자, 제네릭클래스 메서드 객체 의 동작 을 정의하는 함수메서드 는 클래스 에 의존하고, 함수 는 클래스 에 의존하지 않는다는 차이가 있음 인스턴스 메서드 (Instance Method)class Person {   String name = '홍길동';   int age = 25;      void printName() {     print(name);   }      void printNameAndAge() {     this.printName();     print(age);   } }  정적 메서드 (Static Method): 인스턴스 변수 사용 불가. class Circle { static double pi = 3.14159; double radius = 0;   static void printPi() {   pr.. 2024. 10. 30.