일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- MAC
- Android
- webpack
- TensorFlow
- build
- MachineLearning
- Chrome
- 맥
- PYTHON
- ReactNative
- 센토스
- 리눅스
- react
- 개발
- linux
- 네트워크
- centos
- jest
- 티스토리챌린지
- androidstudio
- vsCode
- VirtualBox
- qunit
- xcode
- node
- localserver
- IOS
- unittest
- 오블완
- Today
- Total
목록전체 글 (490)
로메오의 블로그

Ganache 실행하기 ganache GUI를 실행합니다. 프로젝트 생성 $ cd /my/project/path $ mkdir election $ cd election $ truffle unbox pet-shop 프로젝트를 에디터로 엽니다. (저는 VSCode로 작업합니다.) Election.sol 파일 생성 $ touch contracts/Election.sol pragma solidity ^0.5.0; contract Election { string public candidate; function setname (string memory name1) public { candidate = name1; } function getname () public view returns (string memory)..

Truffle Framework 설치 Truffle 프레임워크는 Solidity를 로컬에서 컴파일하고 배포할수 있는 프레임워크입니다. Back-end용 스마크 컨트렉트를 담당합니다. $ node --version v11.5.0 $ npm install -g truffle node가 먼저 설치되어 있어야 합니다. npm으로 truffle을 글로벌로 설치합니다. Ganache-cli 설치 Ganache는 local에서 컨트렉트를 테스트 할수 있습니다. 각 계좌당 100 ETH을 제공합니다. $ npm install -g ganache-cli $ ganache-cli Available Accounts에 10개의 계좌에 100 ETH가 들어있는것을 확인 할 수 있습니다. 그리고 127.0.0.1:8545에서 실..

처음에 생성할때 만든 프로젝트 이름을 경우에 따라 변경해야 될때가 있습니다. package명이나 bundle 명을 변경하는거에 비해 좀 까다롭습니다. (특히 iOS) 단순히 package명이나 build 명을 변경하시려면 아래 포스트로 이동하세요. REACT NATIVE 패키지명, 번들명 변경하기 PACKAGE, BUNDLE [ANDROID, IOS] 프로젝트를 생성합니다. $ react-native init firstProject firstProject라는 이름으로 프로젝트가 생성되었습니다. 이걸 secondProject로 변경해보겠습니다. iOS 프로젝트명 변경하기 xCode에서 프로젝트 이름을 변경하는것은 매우 까다로와 변경하다가 프로젝트를 날려 먹을 확률이 매우 높습니다. 꼭 프로젝트를 백업해놓고..

React Native에서 프로젝트를 생성하면 Package명이 자동으로 부여됩니다. 그런데 firebase와 연동이라던지, 앱을 스토어에 올릴때도 고유한 앱의 Package 명을 부여해야 되는데 자동으로 부여된 Package명을 변경하는 방법을 알아봅니다. package명이 아니라 project이름을 변경하려고 하면 아래 포스트에서 확인하세요. React Native Project 이름 변경하기 프로젝트 생성 $ react-native init firstProject Android Package명 변경 /android/app/src/main/AndroidManifest.xml 파일을 열어보면 Package명이 com.firstproject로 지정되어 있습니다. 이것을 제 도메인으로 변경해보겠습니다. (..

나만의 코인을 발행해서 공개해보겠습니다. https://wizard.oracles.org/사이트에 접속해서 MetaMask 연결을 허용합니다. 이때 내 지갑이 Ropsten 테스트넷으로 선택되었는지 확인하세요. New CrowdSale을 클릭합니다. Continue를 누릅니다. - Name: 코인의 이름입니다. - Ticker: 코인의 약칭입니다. (주식시장에서 종목의 약칭과 비슷한 개념입니다.) - Decimals: 0-18까지 입력가능합니다. (ETH 소숫점 몇자리까지 세분할것인가를 정의합니다.) - Reserved tokens: ICO 이후에 특정 계정에 코인을 배정할 수 있습니다. 발행인인 제에게 코인의 90%를 선배정했습니다. Submit을 눌러 추가할 수 있습니다. 준비가 되었으면 Contin..

이더리움 메인넷은 실제 코인을 저장하는 거래하는 곳입니다. 테스트넷으로 변경하도록 하겠습니다. 계정추가 지갑에서 profile을 누릅니다. 계정 생성을 누릅니다. 계정이름을 입력하고 생성합니다. 새로운 계정이 생성되었습니다. 테스트계정으로 변경 지갑의 상단에 이더리움 메인넷은 실제 이더리움 코인을 거래할 수 있는 지갑을 의미합니다. 메인넷을 Ropsten 테스트넷으로 변경합니다. 테스트 계정으로 변경되었습니다. 이제 이더리움 실제 코인이 아닌 테스트 코인을 저장할 수 있습니다. ETH 무료로 받기 입금버튼을 누릅니다. Faucet 테스트 ETH 얻기를 누릅니다. request 1 ether from faucet을 누릅니다. 연결을 승인 합니다. transaction이 생성되었습니다. 1 ETH가 입금된것..

메타마스크는 여우지갑으로 불리는 이더리움(ETH)을 보관하는 지갑입니다. 코인을 보관하는 방법은 크게 3가지로 나눌수 있습니다. 먼저 거래소 지갑에 보관하는 방법이 있습니다. 이 방법은 가장 편리한 반면 거래소의 정책에 따라 코인거래가 제한되거나, 거래소 해킹 등에 의한 분실의 위험이 있습니다. 콜드월렛이라 불리는 개인 하드웨어에 보관하는 방법이 있습니다. 외장 USB등에 저장하는 방법인데, 가장 안전한 반면 안전한 보관을 위하여 주의를 많이 기울여야 합니다. 마지막으로 핫월렛이라고하는 방법인데, MetaMask등의 개인 지갑에 코인을 보관하는 방법이 있습니다. 크롬 브라우저에서 MetaMask 사이트에 접속합니다. https://metamask.io/ Get Chrome Extension 버튼을 누릅니..

iOS용 앱을 스토어에 배포하기 위해서 인증서 발급은 5단계로 정리할 수 있습니다. 1. CSR 생성 2. Certificates 생성 3. Identifiers 발급 4. Devices 등록 5. Provisioning Profiles 생성 1. CSR 생성 응용프로그램 > 유틸리티 > 키체인 접근.app을 실행합니다. 키체인 접근 > 인증서 지원 > 인증기관에서 인증서 요청을 누릅니다. 디스크에 저장됨을 선택하고 정보를 입력후 계속을 누릅니다. CertificateSigningRequest.certSigningRequest 파일을 특정 폴더에 저장합니다. 2. Certificates 생성 Apple 개발자 사이트에 접속합니다. https://developer.apple.com/ Certificates..

Expo cli 설치 $ sudo npm install -g expo-cli 프로젝트 생성 $ expo init firstProject Expo start $ cd firstProject $ expo start connection을 Tunel로 선택합니다. 디바이스에 expo client 설치하기 아이폰 설치: https://itunes.apple.com/app/apple-store/id982107779 안드로이드 설치: https://play.google.com/store/apps/details?id=host.exp.exponent 앱을 설치하고 카메라 앱을 실행합니다. QR코드를 읽으면 Expo에서 열기 창을 터치합니다. Javascript Bundle을 다운로드합니다. Expo client에서 앱이..

karma.conf.js module.exports = function(config) { config.set({ basePath: '', frameworks: ['jasmine'], files: [ './js/index.js', './__test__/*.spec.js' ], exclude: [ ], preprocessors: { }, reporters: ['progress'], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], singleRun: false, concurrency: Infinity }) } karma 환경설정 파일을 열어서 files 부분을 수정합니다. js/index.js ..

karma cli 설치 $ npm install -g karma-cli 프로젝트 생성 $ cd /my/project/path $ mkdir firstProject $ cd firstProject $ npm init -y $ mkdir html js __test__ $ touch html/index.html js/index.js __test__/index.spec.js $ touch testRunner.html 프로젝트 파일구조가 설정되었습니다. 모듈 설치 karma, jasmine 설치 $ npm install --save-dev karma karma-jasmine $ npm install --save-dev jasmine-core 브라우저 러너 설치 $ npm install --save-dev karm..

QUnit은 local server에서 구동할것이기 때문에 webpack으로 dev server 설정을 먼저 하세요. WEBPACK DEV SERVER 구동하기 js/index.js 실제 개발 코드가 되겠습니다. // Storage에 데이터를 저장한다. let myphone localStorage.setItem('mySmartPhone', 'iPhone') myphone = localStorage.getItem('mySmartPhone') console.log('내 폰은 ' + myphone + ' 입니다.') localStorage에 mySmartPhone 의 실제값은 iPhone이 들어갑니다. __test__/index.spec.js // mockStorage 함수를 생성한다. QUnit.begin(..

기본테스트 js/index.js // 더하기 함수 const addNumber = (first, last) => { return parseInt(first, 10) + parseInt(last, 10) } __test__/index.spec.js QUnit.test('더하기 함수 테스트', assert => { const result1 = addNumber(10, 30) assert.equal(result1, 40, '10 + 30 = 40') }) 코드를 작성하고 브라우저 새로고침을 합니다. QUnit.skip __test__/index.spec.js 에 추가합니다. QUnit.skip('테스트 보류함', assert => { const result1 = addNumber(10, 30) assert.e..

QUnit은 local server에서 구동할것이기 때문에 webpack으로 dev server 설정을 먼저 하세요. WEBPACK DEV SERVER 구동하기 프로젝트 생성하기 프로젝트 root 폴더에 testRunner.html 파일을 생성합니다. 그리고 __test__ 폴더를 만들고 index.spec.js 파일을 생성합니다. js 폴더에 index.js 파일도 생성합니다. $ cd /my/project/path/firstProject $ touch testRunner.html $ mkdir __test__ $ touch __test__/index.spec.js $ mkdir js $ touch js/index.js testRunner.html 파일을 열어서 코딩을 합니다. 스크립트 파일은 cdn에..

프로젝트 생성하기 $ cd /my/project/path $ mkdir firstProject $ cd firstProject $ npm init -y $ npm install --save-dev webpack $ npm install --save-dev webpack-cli webpack은 global로 설치하는것을 권장하지 않는다고 합니다. local로 설치하세요. webpack.config.js 파일 생성하기 $ touch webpack.config.js 파일을 열어서 config 코드를 작성합니다. var path = require('path'); module.exports = { }; webpack-dev-server 설치 $ npm install --save-dev webpack-dev-ser..

[카테고리] TENSORFLOW 독일 빵집이라는 곳에서 영업시간에 따른 매출이 아래와 같다고 가정해보겠습니다. 영업시간 매출 1 9,500 2 11,000 3 19,500 4 28,000 5 42,500 6 51,000 7 60,000 8 75,000 9 86,500 그럼 10시간 영업했을때 매출은 얼마쯤 될까요? 선형회귀 모델을 구축하겠습니다. 가설 Hypothesis H (Hypothesis): 가설 W (Weight): 기울기 b (bias): Y절편 머신러닝은 W와 b값을 계속 수정해나가면서 가장 합리적인 H 값을 찾는 과정입니다. 비용 Cost 가설이 얼마나 정확한지 판단하는 기준 비용은 직선과의 거리를 계산해서 구할수 있습니다. 비용함수 Cost Function 비용함수는 예측값에서 실제값을 ..

[카테고리] TENSORFLOW tensorflow설치하기 $ pip3 install tensorflow 설치확인 $ pip3 show tensorflow Name: tensorflow Version: 2.0.0 Summary: TensorFlow is an open source machine learning framework for everyone. ..... python idle 실행하기 응용프로그램 > Python 3.7 > IDLE.app 을 실행합니다. File > New File을 실행합니다. import tensorflow as tf hello = tf.constant("hello world!") session = tf.compat.v1.Session() print(session.run(he..

[카테고리] TENSORFLOW 설치확인 MacOS에는 기본적으로 Python 2.7 버전이 설치되어 있습니다. $ python --version Python 3.7버전을 설치하겠습니다. xcode-select를 설치합니다. $ xcode-select --install Homebrew를 설치합니다. $ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 설치가 완료되면 doctor를 실행합니다. $ brew doctor 이제 python 3을 설치합니다. $ brew install python3 버전 확인하기 $ python3 --version Python 3.7.3 $ pytho..

프로젝트 생성 $ react-native init firstProject $ cd firstProject react-native-call-log 설치 $ npm install --save react-native-call-log $ react-native link react-native-call-log AndroidManifest.xml AndroidManifest.xml 파일에 READ_CALL_LOG permission을 추가합니다. App.js import React, { Component } from 'react'; import { PermissionsAndroid, StyleSheet, Text, View } from 'react-native'; import CallLogs from 'react-..
Android 프로젝트 생성 Empty Activity를 선택하고 Next를 누릅니다. Name, Save location, Language를 설정하고 Finish를 누릅니다. AndroidManifest.xml READ_CALL_LOG 권한을 추가합니다. activity_main.xml 버튼을 하나 만듭니다. MainActivity.java package com.gaeyou.calllog; import android.content.pm.PackageManager; import android.database.Cursor; import android.provider.CallLog; import android.support.v4.app.ActivityCompat; import android.support.v..