본문 바로가기

개발일지/개발일지13

개발일지_6) 방향키로 손이 가는 시간이 아깝다ㅋ? 개발일지_6) 방향키로 손이 가는 시간이 아깝다ㅋ? 자바 GUI 프로젝트가 끝나고 웹 개발을 위한 기초 웹 언어(html, css, javascript) 수업을 듣고 있다. 자바 코드를 작성할 때와는 느낌이 많이 다르다. 파일을 자주 왔다 갔다 하고, 또 방향키를 많이 사용한다. 구조를 구현한다기보다는 화면을 그리는 느낌이라 머리보다 손이 많이 바쁘다. 오른쪽으로 겨우 한두칸 움직이기 손이 멀리 있는 방향키까지 다녀와야 했다. 효율이 떨어지는 느낌을 받았다. 리눅스 파일 편집을 위해 vim을 사용하면서, 몇 가지 특징과 기능을 공부했었다. vim에서는 방향키 대신 hjkl을 이용했었다. 사용 빈도가 많지 않아 익숙해지지는 않았지만. 키보드를 vim을 사용하듯 적절하게 매핑하면 효율적일 것 같았다. 맥의 .. 2022. 3. 19.
개발일지_5) 개발문서 작성 개발 문서 작성에 박차를 가하고 있는 요즘. 한 달에 걸쳐 작성한 코드는 나에게도 온전히 내것이 아니었다. 분석하고 해체하고 체계화해서 다시 조립하고 있다. 다만 이번엔 코드가 아닌 이미지와 글이다. 주석을 읽고 고치고 새로 기입하면서 과거의 자신과 대화 하는 기분이다. 꽤 신선하고 재밌다. 타인에게 설명하기 위해 자료를 만들다 보니 단점이 많이 보이더라. 꽤 많은 코드를 고쳐썼다. 가장 많이 수정한 부분은 아무래도 이름들이다. 클래스, 패키지, 변수, 메써드... 내 코드를 처음 보는 사람도 이름만으로도 역할을 파악할 수 있도록 또 각각의 서로다른 클래스도 통일성과 일관성을 유지하려고 노력했다. 욕심이 많아 문서의 페이지수가 너무 커지는게 아닐까 조금 고민. 꼭 자랑하고 싶은 부분을 솎아 선택-집중하고.. 2022. 3. 13.
개발일지_4) 데이터 가공 "아파트 실거래가 조회 프로그램" 프로젝트 마감날이 얼마 남지 않았다. 그 동안 2021년 데이터만으로 작업을 해왔고 실용성을 제고하기 위해 데이터 양을 늘리고 있다. 데이터는 공공데이터 포털에서 배포하는 자료에 기반한다. 국내에서 신고된 모든 아파트 거래 자료를 대상으로 하기 때문에 전체 데이터를 가져와야 하는데 간단치가 않다. 1. 지역 구분이 없는 전체 데이터는 월 단위로만 다운로드가 가능하다. 2. 받은 자료의 형식은 .csv 이나 문서 제일 앞단에 문서 안내 텍스트가 있어 사용하기 위해선 한번 가공해야 한다. 3. 인코딩이 UTF-8 이 아닌 ECU-KR 이다. ( 이게 다 마이크로소프트가 윈도우 한글 기본 인코딩을 ECU-KR로 고집하고 있기 때문이다. 그리고 나는 한국에서 비 윈도우 환경 컴.. 2022. 3. 8.
개발일지_3) 데이터베이스 백업 프로젝트와 관련된 DB를 외부 서버로 옮긴 이후 보안과 백업에 부쩍 신경쓰고 있다. 데이터베이스 스키마를 스냅샷 찍듯 옮기고 싶었다. 하지만 사용하고 있는 DB툴인 DataGrip을 한참 둘러봤음에도 만족스런 기능을 찾을 수 없었다. 기능이 없을리는 없는데, 어떻게 해야 할까. 현재 사용하고 있는 방법은 다음과 같다. 1. DDL Generator 이용하여 각 테이블을 정의하는 쿼리 생성 2. 생성한 쿼리를 백업용 스키마에서 실행하여 테이블 생성 3. 각 테이블마다 Export to file 을 통해 .csv 파일로 레코드 추출 4. 추출한 레코드 데이터를 백업 스키마의 테이블에 import 진행중인 '아파트 실거래가 조회 프로그램' 프로젝트의 데이터베이스는 레코드는 많지만 테이블의 수는 몇개 안되기 때.. 2022. 3. 6.
개발일지_2) 보안 그리고 깃허브 깃허브에 공개되는 코드는 모두가 열람할 수 있다는 점을 잊지 말자. 1. 주말 느지막이 침대에서 일어나다가 문득, "깃허브에 올라간 나의 코드에 포함된 특정 정보를 누군가 악의를 가지고 사용한다면 어떠한 영향이 발생하는가" 에 대한 상상을 해봤다가 뒷덜미가 차가워지면서 침대 밖으로 뛰쳐나왔다. 트위터에 이야기를 살짝 올려봤는데 역시나 현업에 계신 선생님 중 한 분이 현재 내 상황의 위험성에 대하여 조언을 해주셨다. 일단 위험한 일이 발생하지 않도록 막아 두었지만, 깃허브에 공개된 정보는 레파지토리가 남아있는 한 삭제 후 커밋 푸시를 하여도 로그에 남아있기 때문에 그동안 사용하고 있던 몇몇 가지를 폐기하기로 결정했다. 레파지토리 자체를 지우거나 비공개로 돌리기에는 아까운 작업물이었다. 그래도 일찍 깨달아서.. 2022. 3. 5.
개발일지_1) 내 자바FX 프로젝트를 실행 가능한 파일로 만들고 싶다 내가 만든 프로젝트를 포트폴리오에 첨부하더라도 면접관이 내 프로그램을 실행시킬 수가 없다는 것이다. "아파트 실거래가 조회 프로그램" 이란 자바 프로젝트를 진행하고 있다. 4주간의 프로젝트이고 오늘이 3주차 마지막 날이다. 다음 주 금요일 마감. 코딩은 어느정도 완성했고, 개발 문서 작성이 남았다. 프로젝트를 일주일 남긴 시점에서 머리속을 떠나지 않는 고민이 있다. 내가 만든 프로젝트를 포트폴리오에 첨부하더라도 면접관이 내 프로그램을 실행 시킬 수가 없다는 것이다. 일단 외부 라이브러리(자바 FX, MySQL driver)를 사용하고 있고 폰트도 내 컴퓨터에 설치되어있는 폰트 북에서 읽어오고 있다. 개발 초기에는 데이터베이스와 그 안의 데이터도 내 컴퓨터 안에만 있었다. (현재는 NAS 서버 위 도커 컨.. 2022. 3. 4.