[Knowledge] 소비자 중심 경영 (CCM)

일부 내용을 발췌

소비자중심경영(CCM) 인증이란, 기업이 수행하는 모든 활동을 소비자 관점에서 소비자 중심으로 구성하고 관련 경영활동을 지속적으로 개선하고 있는지를 심사하여 인증하는 제도이다. 공정거래위원회가 주관하고 있으며 그에 대한 인증은 한국소비자에서 진행하고 있다. 신청 대상은 물품의 제조·수입·판매 또는 용역 제공의 모든 과정이 소비자 중심으로 이루어지는 경영을 하는 사업자로 해당 인증을 기업이 받게 되면 우수기업 포상, 중소벤처기업부 소관 중소기업 정책자금 융자 한도 상향, 공정거래협약 이행평가 시 가점 부여 등의 인센티브가 제공된다. 

출처 : 소비라이프뉴스(http://www.sobilife.com)


원문 :
http://www.sobilife.com/news/articleView.html?idxno=25092

[Tip] iOS 11 Ambiguous Layouts

stackView 안에 들어갈 때 uilabel같은 텍스트 길이에 따라서 높이가 결정되는 control 계열은 문자열이 없을 때 높이값이 모호하게 된다. 보통 hugging, compressionResistance priority를 조정하면 해결 되기는 한다.


label.setContentHuggingPriority(.required, for: .vertical)
    label.setContentCompressionResistancePriority(.required, for: .vertical)

하지만 iOS 11에서 Ambiguous Layouts warning이 발생하게 된다.

label의 텍스트 내용이 없을 때 구체적으로 높이를 얼마만큼 되어야 하는지 stackView arrangedSubview 조건이 모호하게 된다.

즉, 명시적으로 label의 최소 높이를 constraint로 지정 하게 되면 이 warning과 layout이 올바로 나오지 않는 현상이 해결된다.

[iOS] fix fastlane-plugin-firebase_app_distribution undefined

if fastlane add_plugin dose not work

[!] Could not find lane 'ios firebase_app_distribution'. Available lanes: ios release_dev, ios release_beta, ios release_prod, ios pre_build, ios increment_marketing_version, ios build, ios upload_to_firebase, ios upload_to_appstoreconnect, ios upload_to_crash

try below solution

// gemspec of firebase fastlane plugin 
// https://github.com/fastlane/fastlane-plugin-firebase_app_distribution/blob/master/fastlane-plugin-firebase_app_distribution.gemspec

$vi Gemfile
// add plugin
gem "fastlane-plugin-firebase_app_distribution" 

$bundle update

Using fastlane 2.167.0
Fetching fastlane-plugin-firebase_app_distribution 0.2.4
Installing fastlane-plugin-firebase_app_distribution 0.2.4

...
// then add plugin
$fastlane add_plugin firebase_app_distribution

// or update plugins
$fastlane update_plugins

References

https://stackoverflow.com/questions/60783449/how-to-fix-fastlane-plugin-firebase-app-distribution-undefined

AVFoundation 동영상 편집

동영상 편집 잘 정리됨

레터박스

https://forums.raywenderlich.com/t/extend-video-render-size-and-add-background-ios-swift/97957

비디오 화면전환

https://github.com/robovm/apple-ios-samples/tree/master/AVCustomEdit/AVCustomEdit

PIP

https://abdulazeem.wordpress.com/2012/04/02/video-manipulation-in-ios-resizingmerging-and-overlapping-videos-in-ios/

[iOS] 프로젝트 설정 & 환경구성

CI & CD (Fastlane)

MVVM with RxSwift

Thiiing 이라는 서비스를 같이 개발하신 분 기술 블로그에 내용이 잘 정리 되어 있어 링크를 남김

[인사] 한계인력…?

한계인력은 조직 안에서 회사 밖으로 내보내야 하는 인력을 의미한다.

회사에서 평가 기준을 통해 가이드라인을 제시하고 가이드라인에 들지 못한 미흡한 인력을 자연스럽게 내보내기 위한 인력관리 방안이다.

한계인력이 유지인력이 되도록 성과 향상 프로그램을 통해 고인 물을 맑게 할 수 있다.

[Tip] Swift -> Protocol Conditional Extension

protocol MyProtocol {

}

extension MyProtocol where Self: ImmutableMappable {
static func createObject() -> [Self]  {
var items = [Self]()
var json: [String: Any] = [“greeting”: “hello world”]
let item = self.init(JSON: json)
items.append(item)

return items
}

}

 

https://stackoverflow.com/questions/35133887/how-to-require-that-a-protocol-can-only-be-adopted-by-a-specific-class

[Tip][iOS] Xcode 메모리 릭 탐지

객체가 메모리에서 해제 되기를 기대하는 시점에서 Xcode 하단 (debug area)에 있는 Debug Memory Graph 버튼을 누르면 memory graph를 graph 형태로 볼 수 있다.

debug_memory_graph

Xcode > 하단 > Debug Memory Graph

memory_graph_xcode

내가 만든 객체를 어떤 객체가 참조하고 있는지 시각적으로 보여준다.

Graph를 마우스로 클릭하면 우측 Inspector 에서 객체 정보와, 어떤 함수에서 발생 했는지 자세히 알려준다. call_stack (backtrace)

만약 보이지 않는다면 빌드 & Run 전에 scheme > edit > Diagnostics > Memory Management 에 항목을 추가해야 한다.

edit_scheme