저번 기회에 이어, Udemy와 저자분의 지원으로 강의를 지원받아,
해당 수강할 수 있는 기회를 얻었습니다.
1부에 이어, 2부에는 보다 직접적인 예시와 구체적인 내용에 관한 강의가 이어집니다.
2부의 큰 주제는 익셉션, 인터럽트, 함수호출과 같은 실제 시스템 아키텍처가 동작할 시 빈번하게 수행되거나 발생되는 동작들입니다.
이러한 주제를 각 Armv7, Armv8 두 아키택처의 버전으로 실제 예시에 관한 자세한 설명을 들으며 학습을 할 수 있습니다.
강의는 이론부터 시작해, 아키택처의 전체 흐름에서 해당 주제가 수행하는 역할을 공부한 뒤,
아주 구체적인 사례를 설명하며 이해를 도와주는데요,
비교적 해당 분야에 대한 배경지식이 적은 저도 학습에 큰 무리가 가지는 않았습니다.
물론, 주제 자체의 난이도가 낮지는 않은만큼 아주 수월하지는 않았지만, 강의에서 자주 언급되는 키워드 등을 구글링해가며 수강을 할 때, 완전히 이해할 수 없어 막히는 부분이 있지는 않았습니다.
velog 에는 응용 소프트웨어 개발직군에 근무하시거나, 취업을 희망하시는 분들이 많은 것으로 알고 있습니다.
응용 소프트웨어인 웹앱, 서버 어플리케이션등을 작성하거나 유지보수하는데에는
해당 강의와 같은 시스템 아키택처의 지식이 큰 도움이 되지 않는다고 생각하실 수도 있을탠데요,
저는 현시점 크로스플랫폼 클라이언트 개발직군으로 근무를 하며,
실무에서 발생한 오류를 추적하기 위해 IOS 에서 제공해주는 크래시로그를 분석한 뒤 해당 원인을 추정, 수립한 가설을 증명한 뒤 문제를 해결하는 과정에서 이 강의의 내용이 큰 도움이 됬었던 적이 있습니다.
프레임워크, OS, 타 SDK 등, 다양한 도구들를 사용하며 저희의 실제 로직을 작성을 할 때에는,
아키텍처 구조와 같은 low level 의 지식이 크게 요구되지 않거나,
이를 잘 안다고 해도 활용하기 어려운것도 사실입니다.
하지만,
라이브 서비스 환경에서는 가끔씩 저희가 당연히 정상적으로 동작할 것이라 가정하는 부분들에서도 문제가 발생 할 수 있는데요,
다행이 기존에 비슷한 오류가 빈번하게 발생해 관련 자료를 찾을 수 있다면 문제가 없지만,
이전에 보고된 케이스를 찾지 못하는 경우에는 결국은 작업자 스스로가 주어진 단서드를 조합해 스스로 문제의 원인을 유추해야만 합니다.
이러한 과정에서 모호하고 난해한 현상을 해결할 수 있는 열쇠와 같은 지식들은, 해당 강의와 같은 low level 의 지식들이라고 생각합니다.
따라서 응용 소프트웨어 개발자, 시스템 소프트웨어 개발자 구분하지 않고 알아두면 도움이 될 지식들이기에 저는 해당 강의를 추천한답니다!