[CS 1-2 | 시스템 프로그래밍 기초] 디버깅과 소프트웨어 설계 10주차

2022. 10. 11. 17:26·CS 대학강의
반응형

매크로 함수를 사용하면 메모리에 따로 스택 프레임을 생성할 필요가 없다.

그렇기에, 매크로 함수를 사용해 연산 시 속도가 올라간다는 장점이 있다 ㅎㅎ....!

 

 

 

매크로 상수 DEBUG를 통해

조건에 따라 printf()문을 출력하도록 설정할 수 있다.

 

DEBUG 가 할당되어 있으면, printf() 출력
~~ printf() 출력하지 않음.

 

 

 

 

예외처리를 통한 디버깅 구현 - assert()

알고리즘을 구성할 때 assert()를 사용해

원하지 않은 값이 들어갈 때 assert()로 강제 종료시켜 프로그램 설계가 잘못되었다고 디버거를 진행한다.

 

 

 

 

# return 과 exit() 함수는 다르다!

운영체제를 같이 공부해야 알 수 있는 개념이다.

return은 운영체제에게 return 값을 받아서 프로그램을 종료하는 거면,

exit()는 운영체제에게 직접주지 않고, 중간 과정을 거쳐 바로 프로그램을 종료시킨다.

불안정적인 exit() 함수

 

 

 

 

많은 디버깅 포인트 중

많이 하는 디버깅을 모아둔 것이고, 이게 답이 아니고, 좋은 방법 중 하나이다.

 

 

 


소프트웨어 설계

 

 

 

 

프로젝트 설계는

코딩하면서도(개발하면서도) 설계를 수정한다. - 프로젝트하다가 필요한 설계를 추가해서 설계 규칙을 재구성하기도 한다~~

 

 

 

소프트웨어 설계 방법 - 좋은 방법 중 하나임. 답이 아니다.

 

 

 

 

 

반응형

'CS 대학강의' 카테고리의 다른 글

[CS 1-2 | 오픈소스 SW 기초] 네트워크 통신 | 소켓 통신 5주차  (0) 2022.10.13
[CS 1-2 | 이산수학] 행렬의 연산 10주차  (0) 2022.10.12
[CS 1-2 | 이산수학] 알고리즘 9주차  (0) 2022.10.11
프로그램 설계 방법론 - 트러블 슈팅 [주사위 게임 과제]  (0) 2022.10.08
프로그램 설계 방법론 - #08 [반복문 설계 & MVC 아키텍처 | 공굴리기]  (0) 2022.10.06
'CS 대학강의' 카테고리의 다른 글
  • [CS 1-2 | 오픈소스 SW 기초] 네트워크 통신 | 소켓 통신 5주차
  • [CS 1-2 | 이산수학] 행렬의 연산 10주차
  • [CS 1-2 | 이산수학] 알고리즘 9주차
  • 프로그램 설계 방법론 - 트러블 슈팅 [주사위 게임 과제]
욱22
욱22
우기의 모든 걸 기록합니다.
    반응형
  • 욱22
    우기 때 만나요
    욱22
  • 전체
    오늘
    어제
    • 우기 때 만나요 (264)
      • 💭 경험&생각 (48)
      • 🌤 일상&취미 (12)
      • 📖 북로그 (29)
      • 백엔드 개발 (27)
      • 📚 스터디 (33)
        • 비즈니스 (0)
        • 프론트엔드 (9)
        • 디자인 (4)
        • 데이터베이스 (8)
        • 데이터 분석 (0)
        • 인공지능 (2)
        • 알고리즘 (10)
      • CS 대학강의 (78)
      • 🌤 프로젝트 (0)
        • UMC 2기: 동네 (15)
        • UMC 3기: 당신의 발자취 (6)
        • ERICA: 스타트업톤 (9)
        • ERICA: 또래튜터링 (2)
      • 🌤 대외활동 (5)
  • 링크

    • Github
  • 인기 글

  • 최근 글

  • 태그

    스폭크루
    대학생 개발 프로젝트
    java
    Kotlin
    생각정리
    자기계발
    디자인
    드럼 레슨
    AWS
    대학생 대외활동
    디자인베이스
    오블완
    자료구조
    드럼
    백준
    안드로이드
    파이썬
    객체지향 프로그래밍
    티스토리챌린지
    창업
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.1
욱22
[CS 1-2 | 시스템 프로그래밍 기초] 디버깅과 소프트웨어 설계 10주차
상단으로

티스토리툴바