VM Ware에 해킨토시를 설치하고 React Native 개발환경 구성을 해보겠습니다. 아래는 제가 설치한 해킨토시 버전입니다. catalina를 설치 했고, 해킨토시 설치 하는 방법은 구글에 많이 있으니 참고하시면 됩니다. 개발을 위해서 램을 10기가를 잡았는데도 조금은 버벅 거리네요. 1. Homebrew 설치 homebrew 설치 확인을 위해서 brew 버전을 확인해 봅니다. $brew --version Homebrew 2.2.5 Homebrew/homebrew-core (git revision 52ab; last commit 2020-02-12) 저는 2.2.5가 설치되어 있네요. 만약 설치가 안된 분들은 아래 링크로 접속하셔서 homebrew을 설치하시기 바랍니다. 아래 내용을 복사하셔서 te..
const는 ES6에서 새로 도입한 것으로 한번 지정하고 나면 변경이 불가능한 상수를 선언할 때 사용하는 키워드이며, let은 동적인 값을 담을 수 있는 변수 값을 선언할 때 사용하는 키워드입니다. ES6 이전에는 var 키워드를 사용했는데요, var 키워드는 사용할 수 있는 범위가 함수 단위였습니다. function fun1() { var val = 'hello' if(true) { var val = 'bye' console.log(val) //bye } console.log(val) //bye } 실제 결과 bye bye 위의 결과를 보면 5라인에서 출력한 변수 값은 bye가 출력되고, {} 불럭이 끝난 8라인에서는 'hello'가 'bye' 가 출력되는 것을 볼 수 있습니다. 이유는 위에서도 언급했..
요번 강좌에서는 자바스크립트의 확장형인 JSX에 대해서 알아보도록 하겠습니다. 또한, JSX에서 사용하는 조건부 연산과 자바스크립트 표현에 대해서 간략하게 살펴보겠습니다. 1. 코드 이해 Node.js의 주요 특징은 코드를 모듈화하여 재사용할 수 있다는 것입니다. Node의 내장된 모듈을 사용하거나, 자신의 코드를 모듈화 하여 재사용할 수 있습니다. 또한 남들이 만든 모듈도 npm 을 이용해서 쉽게 적용할 수 있습니다.이렇게 설치된 모듈은 import라는 키워드를 사용해서 불러와서 사용할 수 있습니다. 하지만 이는 Node.js의 기능이기 때문에 자바스크립트에서 이 기능을 지원하지 않습니다. 이러한 기능을 사용하기 위해서는 번들링(bundling) 도구를 이용해야 합니다. 번들은 파일을 묶는다는 의미로 ..
1. 프로젝트 생성 실습에 앞서 간단한 프로젝트를 생성해보겠습니다. 프로젝트는 create-react-app 도구를 이용해서 생성할 수 있습니다. create-react-app도구는 npm 또는 yarn 으로 설치 할 수 있습니다. yarn 설치 시 global(전역)으로 설치하시면 됩니다. $ yarn global add create-react-app create-react-app 이 설치가 완료되면 아래 명령어로 프로젝트를 생성할 수 있습니다. 명령어 형태는 create-react-app 입니다. $ create-react-app hello-react Creating a new React app in /Users/jeon-mac/Documents/dev/git/study-project/reactJS/..
Spring Boot 2.0을 이용하여 간편히 excel을 다운로드 하는 방법을 가이드 해드리겠습니다. 우선 pom.xml 파일에 maven dependency 추가 합니다. spring boot는 기본적으로 셋팅되었다는 가정하에 진행하겠습니다. pom.xml org.springframework.boot spring-boot-starter-web org.apache.poi poi 3.17 엑셀 다운로드를 위한 propertis 정의합니다. 저는 properties 파일을 yml파일을 사용하기 때문에 아래와 같이 정의합니다. 가이드하는 예제에서는 아래 내용을 정의하지 않아도 예제를 구현하는데 문제가 없습니다. 필요가 없으신 분들은 넘어 가셔도 됩니다. application.yml spring: ..
시놀로지에서 gitlab 방화벽 설정하는 방법을 소개해드리겠습니다. 제가 사용하고 있는 시놀리지에 개인 소스 코드 형상관리 툴로 gitlab을 사용하고 있습니다. gitlab 설치 하고 방화벽을 오픈해야 정상적으로 접속이 가능합니다. 방화벽이 오픈안되어 있으면 아래 처럼 정상적으로 접속이 안됩니다. 5432, 6379 포트가 오픈되어 있지 않으면 gitlab docker가 시작되지 않습니다. 아래는 정상적으로 docker container가 정상적으로 실행된 이미지 입니다. 그러면 gitlab 방화벽 오픈을 위한 방법입니다. 어렵지 않으니 천천히 따라해 보세요. 제어판 > 보안 > 방화벽에서 방화벽 관련 설정을 할 수 있습니다. 방화벽 설정 방법은 따로 포스팅 하겠습니다. 1. gi..
ViewPager2를 이용한 무한 Margin 페이지 Android ViewPager2를 이용해서 무한 Margin 페이지를 구현해보겠습니다. 가장 먼저 pager에 보여질 Item layout을 구성합니다. 그리고 각 아이템 간에 margin을 두어 위에 이미지 처럼 간격을 줍니다. row_item.xml dimens.xml 30dp 30dp 50dp 이제 ViewPager를 추가해보겠습니다. 추가하기 전에 라이브러리를 추가해야 합니다. build.gradle에 아래 내용을 추가 해주시기 바랍니다. dependencies { ... implementation 'androidx.viewpager2:viewpager2:1.0.0' } clipChildren와 clipToPadding을 false로 적용합니..
Visual Studio Code 자주 사용하는 단축키 모음 제가 자주 사용하는 Visual Studio Code 단축키를 정리해봤습니다. 사람마다 사용하는 단축키가 다를텐데, 알아 두면 편리한 단축키 이니 외워 두시면 쓸모가 있을 겁니다. 저는 주로 Mac을 쓰기 때문에 Mac 키는 확인하였으나 Window키는 직접 확인해보지 못했습니다. 공식 reference를 참고하였으니 아마 맞을 듯 합니다. Windows Mac 명령 설명 ctrl + d command + d 다음 선택 블럭 선택 후 입력 시 같은 다음 블럭이 중복 선택 됨 ctrl + x command + x 행 삭제(빈 선택) 커서의 1 행 삭제 됨 ctrl + s command + s 저장 현재 파일 저장 ctrl + alt + s com..
모바일 악성코드는 기업보다는 개인을 타켓으로 하는 경우가 많습니다. 개인은 보안에 대한 지식이 많지 않기 때문에 속수무책일 수 밖에 없습니다. 또한, 개인은 공격 자체를 인지를 못하거나 직접적인 피해가 없는 경우 보안에 필요성을 느끼지 못합니다. 보안 자체가 전문적인 영역이라고 한정하기 때문에 보안 전문가, 보안 앱에 의존하는 경우가 많습니다. 디지털 세상에 살고 있는 우리는 스스로가 보안전문가가 되지 않으면 안 되는 것이 현실입니다. 때로는 강력한 보안 앱보다 사용자의 간단한 보안 실천이 더욱 강력할 수 있습니다. 여러분의 소중한 자산과 개인정보는 스스로가 지키려고 노력해야 합니다. 모바일 악성코드 트렌드 모바일 악성코드는 최초에 개인정보 탈취, 모바일 기기를 손상시키는 공격에서 금전적 취득, 결제 유..
이전에는 자바스크립트는 웹 사이트에 뷰를 표시하거나 간단한 연산을 위한 언어였습니다. 하지만 현재는 웹 애플리케이션은 핵심적인 역할을 하고 있으며, 서버 사이드는 물론 모바일, 데스크톱 애플리케이션에서도 확장되었습니다. 오늘은 이러한 리액트에 대한 간단한 개념에 대해서 알아보도록 하겠습니다. 자바스크립트를 기반을 두고 있는 AngularJS, Backbone.js,Vue.js 등 다양한 프레임워크들이 있습니다. 이러한 프레임워크들은 MVC(Model-View Controller), MVVM(Model-View-View Model), MVW(Model-View-Whatever) 등의 아키텍쳐를 사용하고 있습니다. 이러한 아키텍쳐들은 데이터 관리 영역인 모델과 유저에게 표시되는 뷰로 나뉩니다. 즉, 데이터가..
- Total
- Today
- Yesterday
- 큐비트
- 개발환경구성
- TV로영화미러링
- REACT
- 인공지능성능분석
- 리액트강좌
- ai언어모델비교
- reactQuery
- 에이전틱ai
- jotai
- os별단축키
- 아버지의해방일지
- PC미러링
- 초기렌더링
- 구글스프레드시트플러그인
- 마이그레이션
- 크롬캐스트3
- 양자컴퓨팅
- 무제한ViewPager
- TanstackQuery
- 리액트
- 스프링부트2.0
- supabase
- gitlab방화벽
- typeScript
- 2025it트렌드
- 백엔드서비스
- 크롬캐스트활용법
- ChatGPT
- chatgptvsclaude
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |