분류 전체보기 (68) 썸네일형 리스트형 네트워크 테스트 할때 ping, telnet, curl, netstat 들어가면서서버가 외부 혹은 다른 서버와 통신이 되는지 테스트할 때 ping, telnet, curl 등의 명령어를 사용합니다. 그런데 각각이 어떤 역할을 가지고 있는지 잘 모르고 사용하고 있다보니까, ping을 날려봐도 결과를 봐도 어떤 의미를 가지는지를 잘 이해못하겠더라구요. ping 때렸는데 어? 안되네? 막혀있나? 이정도 수준으로만 해석 가능했습니다.ping은 잘 되도 그 서버와 접속이 안될 수도 있다는 것을 아시나요. 그래서 이번 기회에 함 정리해보고자 합니다.네트워크 테스트에 사용하는 명령어pingtelnetcurlnetstat1. ping (ping 주소)ping은 "상대 네트워크 장비가 살아있는지 확인하는 명령어" 입니다. 다만, ping이 된다고 그 서버와 통신이 가능하다는 의미는 아닙니다.. 짤막짤막 업무를 하거나, 공부를 하다보면 짤막하게 지식을 얻게되는 순간들을 자주 접하게 됩니다.그런데 그런 중요한 순간마다 따로 기록을 하지 않다보니까 소중한 지식들을 다 흘려보내버리더라구요. 이 문제를 해결해보려고 처음엔 노션에 정리해봤는데.. 잘 안되더라구요. 나 혼자만 볼거라고 생각하니까 너무 대충 쓰기도 하고 관리도 잘 안되서..그래서 블로그에 글을 써야겠다! 라고 생각했는데, 막상 블로그에 주제를 잡고 포스팅을 하자니 너무 부담스러워서 이 섹션을 팠습니다. 종종 이해한 지식이나, 궁금한 점을 짤막하게 던져두려고 합니다. [UMC | DEMO DAY] 보호되어 있는 글입니다. [Hackathon | BeautifulHalboo] 5th Ne(o)rdinary 해커톤 리뷰 보호되어 있는 글입니다. [Test] 단위 테스트 구조 모든 단위 테스트는 AAA패턴을 따라야 한다. AAA패턴이란 준비(Arrange), 실행(Act), 검증(Assert)을 의미합니다. 만약 비개발자들을 고려한다면 각각을 given, when, then으로 구분할 수도 있습니다. 실행 구절이 한 줄 이상이면 SUT의 API에 문제가 있다. SUT(System Under Test)의 이름을 sut로 지정해 테스트에서 구별하는게 좋습니다. 구절 사이에 빈 줄을 추가하거나 준비, 실행, 검증 구절 주석을 각각 앞에 둬서 구분하는게 좋습니다. 만약 실행 구절이 한 줄 이상이라면, 클라이언트가 항상 이 작업을 같이 수행해야 한다는 의미로, 이로 인해 잠재적 모순에 이어질 수 있습니다. 일반적으로 준비 구절이 세 구절 중가장 큽니다. 같은 테스트 클래스 내 비공개 .. [Test] 런던파 vs 고전파 들어가면서 단일 테스트의 필요성은 많이 알려져있습니다. 테스트 코드를 작성할 때, 개발자가 고민해야 할 점들을 정리해두고자 합니다. 단위 테스트란? 단위 테스트란: 작은 코드 조각(단위)을 검증하고, 빠르게 수행하고, 격리된 방식으로 처리하는 자동화된 테스트입니다. 여기서 "격리된 방식"에 대하여 두가지 관점이 존재합니다. 책 "테스트 주도 개발"을 지은 켄트 백의 입장을 표명하는 고전파의 관점과, 런던의 개발 커뮤니티에서 시작된 런던파의 관점이 있습니다. 이때 런던파를 칭하는 표현으로 목 추종자(좋은 의미로 쓰이진 않는 듯 합니다. 하지만 런던파가 어떤 방식을 선호하는지 확 와닿습니다)가 있습니다. 격리된 방식에 대한 두 분파의 관점 각 분파의 차이에 대한 요약표를 살펴보도록 하겠습니다. 격리 주체 단.. [Project: OurWorldcup] 테스트 및 리팩토링 시작 들어가면서 개발을 시작한 사람들은 영상이나 포스팅에서 "테스트가 중요하다", "TDD로 개발해야 한다"라는 말을 많이 들었을 겁니다. 저도 많이 들었기 때문에, 처음 개발을 시작할 때 각 기능에 대한 테스트를 작성하고자 했죠. 하지만 어떤 기능을 테스트해야 하고, 어느정도까지 테스트 해야 하는지, 어떤 식으로 테스트 해야 하는 지 등에 대한 경계가 명확히 서 있지 않았습니다. 그렇기 때문에 release v1.0까지는 우선 기능 구현에 초점을 맞춰 개발을 진행했습니다. release v1.0을 출시한 후, 리팩토링과 테스트 코드 작성을 하기로 마음 먹었습니다. 리팩토링 & 테스트 리팩토링과 테스트를 위해 유명한 도서들을 읽으며 사전조사를 했습니다. Object도서를 읽으며 객체 지향 프로그래밍 패러다임에.. [Spring] Entity Class와 OOP 들어가면서 JAVA는 객체 지향 프로그래밍 패러다임을 사용하고 있는 언어입니다. 객체 지향 프로그래밍, 즉 OOP는 객체는 모두 자율적인 객체여야 하며, 이때 자율적인 객체라는 의미는 객체가 자신의 상태를 직접 관리하고 스스로의 결정에 따라 행동하는 객체임을 의미합니다. 그런데, Spring을 이용하여 개발할 때, Entity 클래스는 Database의 Table과 1:1 매칭되는 객체를 의미합니다. 그리고 상태(필드)만 가질 뿐, 해당 엔티티에 대한 책임(매서드)는 온전히 가지고 있지 못한 상태로 보입니다. 그래서 어떻게 해야 OOP 관점에서 Entity 클래스를 정의하는게 좋을 지 정리하고자 합니다. OOP 단어 정의 OOP에서 자주 등장하는 단어 협력, 책임, 역할을 간단하게 설명하면 다음과 같습니.. 이전 1 2 3 4 ··· 9 다음