본문 바로가기

반응형

Programming

[Python] PyQt5, Watchdog을 이용한 파일 데이터 실시간 전송 프로그램 만들기 바쁘디바쁜 대학원 생활 속에서 위기의 순간들이 조금은 누그러진 어느날 문득 생각나 오랜만에 블로그를 켜보게 되었다. 나는 사실 블로그를 정보 전달의 목적보다는 나중에 내가 다시 그 일을 수행할 때 시행착오 없이 할 수 있도록 매뉴얼 만들듯이 정리하자는 의미로 처음 시작하게 되었다. 그래서 "나만 알아보면 되지" 라는 마인드로 다소 불친절하게 쓴 경우도 많았다. 그런데 내 생각보다 많은 분들이 온오프라인으로 관심을 가져주시고 피드백도 주셔서, 이에 호응하는 마음으로 연구실 생활하면서 쌓인 작은 경험과 지식을 나누는 일을 조금씩 해보고자 한다. 더불어 기존 포스팅에 부족한 부분이 정말 많이 발견되었다. 이 부분들도 하나씩 개선해서 더 완성도를 높이고자 한다. 많은 관심 바란다. 우리 연구실에서 운용중인 자연.. 더보기
[Python] 파이썬 크롤링으로 일출 일몰 데이터 가져오기 우리 대학원 연구실에서는 태양광에 관한 연구를 장기간 진행하고 있기 때문에 하루 중 태양의 노출시간 등이 상당히 중요하다. 그래서 특정 일의 특정 위치에 대한 일출 일몰 시간을 알려주는 프로그램을 작성해야 했는데 이를 알고리즘으로 구현하기보다는 이미 서비스중인 웹페이지를 스크래핑하는 방식을 생각해냈다. 요즘 크롤링(좀더 정확한 의미로는 스크래핑이 맞다고 한다. 그러나 편의상 본 포스팅에서는 크롤링이라는 단어로 사용하고자 한다.) 하면 파이썬으로 이루어진 경우가 많다. 그만큼 크롤링을 할 수 있도록 도와주는 파이썬의 다양한 패키지들이 강력하다는 뜻이다. 본 포스팅에서는 파이썬으로 일출 일몰 데이터를 가져오는 방법을 소개할까 한다. 1. 대상 분석 국내에 있는 가장 정확한 일출일몰 시간을 구할 수 있는 페이.. 더보기
[Java] 공공데이터포털 Open API 사용하기 - 동네예보 (2) 지난시간에 이어서 공공데이터포털 Open API를 사용하여 특정 지역의 날씨를 얻어오는 방법을 알아보자. 동네예보조회서비스는 xml과 json 형태로 날씨예보 데이터를 제공한다. 이 데이터 내용을 프로그래밍적으로 읽으려면 전송된 데이터의 구조를 이해하는 것이 중요하다. 아쉽게도 공공데이터포털에서 제공하는 사용자활용가이드 문서에 수록된 예시 데이터는 xml 형태로만 나와있다. json 데이터도 xml과 같은 hierarchy 구조이긴 하지만, 처음 사용하는 사람들을위해 json 구조를 보여주며 설명하려고 한다. 1. 먼저 알아야 할 것 데이터구조를 보기전에 먼저 알아야 할 것이 있다. 동네예보조회서비스는 발표시각과 예보시각이 있다. 앞선 포스팅에서 잠깐 언급했지만, 동네예보조회서비스는 오전2시부터 1일 8.. 더보기
[Java] 공공데이터포털 Open API 사용하기 - 동네예보 (1) 공공데이터포털(www.data.go.kr)은 공공기관이 생성 또는 취득하여 관리하고 있는 다양한 종류의 공공데이터를 한 곳에 모아서 사용자들에게 제공하는 행정안전부 산하 포털사이트이다. 이번 포스팅에서는 공공데이터포털의 서비스 중 동네예보조회 서비스를 이용하여 우리 동네의 날씨를 조회할 수 있는 프로그램을 만들어보기로 한다. 0. 준비물 : Internet Explorer 크롬에서는 일부 기능이 지원이 안된다. (빠직) 공공데이터포털에 접속할 때는 IE를 사용하자. 1. 서비스 신청 공공데이터포털에 접속하여 회원가입을 한다. 공인인증서등록 란이 있는데 공인인증서는 로그인 할 때 필요하다고 하는데 비밀번호로 로그인해도 본 포스팅에서 소개하는 기능을 사용하는데에는 문제 없으므로 생략해도 좋다. 회원가입 완료.. 더보기
[Android] Fragment 연습하기 - FragmentTestJake Fragment는 Activity와 같이 고유한 생명주기를 갖고 있으며 Activity내에서 또다른 Activity를 띄우는 것과 같은 효과를 낼 수 있어 복잡한 UI를 설계할 때에 필수적으로 사용되는 컴포넌트이다. 간단한 Fragment 예제를 가지고 Fragment를 어떻게 사용하는지 연습해보자. 예제 애플리케이션 컨셉은 간단한 메모장이다. 메모를 추가하면 페이지가 하나씩 생기고 위아래 버튼으로 페이지를 옮겨다닐 수 있다. 메모 저장을 위한 sqlite연동은 생략하고 진행하기로 한다. Project name : FragmentTestJake Project hierarchy : sources package glowsoft.fragmenttestjake; import android.app.Fragment.. 더보기
[Java] MVC 패턴으로 Swing 계산기 만들기 개인적으로 소프트웨어 아키텍처에 관심이 많다. 개발을 하다보면 코드 양은 계속 많아지는데 관리는 소홀해지는 경험을 많이 했기 때문이다. 코드를 효율적으로 짤 수 있는 방법에 항상 관심이 많다보니 컴포넌트들의 독립성을 향상시키고 효율을 높이는 방법론에 대한 갈망이 항상 있다. MVC 패턴(또는 MVC모델이라고도 부르나 MVC의 Model과 겹치는 이유 때문인지 패턴으로 더 많이 불리는 듯함)에 대한 개론적인 설명은 위키피디아에 자세히 나와있다. 자세한 설명은 생략하고 중요한 부분만 정리하면, MVC 패턴은 약어 그대로 프로그램을 모델-뷰-컨트롤러로 분리하여 설계함으로서 UI(User Interface, 사용자 인터페이스)로부터 비즈니스 로직을 분리할 수 있어 상호간의 영향 없이 쉽게 고칠 수 있는 장점이 .. 더보기

반응형