목록전체 글 (393)
나의 발자취
그림에서부터 설명이 잘되어있다. https://velog.io/@minji0801/iOS-Application-Life-Cycle-iOS-%EC%95%B1%EC%9D%98-%EC%83%9D%EB%AA%85%EC%A3%BC%EA%B8%B0
아이폰 내에서의 파일시스템이 어떻게 이루어져있는지 정~말 기본적이지만 그동안 솔직히 iOS 공부를 못해서 까먹은 겸 다시 복기하는 차원에서 읽어본 글이다. https://medium.com/@lucideus/understanding-the-ios-file-system-eee3dc87e455
미디움의 기사를 읽고 시스템 디자인 겉햝기를 했다. 이번에 느끼게 된 거지만, SWE와 대화를 하면서 미국 회사 인터뷰는 항상 시스템 디자인이 필수인 것 같다. 게다가 mill/billions of users를 확보한 SaaS product 라면, 시스템이 어떻게 돌아가는지 알아야하는 것은 기본 중의 기본이다. 코더로서 개발을 하는 개발자와, 시스템의 전반적인 프로세스와 소프트웨어의 생명주기 전역에 있어 커버를 해야하는 SWE의 롤은 어떻게 보면 비슷하면서 참.. 다른 것 같다. 뭐가 얕고 깊다고는 말할 수 없지만... 코드 짜는게 좋으면 개발자, 시스템 디자인 및 UI/UX 까지 관여하려면 엔지니어가 좋은 것 같다. 이 시스템 디자인에는 4가지의 전제조건이 들어있다. - 일단 유저는 이미 로그인을 한 ..
A class is another means of modeling real-life objects programmatically. 클래스는 실제 생활에 적용되는 객체들을 프로그래밍적 관점으로 모델링하는 것을 뜻하기도 한다 How to create a class using the class keyword. Using the init() method allows us to provide an instance with specific values right off-the-bat during the creation of an instance. 클래스의 init() 메서드는 인스턴스를 만들 때 바로 특정 밸류값을 가질 수 있도록 하는 기능이다. A class can inherit another class’s pr..
Levels of Access Public We’ll start with public, the most open level, which grants access to a property or method from inside or outside the module. Relating it to the company analogy, since modules are companies, public information can be shared between companies. This level is typically used when creating frameworks so that modules that import the framework can access its properties and method..
* argument label 을 _ 로 하면 function invoke 시 argument label을 쓰지 않아도 된다 * multiple values는 튜플로 반환한다. func favoriteCuisine() -> (name:String, dish:String) { return ("Russian", "Pelmeni") } let cuisine = favoriteCuisine() print("My favorite \(cuisine.name) dish is \(cuisine.dish)!")* Implicit return 이란, swift 5.1(20년 2월)부터 생긴 것으로 return이 한줄이면 return 키워드를 생략해도 된다. * default parameter는 argument 뒤에 = 하..
사실 한 언어에서는 리스트, 어떤 언어에서는 배열 이렇게 사용하는 경우가 흔한데 파이썬은 둘 다 있어서 헷갈려서 정리해본다. 이 두가지 차이가 존재하는 이유는 백엔드 implementation 때문이다. 우리가 흔히 라이브러리를 쓰지 않고 사용하는 파이썬 자료구조는 리스트라고 알고있을것이다. 파이썬 리스트는 서로 다른 타입의 데이터들을 담을 수 있고 매우 유연하지만 배열에 비해 더 많은 공간을 사용한다. 각각의 리스트 항목들은 각자의 포인터를 가지는데, 파이썬 오브젝트 전체에 대하여 돌아가면서 포인팅을 한다. 반면 파이썬의 배열은 C언어에서의 배열과 똑같이 실행된다. 포인터가 배열의 첫번째 요소를 가리키는동안 나머지는 계속 메모리에 상주하는 식이다. 리스트의 최대 장점은 모둔 데이터와 타입의 정보를 가지..
del 리스트이름[index] 하나 이상의 요소를 삭제하고 싶을때 del statement을 쓴다. 배열 내 요소의 위치를 명시한다! 안그러면 에러 난다. import array integer_array = array.array('i', [1, 2, 3, 3, 4]) del integer_array[2] # removing third element print(integer_array) # Output: array('i', [1, 2, 3, 4]) del integer_array # deleting entire array print(integer_array) # Error: array is not defined remove(val) 주어진 요소 값으로 삭제하고 싶을때 사용한다. import array i..