28. Carthage 를 지원하면 !
Fat Binary XCFramework
Cocoapods 만을 지원하면 코드에서 직접 XCFramework 생성
혹은 SPM
외부 디펜던시 관리
https://github.com/Carthage/Carthage
29. 라이브러리 수 줄이기
바이너리 프레임워크 사용
프로젝트 모듈화
빌드 스크립트 최적화
코드레벨 최적화
빌드시간 최적화
61. import os
import collections
cwd = os.getcwd()
all_files_in_dir = []
for path, subdirs, files in os.walk(cwd + "/Classes"):
for name in files:
if name.endswith(".swift"):
all_files_in_dir.append(name)
count = collections.Counter(all_files_in_dir)
for item in count:
if count[item] > 1:
print(item, "exist ", count[item])
pbxproj = open("Beadal.xcodeproj/project.pbxproj", 'r')
files_in_pbxproj = set([])
for line in pbxproj.readlines():
if line != "n":
for str in line.split():
if str.endswith(".swift"):
files_in_pbxproj.add(str)
# fine reference remove files
for swift_file in all_files_in_dir:
if swift_file not in files_in_pbxproj:
print(swift_file, "# ")
project.pbxproj
https://git.baemin.in/appservice/baemin-ios/-/merge_requests/7248