분류 전체보기

    Flutter Devtools 개념 이해

    1. Flutter Devtools 개념 이해 1) Flutter devtools 설치 Flutter devtools 사용 사진 Flutter devtools의 기능 Flutter 앱의 UI 레이아웃과 상태를 검사 Flutter 앱에서 UI 버벅거림 성능 문제를 진단 Flutter 또는 Dart 명령줄 앱의 소스 수준 디버깅 Flutter 또는 Dart 명령줄 앱에서 메모리 문제를 디버그 실행 중인 Flutter 또는 Dart 명령줄 앱에 대한 일반 로그 및 진단 정보 확인 Flutter devtools 설치 (VS code) VS Code 명령 팔레트에서 Dart: Open DevTools 명령 입력 Terminal에서 devtools 설치 flutter pub global activate devtoo..

    모각코(모더나 팀) 1회차 학습목표/회고

    학습목표 Flutter 최신 개념 이해 및 정리 1. Flutter Devtools 개념 이해 2. null-safety 추가 이유 개념 이해 3. GetX 개념 이해 4. StreamBuilder vs FutureBuilder 개념 이해 회고 1. Flutter Devtools 개념 이해 Flutter 앱의 UI 레이아웃과 상태를 검사 Flutter 앱에서 UI 버벅거림 성능 문제를 진단 Flutter 또는 Dart 명령줄 앱의 소스 수준 디버깅 Flutter 또는 Dart 명령줄 앱에서 메모리 문제를 디버그 실행 중인 Flutter 또는 Dart 명령줄 앱에 대한 일반 로그 및 진단 정보 확인 https://cheolheelee.tistory.com/377 Flutter Devtools 개념 이해 1..

    Flutter :: SharedPreference

    Shared Preferences 사용법에 대해서 알아본다. Shared Preferences는 key-value 형태의 데이터를 디스크에 저장해서 사용하는 방법으로 기존의 안드로이드 앱 개발에서도 자주 사용되어 왔다. 로그인이 필요한 앱을 개발할 때 사용자의 ID와 패스워드 등을 기억하는 기능을 구현할 때 이용할 수 있다. 18 : getPref를 통해 key에 따른 value를 반환한다. 22 : key, value를 세팅한다.

    Flutter & Firebase :: QuerySnapshot vs DocumentSnapshot

    QuerySnapshot collection을 받아온다. DocumentSnapshot QuerySnapshot.docs를 사용하면 collection 안의 documents를 List형태로 받아올 수 있다.

    Flutter 2.8 발표

    https://medium.com/flutter/announcing-flutter-2-8-31d2cb7e19f5 Announcing Flutter 2.8 A new release of Flutter: and a look back on a year of growth medium.com 요약 며칠 전, 12월 9일에 Flutter 2.8 발표가 있었습니다. 저는 모바일 성능 향상과 WebView 3.0 업데이트 소식이 제일 반가웠는데요. Flutter 2.8에서 크게 변화가 있었던 내용을 5가지로 정리해봤습니다. 1️⃣ 모바일 퍼포먼스 Flutter 2.8로 업그레이드하는 것만으로 앱이 더 빠르게 시작되고 더 적은 메모리를 사용한다고 합니다. 2️⃣ 로그인 위젯 Firebase를 사용하여 인증을 처리하는 로..

    개인정보처리방침

    ('cheolheelee.tistory.com'이하 'cheolheelee.tistory.com')은(는) 「개인정보 보호법」 제30조에 따라 정보주체의 개인정보를 보호하고 이와 관련한 고충을 신속하고 원활하게 처리할 수 있도록 하기 위하여 다음과 같이 개인정보 처리방침을 수립·공개합니다. ○ 이 개인정보처리방침은 2021년 12월 23부터 적용됩니다. 제1조(개인정보의 처리 목적) ('cheolheelee.tistory.com'이하 'cheolheelee.tistory.com')은(는) 다음의 목적을 위하여 개인정보를 처리합니다. 처리하고 있는 개인정보는 다음의 목적 이외의 용도로는 이용되지 않으며 이용 목..

    Flutter에서 Null Safety를 사용하는 이유

    Flutter 2.0 업데이트, null safety 적용 Flutter 2.0 업데이트 이후 dart 언어에 null safety가 적용되었다. null으로 인한 런타임 에러를 방지하여 개발자의 생산성을 높일 수 있다. 유저가 실수로 체크하지 못한곳에서 발생하는 NullPointerException같은 에러를 조기에 방지하고 실제로 돌아가는 어셈블리상에서 null체크를 다시 안하기 때문에 성능적 이득도 있다. 자세히 말하면, null safety는 변수가 null을 허용하는지 구분하기 위한 개념인데 기본적으로 null을 허용하지 않는다. dart 언어는 null safety를 지원하지 않았기 때문에 변수 값이 초기화 되지 않았거나 null 값을 전달하면 컴파일 에러는 발생하지 않고 런타임 과정에서 오류..

    Flutter firebase 연동

    fbtest0001 기본 crud 동작하는 버튼으로 컨트롤 create // instance 가져오기 FirebaseFirestore firebaseFirestore = FirebaseFirestore.instance; // 데이터 Create firebaseFirestore .collection('books') .doc('flutter2') .set({'page': 411, 'purchase?': false, 'title': '플러터 배우기'}); read // 데이터 Read firebaseFirestore .collection("books") .doc("flutter2") .get() .then((DocumentSnapshot ds) { Map data = ds.data() as Map; title..

    Flutter :: StreamBuilder vs FutureBuilder

    streambuilder / futurebuilder는 firebase를 연동하며 자주 만날 수 있는 친구들이다. firebase안에 data들이 있는데, 그것들이 변할 때, 정보를 계속적으로 읽는 역할을 한다. Futurebuilder 한 번만 가져온다. StreamBuilder 변화가 발생할 때마다 연속적으로 계속 가져온다 1) CollectionReference로 접근하여 특정 Document 하나의 data 읽기 Future _getProduct() async { try { CollectionReference products = FirebaseFirestore.instance.collection('Products'); await products .doc(arguments.docsName) .get..

    Flutter :: GetX 개념 이해

    GetX의 의미 GetX는 매우 가볍고 강력한 상태 관리 솔루션이다. GetX가 제공하는 기능 고성능 상태 관리 지능형 종속성 주입 라우트 관리 기능 제공 GetX의 3가지의 기본 원칙 성능 성능과 리소스 소비의 최소화 Streams, ChangeNotifier를 사용하지 않는다. 생산성 쉽고 간결한 구문을 사용한다. 사용하지 않는 리소스는 메모리에서 자동으로 제거해준다. 따라서 개발자가 메모리에서 컨트롤러를 제거하는 것을 신경쓰지 않아도 된다. 조직화 화면, 프레젠테이션 로직, 비즈니스 로직, 종속성 주입, 네비게이션을 완전히 분리할 수 있다. 1. GetX의 라우트 관리 기능 라우트 관리 기능은 GetX에서 가장 강력한 기능이다. GetX를 사용하지 않으면 페이지를 이동하거나 다이얼로그 창을 표시할 ..

    Flutter + Firebase 알람 공유 어플리케이션 개발 계획

    Flutter는 2017년 5월에 구글이 출시한 모바일/웹/데스크톱 크로스 플랫폼 GUI SDK이다. 하나의 코드로 안드로이드, 아이폰, 맥, 리눅스, 윈도우즈, 및 웹 브라우저까지 모두 동작되는 앱이라는 것에 매력을 느껴 공부를 시작했다. https://www.youtube.com/watch?v=BLcDObFKylE&ab_channel=DynamicCoding 기본적인 동작만 하는 토이 프로젝트를 만들었었는데 보다 고도화된 앱을 개발하고 싶었다. 동계 모각코 계획은 다음과 같다. 모각코 계획 - Flutter + Firebase 알람 공유 어플리케이션 개발 - Google play에 배포 - 유지보수 [1회차] Flutter 최신 개념 이해 및 정리 (Flutter Devtools, null-safet..

    자기관리론

    두 사람이 교도소 창문으로 밖을 내다보았다. 한 사람은 진흙탕을 보고 다른 한 사람은 별을 보았다. 초인에 관한 공식을 말하면서 니체는 "고난을 참고 견딜 뿐만 아니라, 그것을 사랑하는 자가 초인이다"라고 했다. 메타인지 학습 생각의 연장통 기억을 계속해서 꺼내려는 노력 자기한테 설명하기 백지노트 학습법 몰아치기 학습은 독이 되는 방법 배우는 것은 기억을 꺼내고 그것을 서로 연결시키는 것이다. 배운 것 다시보기 < 테스트 후 틀린 것 확인하기 작업공간을 확보하라. self monitoring & self controlling 배양 주여 제게 허락해주소서 바꿀 수 없는 것을 받아들이는 평정과 바꿀 수 있는 것을 바꿀 수 있는 용기를 그리고 이 둘을 분별할 수 있는 지혜를! 어제보다 1분만 더 집중하자! 그..

    2021_1126_기말고사대비 : 웹프로그래밍

    1. quiz Hello world! // p tag는 child를 가진다. // 함수내부에서 선언되어 있는 변수는 함수 밖에서 사용할 수 없다. // 이전 함수 호출시 가지고 있었던 변수의 값을 그대로 사용하고 싶은 경우에 사용한다. // 배열의 길이 count($cars) // super global 변수 $GLOBALS $_SERVER $_REQUEST $_POST $_GET $_FILES $_ENV $_COOKIE $_SESSION // 오름차순 정렬 asort() // 내림차순 정렬 arsort() // . , &, “, ‘ 와 같은 html 특수문자를 html entity로 변환 htmlspecialchars() fopen 모드 r : 읽기 모드 w : 쓰기 모드 a : 추가 모드, 파일의 끝..

    2021_1126_기말고사대비 : 수치프로그래밍

    09장 가우스 Gauss 소거법 part 4 (피봇팅 pivotting): 수치해석 피봇팅 더보기 10장 LU 분해법: 수치해석 LU 분해법 더보기 A = LU 로 만드는 이유는 해를 쉽게 구할 수 있기 때문이다. Ax = b LUx = b - Ld =b - Ux = d d를 구하고, x를 구한다. 전진소거하면 U가 얻어진다. LU determinant 구하기 더보기 LU분해법을 이용하면 determinant를 쉽게 구할 수 있다. det(M)은 M이 하삼각행렬 또는 상삼각행렬일 때, 대각원소의 곱이 된다. Cholesky 분해법 더보기 대칭행렬 이어야 Cholesky 분해가 가능하다. 11장 역행렬과 조건 part 1 (역행렬의 계산): 수치해석 역행렬의 계산: LU 분해법 이용 더보기 Ax = b L..

    Shalaram | 11/20(토) 업데이트 상세 내역 안내

    Shalaram | 11/20(토) 업데이트 상세 내역 안내 https://shalarm.herokuapp.com/ Shalarm은 다수의 알람을 텍스트 기반으로 간편하게 설정할 수 있고 알람을 공유할 수 있는 기능을 가진 알람 등록 데스크탑 서비스입니다. Shalarm의 베타 버전 테스트가 완료되었습니다. 보다 나은 알람 서비스 환경 구축 을 위해 점검이 진행되었으며, 점검 시간 동안 기다려주신 이용자분들께 감사의 말씀을 드립니다. 점검에 대한 자세한 내용은 아래를 참고해 주시길 바랍니다. 【 11/20(토) 업데이트 상세 내역 안내 】 Ⅰ. 주요 안내 사항 1. 타이머 - 타이머 기능이 추가됩니다. - [타이머 수정]을 통해 시간을 설정할 수 있습니다. - [재설정]을 누르면 설정한 시간을 가져옵니다..

    Shalarm | 11/19(금) 업데이트 상세 내역 안내

    Shalaram | 11/19(금) 업데이트 상세 내역 안내 https://shalarm.herokuapp.com/ Shalarm은 다수의 알람을 텍스트 기반으로 간편하게 설정할 수 있고 알람을 공유할 수 있는 기능을 가진 알람 등록 데스크탑 서비스입니다. Shalarm의 베타 버전 테스트가 완료되었습니다. 보다 나은 알람 서비스 환경 구축 을 위해 점검이 진행되었으며, 점검 시간 동안 기다려주신 이용자분들께 감사의 말씀을 드립니다. 점검에 대한 자세한 내용은 아래를 참고해 주시길 바랍니다. 【 11/19(금) 업데이트 상세 내역 안내 】 Ⅰ. 주요 안내 사항 1. 회원가입 - 회원가입 기능이 추가됩니다. 2. 로그인 - 로그인 기능이 추가됩니다. 3. 메뉴 - 좌측 네비게이션 메뉴 디자인이 변경됩니다...

    LCA, 최소공통 부모

    # 백준 11438 LCA import sys rd = sys.stdin.readline sys.setrecursionlimit(100000) LOG = 21 N = int(rd()) tree = [[] for _ in range(N+1)] visit = [False] * (N+1) parent = [[0] * LOG for _ in range(N+1)] depth = [0] * (N+1) for _ in range(N-1): s, e = map(int, rd().split()) tree[s].append(e) tree[e].append(s) def dfs(v, d): depth[v] = d visit[v] = True for i in tree[v]: if not visit[i]: parent[i][0]..

    컴퓨터 공학과를 위한 최신 논문 찾아 읽는 방법 정리 (입문자를 위한)

    1. 탑 컨퍼런스 (최우수 학회) 각 분야의 논문이 각종 컨퍼런스에 발표된다. 대부분의 연구실은 아래 유명 컨퍼런스에 논문을 내고 싶어한다. 훌륭한 논문이 유명하지 않은 컨퍼런스에 투고되는 경우도 있다. GAN 논문 (NIPS conference) 인공지능,컴퓨터분야 학회 NIPS ICML ICLR CVPR ICCV 정보보호 분야 학회 S&P CCS USENIX Security NDSS 컴퓨터 아키텍쳐 MICRO HPCA 자연어 처리 분야 ACL NACCL 2. 아카이브 3. 해당 분야의 유명 연구실 혹은 기업

    현업 개발자가 생각하는 애자일의 의미

    출처 : OKKY 누가 칼럼에 글을 게재한 덕분에.. 이제 애자일이 뭔지를 내 경험에 입각해 이해하게 되었다. 그동안 애자일을 실시(?)한다는 여러 회사도 다녔고. 비트버킷등 써가면서, 아침에 스탠드업회의 1시간씩 하면서.. 그 난리부르스를 했지만 당췌 애자일이 뭔 소린지를 몰랐다. 이건 내가 쪼다라서 그런게 절대 아니라! ㅋㅋ 방어적인 수사로 애자일의 정의를 추상적으로 배배꼬아 이야기를 했기에. 주인없는 애자일이 그 이름만 통일한 채로 무수한 프로듀서들에게서 재창조되어 버렸기에. 그럼 애자일이 뭔지를 19년차 개발자인 내가 2가지로 정의해 보겠다. 1) SW개발이 HW개발과 다른 점은 완성이 없다는 사실. 물질로 만들어진 하드웨어는 내 손을 떠나는 완성이라는 단계가 있다. 물질은 시간의 지배를 받으니 ..

    좋은 사람을 곁에 둬라 :: 인간관계/친구/학습태도

    좋은 사람을 곁에 둬라 :: 인간관계/친구/학습태도 친밀한 관계의 기준 :: 학습태도 당신이 친밀한 관계를 원할 때는 그 사람의 학습 태도를 보고 선택하면 된다. 유익한 관계 당신에게 여러 가지를 생각하게 하는 관계는 실리가 많다. 그 밖의 인간관계는 모두 유해하다 레오나르도의 관계 교류 레오나르도 다빈치는 아무하고나 교류하지 않았으며 사람을 가려서 가까이 지냈다. 사람을 선택하는 기준은 그 사람의 학습 태도였다. 근묵자흑 좋은 사람을 곁에 두면 당신도 좋은 사람이 되고 반대로 나쁜 사람을 가까이 하면 나쁜 사람이 된다는 가르침을 주고 있다. 주변인의 중요하다 '만약 어떤 남자가 좋은 성격을 갖고 있다고 해도 다른 사람들이 그를 부당하게 취급한다면, 또는 그가 이들과 어울린다면, 그 자신도 잘못되고 만다..

    이노베이션이 아니라 리노베이션으로 창조하라

    이노베이션이 아니라 리노베이션으로 창조하라 창조하는 힘 창조하는 힘이 있으면 깊이 생각해서 탁월한 부분을 골라내 조합할 수 있다. 제로부터 창조하는 것보다 이미 만들어진 뛰어난 것을 조합하는 것이 쉽다 자신만의 독창적인 방법을 고집해서 제로(0)부터 만들기보다는 뛰어난 것을 조합하면 된다. 역사를 되돌아봐라 선인의 발상을 배울것, 기존의 가치나 사고에 자신의 메시지를 불어넣을 것, 외견을 세련되고 새롭게 보이게 할 것

    세상의 통념, 대다수가 믿고 있는 사실은 진리가 아니다

    세상의 통념, 대다수가 믿고 있는 사실은 진리가 아니다 중세 유럽 기독교적 세계관이 지배한 중세 유럽에서는 화석도 성경의 말씀을 뒷받침하는 방향으로 설명됐다. 현대 과학이 발달한 현대에도 대중이 굳게 믿고 있던 사실이 틀렸다고 증명되는 경우가 있다. 주체적, 합리적으로 의심하라 정보를 있는 그대로 받아들일 게 아니라 항상 상식을 의심하고 스스로 확인해보면 뜻밖의 사실이나 재미있는 현상이 보일 수 있다.

    상대가 원하는 것을 먼저 이루어내라

    상대가 원하는 것을 먼저 이루어내라 레오나르도 다빈치 일화 레오나르도 다빈치는 자신의 능력을 인정해 줄 후원자를 찾기 위해 밀라노 공에게 자신을 소개하는 편지를 썼다. 때는 전란의 시대였고 레오나르도는 이 시기에 군사 관련 일이 필요하다는 사실을 알아차리고는 군사 기술 전문가가 아닌데도 당당하게 자신에 대한 홍보를 펼쳤다. 이동력이 뛰어난 대포 제조나 비밀 지하도 건설, 포격을 견딜 수 있고 공격과 방어에 모두 뛰어난 배에 관한 아이디어도 적었다. 그런 뒤에 자신을 추천하는 편지 마지막 부분에는 '조각과 그림은 그 누구보다도 잘 그릴 수 있다'라며 예술을 언급했다. 군사 기술자가 되는 일은 목적이 아니라 통과점이였고 궁극적인 목적은 위대한 예술작품을 창조하는 데 있었다. 상대의 입장에서 후원자가 원하는 ..

    성공의 자원은 열등감이다.

    성공의 자원은 열등감이다 열등감이란? 열등감이란 자신이 스스로에 대해서 부족하다고 느끼는 감정이다. 열등감의 특징 타인과 자신을 비교하여 내가 남보다 부족하다며 자신의 열등함을 인지했을 때 생기는 감정이다. 때문에 달리 보면 발전 의식과 인간의 객관적 사고 능력이 낳은 부작용이다. 열등감은 발전의 동기가 되기도 하지만 몰락의 도화선이 되기도 한다. 이것이 심하면 타인보다 자신의 모든 면이 극복할 수 없을 정도로 떨어진다고 생각해서 열등감 콤플렉스(Inferiority complex)가 될 수 있으며, 반대로 자신의 능력에 대해 자만감에 빠진 나머지 만용(蠻勇)을 부리면 우월감 콤플렉스(Superiority complex)가 될 수 있다. 열등감이라는 용어를 만든 심리학자 알프레드 아들러는 올바른 열등감과..