2021년 11월 16일 화요일

PlantUML 편집을 쉽게하기

PlantUML 편집을 쉽게하기 Android Studio 나 IntelliJ를 설치하여 plantUML plugin 을 설치하면 편집이 세상쉽다. 구글에서 android studio 를 검색해서 사이트로 가서 안드로이드 스튜디오를 설치한다. android studio 프로그램을 아무프로젝트나 만들든지 해서 시작하고, Preferences -> Plugins ->MarketPlace탭 에서 plant를 입력하면 [PlantUML integration]...

2021년 11월 10일 수요일

Jacoco 테스트 커버리지

Jacoco 테스트 커버리지 JaCoCo 테스트 커버리지 평가툴 프로젝트에 JaCoCo 플러그인 추가 테스트결과 레포팅 JaCoCo 테스트 커버리지 평가툴 작업중인 프로젝트의 테스트가 제대로 작성되어 있는지를 검사하여 % 로 결과를 보여주는 툴이다. 프로젝트에 JaCoCo 플러그인 추가 grale.build.kts파일에 다음을 추가한다. plugins { jacoco } jacoco { toolVersion = "0.8.5" } 테스트결과 레포팅 테스트에 대한 커버리지 검사결과를 html,xml,csv형태로 만들어서 주기위해서 태스크를 추가한다. task("jacocoTestReport", JacocoReport::class)...

2021년 11월 9일 화요일

Danger (CI 보조툴)

Danger (CI 보조툴) Danger 란? Danger 란? Github 등에 코드를 전송하여 CI툴을 연계시에 자주실수하는 기계적인 코드규칙에 대한 검사(LINT)를 수행할수 있도록 도와주는 프로그램이다. 주로 PR(Pull Request)할때에 발생하기 쉬운 문법적오류 등의 검사를 자동으로 해주는 툴이다. 사용법은 Danger가 설치된 로컬 또는 CI상에서 동작하며, danger 프로그램을 설치해야한다. 설치는 간단하다. gem install danger gem install danger_checkstyle_format ( 이것은 Danger plugin https://github.com/noboru-i/danger-checkstyle_format) 사용법은 danger...

2021년 10월 1일 금요일

cocos2dx v4.0 xcode 샘플빌드

cocos2dx v4.0 xcode 샘플빌드 cocos2dx 4.0 을 다운받았으면, 프로젝트를 생성하고 프로젝트폴더밑에 iosProject 라는 대충 폴더 만들고 아래를 실행해서 xocde용 프로젝트 파일을 만들어야한다. cmake … -GXcode -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_SYSROOT=iphoneos xxx. xcodeproj 을 실행하고 빌드해보면 안된다. 유저폴더에 libiconv.dylib 얘랑 다른 뭐랑 없단다. 컴퓨터에 있는 파일이다. 찾자. /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/usr/lib/libiconv.dylib 에있다. xcode의...

2021년 5월 7일 금요일

Kotlin Koin

Kotlin Koin Koin Koin Di (Dependense Injection) するためにはDagger2, HiltがあるがKotlinらしくなくて使い方がやや口説くなることがあったのでIntelliJ社はKotlin専用のDIライブラリのKoinを作った。 KoinはKotlinらしく使いやすい、簡単なのでDIなんかを初めて触った素人も即座で使える。 https://insert-koin.io/ 早速やって見よう。 build.gradle(Project: xxx) に追加 // Add Maven Central to your repositories if needed repositories { mavenCentral() } dependencies...

2021년 5월 6일 목요일

Dagger2 ( Java -> Kotlin )

Dagger2 ( Java -> Kotlin ) Dagger2 ( Java -> Kotlin ) Basic Dagger2 ( Java -> Kotlin ) Dagger から Hilt, Koinに 引越しする前に覚えたことを忘れないうちに書いておきたいと思ってここに書き留める。 参考:DIというのは。 DIは外部から機能を注入することでなるべくインスタンスを生成しないようにするのが基本概念だ。 DIを使わないとインタフェースを使って同じく実現できるがそんなことしようとすると作るファイル数が増えるのでめんどくさくなるので普通はDIライブラリーを使う。 プログラミングにてDIの仕組みは外部に自分が定義したモジュール単位のクラスを使いたいインスタンス変数にタイプを合わせて注入して使うことだ。 作ったモジュールがインスタンス変数に注入されるのはDIライブラリーがやってくれるので指定だけやればDIが実現できる。 Android...

Android 개발팁메모장

라이프사이클 외워서 그릴줄 알아야 한다. Activity/Fragment 생명주기 https://techbooster.org/wp-content/uploads/2014/12/lifecycle.png https://github.com/xxv/android-lifecycle onAttach(Fragment Only) Fragment 에만 있는 싸이클로서 Fragment 가 Activity 에 붙을때 실행된다. onActivityCreated(Fragment Only) onCreate 액티비티를 최초에 실행할때 호출한다. 리소스 , layout 등의 초기화 작업을 한다. 또한 액티비티가 살아있는 동안에 유지해야 할 변수나 기능들을 초기화하고 보관해놓는다. onCreateView(Fragment Only) Fragment...

2021년 4월 26일 월요일

JetPack-Navigation-Component

JetPack-Navigation-Component Android Navigation Component Safe-Args Android Navigation Component Jetpack의 Navigation 기능제공으로 안드로이드에서도 XCode처럼 화면간 이동관계를 그래프형식으로 보면서 작성할수 있게 되었다. Safe-Args 화면(Activity 또는 Fragment)사이에 데이터를 전달하기 위해서는 Bundle에 담아서 하곤했는데, Safe-Args를 이용하면 데이터를 전달할때 서로다른 타입으로 처리하려고 하는에러를 미리 방지할수 있고 좀더 간단하게 처리할수 있도록 도와준다. build.gradle(Project:...