본문 바로가기

분류 전체보기

(35)
6. Flutter 소개 Flutter를 학습하기에 앞서 전반적인 기능 소개와 UI에 적합한 이유에 대해 알아보고 기록했다. 크로스플랫폼 프레임워크ios, mac, 안드로이드, window 등 어디에서나 개발이 가능하다.구글이 제작하였다. 웹 어플리케이션도 가능하다. 동작 원리기존 swift나 java로 만든 것은 운영체제와 직접적으로 소통하는 방식을 취한다. flutter는 기존 방식과 다르게 엔진이라는 것을 사용한다.엔진은 C나 C++로 구성되어 있다.(JVM 생각하기)엔진이 dart언어로 적힌 코드를 보고 화면 상에 구현한다. 운영체제 내에 내장된 플랫폼 위젯을 사용하지 않는다.엔진이 프레임워크를 동작시키고 엔진이 그려주는 역할을 수행하게 된다. 유저의 앱 실행 -> 앱이 flutter라이브러리 불러옴 -> UI렌더링..
5. 클래스와 상속(2) 이번 시간에는 클래스의 접근 지정자와 상속 그리고 static 에 대해 구체적으로 학습했다. 패키지api와 클래스들을 묶어놓은 디렉토리이다.같은 폴더 내에 있다는 개념으로 이해하면 쉽다. 접근 지정자private: 클래스 내부에서만 접근 가능default: 동일 패키지에서 허용(패키지 private) == 같은 디렉토리에 있는 다른 클래스들이 접근 가능protected: 동일 패키지에서 허용/자식 클래스에서 접근 가능public: 모든 클래스에서 접근 가능 -클래스 접근 지정 top level class: 자신을 감싸는 것이 아무것도 없는 클래스 아무것도 적혀 있지 않으면 default 접근 지정자를 가진 클래스이다. public class World{..}class Local{..} top level..
5. Dart의 클래스 이번 시간에는 dart의 클래스에 대해 학습하고 기록했다. 클래스 작성Flutter개발에서 클래스는 아주 중요한 부분이다. 거의 모든 컴포넌트들이 클래스로 이루어져 있다. 전에 배웠던 변수 선언에서 클래스 내부에서는 직접 타입을 명시하여 변수를 사용한다. 다른 언어들과 다르게 dart에서는 this를 사용하지 않는 것이 권고되고 있다. class Player{ final String name = 'nico'; //클래스 프로퍼티라고 부른다. 필드 같은 개념인 듯 int xp = 1500; void sayHello(){ print("Hi my name is $name"); //this.name 이 아니라 $name으로 작성한다 //메소드 내부에 같은 이름이 있다면 this 키워드 사용하..
4. Dart의 함수 dart함수에 대해 학습하고 기록했다.벌써 진도를 반이나 수강했다. 함수 정의일반적으로 함수 정의는 다른 기존 언어들과 비슷하다. String sayHello(String potato){ return "Hello $potato nice to meet you";}String sayHello(String potato)=>"Hello $potato nice to meet you";// => 이걸 사용하면 바로 리턴한다는 의미이다.void main(){ print(sayHello('nico'));} Named Parameters 원래의 방식으로 parameter를 처리하려면 그걸 보고 함수를 다시 보고 이해해야 한다.심지어 순서까지 맞춰야한다. 따라서 데이터가 많아지면 named arguments를 사용하는 ..
3. Dart의 데이터 dart의 여러 데이터 타입에 대해 학습했다 기본 데이터 타입기본 데이터 타입들은 클래스로 이루어졌다.보통 num 이라는 클래스를 상속받아서 만들어졌다. 따라서 num x = 12; x = 1.1; 이런 식도 가능하다. List void main(){ var numbers = [1, 2, 3, 4]; //정수형 리스트 생성 var giveMeFive = true; List numbers = [1,, 2, 3, 4]; // 이렇게 선언해도 가능! var numbers = [ 1, 2, 3, 4, if(giveMeFive) 5, //collection if => giveMeFive의 값이 true일 경우에 리스트에 5라는 요소가 ..
2. Dart의 다양한 변수들 기존 언어들과 다른 부분의 변수들에 대해 학습하고 기록했다. Dart도 많은 다른 언어들과 비슷하게 main 내부에서 실행된다.주의) 세미콜론 ( ; ) 을 반드시 작성해야 한다.dart에서는 일부러 세미콜론을 안쓰는 경우가 있다! var함수나 메소드 내부에 지역 변수를 선언할 때에는 var를 사용한다ex) var name = 'skt'; 클래스에서 변수나 프로퍼티를 선언할 때에는 타입을 지정하여 변수를 선언하는 방식을 사용한다. dynamic여러 가지 타입을 가질 수 있는 변수를 선언할 때 사용한다.void main(){ var name; name = 'nico'; name = 12; name = true;} //가능//flutter나 json으로 작업하다 보면 변수 타입을 모르는 경우..
1. Dart 소개 이번 탄소중립 프로젝트에서 프론트엔드 파트의 일부 기능을 구현하기로 해서 공부를 시작하게 되었다.Flutter를 다룰 예정이라 Flutter를 위해 만들어진 Dart언어를 선수한 뒤 진행할 계획이다. user interface에 최적화 되어있는 언어flutter로 크로스 플랫폼 앱을 제작할 수 있는 언어구글이 제작한 언어 쉽게 생각하면 flutter를 위해 만들어진 호환성이 매우 뛰어난 언어라고 볼 수 있다.이론상 기능은 간단하게 넘어가자 ex) react js를 사용하면 자바스크립트 자체를 수정할 수 없지만, flutter에서 막히는 부분이 있을 때 Dart는 수정 가능하다. 다른 언어 문법들과 비슷한 부분이 많아서 금방 진행할 수 있을 거 같다. 보통 vs code에서 flutter를 설치하면 같이..
4. 클래스와 상속(1) 이번 시간에는 클래스와 생성자에 대해 학습했다. 객체캡슐화상속다형성-캡슐화 : 내부를 볼 수 없게 하다 ---- 객체의 본질적인 특징이다. ---- 사용자가 사용 원리를 몰라도 된다. 클래스 => 객체의 틀 (메소드와 필드를 클래스 내부에 구현) 객체: 실체 (인스턴스 라고도 한다.) 객체가 생성되다 => new 키워드로 인스턴화 하다 접근 제한이 가능하다. -상속 : 재활용하다 ---- 수퍼 클래스 (부모 클래스) / 서브 클래스 (자식 클래스) ..