본문 바로가기

분류 전체보기176

String Constants Pool 프리미티브 타입의 값을 비교할 때에는 주소 값을 비교하기 위해 '==' 연산자를, 레퍼런스 타입의 값을 비교할 때에는 실제 참조하는 값을 비교하기 위해 'equals' 메서드를 이용합니다. 그리고 String의 경우에는 비교할 때에는 'equals'를 이용하기를 권장하는데, '==' 연산자로 비교하면 어떻게 될까요? String str1 = "FLYING"; String str2 = "FLYING"; System.out.println(str1 == str2); //true System.out.println(str1.equals(str2)); //true (literal 방식으로 String을 생성한다면) '==' 연산자를 이용해도 결과가 일치합니다. '==' 연산자를 이용했을 때 true가 나온다는 것은.. 2020. 11. 15.
2019년 9월 2주차 - "롯데멤버스, 상품 분석 인사이트 플랫폼 'LAIP' 선보여" 1. 롯데멤버스, 상품 분석 인사이트 플랫폼 'LAIP' 선보여 롯데멤버스가 엘포인트 구매 데이터 기반 상품 분석 인사이트 플랫폼인 LAIP(L.POINT-Aimia Insights Platform)를 출시했습니다. 2018년 6월에 고객 행동 분석 솔루션 기업 에이미아와 파트너십을 체결한 결과물로, 에이미아의 독자 기술과 노하우로 개발한 AIP에 엘포인트 빅데이터를 적용한 것이 바로 LAIP입니다. 실제 롯데 유통 채널에서 발생하는 구매 데이터를 분석하기 때문에 분석 규모도 훨씬 크고 정확도도 높다고 합니다. LAIP는 현재 상품국 성과 분석 및 고객 구매행동 분석, 상품 구색 분석, 신상품 성과 분석을 제공합니다. 2020년에는 마케팅 성과 분석 모듈이 추가될 예정이라고 하며, 이러한 기능에 필요한 .. 2020. 11. 15.
클린 코드 작성 : 더 나은 개발자가 되기 위한 단계 ※ 이 글은 Sushil Ale가 쓴 Writing Clean Code: A Step Towards Being a Better Developer의 번역본입니다. 개발자들은 빠르게 변화하는 기술 시장에서 살아남기 위해 기술 스택을 알고, 숙련도를 높이는 등 개인의 스킬을 향상하기 위해 노력합니다. 보유기술을 늘리기 위해 새로돈 도구, 언어, 기술들을 배우려 합니다. 하지만 이렇듯 새로운 역량을 키우는 것 외에도 중요한 것은 어떻게 코드를 작성하는가에 대한 고찰입니다. 코드는 지속적으로 추가되거나 수정되고, 디버그 할 필요가 있기 때문에 깨끗하고 이해하기 쉬운 코드가 되어야 합니다. 쉽게 읽을 수 있고, 이해할 수 있고, 유지 보수할 수 있는 프로그램을 작성하기 위해 클린 코드의 지침을 따르는 것을 권고합니.. 2020. 11. 15.
2019년 9월 1주차 - "롯데홈쇼핑 가처분신청 받아들여질까" 1. 롯데홈쇼핑 가처분신청 받아들여질까 지난 2015년, 롯데홈쇼핑은 과학기술정보통신부로부터 6개월간의 프라임 시간대 업무정지 처분을 받았습니다. 이 당시 롯데홈쇼핑은 행정 소송을 제기하였으며, 처분이 과하다는 이유로 승소하였습니다. 이에 과기정통부는 지난 5월 제재 수위를 낮춰, 6개월 간 새벽 시간 업무정지 처분을 결정하였으며, 이번에도 롯데홈쇼핑은 행정 소송을 제기했습니다. 법원이 가처분 신청을 인용할지, 즉 집행 정지 여부가 추석 전후로 결정될 것으로 전망됩니다. 집행 정지 여부가 오는 11월부터 새벽 시간대 방송에 영향을 미칠 뿐만 아니라, 가처분 신청이 받아들여지지 않을 시 경영에 심각한 타격을 줄 수 있기 때문에, 홈쇼핑 업계와 더불어 협력 업체들도 집행 정지 여부에 주목하고 있습니다. 2020. 11. 15.
알아두면 유용한 Chrome Console 기능 자바스크립트를 개발할 때 정말 많이 사용하는 기능 중 하나가 console.log입니다. 이 console 객체는 브라우저의 디버깅을 위해서, 혹은 동작 중간에 response를 확인하고 싶을 때 등 등 익숙하게 사용하는 객체입니다. 하지만 대부분의 개발자들이 console.log만 사용할 뿐, console 객체의 다른 메서드들에 대해서는 잘 모릅니다. 이 글에서는 대표적으로 많이 사용하는 또 다른 메서드들을 소개하고자 합니다. * 이 글은 크롬 브라우저를 기반으로 작성되며, 기타 브라우저에서 동일하게 동작하지 않을 수 있습니다. 모질라 파이어폭스에서 제공하는 Browser compatibility에서 console 객체에 대한 호환성을 확인하실 수 있습니다. (1) 로깅 개발자 도구에서 로그를 출력할.. 2020. 10. 21.
2019년 8월 4주차 - "2단계 숫자 도메인 내년 4월부터 사용 가능" 1. 2단계 숫자 도메인 내년 4월부터 사용 가능 내년 4월부터 도메인 등록관리시스템이 개선됩니다. 이에 따라 2단계 숫자 도메인이 도입되며, 0~9와 하이픈(-) 조합으로 3~63자리 범위 내에서 사용할 수 있습니다. 현재 순수 숫자도메인은 3단계만 허용됩니다. xxx.co.kr처럼 3개의 단위를 3단계 도메인이라고 하며 2단계 도메인은 xxx.kr처럼 두 개의 단위로 이루어집니다. 단, 112와 같이 공공성을 띄는 번호는 해당 기관만 등록이 가능하며, 개인정보 침해를 방지하기 위해 타인의 전화번호나 주민등록번호, 여권 번호 등은 원천적으로 등록이 불가능합니다. 오는 12월부터 내년 3월까지 숫자상표권자와 10Y 번호 사업자(통신사업자)에 한해서 우선등록이 가능하며, 이후 개인 등에게 등록이 허용됩니다.. 2020. 10. 21.
Java(JVM) Memory Model(Runtime Data Areas) JVM은 컴파일된 자바 바이트코드를 실행하는 역할을 합니다. 이때, JVM이 메모리 관리를 어떻게 하는지, 그 구조에 대해 살펴보겠습니다. JDK 버전이 업그레이드 될 때마다 Java Memory Model도 지속적으로 업그레이드되어 왔습니다. 하지만 전체적인 구조는 유사합니다. 이 글은 JDK8을 기준으로 작성되었습니다. Java(JVM) 메모리 구조를 살펴보기 앞서 한가지 알아두어야 할 것이 있습니다. JVM 그 자체는 구현체가 아닌 스펙일 뿐이라는 것입니다. JVM Vendor들은 이 스펙을 기반으로 JVM을 구현했고, 구현체의 대표적인 예로 Oracle사의 Hotspot JVM, IBM사의 IBM JVM이 있습니다. Hotspot JVM의 사용률이 압도적으로 높고, 대부분 Hotspot JVM을 .. 2020. 10. 21.
[Javascript] Debounce & Throttle 자바스크립트 개발에 있어서 이벤트는 빠질 수 없는 요소입니다. 과장을 보태 자바스크립트 개발을 해 본 개발자 중에 이벤트 처리를 해 보지 않은 개발자는 없다고 말해도 과언이 아닐 것입니다. 디바운스(Debounce)와 스로틀(Throttle)은 이러한 이벤트를 제어하는 방법으로, 과도한 이벤트의 발생이 성능 저하를 초래하지 않도록 하기 위해 사용합니다. 대표적으로 디바운스와 스로틀을 이용하여 이벤트 발생을 제어하는 기능은 아래와 같습니다. 스크롤 휠을 이용한 지도 확대/축소 검색어 입력시 자동완성 혹은 연관검색어 노출 피드 방식의 데이터 노출 (스크롤링을 통한 데이터 노출) 이벤트 오버클럭(Overclock - 과도한 이벤트 발생)은 리소스 사용량을 과도하게 증가시키기 때문에 성능 문제를 야기하고 사용자.. 2020. 10. 21.
2019년 8월 3주차 - "페이코, 간편 금융 플랫폼 도약…오프라인 강점 살린다" 1. 페이코, 간편 금융 플랫폼 도약…오프라인 강점 살린다 간편 결제 서비스가 편리한 결제수단으로 자리 잡으면서, 네이버와 카카오 등 이커머스를 제공하는 대형 업체들이 직접 간편 결제 서비스를 제공하고 있습니다. 위 자료에 따르면 온오프라인과 모바일 모두에서 페이코의 시장점유율은 그리 높지 않습니다. 오프라인의 경우 페이코 결재액 비중이 5%가 채 되지 않으며, 그중 절반 이상이 삼성 페이와 제휴해 결제됩니다. 이를 탈피하기 위함인지, 페이코는 시장에서 살아남기 위한 차별화 전략으로 '오프라인'을 꺼내 들었습니다. 최근 페이코는 '페이코오더(오프라인 매장에서 QR코드 스캔을 통한 결제 혹은 페이코 앱 또는 매장 앱을 이용한 간편 주문 결제가 가능한 서비스)'를 출시하며 오프라인 전략의 첫 발을 디뎠습니다.. 2020. 10. 21.
[Javascript] 자바스크립트에서 메모리 누수의 4가지 형태 이전 글에서 Closure를 다루면서 메모리 누수에 대해 언급한 바가 있습니다. 이 글에서는 자바스크립트에서 발생하는 4가지 형태의 메모리 누수를 살펴보고, 이러한 코드를 어떻게 제거할 수 있는지 알아보도록 하겠습니다. 자바스크립트에서 메모리 누수가 발생하는 경우는 크게 4가지로 아래와 같습니다. 우발적으로 생성된 전역 변수 잊혀진 타이머 또는 콜백 함수 DOM 외부에서 참조 특정한 경우의 Closure 각각 경우에 대해 살펴보기에 앞서, 자바스크립트에서 메모리를 어떻게 관리하는지 알아두는 것이 좋습니다. 자바스크립트는 자바와 마찬가지로 Garbage Collected 언어입니다. 즉, 개발자가 메모리 관리에 있어 신경을 덜 쓰더라도, GC(Garbage Collector)가 주기적으로 할당된 메모리를 .. 2020. 10. 21.