전체 글

플러터로 앱 개발시 여러 디바이스에서 동시에 디버깅을 하는 것은 매우 유용하다. 플러터가 크로스 플랫폼 프레임워크인 만큼 여러 개의 플랫폼에 출시할 가능성이 높고, 이 때문에 안드로이드 / ios 두 개의 시뮬레이터를 동시에 띄워놓고 각각 플랫폼 별 상태를 확인한다던지, 아니면 시뮬레이터와 실제 기기의 경험이 분명 다르기 때문에 시뮬레이터 / 실제 기기를 동시에 띄워놓고 작업한다면 굉장히 효율적이다. 여러개의 디바이스에서 디버깅하는 방법은 아래와 같다.1. 실행을 원하는 deviceId 구하기2. vscode launch.json 작성하기3. 실행하기 방법이 굉장히 쉽고 간단하다.1. 실행을 원하는 deviceId 구하기flutter devices터미널에 명령어를 입력하면 현재 연결된 기기들의 devic..
저번 글에서 geth 클라이언트를 실행하면 크게 세 가지 함수인 prepare, makeFullNode, startNode가 실행되는 것을 보았다. 이번 글에서는 makeFullNode 함수를 볼 예정이다. // makeFullNode loads geth configuration and creates the Ethereum backend. func makeFullNode(ctx *cli.Context) (*node.Node, ethapi.Backend) makeFullNode 함수의 주석을 보면 geth 설정을 불러오고 이더리움 백엔드를 만든다고 한다. 이더리움 백엔드는 타입에 대해 다룬 두 번째 글에서 살펴본 backend 타입을 생각하면 된다. cli.Context를 받아서 node.Node와 eth..
최근(2024년 2월 5일 기준) 가장 핫한 키워드라 하면 "파캐스터" 근데 사람들이 하고 있는 앱이름은 "Warpcast" (워프캐스트) 왜 사람들이 파캐스터라고 할까보니 워프캐스트는 파캐스터의 클라이언트다.. Farcaster(파캐스터)가 뭘까? https://www.farcaster.xyz/apps -> 공홈 https://docs.farcaster.xyz/ -> 공식 문서 참고해서 정리해보겠다.. 파캐스터는 이더리움에 만들어진 탈중앙화된 소셜 네트워크라고 한다. 그리고 오픈소스 프로토콜이라 누구나 가져다가 데이터를 읽고 쓰는 앱을 만들면 된다. 파캐스터 = 이더리움에 만들어진 탈중앙화된 소셜 네트워크이자 오픈소스 프로토콜 사용자들은 그들의 계정을 갖고 있고, 다른 유저들과 상호작용하며 다른 앱으로..
이제부터는 코드를 가져올 예정이기 때문에 글 하나하나가 굉장히 길 것 같다. 그럼 geth 클라이언트의 시작점은 대체 어디일까? main.go 파일을 찾아야 하는데 다양한 패키지가 있고 많은 main.go가 있다. geth 클라이언트를 실행할 때 터미널에서 geth ~~~ 명령어를 입력하게 된다. 이것과 관련된 명령어를 치는 부분인 cmd/geth/main.go 가 바로 시작점이다. 본격적인 흐름을 보기 전에 자주 나오는 타입에 대해서는 한 번 보고가는게 좋을 것 같다. main() 첫 시작 함수인 main() 여기서는 app.Run 을 실행하고, 에러가 있으면 에러 출력과 함께 종료한다. 이 때 app.Run의 argument인 os.Args 는 geth 명령어를 입력할 때 들어오는 값이다. func ..
지난 글에서 geth 클라이언트를 실행할 때 어떤 일이 일어나는지, 시작점부터 실행 순서대로 보도록 하겠다고 했다. 하지만 코드를 살펴본 결과 들어가기에 앞서 geth에서 사용하는 몇 가지 타입에 대해 살펴보면 이해가 더 쉬울 것 같다. 이번 글 부터는 이해를 위해 필요한 코드가 있으면 전부 가져올 예정이라 앞으로의 글들은 좀 길 예정이다. cli 패키지를 살짝 알아보고 아래 4가지 타입을 먼저 확인해보도록 하겠다. - cli 패키지의 App, Context - Node 패키지의 node - ethapi 패키지의 Backend cli 패키지 import 문을 보면 https://github.com/urfave/cli/v2 에서 가져온 것을 확인할 수 있는데,, # https://cli.urfave.org..
uzzam
uzzam.dev