본문 바로가기

전체 글

[Flutter] JAVA_HOME is set to an invalid directory 에러 [01] JAVA_HOME is set to an invalid directory 에러 코딩애플님의 유투브 강의를 들으면서 Flutter설치를 했는데 역시 시작부터 쉽게 지나가지 않는다. Flutter SDK를 압축해제하고 환경변수 설정에서 path에 flutter 폴더안의 bin파일 경로를 넣은 뒤에 cmd 실행해서 flutter doctor를 명령해 flutter 진단을 내렸다. 그다음 "flutter doctor --android-licenses" 실행했더니 다음과 같은 오류가 발생했다. 해당 에러 내용으로 다른 블로그를 찾아보니 directory 주소에서 뒤에 \bin과 ; 을 빼야한다고 나와있었다. 하지만 나의 경우에는 나와있는 따라해봐도 해결되지 않았다. 에러내용을 자세히 보니 다른 블로그에서.. 더보기
팀 프로젝트 - 러브체인 멋쟁이 사저처럼 [NFT 블록체인 마켓 앱 만들기] 2기 클래스 Solidity언어로 스마트 컨트랙트를 짜고 Next.js를 활용하여 사랑의 자물쇠 프로젝트를 진행해 보았다. 프론트엔드 개발팀원으로 참여하여 여러번의 삽질을 했던 기록을 남기고 싶었다. [01] Next.js 이번 프로젝트 팀장님께서 현업 프론트엔드 개발자로 일한지 2년정도 되시는 경력자 분이셔서 요즘 많이 쓰인다는 리액트의 라이브러리인 Next.js 로 개발을 진행하기로 했다. Next.js 는 불필요한 설정을 하지 않고도 SSR, SEO부터 TypeScript까지 생산에 필요한 많은 기능들을 제공하는 아주 강력한 React 프레임워크다. SSR(Server Side Rendering) SSR을 사용하면 모든 데이터가 맵핑된 서비스 페이.. 더보기
블록체인 프로그래밍 - SOLIDITY 블록체인 플랫폼에서 스마트 계약 작성과 구현에 사용되는 계약 지향 프로그래밍 언어 개발자는 솔리디티를 통해서 코드로 실행되는 비즈니스 로직을 스마트 계약에 담아서 구현할 수 있다. C++, Python, Javascript 를 기반으로 하는 이더리움 기반의 플랫폼이지만, Klaytn에서도 솔리디티를 활용한다. pragma solidity >=0.7.0 string) public tokenURIs; //*4 constructor () { owner = msg.sender; //*5 } function getTotalSupply() public view returns (uint256) { //*6 return totalSupply + 100000000; } function setTotalSupply(uint.. 더보기
Klaytn(클레이튼) 이란? 클레이튼의 목표 1. 웹/모바일 어플리케이션과 동일한 수준의 사용자 경험을 제공하여 사용자가 블록체인을 인식하지 못하도록 함 2. 매력적인 어플리케이션이 많이 만들어질 수 있도록 비즈니스 친화적인 환경 제공 3. 블록체인의 핵심적인 특징을 희생되지 않으며, 적극적으로 헌신하는 참여자들과 안정적으로 플랫폼을 유지 클레이튼의 장점 1) TPS : Transaction Per Second 1초당 처리할 수 있는 트랜잭션 규모 비트코인 7TPS 이더리움 20TPS 클레이튼 4000TPS 2) 완결성 : Finality 블록에 담긴 거래가 바뀔 수 없다는 걸 보증하는 시간 비트코인 60분 이더리움 6분 클레이튼 1초 3) Gasfee : 수수료 클레이튼은 이더리움 가스비의 1/100 수준 이더리움 100 > 클레.. 더보기
팀 프로젝트 - 이게모약 엘리스 AI트랙의 마지막 프로젝트는 인공지능 프로젝트였다. 자연어 처리 vs 이미지 처리 인공지능을 이용하여 이미지를 분석하고 인식하는게 흥미로웠다. 이번 마지막 프로젝트는 엘리스에서 임의로 팀배정을 해주었고, 저번 프로젝트때 같이했던 팀원 한분과 다시 만나게 되어서 기분이 좋았다 ㅎㅎ 팀원들과 분위기가 좋아서 아이디어가 샘솟았지만 우리팀에 의료종사자분이 두명이나 있어서 관련된 도메인 지식이 있어서, 알약 인공지능 인식 프로젝트로 주제를 정하게 되었다. 병원에서 일하면서 환자분들의 복용약을 일일히 조사해야했던 불편한 점이 가장 컸고, 복용하는 약의 가짓 수가 많은 만성질환 환자 및 보호자들을 위한 서비스를 만들기로 했다. 이번 프로젝트에서 나의 목표는 모바일 화면에서 볼 수 있도록 만드는 것이다. [01.. 더보기
팀프로젝트 - 클린한끼 엘리스 두번째 프로젝트는 데이터를 활용한 웹 서비스였다 OTT 서비스 or 배달 서비스 두가지 주제가 있었는데, 넷플릭스 같은 OTT를 보기 보다는 배달음식을 더 자주 시켜먹어서 후자를 골랐다 그리고 배달음식과 관련해서 떠오르는 이슈들이 많기도 했다! 처음으로 하는 팀프로젝트 였기 때문에, 내가 주도적으로 팀을 이끌어 가고 프로젝트 개발의 방향을 잡아보고 싶어서 팀장을 자원했다. 팀프로젝트 5명이서 프로젝트 시작 전에 서울에서 모여 같이 밥을 먹었다. 협업 스킬을 기르기 위해 같이 방탈출을 했는데 14분을 남기고 클리어 했다. 카페에 가서 MBTI 얘기도 하고 서로에 대해 얘기를 많이했다. (나는 세상만사 다 관심있는 ENFP!!!) 아이디어 회의도 같이 진행했었는데, 데이터 분석 결과 코로나로 인해 배.. 더보기
눈에 확 띄는 신입 포트폴리오 1. 이력서 vs 포트폴리오 이력서 자신의 능력과 경험을 간략하게 정리한 문서이다. (PDF, Notion, LinkedIn 등) 사실 신입의 경우 이력서가 메리트 있지는 않다. 이력서는 나의 포트폴리오를 어떻게든 보게 만들겠다라는 의도로 만드는 것이 좋다. 포트폴리오 자신의 실력을 보여줄 수 있는 작품 혹은 작품집이다. (PDF, Notion, Blog, 구동중인 서비스, 소스코드 등) 수많은 신입의 포트폴리오를 보면 본인들이 하고싶은 말만 하는구나 느낄 수 있다. 결국, 평가자가 평가를 하고 싶게끔 만들어야 하는 것이 중요하다. 2. 포트폴리오 내용 1) 회사와의 직무 적합성 [스타트업] 구성인원이 적고, 주어진 리소스가 한정적이기 때문에 채용을 했을 때 바로 실무에 투입할 수 있는 사람을 원한다. .. 더보기
나의 첫 프로젝트(3), "Flask에서 React까지" [17] state에 배열 추가하기 포트폴리오에 등록한 정보를 바탕으로 유저들의 데이터를 한 페이지에 나열하는 기능을 만들려고 했다. 리스트를 state로 지정하고 나서, 유저 목록을 가져오면 seState로 상태를 저장해야하는데, 배열의 경우에는 concat을 사용하여 해결하였다. // React const [userList, setUserList] = useState([]) const users = [] useEffect(() => { async function bring_user_list() { try { const response = await axios.get(`${process.env.REACT_APP_BASE_URL}/userList`) for(let i=0; i < response.data.. 더보기