반응형

Study 50

3. M1맥에서 Anaconda 가상환경생성 및 패키지 설치하기

이번에는 M1맥에서 가상 환경에 OpenCV를 설치하는 방법을 포스팅하려고 한다. 윈도우에서는 쉽게 명령어로 설치를 했었지만, 맥에서는 꽤나 고생해서 포스팅을 하게 되었다. 진행 순서는 다음과 같다. conda 가상 환경 설정 가상 환경 목록보기 가상 환경 생성 패키지 설치하기 터미널로 설치하기 pip가 아닌 conda로 설치하기 가상 환경 설정 https://pcseob.tistory.com/13 2. M1 맥에서 파이썬 개발환경 구축(아나콘다, 파이참) 저번 포스팅에서는 윈도우에서 파이썬 개발환경 구축을 했다면, 이번에는 맥에서 개발환경 구축을 해보겠다. 윈도우와 동일하게 아나콘다를 설치하고 IDE는 파이참을 사용할 예정이다. 자 시작 pcseob.tistory.com 맥에서 파이썬 개발환경 구축을 ..

Study/Python 2021.09.12

7. StatefulWidget의 LifeCycle(생명주기) 그리고 setState

이전 포스팅은 state와 widget 그리고 statelessWidget에 대해서 알아보았다. 이번에는 statefulWidget과 상태 관리(state management)에 관해서 알아보도록 하자. 오늘도 어김없이 이론이다. 하지만 이번에는 굉장히 중요한 내용이니 반드시 읽고 넘어가기 바란다. statefulWidget은 무엇일까? statefulWidget은 stateless와 다르게 상태를 변하게 할 수 있는 위젯이다. 앞서 포스팅에서 말한 것처럼 플러터에서 상태라는 것은 애플리케이션에 영향을 주는 데이터이다. 그래서 애플리케이션의 데이터가 변경이 된다면 그에 맞게 화면이 바뀌어야 한다. 유저가 버튼을 클릭하면 스낵바가 올라온다던가 하는 행동이다. 그렇다면 statefulWidget으로 애플리케..

Study/Dart,Flutter 2021.08.30

6. Flutter의 Widget과 State 그리고 StatelessWidget과 StatefulWidget

앞서 포스팅에서는 Dart언어의 비동기식을 알아보았다. 이번에는 Dart의 가장 유명한 프레임워크이자 크로스 플랫폼인 Flutter의 State에 관해서 자세하게 알아보자. 오늘도 어김없이(재미없는) 이론 시간이다. Flutter를 잠깐 사용한다면 굳이 이론적인 내용은 알아야 하나 하지만, 조금이라도 깊게 파고들거나 상태 관리(State Management)에 알고자 한다면 반드시 알고 넘어가야 한다. Widget이란 무엇일까 Flutter의 모든 것이 Widget이라고 해도 과언이 아닐 정도로 모든 것이 Widget으로 이루어져 있다. 색이 있는 상자, 버튼, 사진 텍스트 상자 화면 전체까지 Widget이다. 화면을 Widget단위로 만든다고 생각하면 아주 좋다. Widget에 관하여 좀 더 자세하게 ..

Study/Dart,Flutter 2021.08.19

2. M1 맥에서 파이썬 개발환경 구축(아나콘다, 파이참)

저번 포스팅에서는 윈도우에서 파이썬 개발환경 구축을 했다면, 이번에는 맥에서 개발환경 구축을 해보겠다. 윈도우와 동일하게 아나콘다를 설치하고 IDE는 파이참을 사용할 예정이다. 자 시작해보자. 아나콘다를 설치하도록 하자 https://www.anaconda.com/products/individual Anaconda | Individual Edition Anaconda's open-source Individual Edition is the easiest way to perform Python/R data science and machine learning on a single machine. www.anaconda.com 위의 사이트로 들어가서 Download를 눌러도 되지만, 그 아래에 있는 Get Ad..

Study/Python 2021.08.08

1. 윈도우에서 파이썬 개발환경 구축하기 (파이참, 아나콘다)

코딩 시작하기 전 가장 힘든 것 중 하나가 개발환경 구축이라고 해도 과언이 아니다. 개발환경 구축을 몇 번 해본 사람들은 알겠지만, 게임이나 일반 응용프로그램처럼. exe파일을 실행한다고 해서 끝나는 게 아니기 때문이다. 환경변수 설정은 기본이고, 설치하려는 시스템의 설정도 확인해야 하고 버전도 확인을 해야 한다. 그래서 대학생 때 교수님이나 조교에게 개발환경 구축하다가 오류가 생겨 물어봐도 기기마다 설정이 다르므로 해결 못하는 경우가 대부분이다. 답은 구글링뿐.. 윈도우에서 파이썬 개발환경을 구축해보도록 하자. 파이썬은 Python 3의 Anaconda을 설치할 것이고, IDE는 Pycharm을 사용할 예정이다. 개인적으로 VSCode를 많이 사용하지만, 파이썬을 개발할 때에는 파이참이 익숙해서 파이참..

