Question. iOS개발자는 무엇이고, 어떤 의무를 가지고 있는가?
iOS개발자는 응용소프트웨어 엔진니어로서, Apple에서 제공하는 디바이스들의 애플리케이션을 개발하는 개발자입니다.
iOS개발자 가독성이 높고 효율적이면서 안전한 코드를 작성해야합니다.
개발, 디자인, 테스트, 런칭, 유지보수의 역활을 수행해야하고, 코드의 평가와 구현 그리고 새로운 기술을 지속적으로 공부할 수 있는 역량을 요하는 개발자입니다.
Question. 운영체제에서 overlay란 무엇을 의미하는가?
운영체제에서 overlay란, 실행하고자 프로그램이 물리적인 메모리보다 용량이 클때, 지금 당장 필요하지 않은 부분을 overlay로 설정하고 다른 메모리 공간에 따로 저장하여 필요할때 불러오는 형식으로 프로그램을 운영하는 프로그램 방식이라 할 수 있습니다.
overlay 방식을 사용하게 된다면, 프로그램 용량이 물리적인 메모리보다 크더라도 실행할 수 있게 만들어주게 됩니다. 하지만 이럴 경우 다른 메모리에서 fetch하는 과정중에 지연이 발생하게 되어 프로그램의 실행 속도 늦어지게 됩니다.
Question. set과 array의 차이에 대해서 설명하시오
배열은 순서가 있는 값들의 모음입니다. 동시에, set은 순서가 없는 값들의 모음입니다.
set은 각각의 요소들이 한번만 등장(고유하다)하지만, 배열 같은 경우 중복될 수 있습니다.
Question. 튜플이 무엇인지, 왜 이것이 유용한지?
튜플은 여러 형태를 가진 값들의 집합입니다. 튜플은 주로 값들을 여러개로 반환(return)해야할때 주로 사용됩니다.
/*
Int형태의 리스트를 입력 받았을때 그 중 최대값, 최소값, 값들을 모두 합한 값, 평균값을 튜플 형태로 반환하는 함수 입니다.
*/
func calculateStatistics(scores: [Int]) -> (min: Int, max: Int, sum: Int, average: Double) {
var minScore = scores[0]
var maxScore = scores[0]
var scoreSum = 0
//모든 값들을 순회하게 하는 반복문
for score in scores {
//가장 작은 값을 minScore변수에 저장
if score < minScore {
minScore = score
}
//가장 큰 값을 maxScore변수에 저장
if score > maxScore {
maxScore = score
}
//모든 값들을 scoreSum변수에 저장
scoreSum += score
}
let averageScore = Double(scoreSum) / Double(scores.count)
return (minScore, maxScore, scoreSum, averageScore)
}
let testScores = [90, 88, 75, 92, 84]
let statistics = calculateStatistics(scores: testScores)
print("Minimum Score: \(statistics.min)")
print("Maximum Score: \(statistics.max)")
print("Sum of Scores: \(statistics.sum)")
print("Average Score: \(statistics.average)")
Question. NotificationCenter의 목적은 무엇인가?
이름에서 알 수 있듯이, 알림을 처리합니다. 이를 사용해서 접근할 수 없는 시스템 영역들을 시스템 메시지를 통해서 제어할 수 있고
애플리케이션 내에서 메시지를 보낼 수 있습니다.
'ios 개발자 면접 질문🥸' 카테고리의 다른 글
면접질문 학습(9월14) (0) | 2023.09.15 |
---|---|
면접질문 학습(9월 13일) (0) | 2023.09.13 |
면접질문 학습(9월 1일) (0) | 2023.09.01 |
면접질문 학습(8월 31일) (0) | 2023.08.31 |
ios 개발자 면접 질문 top100 (0) | 2023.08.30 |