ETC 2

지속 성장 가능한 코드를 만들어가는 방법 (정리)

영상 링크 : https://www.youtube.com/watch?v=RVO02Z1dLF8&ab_channel=%ED%86%A0%EC%8A%A4 상 토스 페이먼츠 코드 품질에 관심을 갖고 확장 가능한 방식으로 코드를 관리하고 있다. 처음부터 최고의 설계나 품질을 유지하기 보다는, 최소 규칙을 지켜 동작하는 소프트웨어를 빠르게 만들고 코드에 관심을 두고 성장시켜 나간다. Import 문을 통해 알아보는 세 가지 개선 방향 Package, Layer, Module 1. Package 패키지 전략은 고정되지 않고 유연해야 한다. 패키지는 현재 상황을 계속 점검하며, 전략에 따라 응집에 대해 유연하게 지켜야 한다. 햄버거도 한 세트 주문할 때와 100 세트 주문할 때 포장 패키지가 달라질 것이다. 너무 분산 ..

ETC 2022.12.30

ARM 기반 C코드 최적화

크로스 컴파일러 고급 언어로 작성된 소스 코드를 해당 Target의 어셈블리 코드로 번역하는 것 크로스 툴체인 크로스 컴파일러를 포함한 실행 파일을 생성하기 위한 여러가지 요소들을 포함하는 소프트웨어 크로스 컴파일러, 어셈블러, 링커, 라이브러리 등으로 구성 라이브러리의 종류 정적 라이브러리 - 용량이 큼 공유 라이브러리 - .o 동적 라이브러리 - .so C Entry point C Entry point : 프로그램이 시작하는 진입 위치ex) Main(), main() 등 일반적으로 crt0.S (C-runtime 0), init.S, startup.S 파일 이름이 사용된다. Assembly어를 통해 작성 가능함. Startup Code (부트코드)운영체제가 존재할 경우 운영체제 초기화 이전에 수행 C..

ETC 2022.12.20