SwiftLint와 SwiftFormat을 둘 다 적용해보았습니다. 먼저 이 둘을 비교하는게 맞는지는 모르겠습니다. 겹치는 기능이 있지만, 애초에 주된 기능이 서로 다르기 때문입니다. SwiftLint SwiftLint는 정해진 Rule에 맞지 않는 코드가 있다면, 그 부분을 warning 또는 error를 통해 개발자에게 알려주는게 주된 기능입니다. 물론 auto correction기능을 가지고 있어서 코드 자동 수정도 지원합니다. 개인적으로는 SwiftLint는 한 파일의 길이, 또는 한 라인의 length 등에 대한 warning과 error를 통해 좀 더 깔끔한 코드 구현을 생각하게끔 도와주는 것 같아요. SwiftFormat 반면 SwiftFormat의 주된 기능은 linting이 아닌 form..
저번에 SwiftLint를 써보았으니, 오늘은 SwiftFormat을 써보려고 합니다! (* SwiftLint가 궁금하시다면 이쪽으로!) SwiftLint를 드디어 적용해봅니다. 미뤄왔던 Swift의 lint library를 적용해보려고 합니다. 가장 흔하게 사용되는 SwiftLint와 흔하지 않지만 주변에서 간간히 사용하는 SwiftFormat 중에서 고민을 했는데, 결국 둘 다 써봐야 장단점이 어떤�� summerhorang.tistory.com SwiftFormat 시작하기 https://github.com/nicklockwood/SwiftFormat SwiftFormat도 Readme에 설치부터 사용까지 잘 설명해주고 있어요. 설치는 Homebrew, Mint, Cocoapods, Swift Pa..
미뤄왔던 Swift의 linter, formatter library를 적용해보려고 합니다. 가장 흔하게 사용되는 SwiftLint와 흔하지 않지만 주변에서 간간히 사용하는 SwiftFormat 중에서 고민을 했는데, 결국 둘 다 써봐야 장단점이 어떤지를 알 수 있을 것 같아서, 둘 다 사용해보려고 했습니다. 먼저 고른것은 SwiftLint! 시작! SwiftLint 시작하기 https://github.com/realm/SwiftLint SwiftLint의 가장 좋은점은 한글Readme가 있다는 점!(예이~) Readme를 보면 여러가지 설치방법을 잘 설명해주고 있어요. Homebrew를 통해 설치하면 globally 여러 프로젝트에서 사용이 가능하지만 최신 버전만 설치 가능하고, cocoapods으로 설..
String은 mutable일까 immutable일까? 라는 질문을 받아서 찾아본 내용. Swift의 String은 Struct이다. 결국 Struct는 mutable일까 immutable일까랑 똑같은 질문! Objective-C에서는 string이 struct가 아닌 class였다. 또한 NSString, NSMutableString처럼 애초에 선언할 때부터 mutable, immutable이 구분 가능했다. 하지만 Swift에서는 struct로 등장했고, swift의 struct는 value-type 이다. 따라서 int와 같은 value랑 같게 동작한다고 보면 된다. Struct의 내부 value를 바꾸는 struct 내부 메서드를 생성할 때는 mutating이라는 키워드를 추가해줘야 한다. Str..
최근에 재밌는 문제들을 몇개 풀다보니 set을 많이 사용하게 됐고, 쓴 김에 정리해두려 합니다. set Classhttps://msdn.microsoft.com/en-us/library/e8wh7665.aspx - Set은 unique한 데이터들을 저장하고 불러낼 수 있는 container class입니다. 여기서 unique하다는 것은 데이터 간 중복이 없다는 뜻입니다. - Set 내부에서 데이터는 자동으로 정렬됩니다. - Set에서의 key는 value와 같습니다. - Set에 저장된 값을 바로 수정할 수 없습니다. 기존 값을 지우고 새로운 값을 넣어야 합니다.- Set에 저장된 데이터 접근은 iterator를 통해 할 수 있습니다. - Set은 template class라 할 수도 있습니다. Set..
얼마전에 이런 질문을 받았어요. "malloc, new로 메모리 할당시 실패하면 항상 null 값이 return 되나요?" 당연히 null일줄 알았지만, 막상 질문을 받고나니 "아닐수도 있을까?"라는 생각이 들었고, 찾아본 내용을 포스팅하고자 합니다. mallochttps://msdn.microsoft.com/en-us/library/6ewkz86d.aspxmsdn에서 malloc을 찾으니 더 찾아볼것도 없이 바로 return value라고 써있네요. "malloc returns a void pointer to the allocated space, or NULL if there is insufficient memory available." 할당된 메모리공간의 void pointer를 return하거나, ..
안녕하세요 :) 이 주제가 첫 포스팅이 될 것 같네요!스크립트언어와 컴파일언어의 차이를 어렴풋이 느끼고는 있었지만, 좀 더 명확하게 알고싶어서 찾아봤습니다. 1. Compiled Language 우리가 잘 알고있는 컴파일 언어로는 C, C++, JAVA 등이 있습니다. 컴파일 언어는 "컴파일"이라는 과정을 통해 사람이 쓴 코드를 컴퓨터가 이해할 수 있는 byte code/기계어로 변환시켜주고 실행할 수 있게 합니다. (단, OS마다 다르게 컴파일되므로, Window에서 컴파일된 코드를 Mac에서 실행할 수 없습니다. Mac에서 사용하기 위해서는 Mac에서 다시 컴파일을 하고, 컴파일된 코드를 실행해야 합니다) 즉, 코드 전체를 컴파일하지 않고서는 실행할 수 없습니다! 2. Scripting Languag..