Google C++ Style Guide3 [GCSG] C++ Version, Header Files Google C++ Sytle Guide를 해석해가며 공부한 후 배운 점과 느낀 점에 대해서 서술하려 한다. 다시 펼쳐보는 Google C++ Style Guide: C++ Version, Header Files C++ Version 현재, 코드는 C++17 환경이어야 한다(예를 들어, C++ 2x는 안된다.). 이 가이드가 목표로 하는 C++ 버전은 시간이 지남에 따라 (공격적으로) 발전한다. non-standard extensions을 사용하지 마라. C++14, C++17에서 나온 기능을 사용하기 전에 다른 환경으로의 이식 가능성을 고려해라. 더보기 더보기 Currently, code should target C++17, i.e., should not use C++2x features. The C+.. Google C++ Style Guide 2021. 7. 10. [GCSG] Background, Goals of the Style Guide Google C++ Sytle Guide를 해석해가며 공부한 후 배운 점과 느낀 점에 대해서 서술하려 한다. 다시 펼쳐보는 Google C++ Style Guide: Background, Goals of the Style Guide Background C++는 수많은 Google의 오픈소스 프로젝트에 사용되는 주요 개발언어이다. 모든 C++ 개발자가 알고 있는 것처럼 C++는 강력한 기능들이 많지만, C++의 이러한 강력한 기능들은 버그를 일으키기 쉽고, 코드를 읽거나 유지 보수하기 어렵게끔 만드는 복잡성을 갖고 있다. 이 가이드의 목표는 C++를 사용한 개발을 하며 해야 할 것과 하지 말아야 할 것에 대해 아주 자세하게 서술함으로써 복잡성을 관리하기 위함이다. 이러한 규칙은 코드 베이스를 관리 가능한 .. Google C++ Style Guide 2021. 7. 6. [GCSG] 다시 펼쳐보는 구글 코드 스타일 규약집 C와 레거시 코드를 다루다가 (CPP의 필요성을 아직 느끼진 못했지만) C++로 리팩터링 하다가 느낀 점을 서술하려 한다. 1. 레거시 지옥(feat. 누가 이런 코드를 허락하였는가) 회사에서 TF프로젝트를 진행하며, 빠른 개발을 위해 레거시 프로젝트에서 사용하던 쌩 C 파일과 GCC컴파일러로 개발했다. 짧은 설계과 회의 등을 마친 후 해당 기능 구현을 했고, 모든 메모리 누수를 잡았다.(메모리 누수가 너무나도 많았었다.) JAR파일 배포를 통해 라이브러리를 제공하는 형태의 사업이었다. 내가 맡은 부분은 JNI 인터페이스를 만들어서 JAVA라이브러리와 회사 기반 라이브러리(PKI 관련 암호화 등)를 연결하는 모듈을 만들었다. 메모리 누수를 잡기 위해서 Valgrind를 사용했고, 테스트 코드를 작성했다... Google C++ Style Guide 2021. 7. 5. 이전 1 다음