[Portfolio] 포트폴리오 개발 시작
·
자기계발/취업 · 커리어
보호되어 있는 글입니다.
[Python] AI 스토리 - 기본 구조 개발
·
개발/AI · 머신러닝
※ 생각보다 요금압박이 있어서 개발은 나중에 이어서 할게요ㅠㅠ 오늘은 대략적인 구조를 개발했습니다.인공지능을 사용해서 개발하는건 개발 난이도는 정말 쉽습니다.다만, 소설을 작성하기 위한 프롬프트 작성이 더 머리가 아플 것 같네요.이번 프로젝트도 깃허브에 올라가 있습니다. https://github.com/KwonGeneral/ai_story.git GitHub - KwonGeneral/ai_story: 인공지능 소설인공지능 소설. Contribute to KwonGeneral/ai_story development by creating an account on GitHub.github.com
[Python] AI 스토리 - 아이디어 및 플로우 구상
·
개발/AI · 머신러닝
이번에는 Python과 Claude API를 사용해서, 인공지능을 통해 웹소설을 작성해보려고 합니다.우선 소설을 작성해야 하는데, 뭐가 필요할지 생각나는 대로 적어보려고 합니다. 1. 장르, 태그, 독자대상, 작품 길이 설정=> 장르는 판타지, 무협, 현대.. 가 있고, 태그는 소설 사이트에 들어가보니 #학원 #먼치킨 #환생.. 등이 있네요. 독자 대상도 필요할 것 같습니다. 타겟 독자층이 어릴수록 글은 권선징악에 가까워질것같고, 올라갈수록 심리묘사가 복잡해질 것 같습니다.작품의 길이는 완결까지 총 얼마나 작성할지를 설정할 생각입니다. 문피아라는 웹소설 사이트에서는 1화당 글자수 5000자 이상이라고 합니다. 이를 기준으로, 총 몇화까지 작성할지 대략적으로 설정하면 될 것 같습니다. 2. 세계관 설정=>..
[Flutter Project] 옆자리 - 개발 완료
·
개발/모바일
https://github.com/KwonGeneral/nextseat GitHub - KwonGeneral/nextseat: 같은 와이파이, 다른 이야기같은 와이파이, 다른 이야기. Contribute to KwonGeneral/nextseat development by creating an account on GitHub.github.com 안녕하세요~! 오늘, 옆자리 프로젝트의 개발을 끝냈습니다!이번 프로젝트는 지하철로 출퇴근하면서 생각한 "같은 와이파이 대역폭을 공유하는 경우에 상호 간의 채팅을 지원한다."라는 아이디어를 바탕으로 개발하게 되었습니다. 다른 분들에게 작은 도움이 되길 바라면서 코드는 공개해 놓겠습니다. 감사합니다!
[Flutter Project] 옆자리 - 로직 변경 예정
·
개발/모바일
곰곰히 생각해보니, 채팅방을 만들고 해당 채팅방에 입장하는 방식이었다면, 현재 로직대로 가면 되는데,컨셉 자체가 채팅방과는 다르기 때문에, 웹소켓을 적용하지 않는게 더 깔끔해 보입니다. UDP로 채팅 뿌리고 끝내는게 제일 깔끔할 것 같네요.다음 작업 때 로직 다 걷어내고 깔끔하게 수정해서 마무리하는게 좋아보입니다~
[Flutter Project] 옆자리 - UDP 서비스 개발
·
개발/모바일
이번엔 UDP 서비스를 개발했습니다. 남은건, 웹소켓으로 연결 후에 채팅 전송 및 수신 정도가 남았네요~
[Flutter Project] 옆자리 - 플로우에 맞춰서 기능 개발
·
개발/모바일
먼저 와이파이 연결 확인의 경우, 유틸적인 성향이 강하고, 페이지 진입 전에 확인이 필요한 기능으로 보이니, 미들웨어로 개발하는게 좋아 보입니다. https://pub.dev/packages/network_info_plus network_info_plus | Flutter packageFlutter plugin for discovering information (e.g. WiFi details) of the network.pub.dev 위 라이브러리를 사용할 예정인데, 디테일은 나중에 잡고, 우선 간단하게 기능만 만들어 놓으려고 합니다.  위 미들웨어를 가지고,  홈 페이지에 적용해주면, 됩니다. 원래는 미들웨어에서 return으로 RouteSettings를 넘겨줘서 처리를 했었는데, 단점이 내부적으로 ..
[Flutter Project] 옆자리 - UseCase 및 화면 개발
·
개발/모바일
이제 메인 로직을 제외한 나머지가 얼추 개발이 된 것 같습니다.나중에 하루정도 몰아서 메인 로직까지 완성하고, 테스트를 해보면 될 것 같습니다.코드에 대해서 궁금하신 점은, 아래의 깃허브에 모두 업로드 해놨으니 참고 부탁드립니다~ https://github.com/KwonGeneral/nextseat.git GitHub - KwonGeneral/nextseat: 같은 와이파이, 다른 이야기같은 와이파이, 다른 이야기. Contribute to KwonGeneral/nextseat development by creating an account on GitHub.github.com
[Flutter Project] 옆자리 - 페이지 및 플로우 구상
·
개발/모바일
앱을 개발해야하는데, 생각 정리할 겸 글을 작성했습니다. 제가 생각하는 앱 구성은 심플합니다.페이지는 2개를 제공할 예정입니다. 1. 미들웨어 페이지- 앱을 사용하기 위해서는, 와이파이 연결이 필수이기 때문에, 와이파이 연결을 체크하고 대기하는 페이지입니다. 2. 홈 페이지- 현재 와이파이에서 앱에 접근한 사람들과 채팅할 수 있는 페이지입니다.  그다음, 플로우 입니다.Block. 와이파이 재연결 요청 1. 와이파이 연결 확인1-Yes => [2]1-No => [Block] 2. 현재 와이파이 IP 주소 확인2-Yes => [3]2-No => [Block] 3. UDP 통신 시작 4. 현재 해당 와이파이 IP에 채팅방이 존재하는지 확인4-Yes: [6]4-No: [5] 5. 채팅방 생성5-1. 일정 시간..
[Flutter Project] 옆자리 - 스킴 & 라우터 & 로그 & 의존성 & 모델...등 환경 구성
·
개발/모바일
스킴, 라우터, 로그, 의존성 등등 환경 구성을 마쳤습니다.다음부터 본격적인 개발에 들어갈 예정입니다. 매번 느끼지만, 초반에 제대로 기본적인 개발 토대를 만들어 두면, 차후에 개발에만 전념할 수 있어서 좋습니다. 이번에 구성을 해놓으면, 다음 프로젝트부터는 거의 비슷하게 맞춰놓고 시작하려 합니다. 이번에 개발한 영역은, 경험적인 부분도 있고 양도 많아서 모두 설명하긴 어려울 것 같습니다.깃허브에 오픈했으니, 참고 부탁드립니다.사진은 간단하게 모델 부분만 올리겠습니다.    https://github.com/KwonGeneral/nextseat GitHub - KwonGeneral/nextseat: 같은 와이파이, 다른 이야기같은 와이파이, 다른 이야기. Contribute to KwonGeneral/n..
[Flutter Project] 옆자리 - 프로젝트 생성
·
개발/모바일
긴 휴일을 보내고 다시 컴퓨터 앞에 앉았습니다.아직 여독이 남아있어서오늘은 간단하게 프로젝트 생성 후에 폴더 구조를 만들고, 깃허브에 업로드하고 마무리하려고 합니다. 클린 아키텍처를 사용할 것이며, 상태관리는 'get'을 사용하려고 합니다.고민중인건 내부 DB 라이브러리인데, 편한 라이브러리는 "shared_preferences"이지만, 몇 가지 단점이 있습니다. 예를 들어, 푸시를 해당 라이브러리를 통해 내부 DB에 저장하려고 하는 경우, 흔하지는 않지만, 특정 Key에 동시 접근이 가능해서 데이터가 제대로 수정이 안된다는 점과 첫 로드 시, 데이터를 미리 로드를 해줘야 한다는 점 등등이 있습니다.그러나 이를 상쇄할만큼 큰 장점이 간편하고 사용하기 편합니다. 해당 프로젝트에서는 쿼리문도 사용하지 않을 ..
[Flutter Project] 옆자리 - 프로젝트 시작
·
개발/모바일
* 같은 와이파이에 접속한 유저들끼리만 접근이 가능1. 익명 보장2. 서버에 데이터를 저장하지 않음 위의 컨셉을 유지한 채로, 앱을 개발 및 배포하려고 합니다.프로젝트명은 일단 "옆자리"로 하고, 진행하겠습니다. "옆자리" - 같은 와이파이, 다른 이야기 당신 옆 누군가와 익명으로 대화하세요. 와이파이로 연결된 공간에서만 만나는 비밀 채팅앱. 완벽한 익명성, 데이터 무저장으로 안전하게. 지금 옆자리엔 어떤 이야기가 숨어있을까요?아래 이미지를 컨셉 이미지로 사용하겠습니다.
[Game] 귀곡팔황 - [무사] 만고신화 100% 한글화 (최신 2024년 8월 13일)
·
아카이브/취미
안녕하세요.귀곡팔황 스팀에 한글판이 나왔다고해서 복귀했습니다.창작마당에서 다운받은 모드가 있는데, 상당히 인기가 높길래, 제가 플레이하려고 한글화했습니다.초대형 모드라 그런지 상당히 번역해야할 양이 많았습니다..번역 퀄리티를 위해, 파파고가 아니라 Claude를 사용해서 인공지능 번역했습니다.모두들 즐거운 게임되세요.( 다운로드는 최하단에 링크 들어가시면 됩니다. ) [ 원본 스팀 링크] https://steamcommunity.com/sharedfiles/filedetails/?id=2814696167&searchtext=[无邪]万古神话" data-og-description="" data-og-host="steamcommunity.com" data-og-source-url="https://steamco..
Flutter - 기초 정리 ( 1 )
·
아카이브/일기
[ pubspec.yaml ] 개발하면서 자주 접할 파일. 펍스펙 파일은 프로젝트의 메타데이터를 정의하고 관리하는 곳이다. 프로젝트의 버전이나 사용 환경, 다트 버전 등등을 정의한다. [ lib 폴더 ] 앱을 만들 때, 99%는 여기서 작업해야한다. [ import ] 'package:f0lutter/material.dart' [ runApp(MyApp) ] runApp 함수는 매개변수로 위젯이 들어와야한다. MyApp은 플러터의 최상위 함수인 runApp이 최초로 불러온 함수인만큼 MyApp은 최상위 레이아웃이며 최초로 빌드하는 역할을 한다. LiveTemplate -> stless [ Column, Row ] - 세로, 가로 [ Scaffold ] Scaffold Widget은 앱 발판에 다양한 위젯..
Flutter - Windows 초기 설정
·
아카이브/일기
https://flutter-ko.dev/docs/get-started/install/windows 윈도우에서 설치 flutter-ko.dev Flutter Documnet를 참고해서 설치 1. Git Download 2. Flutter SDK 다운로드 git clone https://github.com/flutter/flutter.git -b stable 3. Flutter Docotr로 설치 환경 확인 - 초기에는 대부분 X로 표시 4. Visual Studio 설치 5. Visual Studio 추가 설치 Visual Studio Installer -> 수정 6. Android Studio 설치 7. Android Studio 추가 설치 9. 환경 변수 설정 10. Xcode 설치 Xcode는 아이..
Android Custom Template Plugin 개발 (4)
·
아카이브/일기
https://github.com/KwonGeneral/KwonTemplate.git GitHub - KwonGeneral/KwonTemplate: 안드로이드 스튜디오 커스텀 템플릿 안드로이드 스튜디오 커스텀 템플릿. Contribute to KwonGeneral/KwonTemplate development by creating an account on GitHub. github.com https://github.com/kyh8496/TestPluginTemplate 1. ListFragmentSetupTemplate.kt 작성 name, description은 이름과 설명 부분이고, minApi는 최소 지원 api, category는 템플릿을 어느 카테고리에 넣을지에 대한 설정이다. hel..
Android Custom Template Plugin 개발 (3)
·
아카이브/일기
https://github.com/KwonGeneral/KwonTemplate.git GitHub - KwonGeneral/KwonTemplate: 안드로이드 스튜디오 커스텀 템플릿 안드로이드 스튜디오 커스텀 템플릿. Contribute to KwonGeneral/KwonTemplate development by creating an account on GitHub. github.com https://github.com/kyh8496/TestPluginTemplate 템플릿 파일안의 내용물을 작성하는 코드이다. 1. ListFragment.kt 작성 2. ListData.kt 작성 3. ListAdapter.kt 작성 4. ListViewModel.kt 작성 5. list_adapter_la..
Android Custom Template Plugin 개발 (2)
·
아카이브/일기
https://github.com/KwonGeneral/KwonTemplate.git GitHub - KwonGeneral/KwonTemplate: 안드로이드 스튜디오 커스텀 템플릿 안드로이드 스튜디오 커스텀 템플릿. Contribute to KwonGeneral/KwonTemplate development by creating an account on GitHub. github.com https://github.com/kyh8496/TestPluginTemplate 내가 만든 템플릿은 Fragment, ViewModel, Layout을 생성하는 Fragment Template와 Fragment, ViewModel, Layout, Adapter, Data를 생성하는 List Fragment ..
Android Custom Template Plugin 개발 (1)
·
아카이브/일기
https://github.com/KwonGeneral/KwonTemplate.git GitHub - KwonGeneral/KwonTemplate: 안드로이드 스튜디오 커스텀 템플릿 안드로이드 스튜디오 커스텀 템플릿. Contribute to KwonGeneral/KwonTemplate development by creating an account on GitHub. github.com 앱 개발을 하다보면 프레그먼트를 가장 많이 생성하는데, 안드로이드 스튜디오에서 제공하는 템플릿은 내가 개발하는 스타일과는 맞지 않아서 매번 지워줘야한다. 또한, 나는 프레그먼트를 만들면서 ViewModel도 같이 생성하는 편인데, 이 또한 매번 수작업으로 해주는게 귀찮다고 느껴졌다. 그래서 방법을 찾아본 결과, 직접 플러..
LG UPLUS Project - ZPLAN 마케팅 시작
·
아카이브/일기
https://shop.uplus.co.kr/pc/event/eventView?ushpPmtnNo=10781&eventOrder=lately&ushpBzdpCd=01&pageNo=1&fromId=pgrs&ushpPmtnDivsCd=03 펑키한 Gen Z들을 위한 U+Z플랜폰 출시 < 이벤트 | LG U+ 오직 LG유플러스샵 고객에게만 드리는 특별한 이벤트! 펑키한 Gen Z들을 위한 U+Z플랜폰 출시이벤트를 소개합니다.청소년, Z플립3, Z plan, 플랜, galaxy Z filp3, Z Flip3 shop.uplus.co.kr
LG UPLUS - 프로젝트를 1차 납품했다.
·
아카이브/일기
아직은 출시 전이라 프로젝트명을 공개할 수는 없다. 컨셉은 학생들을 대상으로한 자기관리 앱이다. RoomDatabase와 Knox를 이용해서 개발을 진행했다. 전체적인 설계 및 구조와 Knox를 활용한 기능들은 사수가 담당하고 그 외의 전반적인 부분은 내가 개발을 진행했다. 개발 기간동안 협업에 대해서 많은 것을 알게되었고, 실력이 많이 향상되었다고 스스로 느끼고있다. 개인적으로 개발하던 코드와 비즈니스 코드는 많은 차이가 존재했고, 코딩의 지향점도 달랐다. 또한, 사수의 코드리뷰를 통해 더 효율적이고 깔끔한 코드를 짤 수 있게 되었다. 야근을 병행하면서 짧은 기간동안 많은 시간을 투자해서 집중적으로 개발했던 것 같다. 덕분에 실력이 많이 향상될 수 있었다. 우선, 앱이 출시된 후에 다시 리뷰하려고 한다.
400일차 - Android Room Data Export(Backup) / Import(Recovery) (2)
·
아카이브/일기
https://developer.android.com/training/data-storage/room/migrating-db-versions?hl=ko Room 데이터베이스 이전 | Android 개발자 | Android Developers Room 라이브러리를 사용하여 데이터베이스를 안전하게 이전하는 방법 알아보기 developer.android.com 안드로이드 룸을 사용하면서 데이터를 백업하고 복구하는 기능이 필요해서 시행착오를 거치고 방법을 찾았다. Android Room에서 데이터를 백업하고 복구하는 방법이 변경되었고, 이는 2.2.0 버전부터 적용이 된다. 나는 2.4.0 버전을 사용 중이라서 변경된 백업, 복구 방법을 사용했다. 우선 MIGRATION_1_2 변수를 보면, database.e..
399일차 - Android Room Data Export(Backup) / Import(Recovery) (1)
·
아카이브/일기
DB 파일을 DAT, CSV로 백업하고, 복구할 때는 DAT 파일만을 사용해서 백업한다. CSV로도 백업을 할 수 있고, 실제로도 백업 가능하게 코드를 작성했었지만, 굳이? 라는 생각이 들었다. CSV는 사실 옵션으로 테스트해본 부분이고, DAT만 다뤄도 충분할 것 같다. 백업을 할 때는, 현재 시간을 파일명으로 지정하고, 복구 할 때도, 해당 시간을 토대로 최신 파일을 찾아서 복구한다. 또한, DB를 복구할 때, 경로는 다운로드 폴더로 잡았는데 이는 사용자가 가장 쉽게 접근할 수 있는 폴더이기 때문이다. 다만, 안드로이드 OS가 업데이트가 되면서, 다운로드 폴더에 접근하기 위해서는 특정 권한이 필요하다. 최신 OS 버전부터는 미디어 권한과 모든 권한 2개로 나뉘어지게 되었고, 이에 따라서 코드를 작성하..
398일차 - Android Send Email & Send Multiple Email
·
아카이브/일기
여기서 중요한 것은, 인텐트의 매개변수이다. ACTION_SENDTO는 단순 텍스트 이메일을 보내면서, 받는 사람을 지정하고 싶을 때, 사용하면 되고, ACTION_SEND_MULTIPLE는 파일을 담아서 전송하고 싶을 때, 사용하면 된다. createChooser 메서드는 앱 선택창을 띄워준다.
397일차 - 깔끔한 코드 작성을 위한 Contains 작성법
·
아카이브/일기
코드를 작성하다보면 특정 상수들을 많이 사용하게 되는데, 이 부분만 조금 다듬어도 코드가 굉장히 깔끔해지고 가독성이 좋아진다. 나는 2가지 방법을 주로 쓴다. 1. companion object 해당 방식으로 상수를 선언하게되면, Define.EMPTY_STR로 사용할 수 있다. 정말 알아보기 쉽거나 단어만 봐도 딱 감이오는 상수들을 위의 방식으로 많이 처리한다. 2. enum class 위의 방식은 DatePattern.DDAY.pattern 으로 사용할 수 있다. 개인적으로 가장 많이 쓰는 방식인데, 해당 방식으로 상수를 선언하게 되면, 가독성이 정말 좋아진다. 위의 코드만 보더라도 DatePattern의 DDAY의 pattern이라고 명확하게 알 수 있어서 좋다. 또한, 매개변수나 코드를 작성하면서..
396일차 - 자주 사용하는 Room DB Query 기본 프레임
·
아카이브/일기
나는 룸을 사용하면서 기본적인 쿼리문은 위의 방식대로 모두 작성해 놓는 편이다. 가장 필수적인 요소인 CRUD와 초기화 그리고 검색 기능이다. 이외에는 특정 기능을 수행하기 위한 쿼리문일뿐, 대부분은 위의 쿼리문으로 충분히 커버가 된다. 다만, 최적화를 위해서 조건문을 추가로 작성할 뿐이다.
395일차 - Git Hub Desktop ( Version Control )
·
아카이브/일기
https://desktop.github.com/ GitHub Desktop Simple collaboration from your desktop desktop.github.com 내가 사용해 본 버전 관리 툴은 소스트리와 깃허브데스크탑 2개 밖에 없다. 이 중에서 나에게 더 잘 맞는 것은 깃허브데스크탑이다. 굳이 히스토리를 복잡한 트리형식 UI로 보지 않아도 되서 개인적으로는 깔끔하다고 생각한다. 소스트리는 좋지만 이름처럼 너무 트리트리하다. 단순한 커밋조차도 복잡해보이게 만드는 툴이다. 버전 관리를 중점적으로 하는 사람이라면 당연히 그러한 부분들이 중요하겠지만, 소규모 프로젝트같은 경우에는 깃허브데스크탑처럼 간단하고 필요한 기능들은 전부 있는 툴이 최고인 것 같다.
394일차 - 헬스장 6개월 PT 3개월 결제
·
아카이브/일기
이번에 결혼준비를 하면서 6월 17일날에 스튜디오 촬영이 예정되어 있다. 이를 위해서 헬스장 6개월 PT 3개월을 193만원에 계약했다. 헬스는 20살때부터 방학시즌에는 주 3일 가벼운 런닝과 풀업만하면서 체중관리를 했었다. 현재 여자친구를 만나기 전에는 53~57kg을 계속 유지했었는데, 현재 내 몸무게는 73kg이다. 연애를 하면서 자연스럽게 헬스장도 안가게 되었고, 살은 계속 쪘다. 그래도 몸은 무겁지만 마음은 굉장히 가볍고 행복한 나날들을 보냈다. 하지만, 이제는 다시 빡세게 운동을 해야하는 시기이다. 한번뿐인 결혼식인데 못난 모습으로 결혼하고 싶지는 않다. 이번에는 무조건적인 다이어트라기보다는 이왕 살좀찐거 쇠질좀해서 근육먼저 만들고 빡쎄게 다이어트해보려고한다.
393일차 - Android Samsung Knox
·
아카이브/일기
https://docs.samsungknox.com/dev/knox-sdk/index.htm Welcome to the Knox SDK Knox Developer Documentation Knox SDK Welcome to the Knox SDK Through the Knox SDK, you can manage a comprehensive set of features on a Samsung Android mobile device. You can control the device's accounts, apps, connections, customization features, device docs.samsungknox.com 삼성 단말기에는 Knox가 탑재되어서 출품된다. Knox는 현재 기업만 사용할 수..
392일차 - Bottom Navigation Bar Library: SuperBottomBar
·
아카이브/일기
심플한 바텀 네비게이션을 구현하고 싶을 때, 사용하기 좋은 라이브러리이다. 약간의 애니메이션이 들어가있으며 사용자가 클릭에 대해서 인지할 수 있다. 이러한 UI 들은 라이브러리를 사용하는 것을 추천한다. 직접 그려보면 알겠지만, 생각보다 손이 많이간다. 이렇게 코드로 포지션을 가져올 수 있기 때문에, 여기서 스킴을 사용하던 뭘 하던 지지고 볶으면 된다.