한 달여간 플러터 강의를 들었고, 전반적인 흐름은 이해 되었으나, 중후반부는 대충 넘긴 부분이 많아 다시 복습할 필요가 있고, 그것이 아니라도 설명을 할 줄 알아야 제대로 배웠다고 생각하기 때문에. 강의하듯 학습일지를 작성해 보려 한다.

Flutter란?

Google에서 개발한 크로스 플랫폼 개발 프레임워크
: iOS와 Android, 모바일과 데스크톱, 웹까지 모두 지원
*iOS 개발도 할 경우 Mac필요.

장점:

배우기 쉽다, 생산성 높, 다양한 디스플레이에 맞는 레이아웃 지원, native에 가까운 성능, 오픈소스, 심플하고 예쁜 디자인

프로그래밍 언어 종류

저급언어: 기계어로 이루어진 0과 1 혹은 어셈블리어
고급언어: compile 필요한 대부분의 프로그래밍 언어

Dart란

  1. 2008년 개발. Javascript에서 영감을 받아 개발. 유사성 높.

  2. 객체지향. 두 가지 컴파일러 보유(JIT, AOT)

    JIT Compiler(Just In Time)
    코드 실행 시점에 컴파일 수행. 빠른 개발과 디버깅
    Hot-Reload/Hot-Restart 구현시 활용
    AOT Compiler (Ahead of Time)
    사전에 미리 컴파일 수행하여 높은 실행속도.
    코드 내부 보호. 컴파일 후 배포 가능한 바이너리 파일 생성

  3. 강력한 타입 시스템 갖춤

    강력한 타입 시스템이란 by Google Bard :
    프로그램에서 사용하는 변수, 함수, 연산 등의 타입을 정확하게 정의하고, 서로 맞는 타입만 사용하도록 엄격하게 관리하는 것.

    강력한 타입 시스템의 장점:

    • 코드 오류를 줄여줘:
      레고 블록처럼 서로 맞는 타입만 사용하도록 하기 때문에, 코드를 작성하면서 실수를 할 가능성이 줄어들고, 프로그램이 더 안정적으로 작동하게 돼.
    • 코드를 더 안전하게 만들어줘:
      잘못된 타입의 값이 변수에 들어가는 것을 막아서, 메모리 오류나 보안 취약점을 방지하는 데 도움이 돼.
    • 코드를 더 쉽게 이해하고 유지 관리할 수 있게 만들어줘:
      각 변수, 함수, 연산 등이 어떤 역할을 하는지 명확하게 알 수 있기 때문에, 코드를 훨씬 더 쉽게 이해하고 관리할 수 있게 돼.
    • 코드 실행 속도를 높여줄 수 있어:
      컴파일러가 코드를 더 효율적으로 최적화할 수 있도록 도와줘서, 프로그램이 더 빠르게 실행될 수 있게 돼.
  4. 사용 가능 프로그램: DartPad, Android Studio, VS Code

Dart 기본

변수: 특정한 데이터를 담아 두는 그릇. 타입을 함께 선언
타입: 기본형인 bool(참, 거짓), int(정수), double(실수), String(문자열), Null(값없음), 자료형인 List, Set, Map(파이썬의 딕셔너리 비슷), 확장형인 Object, Enum, Future, Stream등이 있음.

  • var: 최초 부여된 타입 고정
  • dynamic: 코드 진행 중에 변환 가능

상수: const(compile 시점에 상수 처리), final(프로그램 진행 중 상수 처리)

profile
개발자꿈나무

0개의 댓글