전체 글(476)
-
307일차 - 가독성과 안전한 코드, also, with, let, run, apply, Room
집에 도착해서 밥먹고오니.. 시간이 벌써 오후 9시다. 얼른 하고 자야한다. 현재... Unrecognized Android Studio (or Android Support plugin for IntelliJ IDEA) version '202.7660.26.42.7486908', please retry with version 2020.3.1 or newer. 이러한 에러가 발생해서 안드로이드 스튜디오 업데이트 중이다..! 1. 선언과 수행을 동시에 하자. 2. 정적 변수들은 따로 빼서 관리하자. 3. also, run, with, let, apply를 각각의 사용처에 맞게 사용하자. 4. Json 데이터는 Gson으로 제어하자. 5. 불변적인 것을 먼저 개발하자. ..
2021.11.01 -
306일차 - 간단한 조사(AI, DL 설명 및 사용 기술)
오늘은 일요일이다. 현재 시간 오후 6시 40분. 오후 8시에 팀 프로젝트 회의가 있다. 오늘은 간단하게 AI와 DL에 대해서 정말 간단하게 검색만 해보고 쉬려고한다. 1. AI와 DL에 대한 설명 2. 구현하기 위해서 사용하는 기술 1. Python 2. Lisp 3. R 4. Prolog 5. Java 6. C 7. Juila 1. Pybrain 2. Numpy 3. Tensorflow 4. PyTorch 5. Pandas 6. Matplotlib 7. Scipy 8. Keras 9. Theano ( 참고 : https://www.hanbit.co.kr/media/channel/view.html?cms_code=CMS860..
2021.10.31 -
305일차 - Stack, Heap, Malloc, Free
저번에는 Stack에 대한 코드를 작성해보고 학습했다. 이제 아래의 이미지를 살펴보자. 또한, 아래의 사이트에서 설명을 읽어보자 ( http://www.tcpschool.com/c/c_memory_structure ) 이전에 Stack과 Heap에 대한 개념을 비유와 함께 어느정도 익혔다. 위의 내용을 전부 이해하지는 못하더라도 대충 느낌은 알 수 있을 것이다. Heap 영역에 대한 설명을 보면 "힙 영역은 사용자가 직접 관리할 수 있는" "그리고 관리를 해야만 하는 영역이다." "힙 영역은 사용자에 의해 메모리 공간이" "동적으로 할당되고 해제된다." 한 줄로 요약해보면, "힙 영역은 사용자가 동적으로 관리하는 영역" 정도로 이해하면 될 것 같다. 힙(Heap) 정렬이라는 것도 있다. 이는 힙(Heap..
2021.10.30 -
304일차 - Kotlin Room을 활용한 간단한 게시판 만들기
우선 GitHub와 연동을 하자. https://github.com/KwonGeneral/Kotlin_Room_Example.git GitHub - KwonGeneral/Kotlin_Room_Example: Kotlin Room Board Example Kotlin Room Board Example. Contribute to KwonGeneral/Kotlin_Room_Example development by creating an account on GitHub. github.com 그다음! 디자인을 만들어보자. 게시판 형식으로 제목만 뽑아서 목록 리스트를 보여주고 클릭하면 해당 글의 제목과 내용을 보여준다. 수정과 삭제 버튼도 추가하자. 1개의 Activty 4개의 Fragment가 필요하다. 프래그먼트..
2021.10.29 -
303일차 - Android Room 정리
Room은 SQLite에 대한 추상화 레이어를 제공하여 원활한 데이터베이스 액세스를 지원하는 동시에 SQLite를 완벽히 활용합니다. 상당한 양의 구조화된 데이터를 처리하는 앱은 데이터를 로컬로 유지하여 대단한 이점을 얻을 수 있습니다. 가장 일반적인 사용 사례는 관련 데이터를 캐싱하는 것입니다. 이런 방식으로 기기가 네트워크에 액세스할 수 없을 때 오프라인 상태인 동안에도 사용자가 여전히 콘텐츠를 탐색할 수 있습니다. 나중에 기기가 다시 온라인 상태가 되면 사용자가 시작한 콘텐츠 변경사항이 서버에 동기화됩니다. Room은 이러한 문제를 자동으로 처..
2021.10.28 -
302일차 - 계획 수립 및 Android Room, 인공지능(AI), 딥러닝(DL)
이번에 어썸잇 회사에 취업하게 됐다. 현재 내가 공부해야할 Stack, Heap 이전에 먼저 회사에 민폐 끼치지는 않을 지식을 갖추고 그 다음에 내 자기개발을 하려고 한다. 지금 내가 해야하는 것들이 너무 많아서 계획을 확실하게 다시 수립하고 가야한다. 현재 내가 해야하는 것을 크게 나누면 아래와 같다. 1. 회사 일에 대한 공부 2. 팀 프로젝트 기획 3. 자기개발하기 4. 집 구하기 여기서 무엇 하나도 놓칠 수 없다. 세세하게 해야하는 것들을 생각해보자. 1. 영단어 앱 시장 조사 (완료) 2. 앱의 방향성 및 기능 기획 3. 디자인 4. 사용할 프레임워크 정하기 5. 앱의 아이덴티티 정하기 1. 파이썬(Python) 파헤치기 2. 스프링(Spring) 3. OS..
2021.10.27 -
301일차 - Malloc, Stack
현재 시간 오후 7시 30분. 일하고 프린트 뽑고 집에 들어왔는데, 문득.. 오늘은 너무 쉬고 싶다는 생각이 든다. 이상하게 오늘따라 정신도 몽롱하고 열도 나는 것 같은 그런 느낌이어서 살짝 지쳤다. 하지만, 오늘 쉬면 분명 내일 후회한다. 이런 생각이 들고, 블로그에 간단한 글 하나 적는게 뭐가 어렵다고 왜 내가 계속 변명거리를 찾고있지..? 라는 생각이 들었다. 결국 지금 컴퓨터를 키고 책상 앞에 앉았다. 적어도 어제 얘기했던 malloc, free, stack, heap에 대해서 어느정도 공부를 하고 누워야겠다. 우선 malloc에 대해서 검색해봤다. C 동적 메모리 할당은 동적 메모리 할당을 위한 수동 메모리 관리를 수행하는 것을 말하며 C에 담긴 mall..
2021.10.26 -
300일차 Python Garbage Collection, Reference Counting
오늘은 파이썬의 가비지 컬렉터와 레퍼런스 카운팅에 대해 알아보려고 한다. GC(Garbage Collection) GC는 Python 내부적으로 메모리를 자동으로 관리해주는 과정 및 도구이다. 다만, 완벽하게 메모리를 최적화 시키지는 못한다. 그렇기 때문에 개발자가 직접 메모리를 관리할 줄 알아야 한다. RC(Reference Counting) RC는 메모리를 관리하기 위한 전략이다. Python의 모든 Object에 Count를 주고, 각 객체가 참조될 때 증가하고 참조가 삭제될 때 감소하는 방식으로 작동한다. 이때, Count가 0이 되면 메모리 할당이 삭제된다. 먼저 RC에 대해 살펴보고 GC를 알아보자. import sys # RC(Reference Counting)은 아래와 같이 서로를 참조하는..
2021.10.25 -
299일차 팀 프로젝트 및 파이썬 기초
어제 오후 2시에 첫 스터디 모임이 있었다. 게을러지거나 나태해지지않고 꾸준히 성실하게 자기개발 하는 것이 주된 목적인 모임이다. 어제 모여서 밥도 먹고 이야기 나누면서 서로 친분을 나누고, 첫 팀 프로젝트에 대한 미팅을 했다. 첫 팀 프로젝트의 개발은 어렵지 않으면서도 우리에게 필요해보이는 IT 영단어 앱으로 선정되었다. 각자 아이디어를 생각해오기로 약속했고, 그 중에 내 아이디어가 채택되었다. IT 영단어 말고도 좋은 아이디어가 너무 많아서 다음 프로젝트 때, 개발해도 너무 좋은 아이디어들이었다. 간단한 팀 프로젝트 소개이다. https://vast-pendulum-57a.notion.site/99bb33abe6874c10b5ae64db8990b04f?v=945f23ad596844bc9708ecedf..
2021.10.24 -
298일차 리액트(React) 애니애니(AnyAni) - 배포
1. npm run build 2. 정적 파일 static 폴더로 이동 3. index.html 파일을 templates로 이동 및 소스코드 내부 경로 수정 ( 정적 파일 위치를 static 경로로 변경 -> CSS, JS 등등 위치 탐색 에러 방지 ) 4. AWS 배포 https://kwonputer.com/ani/anyani/ 애니애니 kwonputer.com 리액트와 장고를 같이 배포했다. 일단, 이게 맞는 방법인지는 잘 모르겠다. 그래도 리액트 자체가 자바스크립트의 라이브러리기 때문에 이렇게 배포해도 문제 없다고 생각했다. 가끔은.. 주변에 이런 것들에 대해 물어볼 개발자 지인들이 있었으면 하는 생각도 든다. 그래도.. 뭔가 내가 줄 수 있는게 없는데, 물어보기만 하는게 싫어서 적어도 나도 그 사..
2021.10.23 -
297일차 리액트(React) 애니애니(AnyAni) - 추천 페이지
체크박스를 한 20개까지 만들고나서 피곤해서 그냥 반복문 돌려서 만드려고 했는데, 에이.. 지금까지 한 것도 아깝고 얼마 안남았겠지.. 라는 생각으로 열심히 복붙을 하다가 한 40개 넘어가면서부터 열불이 터져서 아.. 지금이라도 그냥 반복문 돌려서 넣을까... 아니.. 그래도 지금까지 한거 지우는 것도 좀 아까운데.. 이런 우왕좌왕속에 결국 복붙으로 끝까지 넣었다. 사실 지금 너무 졸려서 제정신이 아닌 것 같다. 일단.. 잠을.. 자야해..
2021.10.22 -
296일차 리액트(React) 애니애니(AnyAni) - 메인 페이지
메인 페이지는 최상단 메뉴바 ( Navigation ) 빠른 메뉴 ( QuickMenu ) 추천 링크 ( Recommend ) 이렇게 구성하려고 한다. 1. Navigation.js 2. Navigation.css 3. QuickMenu.js 4. QuickMenu.css 5. Ani.js 6. NowBroadCastAtAni.js
2021.10.21 -
295일차 리액트(React) 애니애니(AnyAni) - 환경설정 및 기초 토대 작업
1. npm create-react-app anyani_react 2. 깃허브 (github) 연동 3. package.json 작성 4. 아이콘 및 폰트 정적 파일로 넣어두기 5. setupProxy.js 작성 6. 디자인 구상에 맞춰서 js 생성 및 라우터 설정 BrowserRouter 랑 HashRouter 중에 고민 했는데, 일단 배포 했을 때, 문제가 적어보이는 HashRouter로 선택했다. 또한, 미리 파일들을 생성하고 분배해뒀다. 뭔가 이렇게 미리 분리를 해두면, 주관적인 생각이지만 개발이 더 쉽다. 장고(Django)를 워낙 많이 해서 그런지.. 자꾸 MVT 패턴 비스무리하게 만들게 된다. MVC에서 V가 장고에서 View가 아니라 Template다. 그리고 C가 View다. 지금은 개념..
2021.10.20 -
294일차 리액트(React) 애니애니(AnyAni) - 디자인 구상
보호되어 있는 글입니다.
2021.10.19 -
293일차 AWS - 장고(Django), 리액트(React) 함께 배포
오늘부터 대략 6일 동안은 장고 + 리액트로 웹을 배포하면서 느낀점이나 진행 과정들을 적어 놓을 예정이다. 현재 결과물은 완성한 상태지만, 다음은 협업 프로젝트를 해볼 예정이라서 이에 대한 아이디어 구상과 인원 모집 때문에 시간이 없을 것 같다. 대략 12시간을 헤딩해서 나에게 맞는 리액트 배포 방법을 찾아냈다. 아무리 구글링을해도 내가 원하는게 안나와서 개인적으로 생각해봤을 때, 가능할 것 같은 방법들을 전부 검색해서 자료들을 수집해서 방법을 찾아냈다 휴.. 다행히 하루만에 알아내서 만족스럽다.. 정답을 알려줄 사람이 없으니 언제 해결될지 몰라서 막막했는데ㅠㅠ 다행이다. 1. EC2 서버 하나 파서 Dockerfile로..
2021.10.18 -
292일차 AWS - 서버 설정
후.. 일기도 매일매일 쓰려니까 힘드네.. 일단 300일차가 얼마 안남았으니까 귀찮아도 계속 글을 올려야겠다. 300일차 다 채우면 다시 400일차로 향해야하는데.. 고민이다 400일차 달릴지, 아니면 나만 보기 위한 글이 아니라 다른 사람들한테도 보여줄 수 있을만한 정성이 담긴 글을 적을지.. 일단 오늘 일기를 마저 적자. 이제 서버 설정할건데 도커, 포테이너 등등 해야할 게 많다. 진짜 귀찮은데 이거 안하면 진짜 더 귀찮아진다. 1. 최신 패키지 리스트 업데이트 # sudo apt update 2. Docker 다운로드를 위해 필요한 HTTPS 관련 패키지 설치 # sudo apt install apt-transport-https ca-certificates curl software..
2021.10.17 -
291일차 AWS - 서버 구축
오늘은 포트폴리오 서버가 아니라 새로운 EC2 서버를 만들려고한다. 계정도 하나 새로팠고, 1년 무료인 EC2 서버를 사용해서 우분투 서버를 오픈하려고 한다. 1. AWS 회원가입 후 EC2 관리자 페이지 접속, 인스턴스 생성 2. 마이크로 스토어 샵에서 우분투 설치 후 실행 3. 우분투 폴더 내부에 AWS 키 파일 저장 C:\Users\사용자컴퓨터이름\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs\home\ 4. EC2 보안그룹 설정 5. EC2 인스턴스에 탄력적 IP 할당 6. 가비아 도메인 구매 6. 윈도우 우분투에서 EC2 서버로 접속하기 오늘은 약속이 있어서 짧게 여기까지만 하..
2021.10.16 -
290일차 리액트(React) 애니애니(AnyAni) - 장고(Django) 연동 방법 찾기
일단 생각을 해보자.. 장고에서는 애초에 리액트형식을 지원하지 않으니까 장고를 서버에 올리면서 리액트도 자동으로 실행되게 할 수는 없을 것 같다. 리액트에서 장고를 쓰기 위해서는 API 형식으로 사용해야 할 것 같다. 현재 내가 서버를 구축하고 있는건 1. Nginx 프록시 2. Nginx 3. 장고 유니콘 4. 레디스 5. 다프네 6. 마리아DB 7. Certbot 이렇게 구축하고 있다. 리액트도 장고랑 마찬가지로 도커파일 하나 만들어서 깃허브에서 끌어와서 이미지 만들고, 도커컴포즈파일에 담아서 포테이너에서 스택으로 올리면 될 것 같다. 일단은 이렇게 생각하고 구글링을 해봐야겠다. 서버는 짜증나는게 나랑 똑같은 환경을 가진 예제를 찾기가 힘들어서 결국 이것저것 내가 손봐야해서 생각보다 빠르게 끝날수도있..
2021.10.15 -
[GUI Program] Anime Recommendation
보호되어 있는 글입니다.
2021.10.14 -
289일차 소프트웨어(Python) 애니애니(AnyAni) - 완성
0. 결과 1. 디자인 2. 기능 후.. 시간을 갈아넣어서 완성했다. CDR이랑 크롤링하면서 PyQt5 했던게 도움이 됐다. 기억이 거의 안났는데 예전에 만든 소스코드들 둘러보고 이번에 다시 하니까 기억이 새록새록 나서 금방 할 수 있었다.
2021.10.14 -
288일차 소프트웨어(Python) 애니애니(AnyAni) - 장르, 태그 선택
1. 디자인 2. 기능 후.. 오늘 하루 여기에 시간을 다 쏟았다. 거의 노가다 수준... 반복되는게 너무 많아서 대충 잘라서 올렸다.
2021.10.13 -
287일차 소프트웨어(Python) 애니애니(AnyAni) - 전체적인 디자인 및 구조 잡기
계속 곰곰히 생각해봤다. 디자인을 어떻게 만들지. 일단 검정색을 배경으로 잡고싶고.. 메뉴바는 필요없을 것 같다. 들어가야하는 내용이, 이 3가지가 들어가야하는데, 공간이 많이 부족할 것 같다. 그래서 2개로 나누려고하는데. / 이렇게 2가지 위젯으로 나누려고한다. 색깔은 검정색, 회색, 주황색, 파랑색, 하늘색, 흰색 이렇게 사용하려고한다. 1. 장르, 태그 선택 페이지 2. 결과 페이지 음 이렇게 하면 될 것 같다. 메인 페이지가 고민인데... 창을 2개 써야하니까 소켓을 써서 값을 공유해야한다. 그리고 결과값이 나오면 창을 닫아야하니까.. 결과 페이지를 메인 페이지로 잡고, 장르태그 선택 페이지를 서브 페이지로 잡고 진행..
2021.10.12 -
286일차 소프트웨어(Python) 애니애니(AnyAni) - 환경설정
1. PyQT5 설치 - pip install pyqt5 2. QT Designer 설치 - pip install pyside2 3. 기본적인 소스코드 작성 (기억을 되새기며...) 4. 애니메이션 추천 API 확인 5. 이미지 다운로드 테스트 - urlretrieve - os.system os.system은 별로 쓰고싶지 않은게, 위의 빨강색 글씨로 적힌게 콘솔창에 적힌건데, 저게 콘솔창이 잠깐 뜨면서 작업이 완료되면 콘솔창이 꺼진다. 파이썬에서 실행파일을 만들때는 pyinstaller라는 것을 쓰는데, 여기서 옵션으로 콘솔창을 끄라고하는 -w 옵션을 쓸 수 있는데, os.system은 저 옵션을 써도 콘솔창이 켜졌다가 꺼진다. - urlopen 위의 방법으로 해야겠다. 잘 되네. 이제 자잘하게, 깃허..
2021.10.11 -
285일차 안드로이드(Kotlin) 애니애니(AnyAni) - 구글플레이스토어 등록
자잘한 버그들을 수정하고, 댑스랑 초기화 관리 좀 하고 구글플레이스토어 등록 신청을 했다. 등록 과정은 어렵지 않은데, 은근 시간이 좀 걸린다. 설문조사하고 스샷찍고 로고등록해야해서.. 구글플레이스토어에 등록하는 방법은 1. 대시보드에서 필요한 정보들 입력 2. 앱번들 생성 3. 모바일 스크린샷 촬영 위의 3개만 하면 출시가 가능하다. 차후에 구글플레이스토어에 등록이 되면, 구글 애드몹에 광고 신청해서 아이디받아야겠다.
2021.10.10 -
284일차 안드로이드(Kotlin) 애니애니(AnyAni) - 애니메이션 추천 2021.10.09
-
283일차 안드로이드(Kotlin) 애니애니(AnyAni) - 장르, 태그 선택 2021.10.08
-
282일차 안드로이드(Kotlin) 애니애니(AnyAni) - 앱 개발 (환경설정)
1. 앱 아이콘 설정 2. 쓸만한 폰트 넣어놓기 3. 폰트 스타일 설정 (여백 제거) 4. 파일 경로, 인터넷 보안 설정 5. 프로젝트 Gradle 설정 6. 앱 Gradle 설정 7. 앱 이름 설정 8. 매니페스트(Manifests) 설정 9. 레트로핏 통신 간단하게 사용하기 위해서 간단한 소스코드 작성 10. 빌드해보기 - 끝 -
2021.10.07 -
281일차 - AWS 볼륨 확장
이번에 애니메이션 API 추가하면서 이미지가 많아졌더니 깃클론하는데 AWS 볼륨에 용량 부족하다고 계속 에러가나서 볼륨 확장을 했다. 1. 용량 확인 => df -h 2. 볼륨 확장 3. 볼륨 크기 확인 => lsblk 4. 볼륨 확장 => sudo growpart /dev/xvda 1 5. 볼륨 크기 확인 6. 볼륨 리사이즈 => sudo resize2fs /dev/xvda1 7. 볼륨 크기 확인 - 끝 -
2021.10.06 -
281일차 - 애니메이션 추천 목록 API, 애니메이션 엑셀 업데이트 API
애니메이션 추천 API 알고리즘은 다음과 같이 짰다. 1. 시트 값이 None일 경우에는 ""으로 치환. 2. request로 받은 장르와 태그를 하나의 리스트로 묶고 정렬. 3. 엑셀 파일의 장르와 태그를 하나의 리스트로 묶고 정렬. 4. 두 개의 정렬 리스트의 교집합을 찾아서 그 중에 request로 받은 리스트와 같은 값을 찾고 시트 번호를 추출. 5. 시트 번호에 맞는 값들을 사전형식으로 만들어서 리스트에 넣고 반환.
2021.10.06 -
280일차 - 서버 개발 (버전, 엑셀 다운 링크 DB) 및 포트폴리오 수정
아.. 또 게시글 작성하는데 이미지 업로드하다가 멈춰서 다 날라갔다.. 후;; 그냥 대충 적어본다.. 1. 서버 DB 2. 포트폴리오 수정 - 데스크탑 - 모바일 - 이전 버전 프로필 이미지 좀 더 오른쪽으로 밀고 배경 색상 좀더 흰색에 가깝게 바꿔야겠다. - 데스크탑 - 모바일 이거랑 로그인에서 X버튼 누르면 글자 지우고, 비회원로그인 초기화 추가해줬다.
2021.10.05