분류 전체보기
-
QA / QC / Testing은 무슨 차이일까Dev 2019. 9. 3. 09:16
소프트웨어 테스팅을 공부하던 중 QA, QC, Testing 세 단어가 자주 등장하였습니다. 분명 뭔가 소프트웨어의 결함을 발견하여 고치는 느낌의 단어들인데, 세세히 찾아보면 비슷한듯 다른 말입니다. QA는 IT업계 뿐만 아니라 다양한 생산직에서도 사용하는 말입니다. 클라이언트의 니즈를 충족하는 답변/대응을 내놓는 것이라고 알고 있었습니다. 따라서 Question/Answer의 QA라고 오해하기 쉽지만, 실제 뜻은 Quality Assurance, 품질 보증 이라는 뜻입니다. 어떤 품목에 대해 품질 요구 사항을 충족한다는 신뢰를 주기 위하여 품질시스템에서 실시되는 계획적이고 체계적인 활동을 의미합니다. QC는 Quality Control, 로 품질 관리라는 뜻입니다. 이는 품질의 요구 사항을 충족시키기 ..
-
[안드로이드 스튜디오] TODO를 이용하여 효율적으로 개발하기Coding/Android 2019. 8. 6. 20:31
개발을 하다보면 코드가 길어지고, 구현해야 할 메소드가 많아진다면 단순한 주석처리만으로는 내가 이 작업을 나중에 다시 해야하는지, 아니면 이미 완료한것인지 구분하기 힘들 때가 있습니다. 이럴때 TODO를 이용한다면 보다 효율적으로 해야 할 일을 까먹지 않고 표시하게 할 수 있습니다. 무슨 말인지 한번 예를 들어볼까요? 간단한 SensorEventListener를 작성하던 도중, 필수적으로 구현해야하는 onAccuracyChanged를 일단 작성하였습니다. 센서의 정밀도가 변경되면 호출되는 메소드이기 때문에, 지금 당장 구현할 수 없고 나중에 하려 한다면, 단순한 주석 처리만으로는 이 메소드를 비워놓을 것인지 나중에 해야할 일인지 구분하기 힘듭니다. 하지만 이 TODO를 사용한다면, 안에 이 일을 미뤄두는..
-
[안드로이드 - 코틀린] 센서 값 Delay 속도 지정하기Coding/Android 2019. 8. 6. 20:22
SensorManager를 얻어온 뒤 리스너를 장착시킬 때, 우리는 보통 다음과 같은 형식을 취합니다. sensorManager.registerListener(this, sensorManager.getDefaultSensor(), // 센서 타입 SensorManager.SENSOR_DELAY_??) // 센서 Delay 속도 센서 타입에서는 사용하고자 하는 센서(조도, 가속도, 자이로)가 어떤 센서인지를 지정하고, 맨 마지막 매개변수로 센서 Delay 속도를 얻습니다. 대부분의 경우 SENSOR_DELAY_NORMAL로 기본적인 속도값을 취하지만, 개발자의 취향에 따라 다양한 속도를 적용할 수 있습니다. 1. SENSOR_DELAY_FASTEST : 가능한 한 자주 센서값을 얻는다. 2. SENSOR_..
-
[안드로이드 - 코틀린] 지연된 초기화(by lazy)Coding/Android 2019. 8. 6. 20:14
기본적으로 코틀린의 경우 변수 선언과 초기화를 동시에 하는 경우가 많습니다. 하지만 안드로이드 개발을 하다보면 어떠한 변수든, 객체든 초기화를 선언보다 늦게 해야할 경우가 있습니다. 이를 지연된 초기화라 하며, 지연된 초기화 두개 중 (lateinit, lazy) lazy는 val 변수에 대해 적용할 수 있는(값이 변하지 않는) 지연된 초기화 입니다. val lazyValue: String by lazy { println("computed!") "Hello" } fun main(args: Array) { println(lazyValue) println(lazyValue) } by lazy로 지연된 초기화가 된 변수의 경우, 맨 처음 호출된 이후에 초기화가 이루어집니다. 따라서 lazyValue는 맨 처음..
-
[안드로이드 - 코틀린] 옵션 메뉴 아이콘 showAsAction 속성Coding/Android 2019. 7. 31. 13:19
안드로이드 스튜디오에서 메뉴 아이템을 만들다보면, 해당 메뉴 아이템의 아이콘을 노출시키는 showAsAction 속성을 통하여 어떻게 아이콘을 노출시킬지를 선택할 수 있다. 속성의 깃발 모양을 클릭하면 이렇게 5가지를 선택할 수 있는데, 각각의 설정 값은 다음과 같다. - never : 밖으로 절대 노출 X - ifRoom : 툴바에 여유가 있다면 노출 - always : 항상 노출 - withText : 글자와 아이콘을 함께 표시 - collapseActionView : 액션 뷰와 결합 시 축소되는 메뉴 만들기
-
운영체제 - 10(가상메모리)OS 2019. 7. 11. 15:29
페이지 대치 1. 페이지 대치의 필요성 : 하드디스크에 저장되어 있는 페이지를 메모리로 로딩하고 싶은데, 적재할 곳이 없을 때 다른 페이지를 빼내고 로딩해야 한다. 이를 페이지 대치라고 하며 프레임의 개수가 상대적으로 부족하기 때문에 일어나는 일이다. => 페이지 대치를 통해 메인 메모리에 있으면서 사용되지 않는 페이지를 없애고 새로운 페이지로 바꿀 수 있다 희생 프레임 : 페이지 대치에 의해 교체되는 페이지 => 효율적인 페이지 대치 알고리즘을 통해 희생프레임을 잘 찾는것이 중요하다 페이지 대치에 의해 희생된 프레임에 중요한 정보가 있을 수 있으므로 잘 선정해야함 2. 페이지 부재와 프레임 개수 프레임 수 증가 -> 페이지 부재수 감소 페이지 부재는 부정적인 요소이므로 프레임 개수를 늘려줘야한다 3. ..
-
운영체제 - 9(CPU스케줄링2, 쓰레드/다중 프로세서 스케줄링)OS 2019. 7. 4. 14:37
스케줄링 알고리즘 1. Multilevel Queue Scheduling (Queue를 여러개 두어 우선순위 스케줄링) - 서로 다른 유형별로 구분하여 분리처리 - 유형에 맞는 스케줄링 알고리즘을 각각 따로 적용 Ex) 대화형 프로세스 - 일괄처리/Round-robin(실시간으로 즉각즉각 스케줄링이 되어야 하기때문에) * 문제점 - 프로세스를 초기에 어떠한 Queue에 넣으면 계속 거기 있어야 하고 우선순위가 높은/낮은 Queue로 옮겨줄 수 없어 신축성 있는 스케줄링이 어렵다. - 우선순위가 밀려 기아 상태로 들어설 가능성이 있다. 2. HRN(Highest Response-Rate Next) 스케줄링 - 비선점 스케줄링 기법으로 가변적 우선순위를 두어 때에따라 우선순위가 변하게함 많이 기다렸다면 Or..