목록분류 전체보기 (492)
규도자 개발 블로그
한국 영화 명대사 로렘 입숨을 만들어봤다. 일단 깃허브 주소는 https://github.com/jujumilk3/korean_movie_lipsum이고 작동은 https://jujumilk3.github.io/korean_movie_lipsum/여기에서 해볼 수 있다. 백엔드 작업할 때 가끔 퍼블리셔분이 익살스러운 문구나 사진을 더미로 넣어놓고는 하는데 그걸 보며 즐겁게 작업했던 기억이 있어 조금이나마 작업과정을 재미있게 했으면 하는 마음 +주옥 같은 한국 영화들의 명대사들을 모아보려는 목적으로 만들었다. 딱히 서버쪽 작업 필요 없이 static html단에서 모든 기능구현이 가능하여 깃허브페이지에서 html, css, js만을 이용하여 만들었다. UI는 최대한 직관적으로 만들었으며 누구든 유용하고 즐..
[JavaScript/자바스크립트] InternetExplore에서 Promise쓰기 자바스크립트 해석기는 브라우저에 귀속돼있다. 그러니까 같은 코드라고 하더라도 IE에서 쓰는 해석기와 Chrome에서 쓰는 해석기가 달라 다르게 실행될 여지가 있다는 말이다. 이것을 크로스 브라우징 이슈라고 하는데 다르게 실행될 여지는 고사하더라도 아예 특정 함수는 Chrome에선 되지만 IE에선 실행조차 되지 않는 경우가 왕왕 있다. 그 중 하나가 바로 비동기처리를 깔끔하게 해주는 Promise이다. 비동기처리는 요즘 웹서비스에 있어서 굉장히 흔하고 자주 일어나는 동작이기 때문에 가히 필수라고 할 수 있다. 그 비동기처리를 위한 코드를 깔끔하게 유지시켜주는 Promise객체를 IE에서는 사용하지 못한다. IE의 자바스크..
[프로그래머스/연습문제/파이썬3(python3)] 직사각형 만들기 문제 직사각형을 만드는 데 필요한 4개의 점 중 3개의 좌표가 주어질 때, 나머지 한 점의 좌표를 구하려고 합니다. 점 3개의 좌표가 들어있는 배열 v가 매개변수로 주어질 때, 직사각형을 만드는 데 필요한 나머지 한 점의 좌표를 return 하도록 solution 함수를 완성해주세요. 단, 직사각형의 각 변은 x축, y축에 평행하며, 반드시 직사각형을 만들 수 있는 경우만 입력으로 주어집니다. 제한사항 v는 세 점의 좌표가 들어있는 2차원 배열입니다. v의 각 원소는 점의 좌표를 나타내며, 좌표는 [x축 좌표, y축 좌표] 순으로 주어집니다. 좌표값은 1 이상 10억 이하의 자연수입니다. 직사각형을 만드는 데 필요한 나머지 한 점의 좌표를..
[Java/자바] RSA 공개키, 개인키 암호화 방식을 String형태로 다뤄보자. 많이들 쓰이고, 또 그만큼 신뢰할 수 있는 방식인 RSA암호화 방식을 자바로 구현해봤다. 일단 코드는 아래와 같다. import javax.crypto.Cipher; import java.security.*; import java.security.spec.PKCS8EncodedKeySpec; import java.security.spec.X509EncodedKeySpec; import java.util.Base64; import java.util.HashMap; public class Main { static final int KEY_SIZE = 2048; public static void main(String[] arg..
[JavaScript/자바스크립트] 1과 0, 혹은 '1'과 '0'을 boolean으로 전환하는 쉬운 방법 지금 여기에 쓰는 예제는 바로 개발자모드의 console창에서 입력해보며 실험해볼 수 있다. 물론 정수형인 0과 1은 별다른 작업 없이 true와 false의 역할을 수행할 수 있다. if(1) console.log("if passed");//if passed if(0) console.log("if passed");//undefined 이런식으로 말이다. 위 코드를 개발자모드 console창에 써보면 오른쪽의 주석과 같은 결과가 출력되는 것을 확인할 수 있다. 하지만 같은 역할을 수행할 수 있다 하더라도 굳이 0과 1이 아닌, boolean으로 표현해야할 때가 있다. 그럴 때 쓰기 좋은 방법이다. ..
[프로그래머스/Level2/파이썬3(python3)] [1차] 캐시 (2018 KAKAO BLIND RECRUITMENT)문제 지도개발팀에서 근무하는 제이지는 지도에서 도시 이름을 검색하면 해당 도시와 관련된 맛집 게시물들을 데이터베이스에서 읽어 보여주는 서비스를 개발하고 있다. 이 프로그램의 테스팅 업무를 담당하고 있는 어피치는 서비스를 오픈하기 전 각 로직에 대한 성능 측정을 수행하였는데, 제이지가 작성한 부분 중 데이터베이스에서 게시물을 가져오는 부분의 실행시간이 너무 오래 걸린다는 것을 알게 되었다. 어피치는 제이지에게 해당 로직을 개선하라고 닦달하기 시작하였고, 제이지는 DB 캐시를 적용하여 성능 개선을 시도하고 있지만 캐시 크기를 얼마로 해야 효율적인지 몰라 난감한 상황이다. 어피치에게 시달리..
나는 SPA가 모던웹의 새로운 정의라고 떠받들여지고 있는 이 시점에서 단호히 아니라고 대답할 수 있다. 이유가 뭐냐. 단순하다. 그냥 불편하다. SPA는 불편하다. 기존 수많은 get값으로 정의된 a태그들을 이용하여 만들어진 사이트들과 SPA로 만들어진 사이트들을 비교해보면 알 것이다. 기존의 방식대로 이뤄진 사이트들은 각 링크마다 a태그와 주소가 함께 달려있고 브라우저는 이를 링크로 인식하여 오른쪽 클릭으로 해당 요소를 누르면 새 탭에서 열기 등의 부가적인 작업이 가능하다. 그리고 해당 페이지에 들어가면 이러저러한 get값과 texonomy를 통해 페이지가 구성돼있을텐데 이를 그냥 북마크에 저장해놓으면 언제든 다시 와서 해당 페이지를 조회할 수 있다. 하지만 SPA철학을 너무 철저하게 지켜 각 링크가 ..
내가 만든 PHPCronManager를 누가 써주다 심심해서 깃허브에 내 아이디인 jujumilk3를 써봤다. 다른 건 평소와 다를 바 없었는데 Wikis에 내 아이디가 하나 검색됐다. 난 위키를 작성한 적이 없을 뿐더러 심지어는 this-programmer라는 닉네임을 남겼겠지 jujumilk3이라는 내 아이디를 남길 일은 더더욱 없을텐데 하는 마음으로 들어가보니 웬걸 스페인의 망한듯 보이는 인터넷 보안회사의 the-fraud-explorer라는 프로젝트에 내 PHPCronManager를 사용하고 있었다. 그냥 너무 신기해서 벙쪘다. 무엇보다 궁금한 건 이걸 어떻게 알고 썼는가 하는 점이다. 끄흠... 아무튼 신기한 경험을 하여 기록을 남겨둔다. 만약 이런 이름모를 스페인 보안회사가 떠갔을 정도면 다른..
크롬 자바스크립트 버그 발견 후 리포트 완료 오늘 작업 도중 크롬에서만 발견되는 이상한 현상이 있어서 리포트를 했다. 예전에 자바스크립트의 버그를 발견한 줄 알고 설쳤던 그때와는 달리 명백하게 크롬에만 있는 버그였다. 무슨 버그인가 하면 크롬에서 자바스크립트로 작동시키는 정규식에 오류가 있다. 라이브로 내 깃허브 스태틱 페이지에서 확인할 수 있는데 이곳을 클릭하면 이동한다. 자세한 내용은 깃허브 페이지에서 확인할 수 있다. 스크린샷을 첨부하자면 이렇다. 같은 케이스임에도 불구하고 명백하게 크롬에서만 오류가 난다. 사파리, 파폭, IE, IE EDGE, 그리고 정규식 테스트 사이트 https://regex101.com/에서도 정상적인 작동이 된다. 그러니까 문제는 아래 정규식let emailRegex = ..
파이썬3.x[python3.x]에서 요소가 하나인 튜플을 문자열이 아닌 튜플로 인식시키기 i_wanna_be_tuple = ('really') print(i_wanna_be_tuple) print(type(i_wanna_be_tuple)) u_need_to_do_like_this = ('like this',) print(u_need_to_do_like_this) print(type(u_need_to_do_like_this)) 어제 부딪힌 문제였다. django로 작업을 하던 와중 django form을 이용해 입력란을 만들고 있었는데 modelform은 상속받은 model을 기반으로 해서 입력 form을 작성해준다. 하필 입력받을 form 요소가 딱 하나였는데 이를 tuple형태로 정의해야하는 지라 단순..