목록전체 글 (194)
뉴질랜드 다이어리(NZ Diary) 라빠
React-native 에 Apllo Client 를 추가할때, 아래와 같은 에러가 발생할때 해결법 Metro has encountered an error: While trying to resolve module `@apollo/client/link/ws` from file `/Users/donghopark/Projects/useby/App.tsx`, the package `/Users/donghopark/Projects/useby/node_modules/@apollo/client/link/ws/package.json` was successfully found. However, this package itself specifies a `main` module field that could not be r..
챗봇 만들기, 그 두번째로 wit.ai 를 통해 처리된 자연어 분석에 따라 응답을 생성해보도록 합시다. 이 작업을 위해서는 node.js back-end 서버를 구동해 줄 플랫폼이 필요합니다. 다양한 옵션이 존재하지만, 그중 가장 사용성이 뛰어난 Glitch 에서 작업해 보려고 합니다. 일단 Glitch 가 뭔지부터 잠시 보고 갈까요? https://glitch.com/ Glitch: The friendly community where everyone builds the web Simple, powerful, free tools to create and use millions of apps. glitch.com Glitch 는 Trello, Stack Overflow 로 유명한 Fog Greek Soft..
챗봇 이라는 용어가 더이상 신기하지도 신선하지도 않은 상황에서, 뜬금없이 챗봇 만들기를 해보려 합니다. 전체적인 이야기의 흐름은 아래와 같습니다. > Facebook Messenger 를 통해 대화가 시작되면 > Wit.AI 를 이용하여 자연어 분석을 하고 > Node 를 통해 응답을 구성하여 > Facebook Messenger 로 응답을 보냅니다. 일단, 시작하기에 앞서 챗봇의 핵심인 자연어 분석을 담당할 Wit.AI 에 대해 잠시 알아봅시다. Wit.AI 는 2015년 Facebook 에서 인수한 자연어 처리 스타트업입니다. 2013년 창업하여 2년만에 Facebook 에 인수되어 스타트업의 성공적인 엑시트 모델로 소개되기도 합니다. 몇차례 업데이트를 통해 최근 상당이 안정적인 서비스를 제공하고 있..
React 프로젝트를 시작한다고 하면 일단 create-react-app 을 이용하는 경우가 많습니다. 그런데, 이렇게 툴들을 이용하면 생산성은 물론 향상되는 장점이 있지만, 그 내부에 어떤 일들이 일어나고 있는지를 알지 못하니, 문제가 발생했을때 대응을 할 수 가 없는 경우가 많습니다. 마치, 냉장고는 잘 사용하지만, 고장나면 사람을 불러야 하는 것과 마찬가지죠. 적어도 개발자라면, 설정을 하나하나 해가면서 프로젝트를 구성해보고 그 이후에 좋은 툴들을 이용하는 것이 좋을 것이라고 생각합니다. 그래서, 수도없이 생성해 봤을 React Project 를 어떠한 툴의 도움도 없이 생성해 보는 과정을 살펴볼까 합니다. Node 를 설치하는 과정은 생략합니다! 1. 작업폴더 생성 및 banana project ..
자 이제 Scratch 기본 익히기의 마지막 시간입니다. 이번 시간에는 감지, 연산, 변수 카테고리를 배워봅시다. 감지 감지 카테고리의 블록은 스프라이트의 상태변화 혹은 이벤트의 발생여부등을 알아내기위해 사용합니다. (일부 블록의 경우, 이벤트 카테고리의 블록들과 혼용하여 사용할 수 있습니다. 이 부분은 중급에서 다시 다루도록 하겠습니다.) 많은 블록들이 있지만, 이번시간에는 가장 많이 사용되는 블록의 이동을 감지하는 아래의 블록들을 살펴보겠습니다. 스프라이트가 특정위치로 이동했는지를 알아내려할때, 위의 블록들을 사용할 수 있습니다. (물론 더 많은 방법들이 있지만, 오늘은 이정도만 익히도록 합시다.) 특정 스트라이프에 닿았는지를 확인하는 방법 예제와 같이 개구리 스프라이트와 고양이 스프라이트가 있는 상..
이번 강의에서는 뭔가 '프로그램'하면 떠오르는 블록들을 배우게 됩니다. 그럼 조금더 프로그래머다워져 볼까요? 이벤트 이벤트 카테고리는 외부(혹은 내부)에서 발생할 수 있는 이벤트를 처리하는 블록들입니다. 여기서 말하는 이벤트란 사용자가 마우스(혹은 키보드)를 눌렀거나, 앱 내부의 상태가 변화한 것을 말합니다. 이벤트 카테고리의 블록들은 크게 이벤트가 발생했을때 이를 처리하는 처리블록과, 이벤트(메시지)를 발생시키는 생성블록으로 나누어집니다. 생성블록 사용자의 행동(마우스 클릭, 키보드 클릭)외에도 앱 내부의 상태 변화를 이벤트로 만들어 방송할 수 있습니다. 예를들어, 새로운 적 등장 이라는 이벤트를 만들어서 방송할 수 있습니다. 앱 내의 다양한 스프라이트들은 이 새로운 이벤트를 자신에 맞게..
인터페이스와 스트라이프에대해 공부를 마쳤으니, 이제 코딩에 대해서 배워보도록 하겠습니다. 스트라이프에서는 기본적으로 8가지의 코드 카테고리와, 추가적으로 제공하는 별도의 카테로리를 제공합니다. 이번 시간에는 그중에서 동작, 형태, 소리 카테고리에 대해서 배워보겠습니다. 동작 동작 카테고리의 블록들은 모두 스프라이트의 동작과 관련된 블록들입니다. 이미 설명한바와 같이, 배경에는 동작과 관련된 블록들이 존재하지 않습니다. 배경을 이동시키는 방법은 나중에 배우도록 하겠습니다. 방향관련 아래의 블록들은 모두 스프라이트가 바라보는 방향을 변경시키는 블록들입니다. 방향은 무대영역에서의 스프라이트가 표시되는 방법에 영향을 주는것과 함께, 아래에서 배울 이동에도 영향을 줍니다. 스프라이트의 방향은 위를 바라보고 있을때..
지금까지 Scratch 의 기본적인 인터페이스를 알아보았습니다. 처음 이 글을 접하신 분은 2019/09/04 - [개발] - [Scratch] Scratch 기본 익히기 #1 - 회원가입 및 인터페이스 ,2019/09/04 - [개발] - [Scratch] Scratch 기본 익히기 #2 - 작업영역,2019/09/04 - [개발] - [Scratch] Scratch 기본 익히기 #3 - 무대영역 를 먼저 보고오시는것을 추천합니다. 이번 시간에는 스프라이트와 배경에 대해서 알아보겠습니다. 스프라이트 스프라이트는 Scratch 앱에서 화면을 구성하는 모든 요소들을 말합니다. 주인공이 되는 캐릭터와 보조 캐릭터, 장애물을 포함하는 모든 요소를 포함합니다. 스프라이트 세개가 포함된 무대영역의 모습은 아래와 ..
이제는 실제로 결과물이 표시되는 무대영역을 살펴봅시다. 무대영역은 크게 출력영역, 정보영역으로 구분됩니다. 출력영역 출력영역은 작업영역에서 설정한 내용들이 표시되는 곳입니다. 실제로 다른 사용자가 보게되는 모습이 바로 이 곳에 표시됩니다. 상단의 메뉴는 아래와 같습니다. 녹색 깃발 : Scratch 를 실행합니다. 대부분은 코드는 녹색 깃발이 눌러지는것을 기점으로 시작됩니다. 정지 버튼 : Scratch 를 종료합니다. 앱의 실행을 멈추고자할때 사용됩니다. 터보 모드 : 앱의 실행을 가속하는 모드입니다. 많은 연산을 필요로 하는 앱에서 사용됩니다. 모드 변경 : 에디터의 모드를 변경하는 기능입니다. 기본모드, 개발모드, 최대화모드 의 세가지 옵션이 있습니다. 기본모드 : 가장 기본적인 화면구성으로 무대영..
자, 이제 에디터 화면의 좌측에 위치한 작업영역을 살펴봅니다. 작업영역은 크게 코드, 모양, 소리 그리고 개인 저장소로 구분됩니다. 각각의 탭을 누르면 해당 탭이 활성화되고, 해당 탭에서 사용가능한 기능들이 표시됩니다. 코드 탭 코드 탭은 Scratch 의 기능중 핵심적인 기능으로, 블록을 드레그해서 스프라이트의 동작을 지정하거나, 여러가지 상태의 변화를 코딩할 수 있습니다. 뿐만 아니라, 배경의 변화역시 이곳에서 코딩할 수 있습니다. 좌측의 다양한 카테고리를 클릭하면, 해당 카테고리의 블록들이 표시되고, 원하는 블록을 오른쪽의 블록 창에 드레그하면 코딩이 완료됩니다. 블록의 입력값을 변경하여 블록의 동작을 변경할 수 있습니다. 예를들어, 10만큼 움직이기 블록을 변경하여 20만큼 움직이기 와 같은 변경..