본문 바로가기

개발52

C언어 windows.h를 웹에서 사용 결론은 불가능하다. 이걸 왜 찾고 앉았냐면... 먼저 가상키보드 프로젝트를 진행하고 있는데, 좀 더 완벽하게 만들려고 실제로 한/영 버튼을 누르면 웹 상에서도 가상키보드의 한/영 상태가 바뀌는 기능을 구현하려고 했었다. 찾아보니 컴퓨터 내부에 좀 더 가깝게 접근이 가능한 C언어를 이용해서 한/영 상태를 알아내는 방법이 있었다. 그래서 간단하게 생각해서 기능이 작동하는 C 프로그램을 작성해서 Javascript로 포팅을 하면 되겠구나라고 결론을 내리고 검색을 했다. 관련된 프로그램들을 설치하고 C언어로 코드 작성해서 컴파일을 했더니 windows.h 헤더파일은 컴파일이 안된다고 떴다. 그 이유는 javascript는 보안상의 이유 때문에 컴퓨터의 상태에 접근이 불가하고, 만약 windows.h 를 컴파일 .. 2022. 8. 21.
Project 1 : 가상키보드(1) - 개발 환경 설정 밑에 작성한 내용들은 강의를 듣고 모르는 부분에 대해서 찾아가면서 작성한 내용이고, 나의 생각도 들어갔기 때문에 오류가 있을 가능성이 높다. 설명이 필요한 내용에 대해서 누락되거나 전혀 다른 내용을 말할 수도 있기 때문에 알아서 걸러들어야 한다. 하지만 그런 실수를 하지 않기 위해서 최대한 신경써서 정리를 할 거다. 패키지를 작업 폴더로 다운을 받을 때 보통 두 가지 방법이 있다. 1. npm i 패키지명 2. npm i -D 패키지명 각각의 의미는 배포 환경과 개발 환경으로 나뉜다. 다운을 받게 되면 각 모듈에 대한 정보들은 작업폴더 내 package.json에 기록된다. 프로젝트를 진행하기 위해서 다운로드 받은 패키지는 아래와 같다. css-loader 자바스크립트 모듈 내에서 *.css 모듈을 불러.. 2022. 8. 19.
오늘부터 다시 돌고 돌아서 다시 개발로 왔다. 지난 5개월 간 횟집에서 일을 하다가 왔는데 정말 이걸로 장사를 배워서 끝까지 갈 수 없을 것 같다는 확신이 들어서 개발로 왔다. 뭐 개발을 어느정도 잘하는 사람이 이 글을 봤을 때도 마찬가지로 끝까지 못 간다는 생각을 할 것이다. 법으로 정해둔 성인이 된지 3년이 지났다. 그런데 아직까지 성인이라는 기준에 한참 못 미친다. 난 이제부터 장사를 할 생각은 없다. 내가 생각해도 너무 잘못 생각했던 것 같다. 앞으로는 개발로 어떻게 하면 돈을 벌 수 있는지에 대해서만 생각한다. 나의 목표를 개발자로 설정하고 빠른 시간(3~4개월)안에 달성 할 것이다. 목표로 향하는 동안에도 책도 읽고, 여러 다양한 분야에 대해서 관심을 가질 것이다. 포기하지 말자... 내가 해결할 수 없다고.. 2022. 8. 17.
[네이버 클론 5] 배경색 테마 적용 3일 정도 틈틈히 생각을 하다가 해결방법을 생각해냈다. 지금 개발을 하고 있는 프로젝트는 SSR을 적용했다. 그래서 기존에 styled-component에서 사용하는 ThemeProvider로 body를 감싸지 못한다(App 컴포넌트는 theme 적용가능). 이를 해결하기 위해서 기존 방식인 클래스에 light, dark를 추가하는 방식을 사용했다. 아래 body의 스타일 부분은 간단하게 구성을 했고, 테마가 토글되는 기능도 되게 간단하게 구현을 했다. 이 코드는 테마를 변경하기 위한 버튼을 누르면 실행되는 부분이다. theme의 값은 useThemeContext에서 결정되서 나오게 되고, theme_str은 theme의 반대이다. 예를들어 theme_str은 theme이 light일 때 light의 반.. 2022. 2. 9.
[네이버 클론4] 테마 기능, 더보기 버튼 토글 기능 제작 완료 조금씩이라도 하니까 뭔가가 나오긴 합니다. 여태까지 계속 손을 안대다가 다시 시작해보려고 합니다. 거의 3개월을 공부도 안하고 알바만 했는데, 역시 개발이 답인 것 같아서 지금도 한참 부족하지만 다시 꾸준히는 못하더라도 할 수 있을 만큼 열심히 노력하겠습니다. 툴바 기능 이후에 만든 것들은 헤더 메뉴 목록, 더보기 토글 버튼, 테마 기능, 날씨 API 받아와서 출력이 있습니다. 1. 날씨 API는 직접 백엔드 서버를 만들어서 헤로쿠에 deploy 해놓은 상태이고, deno로 프로젝트를 진행하다보니 deploy할 때 생기는 문제점들이 몇몇 있어서 골치 아팠지만 전부 해결해서 일단은 안정적으로 날씨 데이터를 받아오고 있습니다. 2. 더보기 토글 버튼은 이틀 정도 곰곰히 생각하면서 최대한 귀찮은 짓을 피할려고.. 2022. 2. 3.
[네이버 클론3] 콘텐츠 메뉴 제작, 기타 기능 업데이트 어제는 하는둥 마는둥 열심히 하지 못해서 후회가 됩니다. 오늘은 머리가 좀 아프긴 한데 참으면서 헤더에 있는 콘텐츠 메뉴를 절반 정도 완성했습니다. 왜 절반이냐면, 네이버 사이트를 보면 더보기 버튼과 맨 오른쪽에는 날씨 정보 컴포넌트가 있습니다. 그 기능을 완성하려면 제가 생각할 때는 먼저 프론트쪽에서 네이버의 날씨 API에 접근해서 통신할 수 있는지 확인해보고, 된다 싶으면 보류해놓고 나중에 백엔드 쪽을 구성하면서 추가할 예정입니다. 아래는 각각의 아이템들이 필요로 하는 값을 배열에 담아둔 것과 콘텐츠 메뉴를 구성하는 핵심 코드입니다. menuObjects배열의 map을 이용해서 내부의 값들(name, className, href)을 MenuItem 컴포넌트에 넘겨줍니다. 콘텐츠 메뉴를 적용하기 전의 .. 2021. 10. 17.