개발.....................
-
[내일배움캠프 후기] iOS 개발 공부부터 앱출시까지 성공 + 사전캠프 본캠프 꿀팁개발...................../TIL 2024. 10. 7. 10:07
지난 5월에 처음 iOS 캠프에 들어오고 iOS 창업 캠프로 전환을 거쳐서 앱 출시까지 마쳤다. 결론부터 말하자면 개발 지식 0이었는데 OCR과 AI 기술을 접목한 일정 관리 앱을 만들었다. 혼자서는 아마 할 수 있을까? 하는 생각도 못했을 것이다. 공무원으로 오랫동안 근무하면서 나는 개발의 ㄱ도 몰랐고, 사전 캠프를 거쳤지만 캠프 초중반에 이 실력으로 앱출시가 가능할까하는 걱정이 많았다. 나만의 서비스를 만들고 싶다는 생각을 했다. UX 디자인이라는 개념이 슬슬 유명해질 때였어서 배우다가 디자이너로 전향하고 싶어졌다. 비전공자였기 때문에 개발 지식을 조금이라도 익혀놓으면 플러스가 될 것 같아서 개발 캠프를 찾게 되었다. 초기에 iOS 창업팀이 생겨서 마지막 정착지로 삼았다. 출시까지 하게 되는 과정이어..
-
-
테이블뷰 기본개발...................../TIL 2024. 7. 19. 09:27
더보기import UIKitclass ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate { var data: [String] = ["Apple", "Banana", "Cherry", "Date", "Elderberry", "Fig", "Grape", "Honeydew"] let myTableView: UITableView = { let tableView = UITableView() tableView.backgroundColor = .green tableView.translatesAutoresizingMaskIntoConstraints = false t..
-
메모리 관리 RC, Reference Counting개발...................../TIL 2024. 7. 10. 11:32
컴맹이어서 메모리가 뭐고, RAM이 몇이냐고 물어봤을 때 넹??그게 몬가요,,;; 내가 앱을 만들고자 하니 메모리 관리의 필요성이 있으니 수년간 이해해보려던 메모리와 디스크에 대해 이번에야 저장됐다. 늘 메모리에 있다가 디스크로 넘어간..^^암아도..? 메모리일반적으로 RAM 을 말하는 경우가 많다.맥북에서도 몇 GB 짜리 RAM 을 사용하는지 볼 수 있다.RAM 은 휘발성 메모리이다. 즉, 데이터를 영구적으로 저장하지 않는다. 일시적인 저장에 사용한다.→ 앱도 결국 데이터 덩어리이기 때문에, 실행을 시키면 메모리에 올라간다.→ RAM 의 용량이 클 수록, 동시에 실행시킬 수 있는 앱의 총량이 높아진다고 생각할 수 있다.→ 그렇기 때문에 메모리에 저장된 데이터는 앱이 메모리에서 내려올 때 같이 내려오게..
-
View Hierarchy 관련 오류개발...................../TIL 2024. 6. 30. 18:26
@discardableResult public func equalToSuperview(_ file: String = #file, _ line: UInt = #line) -> ConstraintMakerEditable { guard let other = self.description.item.superview else { fatalError("Expected superview but found nil when attempting make constraint `equalToSuperview`.") } 원래 제약조건 아래에 //view [label] .forEach { view.addSubview($0) } 를 작성..
-
#Preview macro, Xcode 코드베이스로 UI 설계할 때 유용한 팁개발...................../TIL 2024. 6. 27. 19:22
UIkit에서 스토리보드 없이 코드로만 UI 설계 시시뮬레이터 없이 UI를 미리볼 수 있는 Preview 매크로! 실험해보니 적용속도도 빨라서 디버깅 용도 외로 UI 확인할 때 유용하게 쓰일 것 같다. #Preview {myView()} 위와 같이 간단한 매크로이다.내 상황에 대입하면 #Preview {viewController()} 작성해주면 바로 오른쪽에서 프리뷰를 확인 가능하다. 현재 느낌단순히 UI만 보는게 아니라 버튼도 작동한다!Preview Device를 정할 수 있어서 내 앱이 Responsive인지 확인할 때도 좋을 것 같다.DarkMode, LightMode 전환이 가능하다. 만약에 안 보인다면, Editor -> Canvas를 활성화를 확인해야 한다. 이런 UI 뿐만 아니..
-
Swift 코드베이스 준비하기(한 개의 페이지일 때)개발...................../TIL 2024. 6. 24. 13:48
1. main을 삭제합니다. 2. Info 내 main을 필터링해 삭제해줍니다. 3. 파일의 Targets - Build Settings 'main'을 필터링해서 삭제해줍니다. 4. SceneDelegate로 가서 아래 코드를 세팅해줍니다. // SceneDelegate.swiftclass SceneDelegate: UIResponder, UIWindowSceneDelegate { // 윈도우. 앱에 반드시 한 개는 필요한 가장 근본이 되는 뷰. 이 위에 뷰가 쌓이기 시작. var window: UIWindow? // 앱을 시작할때 세팅해줄 코드를 작성하는 곳. func scene(_ scene: UIScene, willConnectTo session: UISceneSession, op..
-
Swift 버튼을 눌러 연속적으로 이미지 바꾸기(.toggle 활용)개발...................../TIL 2024. 6. 21. 18:50
나는 원한다. 내가 에셋으로 저장한 이미지(image1, image2)가 버튼을 누를 때마다 변경되면 좋겠어요~ if-else문만약에 imagaView의 이미지가 image1이면 버튼을 눌렀을 때 image2가 나온다. 아니라면, image1이 나와야 하니까. 변수 선언부터 할게요 private var isImage1Displayed = true // 현재 표시된 이미지가 image1인지 여부를 저장하는 변수 왜냐? 상태 추적: 이미지가 현재 image1인지 image2인지 알기 위해 변수가 필요하다. 이렇게 하면 버튼을 눌렀을 때 현재 상태를 확인하고, 그에 따라 이미지를 변경할 수 있다. 토글 로직: isImage1Displayed 변수를 사용하면 간단한 if-else 문으로 이미지를 토글(.t..