본문 바로가기

테크 노트/소소한 개발 팁

앞으로 개발관련 글은 Github에 써볼까 합니다. 이 카테고리에 대한 글은 Github에 담아볼까 합니다. 원래 개발블로그를 만드려고 티스토리를 시작했습니다. 개발 내용 중에서도 남들이 다 다루는 개발 내용 말고, 정말 현업에서 일하다가 막히는 부분이 있으면 정리해두려고 했는데요. 그게 생각보다 사람들이 찾지 않는 내용인것 같습니다. 이왕 이렇게 된거 아예 Geek하게 Github Page에 올리려고 합니다. https://mingpd.github.io/ 밍피디의 개발노트 잔망스러운 개발노트 mingpd.github.io 참고로 이 Github Page는 Hexo 기반으로 만들었습니다. 위 링크를 따라가면 Hexo 적용 과정이 설명되어있습니다.
티스토리 본문 이미지에 border 넣기 이 방법은 새 에디터로 작성된 글에만 동작 할 수 있습니다. 새 에디터 작성 글과 기존 에디터 작성 글의 class가 약간 다르기 때문입니다. 제가 사진찍는 요령이 없어서 그런지, 이미지 알못이라 그런건지 본문에 그냥 이미지를 올리면 뭔가 밋밋한 느낌이 있습니다. 그래서 본문에 추가되는 이미지들에게 border를 1px로 설정해봤는데요. 더 보기 좋아진것 같아서 공유합니다. 간단 요약 읽기 귀찮으신 분들을 위해 요약합니다. figure.imageblock img{ border: 1px solid #000; } 적용 과정 설명 이번 뿐만 아니라 다른 경우도 이와같은 식의 커스터마이징을 하고싶은 분들을 위해 과정까지 설명드리려고 합니다. 저의 경우 크롬을 이용합니다. 만약 초보시라면 참고해주세요. 일단 본문..
한글 유니코드를 초성, 중성, 종성으로 쪼개자 2019/03/18 - [개발이/아이디어노트] - 스팸체 생성기 앞서 스팸체 생성기에 대해 소개했었는데요. 관련하여 가장 중요한 내용을 여기에 써보려합니다. 바로 한글을 분리하고 조합하는 내용입니다. 일단 유니코드 한글영역에 대해 알아야 합니다. 유니코드? 다들 아시겠지만, 혹시 더 궁금하시면 아래 링크를 참고해주세요. 이 포스팅에서 제가 다루진 않겠습니다. https://ko.wikipedia.org/wiki/유니코드 유니코드 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 다른 뜻에 대해서는 U;Nee Code 문서를 참조하십시오. 유니코드(Unicode)는 전 세계의 모든 문자를 컴퓨터에서 일관되게 표현하고 다룰 수 있도록 설계된 산업 표준이며, 유니코드 협회(Unicode C..
java, stream api에서 NPE 발생 주의 java stream api를 많이 사용하실텐데요. 예상치 못하게 NullPointerException 발생을 맞이하는 경우가 있어서 정리해보고자 합니다. 예시 SimpleEntry keyValue = new SimpleEntry("test", null); System.out.println(keyValue.getValue()); SimpleEntry는 java.util의 key - value를 담을 수 있는 클래스입니다. (HashMap에서 사용하는 그것) 위를 실행하면 어떤 결과가 나올까요? 네. 예상하신것 처럼 "null"입니다. SimpleEntry keyValue = new SimpleEntry("test", null); List list = Arrays.asList(keyValue); Objec..
java, optional의 orElse와 orElseGet의 차이 java8의 optional api 많이들 사용하실텐데요. 어찌보면 당연하지만 햇갈리는 내용에 대해 다뤄보겠습니다. 마무리 연산인 orElse와 orElseGet의 차이입니다. 귀찮으신분들을 위해 요약을 먼저 하자면 orElse는 null이던말던 항상 불립니다. orElseGet은 null일 때만 불립니다. 예시 String username = "이름"; String result1 = Optional.ofNullable(username).orElse("no name"); System.out.println(result1); String result2 = Optional.ofNullable(username).orElseGet(() -> "no name"); System.out.println(result2);..
android, 앱 출시하려는데 keystore 잃어버렸을 때 누누히 말씀드렸던것 처럼 저는 서버개발자입니다만 최근 안드로이드에 관심이 생겨서 병맛 앱 한가지를 출시할 예정입니다. 바로 아이디어노트에서 소개했던 "스팸체 생성기" 입니다. (사실 무료서버 사용기간이 얼마 안남아서 앱으로라도 만들어두려 합니다.) 그런데 참.. 안드로이드는 처음 겪다보니 해매는 일이 한두가지가 아닙니다. 다른 블로그를 참고하면서 앱 등록 절차를 진행중인데요. 테스트로 apk를 한번 올리고 나서 그때 사용했던 keystore.jks 를 날려버리고 말았습니다. (이게 이렇게 중요한 것인지 몰랐네요) 아무 생각없이 테스트로 여기에 App Bundle 업로드 했는데 삭제도 안되고.. 다른 keystore 로 서명된 App Bundle은 이전 버전과 싸인이 안맞다고 업로드도 안되고 말이죠. 낭패..
github, src refspec master does not match any ... 1. 시작하며 로컬에서 작업하던 어떤 프로젝트에 대해 github으로 관리를 하고싶어졌습니다. github에 프로젝트를 생성 한 후 해당 프로젝트의 remote를 변경하고 push를 하려는데.. $ git init $ git $ git remote add origin 리모트주소 $ git push -u origin master error: src refspec master does not match any. error: failed to push some refs to ... ???? 2. 해결방법 매우 안타깝게도 저것은 로컬 저장소에 커밋된 내역이 없으니 푸시할게 없어서 나타나는 에러입니다. 당연히 git init을 하자마자 푸시를 하려고 했으니 푸시할게 없는게 당연하겠죠. 커밋을 해줍시다. (커밋 방..
android, realm 초간단 정리 1. 시작하며 대체 저의 커리어가 어떻게 돼가는것인지 잘 모르겠습니다만.. 최근에 안드로이드 공부를 시작했습니다. 안드로이드 앱을 만들때면 거의 필수적으로 앱 내장 DB를 사용해야 합니다. 이때 sqlite 같은 기본 솔루션을 쓸 수도 있겠지만 좀 더 쉬운 툴이 있으면 그것을 써야겠죠. 쉽게 설명하자면 안드로이드 내장DB에서 사용되는 ORM 이라고 보시면 됩니다. java, spring 을 잘 아시는 서버개발자 분들께서는 JPA가 생각나실겁니다. 공식 홈페이지(https://realm.io/kr/)의 설명에 따르면.. Realm DB로 모바일앱 데이터 저장을 뚝딱뚝딱 만들수 있고, 자바, 스위프트, 오브젝티브C, 자바스크립트 등등에서 쓸 수 있대네요 2. 사용법 거두절미하고 어떻게 사용하는지 아주 간략히..