Si Jong Tech Blog
close
프로필 배경
프로필 로고

Si Jong Tech Blog

  • 분류 전체보기 (239)
    • ◽️ Programming (239)
      • T I L (90)
      • Swift 문법 (22)
      • UIKit (18)
      • SwiftUI (12)
      • TCA (6)
      • RxSwift (7)
      • iOS (35)
      • 회고 (5)
      • ◽️ Algorithm (32)
      • ◽️ Computer Science (12)
  • 홈
  • 태그
  • 방명록
WebSocket과 Starstream에 대해서 알아보자.

WebSocket과 Starstream에 대해서 알아보자.

이번엔 실시간 데이터 스트리밍 로직을 한번 공부해보기 위해 WebSocket의 대한 개념과 Starstream에 대한 내용을 한번 알아보고자 한다!먼저 WebSocket은 클라이언트와 서버 간의 전이중 통신을 지원한다. 이 말의 뜻은 양측이 동시에 데이터를 주고 받을 수 있음을 의미하며, 실시간 채팅, 금융 데이터 스트리밍, 온라인 게임 등 빠른 응답이 필요한 앱에서 주로 사용되곤 한다. HTTP는 요청-응답 방식으로, 매번 새로운 연결을 생성하지만, WebSocket은 초기 핸드쉐이크를 통해 한 번 연결이 성립되면 그 연결은 지속적으로 유지되는 특징을 가지고 있다. 이로 인해 반복적인 연결 설정 비용이 줄어들고, 실시간 데이터 전송에 최적화 된다!! 아주 중요한 개념이니 꼭 잊지 말도록 하자. WebS..

  • format_list_bulleted ◽️ Programming/T I L
  • · 2025. 2. 17.
  • textsms
Objective-C를 Swift에 가져와 사용하기

Objective-C를 Swift에 가져와 사용하기

이번에 OpenSMILE이라는 C언어 기반의 라이브러리를 연동해 기능을 구현해야하는 상황이 생겨 Objective-C 코드를 Swift에서 연결해 사용하는 방법에 대해 설명하려고 한다 🙂먼저 Swift에서는 C 또는 Objective-C 코드를 직접 “import”해서 사용할 수 없다 대신 Bridging Header라는 특별한 헤더 파일을 만들고 그 안에 연결하고 싶은 오브젝티브씨 파일을 입포트해 구문을 작성하면 Swift 컴파일러가 해당 언어들을 인식하여 Swift 코드에서 사용할 수 있게 된다. Bridging Header는 Objective-C에서 정의된 클래스, 함수, 상수들을 Swift에서 쓸 수 있게 해주는 다리역할을 한다고 생각하면 된다 🙂먼저 파일을 생성해주기 위해 Command+N ..

  • format_list_bulleted ◽️ Programming/iOS
  • · 2025. 2. 12.
  • textsms
fastlane를 활용한 CI/CD 환경 세팅하기

fastlane를 활용한 CI/CD 환경 세팅하기

오늘은 fastlane를 활용해서 배포 자동화를 통해 테스트플라이트 혹은 배포 시 수월하게 할 수 있는 툴을 사용해보고자 한다. 또한 협업하는 과정에서 인증서를 개별적으로 관리하게 되면 번거로울 뿐 만 아니라 많은 문제가 생겨 시간을 잡아먹을 수 있는데 fastlane의 match를 활용해서 하나의 인증서로 팀원들도 배포자동화를 할 수 있는 환경을 한번 세팅해보자! fastlane 설치하기먼저 fastlane를 설치하기 위해 홈브루를 활용해 간편하게 설치한다brew install fastlane터미널에 넣어주면 간편하게 설치가 완료된다. 그 다음 프로젝트 루트로 이동해서 해당 하는 프로젝트에 fastlane를 초기화 해준다현재 fastlane를 적용할 프로젝트로 이동 후 → fastlane 초기화 fas..

  • format_list_bulleted ◽️ Programming/T I L
  • · 2025. 2. 5.
  • textsms
Swift Concurrency 중 MainActor의 역할은 무엇인가

