묵성이
지금까지 올라온 글들
-
Rocky Linux 9.x 미러서버 변경하기
Rocky Linux 9.x 미러서버 변경하기
2024.10.26Rocky Linux 9.x 미러서버 변경하기rocky리눅스를 업데이트 하는 과정에서 자동으로 미러 사이트가 변경되면서 방화벽에 IP를 주기적으로 등록하고 수정하는 과정이 너무 불편해 국내 미러 사이트로 맘먹어서 변경하는 과정에서 복잡한 문제를 겪었습니다. 미러서버 직접 변경..?온라인에서 다양한 미러 사이트 변경 스크립트를 찾을 수 있었습니다. 그러나 최신 버전 Rocky 9.x에서 작동하는 스크립트가 없어 이것을 수동으로 추가하는 것을 생각했지만, 컨테이너 12개를 직접 다 수정하는 것은 너무 비효율적이라 직접 스크립트를 짜보았습니다. 미러서버 변경방법제가 Gist에 업로드 해두어 손쉽게 다들 사용할 수 있도록 하였습니다. 변경 가능한 미러는 현재 Navercloud와 Kaist 서버 두개를 지.. -
ONE STEP AWAY 관람후기
ONE STEP AWAY 관람후기
2024.08.08ONE STEP AWAY어느 날 크게 할 게 없어 주변에 뭐가 있을까 찾던 중 재미있는 사진 전시회를 하나 찾았습니다. 이경준의 사진전 원 스텝 어웨이 라는 뉴욕에서 사진을 찍고 도심 속에 있는 패턴을 보여주는 전시회라 해서 전시회에 다녀왔습니다. 《이경준 사진전: 원 스텝 어웨이》는 뉴욕 기반의 포토그래퍼 이경준의 렌즈에 비친 거대한 도심 속 패턴을 조명합니다. 석양에 빛나는 황금빛 빌딩 숲, 작열하는 햇살에 눈이 부신 초록빛의 공원, 그리고 그 안에 작은 사람들. 도시 곳곳을 담은 그의 작품을 바라보고 있으면, 어느새 그 속의 주인공이 되어있는 스스로를 발견하게 됩니다. 복잡하면서도 평화롭고, 익숙하면서도 낯선 그의 시선을 따라가보세요. 일정한 거리를 두고 바라본 우리 삶 속에서, 시야는 넓어지고, .. -
SOLID의 중요성과 아키텍처 설계
SOLID의 중요성과 아키텍처 설계
2024.07.18SOLID의 중요성과 레이어 설계작은 프로젝트에서는 크게 문제가 없었지만, 기능이 많아지고 비즈니스 로직이 많아 지면서 스파게티 코드가 생기기 시작하였습니다. 그래서 이러한 문제들을 해결하고자 멀티 모듈을 도입을 하면서 Layerd architecture를 도입하게 된 스토리를 풀어보려고 합니다. 설계를 진행하다 보면 문제들이 많이 생기는데 우아한형제들 기술 블로그에서 작성한 멀티모듈설계이야기 를 참고하면서 설계를 했습니다. 여러분들도 보시면 도움이 많이 될 거 같습니다. SOLID의 부재Spring을 공부하면 MVC 패턴에 대해서 배우게 됩니다. 저희 팀도 이를 기반으로 Controller, Service, Repository로 레이어를 구분하여 개발을 시작했습니다. 초기에는 기능이 한두 개 있을 때는.. -
패턴을 조합하여 코드를 줄이고 가독성을 개선하자!
패턴을 조합하여 코드를 줄이고 가독성을 개선하자!
2024.07.08중복되는 코드를 줄이고 가독성을 개선하자서버를 개발하면서 인트라넷 관련 정보를 호출하거나 데이터를 요청하고 처리하는 과정에서 비슷한코드들이 반복되는 경우가 많았습니다. 이러한 문제를 조금 해결해보기 위해 다양한 패턴을 적용해보았습니다. strategy 패턴을 이용하여 큰 틀을 만들자public interface ParserDocument { String getURL() ; default Document getDocument() throws IOException{ Connection connection = Jsoup.connect(getURL()) .timeout(1000 * 60) .header("Accept", "*/*") .header("Content-T.. -
Fragment간 데이터 전달 방법에 대해서..
Fragment간 데이터 전달 방법에 대해서..
2024.06.26Fragment간 데이터 전달 방법에 대해서..안드로이드를 개발하다 보면 서로 다른 Activity와 Fragment간 데이터를 주고 받아야하는 경우가 있습니다. 저는 대표적으로 상태 값이나 처리에 필요한 데이터들이 많았습니다. 기존에는 Bundle을 활용하여 데이터 값을 주고 받았습니다. Stirng 타입의 데이터를 하나 보낸다면 크게 문제는 없었지만, 2개 이상부터 이름다른 Key 값과 중복되는 코드가 증가되고 가독성이 떨어지는 문제가 있었습니다. 그래서 이를 개선하기 위해 다양한 시도를 해보았습니다. Fragment Result 테스트해보기사진과 같이 Fragment Manager에서 처리할 수 있어서 간단하다 생각하였습니다. 특히나 setFragmentResultListener 통해 다른 Frag.. -
Firebase crashlytics으로 앱 안정성 확보하기
Firebase crashlytics으로 앱 안정성 확보하기
2024.06.26Firebase analytics 및 crashlytics으로 앱 안정성 확보하기개발을 하다보면 문제가 발생할 곳이라 생각해서 예외처리를 해두지만,실제는 다른 곳에서 발생하는 경우가 많았습니다. 어느날 평화롭게 Firebase에서 사용자의 앱 안정성 확보를 위해 crashlytics 모니터링중 예상치 못한 버그가 발생하는 것을 확인했습니다. 백업 너어는 정말…안드로이드에서는 개발을 할때 백업 기능이 기본적으로 활성화 되어 있었습니다. Android security를 통해 암호화를 진행하고 EncryptedSharedPreferences에 저장을 하고나서 복보화키는 Android KeyStore에 저장되는 구조였습니다. 그러나 여기서 문제가 발생합니다. 안드로이드에서 백업이 이루어질때 SharedPref..