본문 바로가기

전체 글114

objective-c 와 swift 차이점 * 해당 글은 프로그래밍을 swift로 시작하여 익숙해진 다음 objective-c를 공부하면서 어려웠던 경험을 바탕으로 작성한 글입니다. 또한 부정확한 개념도 있을 수 있어, 알려주시면 감사하겠습니다! objectvie-c는 c언어로부터 발전한 언어이기때문에, swift관점에서 objective-c를 이해하려면 다소 어려운 부분이 있습니다. 그래서 swift관점에서 이해하기 보다는, 있는 그대로 받아들이는게 좋은 것 같아요. objective-c는 헤더파일(.h)이 존재한다. swift는 코드작성을 .swift에서만 작성하면 되는데, objective-c는 .h(헤더파일)와 .m(구현파일) 파일이 존재한다. swift로 개발을 시작한 나에겐 다소 생소했는데, 간단하게 이해하자면, 소스코드의 뼈대라고 생.. 2022. 8. 13.
macOS - 샌드박스 및 북마크 개념 iOS처럼 마찬가지로 macOS도 샌드박스 개념이 존재한다. 샌드박스란? 쉽게 생각하면, 다른 어플리케이션이 접근하지 못하도록 자신만의 구역이라고 할 수 있겠다. 어플리케이션은 데이터들을 로컬에 저장하거나, 캐시로 이용하거나 등 많은 이유로 자신만의 구역이 필요하다. 그럼 샌드박스가 필요한 이유는 반대로 생각하면 짐작이 간다. 다른 어플리케이션이 접근하도록 허락하면, 해당 어플리케이션이 사용하는 데이터가 변질될 가능성이 농후하다. 더 나아가 샌드박스 개념이 없다면, 어플리케이션이 악성코드에 노출되어 해당 사용자의 모든 데이터에 접근하여 바이러스를 심거나 할 수도 있겠다. 앱이 샌드박스화 되어지면, 자신만의 구역이 생기는 것 뿐만 아니라, 사용자의 시스템 데이터에 접근에도 제한이 생기게 된다. ( 샌드박스.. 2022. 4. 10.
첫 회사 입사 3개월 후.. 2022.03.19 안녕하세요. 너무 오랜만에 블로그에 글을 쓰는 듯 합니다. 작년 11월말에 운좋게 취업을 하게 됐고, 직무는 macOS 개발자입니다. 원래 iOS개발자가 되고 싶었지만, macOS 개발자가 됐습니다. 그때 당시에는 고민이 되긴했지만, 지금은 전혀 후회되지 않네요. 어느덧 3개월이란 시간이 지났는데, 정말 쏜살같이 지나갔네요. 3개월동안 정말 많이 배웠고, 발전했다고 느낍니다. 그래서 그냥 제 느낀점을 적어보고 나중에 몇개월 뒤, 몇년 뒤에 보려고 작성하려고 해요. 지금은..! 우선 지금, 정말 재밌다. 이제 실무에 투입돼서 나의 코드를 적용하고 있는데, 너무 너무 너무! 재밌다. 친구들 만나서 "나는 월요일이 기대된다"라고 말하면 이상한 사람처럼 쳐다보기는 하는데, 근데.. 정말 재밌다. 애초에 개발자가.. 2022. 3. 19.
PHImageManager의 requestImage targetSize 문제..? 사용자 사진을 asset으로 불러와서 requestImage 메소드에 targetSize만큼 지정하여 targetSize만큼 적용된 이미지를 저장하려고 하는데... 문제가 있다. 공식문서도 다 보고, 다른 분들의 블로그도 참고하여 requestImage의 각 파라미터들을 적절하게 정했는데도 이미지가 원하는 targetSize만큼 나오지 않고 있다. 목적 이미지를 무조건 1:1비율로 저장하고자 한다. 1:1비율이 아닌 이미지는 적절히 aspectFil을 통하여 1:1비율로 자동으로 맞추어 이미지가 짤리거나, 하고 싶다. 문제 targetSize를 360보다 큰 사이즈로 잡는 다면, 원본 이미지로 나오게 된다. 예를 들어, 원본 이미지가 1100 * 2000 이라면, 이 크기로 나오게 된다. 원본 이미지가 .. 2021. 11. 26.
설정앱에 라이센스 내용 추가하기 이전에 만든 앱에는 앱내에서 설정화면을 따로 만들어, 거기서 라이센스 관련된 내용들을 추가했었다. 이번에는 앱내에서가 아니라, 아이폰 - 설정앱에서 나의 앱에 추가하는 방법을 알게되면서 이를 이번에 팀 프로젝트에 사용해보려고 한다. 다음과 같이 구현하고자 한다. ( 쏘카앱이 다음과 같이 구현되어있어 참고했다 ) 우선 프로젝트에 Settings Bundle 을 클릭하여 추가한다. 그러면 아래와 같이 파일이 생성되는데, Root.plist를 확인해보면 다음과 같이 Default로 작성되어있다. 이를 실행해보면, 위의 내용들이 아래와 같이 반영되어 나타난다. 위의 요소들은 아래와 같은 특정 타입으로 특정 컨트롤로 나타낼 수 있다. 나는 Child pane이 필요한데, Property List에서는 Child .. 2021. 10. 20.
SwiftGen 설치하는 방법 개발자분이 추천해주셔서 알게됐다. https://github.com/SwiftGen/SwiftGen#installation GitHub - SwiftGen/SwiftGen: The Swift code generator for your assets, storyboards, Localizable.strings, … — Get rid of all S The Swift code generator for your assets, storyboards, Localizable.strings, … — Get rid of all String-based APIs! - GitHub - SwiftGen/SwiftGen: The Swift code generator for your assets, storyboards... git.. 2021. 9. 24.
앱 testFlight에 업로드 및 테스터 초대하기 좋은 분들을 만나서 프로젝트를 진행하고 있고, 결국에는 앱을 출시하려고 한다. 앱 출시는 가장 나중에 하는걸로 생각을 했지만, 그런데, 디자이너분과 개발단계에서 원활하게 소통하고자 하기 위하여 TestFlight가 떠올랐다. 개발 중간 중간 시연 동영상을 매번 찍어서 디자이너분께 보내도 되겠지만 디테일한 부분을 놓칠 수도 있고, 가장 정확한 건 실제로 디바이스에 설치하여 앱을 구동해보는 것이 가장 정확하겠다. 또한 나중에도 앱 출시하기 직전에도 테스트를 해봐야 할것이고, 등등 이유로 TestFlight를 통하여 개발 중간 중간 배포하기로 마음 먹었다. 신규 앱 추가 TestFlight에 업로드하기 위해서는 우선 앱스토어에 앱을 새로 추가해야한다. ( 그렇다고 바로 출시하지는 않고 ) 그러기 위해서는 아래.. 2021. 9. 23.
UITabBarItem 이미지가 원본과 다르게 보이는 현상 해결하기 디자이너 분께서 주신 아래 이미지를 토대로 TabBarController의 TabBarItem에 적용하려고 했다. 문제점 하지만 아래와 같이 동그라미이긴 한데.. 다 채워져있다. 몹시 당황스럽다🙃. Debug View Hierarchy에서도 분명 제공받은 이미지를 보여주는 것 같다. 하지만 이미지는 다르게 나오고 있다. 일단 제공받은 이미지는 문제가 없다는 것을 알 수 있고, 다만, 유추해볼 수 있는 것은, 아래 이미지를 확대해보면, + 가 불투명이 아닌, 흰색으로 되어있다는 걸 알 수 있다. ( 만약 불투명이라면 배경에 있는 패턴들이 + 에서도 보여야 할 것이다 ) 원인 검색해본 결과 UITabBarItem은 이미지를 기본적으로 다르게 렌더링한다는 걸 알 수 있었다. 공식문서에서도, 이미지를 선택했을 .. 2021. 9. 17.