Blockchain블록체인은 말 그대로 블록(Block)을 체인(Chain)처럼 연결한 것블록은 거래 기록인 트랜잭션(Transaction)이 담긴 묶음이 블록들이 암호화 기술로 안전하게 연결되어 체인을 이룸블록체인의 중요한 특징은, 이 체인이 별도의 중앙 관리자 없이 여러 컴퓨터에 분산되어 저장되고 한 번 기록되면 수정하거나 삭제하기 매우 어렵다는 점분산 원장 (Distributed Ledger)원장(Ledger)은 거래 기록이 담긴 장부를 의미함블록체인에서는 이 장부가 물리적으로 특정한 한 위치에 있는 것이 아니라, 네트워크에 참여하는 모든 컴퓨터(노드)에 똑같이 복사되어 분산 저장됨마을 사람들이 모두 똑같은 거래 장부를 갖고 있고, 새로운 거래가 발생하면 모든 사람이 각자의 장부에 동시에 기록하고 ..
BoxConstraints란위젯이 자체적으로 가질 수 있는 크기를 정의하는 네 가지 값의 집합최소 너비최대 너비최소 높이최대 높이제약 조건을 이해하기 위해서는 다음의 플러터 핵심 규칙을 이해하는 것이 먼저다.Constraints go down. Sizes go up. Parent sets position.제약 조건은 아래로, 크기는 위로, 부모는 위치를 지정한다.Constraints go down. Sizes go up. Parent sets position.위젯은 부모로부터 제약 조건(Constraints)를 받는다.위젯은 자신의 자식(children) 목록을 하나씩 탐색하며 위젯은 자식들에게 그들의 제약 조건을 알려주고 각 자신이 어떤 크기를 원하는지 묻는다.그리고 위젯은 자식들의 위치를 하나씩 설정..
눈 코딩평소 유튜브에서 게임 개발 영상을 보면서 눈 코딩 하는데, 그중에서도 고도 엔진(Godot Engine) 영상들은 늘 내 눈길을 사로잡았다. 최근에 마음먹고 고도 엔진으로 계산기 만들기 튜토리얼을 따라 해봤다. 재미 삼아 시작한 건데 솔직히 좀 놀랐다.예전에 PyQT로 사내 설비 관리 프로그램을 만들었던 경험이 있다. 그때도 개발을 완성했을 때의 성취감은 분명 있었지만, 과정은 꽤나 복잡하고 답답했다. 파이썬도 익숙하지 않고 PyQT에 대해서도 잘 몰랐던 탓에, 코드를 한 줄 고칠 때마다 머리를 싸매야 했다.고도 엔진반면 고도 엔진으로 계산기를 만들어보니, 마치 막혔던 실타래가 술술 풀리는 듯한 해방감을 느꼈다.가장 인상 깊었던 건 직관적인 사용자 인터페이스(UI)였다. 노드 기반의 시스템이라 기..
5월 회고5월은 정말 바빴습니다. 수행평가, 기말고사, 부트캠프까지 정신없었고, 개인 프로젝트와 팀 프로젝트도 겹쳐 있었습니다. 게다가 팀 프로젝트로 한창 바쁜 와중에 본가에 급한 일까지 생겨서 울산에 다녀오기도 했습니다. 이렇게 정신없는 5월을 보내는 중에도 로컬 푸시 알림 기능에 대해 호기심이 생겼습니다. 이 호기심을 해결하고자 flutter_local_notifications 패키지를 활용해 물 마시는 시간 알림 앱인 '물머거' 개발을 시작했습니다. 구상했던 MVP 기능은 모두 만들었지만, 사용자 인터페이스 디자인이 다소 아쉬워 정식 출시는 하지 않았습니다.근황현재 저는 취업 준비에 집중하고 있습니다. 이력서를 지원하는 동시에 '플래니(Planee)'라는 개인 일정 관리 앱을 직접 기획하고 디자인하..
문제 해결 능력'문제 해결 능력'은 단순히 주어진 문제를 해결하는 것을 넘어, 문제의 근본을 꿰뚫어 보고, 다양한 해결 방안을 모색하며, 가장 효과적이고 효율적인 방법을 찾아 실행하는 일련의 통합적인 과정을 의미한다. 이는 논리적 사고력, 창의성, 분석력, 그리고 끈기를 요구하는 복합적인 역량이다. 문제 해결 능력은 소프트웨어 개발 분야에서 선택할 수 있는 옵션이 아니라 필수 요소다. 소프트웨어 개발 그 자체가 본질적으로 연속된 문제 해결의 과정이기 때문이다. 새로운 기능 구현부터 기존 시스템의 버그 수정, 성능 최적화, 사용자 경험 개선에 이르기까지 모든 과정은 당면한 문제에 대한 해결책을 모색하는 여정이다. 개발자는 예측 불가능한 오류, 복잡한 요구사항, 기술적 한계 등 수많은 도전에 직면하며, 이때..