시리즈/소프트웨어 공학3 [OOP] 객체 지향 프로그래밍에 대해 알아보자 ① 객체 지향 프로그래밍.객체 지향 프로그래밍(Object-Oriented Programming)은 컴퓨터 프로그래밍의 패러다임 중 하나로, 컴퓨터 프로그램을 어떤 데이터를 입력받아 순서대로 처리하고 결과를 도출하는 명령어들의 목록으로 보는 시각에서 벗어나 여러 독립적인 부품들의 조합, 즉 객체들의 유기적인 협력과 결합으로 파악하고자 하는 것이다.객체 지향 프로그래밍 특징.객체 지향적으로 프로그램을 설계하는 데에는 여러 이점들이 있는데, 가장 큰 이점 중에 하나는 객체 지향적 설계를 통해서 프로그램을 보다 유연하고 변경이 용이하게 만들 수 있다는 점이다. 마치 컴퓨터 부품을 갈아 끼울 때, 해당하는 부품만 쉽게 교체하고 나머지 부품들을 건드리지 않아도 되는 것처럼 소프트웨어를 설계할 때 객체 지향적 원리를 .. 2025. 1. 2. [OOP] Getter, Setter 를 지양하는 이유에 대해서 ① 들어가며.객체지향에 대해 공부하다보면 반드시 듣게 되는 내용이 아닌가 싶다. 하지만 왜 Getter, Setter를 지양하는 지에 대해서 스스로에게 물어보면 바로 이유가 생각나지 않거나, 막상 개발에 적용하려고하면 어쩔 수 없이 사용해야 하는 상황에서 누군가는 사용하지 말라고는 하는데 어떻게 대처를 해야하는 지 막막한 경우가 참 많다는 것을 느꼈다. 그래서 왜 우리가 Getter와 Setter를 지양해야하는 지, 또한 사용해야하는 상황은 어떤 경우인지 정리하고자 한다.Getter와 Setter를 사용하는 이유.사용을 지양하기 이전에 왜 우리가 Getter와 Setter를 사용했는 지를 먼저 알아야 한다고 생각한다. 객체 지향의 원칙 중 하나는 정보 은닉으로 객체의 구체적인 정보를 외부에 노출하지 말라는 .. 2024. 11. 4. [TDD] 테스트 주도 개발의 의미와 방법에 대해서 들어가며.개발을 하면서 TDD 라는 용어는 한 번쯤은 들어봤을거라 생각하는데요. 이번에 프리코스 2주차를 시작하면서 JUnit 5와 AssertJ 를 이용하여 개발을 진행해보라는 요구 사항을 접하게 되었습니다. 말로는 많이 들어봤지만 개발이 바쁘다보니 실제로 적용해본 적은 없는데요. 이번 기회에 TDD 에 대해 정리하고 JUnit 과 AssertJ 에 익숙해지고자 작성하게 되었습니다.TDD 에 대한 간략한 소개.TDD 는 Test Driven Development 의 약자로 켄트백이 1999년 익스트림 프로그래미의 일부로 제안하며 알려졌습니다. 지금은 많은 분들이 익스트림 프로그래밍은 뭔지 몰라도 TDD 는 알 만큼 유명해졌는데요. TDD 는 동작하는 코드를 작성하기 이전에 테스트를 먼저 작성하고, 그 .. 2024. 10. 24. 이전 1 다음