Swift Concurrency 중 MainActor의 역할은 무엇인가

요즘 Swift Concurrency에 대해서 공부를 하고 있는 중인데 그 중 MainActor의 역할이 아주 중요하게 작용하는 것 같아 한번 정리하고 넘어가고자 한다!!https://developer.apple.com/documentation/swift/mainactor/ MainActor | Apple Developer DocumentationA singleton actor whose executor is equivalent to the main dispatch queue.developer.apple.com 기본적으로 MainActor는 메인 스레드에서 실행되어야 하는 코드가 백그라운드 스레드에서 실행되지 않도록 보장하는 역할을 담당한다.이 역할과 동작방식에 대해서 한번 자세히 알아보도록 하자 Mai..

  • format_list_bulleted ◽️ Programming/iOS
  • · 2025. 2. 3.
  • textsms
Vision 프레임 워크를 활용해 얼굴 인식하기

Vision 프레임 워크를 활용해 얼굴 인식하기

오늘은 현재 구현하고 있는 Chatbot 프로젝트에서 이미지를 올려 말하는 것 처럼 할 수 있고 이미지의 텍스트를 인식해 보여줄 수 있는 OCR 기능에 대해 찾아보던 중 Vision 프레임 워크가 있다는 것을 알게돼 한번 알아보려고 한다 🙂먼저 Vision 프레임워크는 머신 러닝 기술과 Swift의 동시성 기능을 결합해 앱에서 컴퓨터 비전 작업을 수행할 수 있다. 인간 혹은 동물의 신체 자세 또는 물체의 궤적을 추적한다거나, 텍스트를 인식 하거나, 눈 코 입 등 얼굴의 랜드마크를 감지하는 등 다양한 기능을 제공한다. 먼저 Vision 작업은 요청과 핸들러를 통해 실행되게 되는데 주요 핵심 클래스는 다음과 같다.VNImageRequestHandler : 정적 이미지 요청을 처리하는 클래스VNSequenc..

  • format_list_bulleted ◽️ Programming/iOS
  • · 2025. 1. 20.
  • textsms
JWT의 기본 개념과 HaruFit 프로젝트에 적용해보기

JWT의 기본 개념과 HaruFit 프로젝트에 적용해보기

현재 HaruFit이라는 개인 프로젝트를 진행하면서 추후 유저 간의 커뮤니티 기능과 각각의 계정 별 저장된 운동 기록 및 정보들을 관리하기 위해 계정 정보를 관리하기 위해 사용자를 인증하는 과정을 추가해야 한다. 이를 위해 알아야 하는 개념인 JWT의 기본 개념에 대해서 먼저 정리해보도록 하자 머저 JWT는 JSON Web Token의 약자로 서버-클라이언트 간 인증을 위해 널리 사용되는 토큰 기반 인증방식이다! 서버가 로그인 성공 시 사용자 정보를 기반으로 토큰을 생성하면, 클라이언트는 이후 API 요청 마다 이 토큰을 HTTP 헤더에 포함해 보내게 되고, 서버는 이 토큰을 검증해 사용자를 인증하게 된다.JWT의 3가지 구성 요소Header어떤 해싱 알고리즘을 쓰는지JWT 타입{ "alg": "HS2..

  • format_list_bulleted ◽️ Programming/iOS
  • · 2025. 1. 12.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • ···
  • 40
  • navigate_next
프로필 로고

Si Jong Tech Blog

전체 카테고리
  • 분류 전체보기 (239)
    • ◽️ Programming (239)
      • T I L (90)
      • Swift 문법 (22)
      • UIKit (18)
      • SwiftUI (12)
      • TCA (6)
      • RxSwift (7)
      • iOS (35)
      • 회고 (5)
      • ◽️ Algorithm (32)
      • ◽️ Computer Science (12)
최근 글
인기 글
최근 댓글
태그
  • #TIL
  • #티스토리챌린지
  • #tableView
  • #MVC
  • #project
  • #swift
  • #IOS
  • #uikit
  • #알고리즘
  • #오블완
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바