Study/Python 2021.08.04

5. Dart Flutter, 플러터의 비동기의 Return, then과 try catch

이전 포스팅한 내용은 Dart에서 비동기가 어떻게 작동하고 어떻게 제어하는지 포스팅을 했었다. 이번에는 비동기 함수의 결괏값을 어떻게 받아오는지 알아보자. 결론 Dart의 비동기함수의 예외처리는 두 가지 방법이 있다. 첫 번째는, try catch finally로 한다. try를 진행하고 에러가 발생하면 catch가 작동하며 try 혹은 catch작동 이후 finally가 실행된다. 두 번째는, then catchError, whenComplete를 사용한다. 작동은 try가 then, catch가 catchError, finally가 whenComplete라고 생각하면 된다. 둘 중에 무엇이 좋다고 딱 잘라서 말을 할 순 없다. 하지만 잘 짠 코드에서는 코드의 가독성도 중요하므로 상황에 맞게 사용하도록..

Study/Dart,Flutter 2021.07.30

4. Dart Flutter, 플러터의 비동기식 Future, await 그리고 async

포스팅이 점점 더 기초적으로 가지만, 짚고 넘어가야 할 것 같아서 작성하게 되었다. 앞서 Dart의 비동기의 작동방식을 살펴보았다. 그러면 어떻게 사용하는지 살펴보자. 바쁜 사람을 위한 빠른 결론! Dart Flutter에서 비동기식을 사용할 때 Future, async, await를 사용한다. 함수 이름 앞 Future은 반환을 나타낸다. 가독성을 위해 적는것을 추천하지만, 생략해도 무방하다. await를 사용하기 위해서는 반드시 async가 적혀있어야한다. await를 사용하면 비동기 함수가 끝날때까지 기다리며, await를 사용하지않으면 기다리지않는다. 비동기함수가 끝났음을 알리고싶다면 Callback함수를 이용하여 알릴 수 있다. 직전 포스팅을 안 읽은 사람들을 위해 Dart 공식홈페이지 링크를 ..

Study/Dart,Flutter 2021.07.28

3. Dart Flutter, Asynchronous, Isolates와 Event Loop 에 관한 고찰

오늘은 이론적인 내용을 다뤄보도록 하자. Flutter로 개발을 하면 흔하게 사용하는 Future, async 그리고 await가 비동기식으로 작동하는 원리를 파악해보려고 한다. 먼저 Dart 공식 홈페이지에서 찾아보았다. https://dart.dev/codelabs/async-await Asynchronous programming: futures, async, await Learn about and practice writing asynchronous code in DartPad! dart.dev 읽어보면 Asynchronous 즉 비동기식 프로그래밍, futures, async 그리고 await에 관련된 내용이 나온다. 비동기식이란 동시에 일어나지 않게 일처리 하는 방식을 뜻하며, 동기식의 반대되는..

Study/Dart,Flutter 2021.07.23

2. 플러터 Navigator와 onGenerateRoute그리고 popUntil 의 고찰

앱 페이지를 넘기는 과정 중, PushName과 Pop만 사용하다가 popUntil을 사용해야 했다. 별생각 없이 PushNamed처럼 popUntil을 사용하는데 검은색 화면만 떠서 왜 안 될까 했는데 이번에 해결을 해서 포스팅하기로 했다. 바쁜 사람을 위한 결론! MaterialApp 혹은 CupertinoApp의 Parameter, onGenerator에 RouteGenerator을 선언했다고 popUntil이 되는 것이 아니다. 정확히는 ModalRoute.withName에 저장이 되지 않는다. ModalRoute.withName으로 Page이름을 적기 위해서는 Navigator push 할 때 MaterialPageRoute 또는 CupertinoPageRoute의 Parameter, setti..

Study/Dart,Flutter 2021.05.15

1. Dart Flutter, Future의 whenComplete, then 그리고 catchError의 고찰(수정)

Flutter로 앱 개발 중, 비동기식에 Future의 WhenComplete와 Then의 차이점이 문득 궁금해졌다. 그리고 catchError는 어떻게 작동할까? 바쁜 사람을 위해 결론! Then과 whenComplete는 역할이 다르다. Then은 Error가 없다면 결괏값을 value로 받아서 실행한다. 하지만, Error가 Return 되면 출력이 되지 않는다. WhenComplete는 Future가 끝나면 무조건 실행된다.(Error 발생 유무에 관계가 없다.) catchError는 Error가 Return이 될 때 작동하며, Error가 Return 되더라도 catchError가 있다면 Then이 실행된다. 1. Then, whenComplete, catchError,는 try, catch, ..

Study/Dart,Flutter 2021.05.12
반응형