본문 바로가기

전체 글4

좋은 소프트웨어 개발자란? 이번 글에서는 좋은 소프트웨어 개발자란 무엇인지에 대해 개인적으로 생각하는 바를 적어볼까 합니다. 42서울이라는 교육기관에서 1000명에 가까운 개발자들과 함께 생활하고, 현업에서 다양한 연차의 개발자들을 만나며 느낀 점을 바탕으로 정리한 내용입니다. 좋은 개발자의 정의제가 생각하는 좋은 개발자의 정의는 실제 현장에서의 역량을 기반으로 합니다.현장에서 개발자로 일하며 얼마나 가치를 만들어내는가가 중요하다고 보는데, 그 가치는 크게 문제해결력, 협업능력, 직업인으로서의 태도에서 나온다고 생각합니다. 그리고 이 세 가지 역량이 높은 개발자가 좋은 개발자라는 것이 제 생각입니다.문제해결력기업이 개발자를 채용할 때 기대하는 바는, 요약하자면 "지불한 급여 이상의 부가가치를 창출해주면 좋겠다"일 것입니다.여기서 .. 2026. 5. 15.
JWT 토큰에 대해 JWT 토큰이란?JWT 토큰은 Json Web Token의 약자로, 웹 통신 시 클라이언트의 인증에 사용되는 JSON 형태의 토큰 값입니다.최근, 서버 측에서 토큰 인증 방식으로 요청을 보낸 클라이언트의 신원을 확인할 때 JWT토큰을 많이 사용합니다. Session 기반 인증과는 다르게JWT토큰을 사용한 인증 시, 서버측에서 별도의 DB 조회가 필요 없어 효율적이라는 장점이 있습니다.JWT 토큰의 구조eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c2VyQGV4YW1wbGUuY29tIiwicm9sZXMiOlsiUk9MRV9BRE1JTiJdLCJleHAiOjE3NTA4MjYyODgsImlhdCI6MTc1MDczOTg4OH0.cSW65JDV0wTpSIfQV4KPE8k.. 2025. 6. 29.
Java의 equals와 hashcode메서드 이해하기 Java 프로그래밍을 하다 보면 Object 클래스의 equals()와 hashCode() 메서드를 종종 보게 됩니다.이 두 메서드는 단순해 보이지만, 올바르게 이해하고 사용하지 않으면 예상치 못한 버그를 유발할 수도 있습니다.오늘은, 이 두 메서드의 목적과 관계에 대해 한 번 알아보겠습니다. equals() 메서드 - 논리적 동등성의 기준Java에서 객체 비교를 이야기할 때 두 가지 관점이 있습니다:물리적 동등성(Reference Equality): 메모리 상에서 동일한 위치(동일한 참조)를 가리키는지. ('==' 연산자를 사용하여 비교 가능)논리적 동등성(Logical Equality): 두 객체가 같은 값을 가지고 있는지 확인. (서로 다른 메모리 위치에 존재하더라도 상관없음)equals() 메서드.. 2025. 3. 16.
고정 소수점, 부동 소수점 표현 방식 컴퓨터는 데이터를 이진수 체계를 이용해 0과 1로 저장합니다. 컴류터 정수를 저장할 경우 해당 정수를 이진수로 변환한 후 이를 메모리에 저장합니다. 이진수 변환 시 10진수 정수를 우측부터 이진수의 2^0, 2^1, 2^2... 로 해석해 변환하여 저장합니다.정수-이진수 변환은 비교적 간단합니다. 그런데 소수부가 포함된 125.275 같은 정수가 아닌 실수를 이진수로 변환하려면 어떻게 해야 할까요? 25.23423112342343243232444... 같은 긴 실수를 변환해야 할 경우를 생각해 보면, 두 실수 사이에는 무수히 많은 실수가 존재한다는 특성상 이를 유한한 비트로 나타내기는 쉽지 않아 보이므로 정수의 이진수 변환과는 다른 복잡한 규칙이 필요해 보입니다. 그럼에도 불구하고 많은 소프트웨어에서 정.. 2025. 3. 16.