본문 바로가기

분류 전체보기176

2019년 5월 5주차 - "'인싸'들 모인다는 모바일 퀴즈쇼, 커머스 플랫폼으로 진화" 등 1. '인싸'들 모인다는 모바일 퀴즈쇼, 커머스 플랫폼으로 진화 작년부터 인기를 끌고 있는 '모바일 퀴즈쇼'가 이제는 커머스 플랫폼으로 거듭나고 있습니다. 모바일 퀴즈쇼 앱은 짧은 시간 동안 많은 동시접속자 수를 보이기 때문에 마케팅 효과가 뛰어납니다. 출시 이후 초기에는 출제하는 문제 속에 제품의 특징이라거나 정책 내용과 같은, 관련 내용을 넣는 방식으로 광고를 냈습니다. 그러나 이제는 하루 방송 전체를 해당 기업의 특집으로 꾸미거나, 모바일 플랫폼 내에서 특가 판매를 진행하는 '특가 딜'을 도입하기 시작했습니다. 동시접속자 수가 적게는 1만 명, 많게는 10만 명에 달하기 때문에 다양한 기업들뿐만 아니라 공공기관까지도 모바일 퀴즈쇼를 활용하고 있습니다. 홍보 효과가 상당하고, 젊은 층에게 쉽게 다가갈.. 2020. 10. 12.
2019년 5월 4주차 - "카카오커머스, 2인 공동 구매 서비스 '톡딜' 선보여" 1. 카카오커머스, 2인 공동 구매 서비스 '톡딜' 선보여 카카오커머스가 '카카오톡 쇼핑하기'에 '톡딜' 서비스를 새롭게 적용합니다. '톡딜'은 2인 공동 구매 서비스로, 말하자면 최소 구매 인수가 2인인 공동구매라고 할 수 있습니다. 기존의 공동구매 방식이 구매가 성사되기까지 많은 인원수를 모으고 기다려야 했다면, 톡딜은 2명만 모여도 가격 할인 혜택을 받을 수 있습니다. 또한 기존에는 커뮤니티 사이트 등에서 마음 맞는 사람끼리 모여서 공동구매를 진행했다면, 톡딜은 구매의사가 있는 불특정 다수가 매칭 되며, 모든 고객 데이터는 익명으로 처리됩니다. 카카오는 이미 '메이커스'라는 유사한 서비스를 제공하고 있었는데, 톡딜은 이보다 더 진보된 형태로 보입니다. '메이커스'는 생산가들이 제품을 내놓고 특정 기.. 2020. 10. 12.
Map의 Value 얻기 - KeySet => EntrySet Map에서 key 목록을 이용하여 value를 얻으려 할 때, 많은 개발자들이 다음과 같은 방법을 사용합니다. public void test(Map info){ for(String key : map.keySet()){ System.out.println(map.get(key)); } } 하지만 이 방법은, key를 얻어오고 다시 한번 map으로부터 value를 얻어오기 때문에 성능에 심각한 문제가 발생하게 됩니다. 하여 다음과 같은 방법으로 변경하여야 합니다. public void test(Map info){ for(Map.Entry entry : info.entrySet()){ System.out.println(entry.getValue()); } } 2020. 10. 12.
HashMap의 동작방법 이 아티클은 Jackson Joseraj가 DZone에 게시한 How HashMap Works in Java 에 대한 번역물입니다. HashMap이 내부적으로 어떻게 동작하는지에 대한 질문은 면접 때에 가장 인기 있는 질문입니다. 대부분의 사람들은 HashMap을 사용할 줄 알거나 HashMap과 HashTable의 차이는 알고 있습니다. 그러나 "HashMap이 내부적으로 어떻게 동작하는가?"에 대한 질문에 대해서는 어려워합니다. 질문에 대한 해답은 해싱 원리에 기반하여 작동한다는 것이지만 말처럼 간단한 문제는 아닙니다. 해싱은 쉽게 반복하는 알고리즘을 사용하면서 유니크한(유일무이한) 코드를 변수 또는 속성에 할당하는 매커니즘으로, 해싱 메커니즘에 같은 객체를 적용시켰을 때, 항상 같은 hashcode.. 2020. 10. 12.
2019년 5월 3주차 - "'韓 시장 중요하다'는 인스타그램, '인쇼' 부작용 대책은 '글쎄'" 1. "韓 시장 중요하다"는 인스타그램, '인쇼' 부작용 대책은 '글쎄' 지난 2019년 3월 3주차 뉴스클리핑에서 다룬 바 있었던, 미국 인스타그램에 시범 적용된 인앱결제 기능이 국내 앱에서도 서비스될 예정입니다. 지난 7일 열린 기자간담회에서 짐 스콰이어스 인스타그램 비즈니스 및 미디어 총괄 부사장은 한국이 인스타그램에 주요 전략 시장임을 거듭 강조하며, 한국 시장의 성장 잠재력에 대한 기대감을 드러냈습니다. 이 기대감의 근거로, 최근 시행된 소비자 조사 결과 국내 이용자 51%가 지난해 대비 인스타그램을 더 많이 쓰고 있고 내년에는 더 많이 쓸 것이라고 응답한 것을 들었습니다. 그러나 인스타그램의 새로운 서비스 방안(좋아요·조회수를 가리는 방안)이 도입될 경우 조사 결과대로 될 것인지는 미지수입니다.. 2020. 10. 12.
OAuth? 우리는 지금까지 수없이 많은 웹사이트에 가입을 해왔습니다. 모든 사이트의 계정이 동일하면 잊어버릴 일이 없겠지만, 패스워드 규칙도 다르고 중복된 아이디도 존재할 수 있기 때문에 모두 동일하게 할 수 없었을 것입니다. 회원가입을 할 때면, 한 번쯤 생각해봤을 것입니다. “모든 사이트의 계정이 다 통일됐으면 좋겠다..” SSO(Single Sign On)를 도입하면 전혀 불가능한 일은 아닙니다. 그리고 이 SSO를 구성하기 위한 방법 중 하나로 OAuth가 있습니다. 아마 많은 사이트가 OAuth의 인증 방식을 이용하기 때문에 다음과 같은 화면을 한 번쯤은 보셨을 것입니다. 우측 그림은 보호된 자원에 대한 사용 권한을 티몬에게 위임하겠냐는 일종의 "위임장 동의서"입니다. 이 글에서는 인증을 중심으로 OAut.. 2020. 10. 12.
Java Reflection을 이용한 Bean Autowiring 구현 지난 2019년 4월 2주차 뉴스클리핑에서 @Autowired는 어떻게 동작하는가에 대한 내용을 다룬 바가 있습니다. @Autowired는 내부적으로 Reflection을 이용하여 Dependency Injection을 수행하며, Spring의 동작 중 많은 것들이 Reflection을 이용하여 구현되어 있습니다. 그래서 이번 뉴스 클리핑에서는 Spring의 Bean 생성 및 DI를, 간단하게 Java를 이용하여 구현해 보도록 하겠습니다. Load : 스프링은 @Bean이나 @Configuration과 같이 빈으로 생성되어야 하는 객체들을 전부 읽어들입니다(이미지 상에서는 XML에서 읽어 들이는 것만 표현되어 있으나 앞서 말했듯 어노테이션 등을 통해서도 읽어 들입니다). Merge & Validation.. 2020. 10. 12.
2019년 5월 2주차 - "'1兆 적자' 쿠팡, 협력사에 수수료 인상·공급단가 인하 통보" 1. '1兆 적자' 쿠팡, 협력사에 수수료 인상·공급단가 인하 통보 거듭되는 적자에도 공격적인 마케팅을 펼치며 오픈마켓 브랜드 평판 1위의 자리를 지키고 있는 쿠팡이 이전과 다른 행보를 보이고 있습니다. 로켓배송 납품업체에 공급단가를 최소 5%에서 최대 15%까지 인하할 것을 요구하였으며, 오픈마켓 업체에 대해서는 수수료 5% 안팎 인상 및 광고비·성장 장려금의 두 배 인상을 통보했다고 합니다. 이로 인해 업체들이 크게 반발하고 있으며, 일부 업체들의 경우 계약 해지까지 검토하고 있다고 밝혔습니다. 그러나 규모가 작은 회사의 경우 쿠팡과의 계약 해지 시 매출에 큰 타격을 입을 수 있어, 결국 수수료 인상의 불이익은 소비자에게 돌아올 것으로 예상됩니다. 현재 1조원이 넘어간 영업손실은 물류창고 확대 등 기.. 2020. 10. 12.
2019년 5월 1주차 - "USIM 시대 가고, eSIM 시대 온다" 1. USIM 시대 가고, eSIM 시대 온다 eSIM은 embedded SIM을 의미하는 것으로, 현재 우리가 사용하고 있는 탈착형 SIM 카드와는 조금 다른 칩입니다. eSIM은 고유 식별자가 있다는 점에서 기존 SIM과 동일하나, 물리적인 카드가 아니라 단말기에 내장된 작은 칩으로, 모듈에 사용자 정보를 소프트웨어로 내려받는 형식입니다. eSIM을 사용할 경우 사용자 정보가 복수의 스마트 기기에서 연동될 수 있으므로, SIM 카드를 살 필요 없이 사용자 정보를 인터넷상에서 내려받기만 하면 되기 때문에, 해외에서 현재 번호와 동일한 번호로 개통하는 것도 가능합니다. 그리고 USIM과 비교해 상대적으로 작고, 물리적으로 탈착이 불필요하기 때문에 갤럭시 워치나 애플 워치 등의 웨어러블 기기에서 많이 사용.. 2020. 10. 12.
Springboot-Angular-JWT 기반 Auth 구현 - refresh token 추가 이번 포스트에서는 지난 포스트에서 미구현했다고 언급한 refresh token을 추가하여, 인증 구조를 변경하겠습니다. 일반적으로 세션을 사용하는 경우에는 사용자의 액션이 있으면 세션의 만료 시각이 액션이 일어난 시각으로부터 재설정됩니다. 그러나 이전 포스트의 소스코드는 로그인한 시점에 JWT를 생성했고, 그 시점에 token의 만료 시각이 정해집니다. 따라서 로그인 이후, 사용자의 액션이 계속 일어나도 만료 시각이 지나면 로그인이 해제되는 구조가 됩니다. 이러한 구조를 보완하기 위해 refresh token이라는 또 다른 token을 생성합니다. (지금까지 token이라고 명명했던 것을 앞으로는 access token이라고 칭하겠습니다.) refresh token은 access token의 만료 기간보.. 2020. 10. 12.