본문 바로가기

전체 글160

GraphQL GraphQL 이란? Graph QL(이하 gql)은 Structed Query Language(이하 sql)와 마찬가지로 쿼리 언어입니다. 자체적으로 서버와 클라이언트를 구축해 애플리케이션 서버 및 데이터베이스와 클라이언트 사이에서 Operation과 Resolve의 과정을 통해 서로 간의 데이터 상호작용을 도와줍니다. 하지만 gql과 sql의 언어적 구조 차이는 매우 큽니다. 또한 gql과 sql이 실전에서 쓰이는 방식의 차이도 매우 큽니다. gql과 sql의 언어적 구조 차이가 활용 측면에서의 차이를 가져왔습니다. 이 둘은 애초에 탄생 시기도 다르고 배경도 다릅니다. sql은 데이터베이스 시스템에 저장된 데이터를 효율적으로 가져오는 것이 목적이고, gql은 웹 클라이언트가 데이터를 서버로 부터 효율.. 2022. 6. 14.
memoize-one memoize-one 은 메모라이즈 기법을 잘 이용한 경량 라이브러리 입니다. 공부 할 부분이 많아서 해당 라이브러리를 뜯어 가면서 공부 할 생각입니다. @npm memoize-one https://www.npmjs.com/package/memoize-one (function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : typeof define === 'function' && define.amd ? define(factory) : (global = global || self, global.memoizeOne = factory()); }(this, fu.. 2022. 6. 10.
Context context 자체가 컴퍼넌트에서 props 를 넘겨주는 방식이 어려울때 사용하는 겁니다. 전신은 context api를 context api 사용 import React, { createContext } from "react"; import Children from "./Children"; // AppContext 객체를 생성한다. export const AppContext = createContext(); const App = () => { const user = { name: "김채원", job: "가수" }; return ( ); }; export default App; 사용 import React from "react"; import { AppContext } from "./App"; const.. 2022. 6. 7.
[react-native] react-native-ble-plx 킥보드와 휴대폰간의 ble 통신을 위해서 사용한 모듈 https://dotintent.github.io/react-native-ble-plx/#device react-native-ble-plx 2.0.2 | Documentation nativeService (NativeService) NativeService properties to be copied. dotintent.github.io 사용법 1. 스캔할수 있는 기기들을 찾아라 this.manager.startDeviceScan( UUID_SERVICE ,null, (error, device) => { if (error) throw new Error( error ); const manufactureBy = BlePlxHelper.getScooterMa.. 2022. 3. 30.
Ble 자동 점검 개발 스토리 배경 그 동안 개발했던 내용들을 정리하고 있는 차 가장 공드리면서 개발했던 Ble 개발에 대해서 이야기 해볼생각이다. 씽씽에서 제공하는 킥보드는 많은 기능들을 갖고 있었다. LTE, BLE, NFT 등.. 많은 기능들을 제공하고 있는데 그중에서 Ble 에 대한 이야기를 할 생각이다. 킥보드안에 LTE 모듈은 존재하지만 iot가 망가지는 경우는 허다하게 많아서 서버와의 통신이 안될때가 많다 그래서 실제로 고장수리로 인해서 들어온 킥보드의 iot가 망가져서 아무것도 못하는 경우가 많고 수리 할때 ble가 더 빠른 반응을 보이기 때문에 Ble 통신 기능 개발이 필요하게 되어 진행하게 되었다. 또한 추가적으로 손쉽게 작업자가 수리후 해당 킥보드의 기본 기능들을 순차적으로 확인할수 있도록 하면 좋을것 같아서 자동.. 2022. 3. 30.
JWT 인증방식 교회 인적관리 시스템을 만들게 될 기회가 생겨서 개발하게 되었다. 웹페이지를 처음 개발할때 중요하게 고려해야 할 부분은 로그인과 api 요청로직이었습니다. 그래서 로그인 유지를 위해서 사용한 상태 관리는 비즈니스 로직이 확실하고 미들웨어 장점을 갖고 있는 redux와 미들웨어인 redux-saga를 사용했습니다. api 요청의 보안 부분은 token 인증 방식인 jwt을 기반으로 개발을 시작했습니다. 해당 부분을 개발하면서 만났던 문제와 해결 방안에 대해서 작성해보았습니다. 로그인 로직은 우선 페이지에서 사용자가 입력한 정보가 서버에 있는지 확인후, access token과 refresh token을 발급받고 다시 사용자 정보를 가져와서 상태 값에 초기화 하도록 개발했습니다. function* getUs.. 2022. 3. 29.