목록IT (1009)
올해는 머신러닝이다.
안녕하세요. 수지아빠입니다. 요즘 알고리즘이 아주 핫합니다. 하지만 오랜 시간 개발을 해도 알고리즘을 따로 공부하지 않으면 늘 부족함을 느끼기 마련입니다. 그리고 바쁜 직장인 일정에서 스터디도 하긴 시간도 부족하고 늘어지기 쉽죠. 그래서 읽기 편한 알고리즘 왕초보 책 한권 우선 선정해서 다 같이 떼는 걸로 진행하는 온라인 스터디를 시작할 예정입니다. 인증도 같이 해야 되니 꼭 공부하실 분만 오세요. 인증방법은 챕터별 또는 공부한 내용에 대해서 GitHub 또는 자신의 블로그에 정리해서 올리시고 그 링크를 공유를 해주셔야 합니다. 정리하는 내용은 공부한 내용이므로 자세하지 않으셔도 됩니다. 자세하고 잘 적으시면 그만큼 더 뿌듯하셔도 됩니다. 멋지십니다. !!다시 말하자면 이방은 아래 알고리즘 책 한권을 위..
Truffle를 활용한 Pet-Shop 튜터리얼 분석광고 클릭시 많은 힘이 됩니다. Truffle 튜터리얼 중 펫샵을 활용해서 프론트 까지 적용해서 어떤식으로 웹에서 연동되는지 살펴보자.아래 주소에 있는 내용은 깔끔하게 정리되어 있다. 따라해보는 걸 추천한다. http://truffleframework.com/tutorials/pet-shop여기 글은 펫샵에 사용되는 소스를 분석해보자 한다. 이더리움 플랫폼 위 DAPP개발 프레임워크 중 하나인 truffle사용시 개발시 순서는 다음과 같다.개발환경을 설정한다.truffle box( 보일러 플레이트처럼 만들어준다.)를 이용해서 pet-shop 을 해제스마트 계약 소스를 (.sol) 작성한다.컴파일 및 배포를 한다.Ganeche 를 통해 테스팅을 한다.웹 ..
Truffle기초 - 계약 디버깅과 테스팅광고 클릭시 큰 힘이 됩니다. 감사합니다. Truffle디버깅 및 테스팅 하는 방법을 알아보자.Truffle 은 DAPP 개발을 편하게 해주는 프레임워크이다. 테스팅 및 컴파일, 배포까지 쉽게 해준다.테스팅은 Ganache 를 이용한다. Ganache 은 개발모드에서 가상으로 테스팅 및 배포까지 하게 해주는 프레임워크다른 웹에서 쉽게 테스팅을 할시 http://remix.ethereum.org/ 에서 쉽게 가능하다.그리고 truffle에서도 지원한다.우선 작업 할 폴더를 구성하자.mkdif simple-contract cd simple-contract truffle을 초기화를 해서 기본 구성을 만들 수 있다.truffle init 기본 구성은 위와 같이 나온다.b..
광고 클릭시 많은 힘이 됩니다. 감사합니다. 혹시 크립토키티 라는 걸 듣어보셨나요? 이더리움상에서 DAPP 형태로 고양이를 랜덤으로 만들어서 거래까지 가능한 플랫폼이다.현재 매출은 1200억 달러를 넘어섰다고 한다. 관련 기사 모음블록체인으로 만든 게임, '크립토키티스' 다시금 화제이더리움 가능성 - 한계 보여준 고양이 게임이런 플랫폼 게임 개발시 필요한 DAPP 개발 지식을 무료로 튜터리얼식으로 만들어서 공유 하는 곳이 있다.크립토좀비 바로가기왼쪽에는 설명이 나오고 오른쪽은 코드 실습을 통해서 하나씩 배워나가는 방식이다. 개발 내용은 DAPP 개발시 필요한 솔리티디 언어로 진행한다. 레벨이 현재 5개로 나누어 (계속 추가될 예정) 지며 각각의 레벨과 함께 게임도 같이 만들어 나가는 재미도 있다. 이 글..
광고한번 눌러주시면 크게 힘이 됩니다. 이번 포스팅은 제 딸들 코인인 수지토큰 을 발행해보겠습니다.우선 토큰과 코인은 차이가 있습니다. 코인과 토큰의 차이점?? 그럼 시작해보겠습니다. 우선 결과물은 다음과 같습니다.이더리움에 올릴수 있는 토큰은 ERC20 규격으로 만들수 있다. 이 토큰을 가지고 ICO에 올려서 서로간의 거래를 할 수 있습니다. 그럼 시작해보자. ERC20 위키바로가기규격 인터페이스 형태는 다음과 같다. 12345678910111213141516171819contract ERC20Interface { //총 갯수 function totalSupply() public constant returns (uint); //주어진 토큰오너에 대한 잔액조회 function balanceOf(addre..
예제로 배우는 DAPP 개발해보기 - 복권편이더리움 블록체인 위에 어플리케이션 형태로 올려서 개발할 수 있는 DAPP을 예제로 배워보겠다. 처음 예제는 복권(Lottery) 이다. 내용은 최근 세미나 한 자료를 기준으로 진행한다. 예제 자료는 다음의 위치에서 볼 수 있다. https://github.com/bear2u/lottery_exam1 결과물은 오른쪽과 같다. 지갑을 우선 설치를 해보자. https://metamask.io/ 에서 크롬 확장 프로그램인 설치를 하자. 로그인을 비밀번호를 입력 후 하면 되는데 문자열이 모니크 키값으로 주어지는데 꼭 다른 곳에 저장을 해놓자. 로그인시 보유한 이더와 서버주소를 확인 할 수 있다. 테스트 서버를 우선 설정해보자. 왼쪽 하단 서버 선택을 Rinkeby Te..
********** 카카오 **********https://developers.kakao.com/docs/android/user-management#사용자-정보-요청 NameDescriptionkaccount_email사용자 카카오계정의 이메일kaccount_email_verified인증받은 카카오계정 이메일인지 여부카카오계정 이메일은 변경될 수 있습니다.nickname카카오톡 또는 카카오스토리의 닉네임 정보profile_image640px * 640px 크기의 카카오톡 또는 카카오스토리의 프로필 이미지 URL (2017/08/22 이전 가입자에 대해서는 480px * 480px ~ 1024px * 1024px 크기를 가질 수 있음)thumbnail_image110px * 110px 크기의 카카오톡 또는..
https://stackoverflow.com/questions/19970301/convert-javascript-object-or-array-to-json-for-ajax-data/24728537#24728537
안녕하세요. 수지아빠입니다. 최근 온라인 모임을 몇개 참여하느라 아주 바쁜 하루를 보내고 있습니다. 그 중에서 100일달성을 한 모임이 있습니다. 바로 독서하기 모임입니다. 이 독서하기 모임은 피터팬님이 운영하는 매일 15분 이상 책을 읽고 읽은 내용을 카카오톡에 인증하는 것입니다. 처음에는 15분정도야 매일 할 수 있다는 생각으로 쉽게 참여를 하였습니다. 하지만 하루하루가 지나고 바쁜 일도 있을테고 피곤하고 자고싶은 유혹들이 몰려와 겨우 15분이라는 시간을 만들어서 꾸준하게 독서하는게 많이 힘들더군요. 그래도 한번 해보자는 생각에 1,2,3..10일..이상 연속 읽기 시작했습니다. 1년에 책을 한권을 잘 안 읽은 사람으로써 작은 변화들이 오기 시작했습니다. 그 변화 중 첫번째는 시간을 잘 활용을 하게 ..
https://medium.com/@antonicg/android-clean-architecture-with-viewmodel-usecases-and-repositories-part-1-b9e63889a1aahttps://medium.com/@antonicg/android-clean-architecture-with-viewmodel-usecases-and-repositories-part-2-unit-testing-4683b334b327
영문https://media.readthedocs.org/pdf/solidity/latest/solidity.pdfhttp://solidity.readthedocs.io/en/develop/ 한글https://ggs134.gitbooks.io/solidityguide/content/
출처 : http://b1ix.net/322
https://coderwall.com/p/zrdsmq/signing-configs-with-gradle-android
Collection 함수들RxJava에서 자주 쓰이는 함수중 하나인 Collection형태를 알아보자.우선 toList() 이다.여러개의 배출을 하나의 리스트로 만들어주는 것이다. 주의점은 리턴값이 Single 인것을 유념하자.아주 간단한 예제를 보자.ToListfun testToList(){ Observable.just("Alpha" , "Beta" , "Gamma" , "Delta" , "Epslion") .toList() //Single로 배출 .subscribeBy( onSuccess = { println(it) } ) } ==================================== [Alpha, Beta, Gamma, Delta, Epslion] 정렬을 원할땐 ToSortedList를 사용..
https://www.raywenderlich.com/174137/android-unit-testing-with-mockito
http://thetechnocafe.com/make-bottom-sheet-android/?utm_source=Android+Weekly&utm_campaign=06a50e579d-EMAIL_CAMPAIGN_2018_01_28&utm_medium=email&utm_term=0_4eb677ad19-06a50e579d-338106413
출처 : http://fragmentedpodcast.com/episodes/110/?utm_source=Android+Weekly&utm_campaign=06a50e579d-EMAIL_CAMPAIGN_2018_01_28&utm_medium=email&utm_term=0_4eb677ad19-06a50e579d-338106413
Synchronous:var fs = require('fs'); var array = fs.readFileSync('file.txt').toString().split("\n"); for(i in array) { console.log(array[i]); }Asynchronous:var fs = require('fs'); fs.readFile('file.txt', function(err, data) { if(err) throw err; var array = data.toString().split("\n"); for(i in array) { console.log(array[i]); } });
새로나온 룸 에서는 리스트형태가 저장이 안된다. 그래서 json string으로 변환 후에 저장했다가 꺼낼때에 다시 변환해야 합니다. https://stackoverflow.com/questions/44986626/android-room-database-how-to-handle-arraylist-in-an-entity
그룹핑하나의 Observable을 여러개의 옵저버로 패턴에 맞게 분리하는 방법에 대해서 알아보자.+4개의 문자 배열이 있다.+"Alpha" , "Beta" , "Delat" , "Epsilon" 이걸 문자 길이에 맞게끔 분리를 해보자.+val source = Observable.just("Alpha" , "Beta" , "Delat" , "Epsilon") val lengthGroupObservable = source.groupBy { it.length } //groupBy 가 중요함 lengthGroupObservable.flatMapSingle { it.toList() } .subscribeBy( onNext = { println(it) } ) ====================== [Beta] [..
매일 15분 전공 공부팀에서 2기 팀을 모집합니다. 1기는 무사히 100일 완성을 하신분들이 있으십니다. 멋집니다. ^^ 1기 현황판 바로가기 회사일에 치이고 집안일에 치이는 바쁘게 보낸 작년 한해를 돌아보면서 과연 자신에 대한 투자는 얼마나 했는지 반성을 많이 하게 됩니다.여러분들은 어떠신가요? 그래서 이번 년도에서는 자신의 스킬업을 위해 매일 최소한 15분이상 투자를 하기로 했습니다. 자신의 전공(or 업무)에 대해 개인적으로 짬을 내서 15분이상 책을 읽거나 코드를 따라 쳐도 되고 어떠한 공부를 하든지 인증만 하면 됩니다. 혼자가면 지루하고 포기하기 쉽지만 같이 가면 자극도 되고 힘을 내서 같이 끝까지 갈수 있을 거라 생각합니다. 링크 주소 클릭시 입장 가능합니다. 2기 매일 15분 개발자 공부방 ..
Combinelatest두개의 리스트를 비교하는 걸 구현한다고 가정했을때 여러 가지 방법이 있을테지만그중에 conbinelatest 를 사용해서 리스트와 각각의 값을 비교하는 방법으로 진행해보자.다이어그램은 다음과 같다.val observable1 = Observable.fromArray("A" , "B" , "C" , "D") val observable2 = Observable.fromArray("E" , "C" , "B" , "G","F") Observables.combineLatest( observable1.toList().toObservable() , observable2 ){ list , value -> println("$list $value") if(list.contains(value)) va..
https://blog.stylingandroid.com/tool-time-part-1-2/?utm_source=Android+Weekly&utm_campaign=97507a2973-EMAIL_CAMPAIGN_2018_01_21&utm_medium=email&utm_term=0_4eb677ad19-97507a2973-338106413
Lift 연산자연산자 오버로딩 하는 방법 줌 RxJava에서는 compose 와 lift 가 대표적으로 사용된다.compose 는 전 내용에서 설명해놓은 내용이 있다.Compose 활용Compose with parameter그럼 lift는 차이점이 무엇인가.Lift는 연산자를 오버로딩해서 새로 만드는 걸 목적으로 하며compose는 여러 연산자를 하나의 연산자로 만드는게 주 목적이라고 생각된다.우선 lift 구현 동작 부터 확인해보자. interface ObservableOperator { /** * Applies a function to the child Observer and returns a new parent Observer. * @PARAM observer the child Observer in..
아키텍쳐 어소시에트 관련 자격증 공부 링크 모음비공식 AWS 공인 솔루션스 아키텍트 - 어소시에이트 수험 가이드https://github.com/serithemage/AWSCertifiedSolutionsArchitectUnofficialStudyGuide/blob/master/README.md AWS공식 문서들아래 링크들은 어떠한 내용이 있는지 정도만이라도 한번 훑어 보셔도 많은 도움이 됩니다. AWS Well-Architected 프레임워크(한글화된 문서와 강연영상)https://aws.amazon.com/ko/blogs/korea/aws-well-architected-framework-in-korean/ AWS 한국어 설명서 목록: AWS학습과 사용을 위해서 꼭 한번씩은 읽어 보셔야 하는 문서들 입..
Using코틀린에서 기본적으로 Use을 제공한다.myStream.use { // 자동으로 열고 닫는다. val line = readLine()}하지만 Rx에도 자원관리를 할 수 있는 방법이 있다. 바로 Using 이다.공식문서는 http://reactivex.io/documentation/operators/using.html 그럼 우선 RxKotlin 에서 어떻게 보이는 지 살펴보자.fun using(resourceSupplier: Callable, //첫번째 인자 (열고)sourceSupplier: Function, //세번째 인자 (닫기) disposer: Consumer): Observable { return using(resourceSupplier, sourceSupplier, disposer, ..
task deleteBuild(type: Delete) { delete 'build/generated/' delete project(':mobile-ui').file('build/') delete project(':domain').file('build/') delete project(':cache').file('build/') delete project(':presentation').file('build/') delete project(':data').file('build/') delete project(':remote').file('build/') } mobile-ui -> app 모듈로 변경..
https://www.raywenderlich.com/183588/introduction-google-maps-api-android-2
https://blog.coderifleman.com/2017/12/18/the-clean-architecture/?utm_medium=social&utm_source=gaerae.com&utm_campaign=%EA%B0%9C%EB%B0%9C%EC%9E%90%EC%8A%A4%EB%9F%BD%EB%8B%A4
MIME-TypeDescriptionFile Extensionapplication/acadAutoCAD drawing filesdwgapplication/clariscadClarisCAD filesccadapplication/dxfDXF (AutoCAD)dxfapplication/msaccessMicrosoft Access filemdbapplication/mswordMicrosoft Word filedocapplication/octet-streamUninterpreted binarybinapplication/pdfPDF (Adobe Acrobat)pdfapplication/postscriptPostscript, encapsulated Postscript,ai, ps, epsAdobe Illustrato..