프로그래밍이란 0과 1밖에 모르는 기계가 실행할 수 있을 정도로 정확하고 상세하게 요구사항을 설명하는 커뮤니케이션 작업, 그 결과물이 바로 코드 문제해결을 할 때 우리는 컴퓨터의 입장에서 문제를 바라봐야 한다.(컴퓨팅 사고) ex) '듣다'라는 행위에서 사람은 크다, 작다로 소리를 표현하지만 컴퓨터는 수치화하여 해당 기능을 구현해야 한다. 사람에게는 당연한 행위도 컴퓨터에게는 수치화한 구체적인 기능적인 요구사항과 이에 대한 구현이 필요하다. 프로그래밍 언어 컴퓨터가 이해할 수 있는 언어는 자연어 즉 기계어이다. (0과 1로 이루어진 언어) 사람이 자연어를 사용해서 기계와 커뮤니케이션하기는 쉽지 않다. 그래서 약속된 문법으로 구성된 프로그래밍 언어를 사용해서 코드를 작성 후 컴퓨터가 이해할 수 있도록 번역..
Element란 리액트 앱을 구성하는 가장 작은 블록들 기존엔 엘리먼트를 DOM의 Element를 의미하는 단어로 사용했다. 하지만 리액트에서의 Element는 리액트 Element를 뜻한다. DOM elements와 React Elements의 차이 리액트 개발 초창기엔 현재 React Element를 Descriptor라고 불렀다. (화면에 나타나는 내용을 기술한다는 의미에서 Descriptor) Descriptor는 최종적으로 DOM Element 형태로 나타나기 때문에 통일성을 위해 React Element로 변경되었다. DOM element는 실제 DOM에 존재하고 React Element는 React의 Virtual DOM에 존재한다. React Element는 DOM Element의 가상 표..
JSX 정의와 역할 JSX란 A syntax extension to JavaScript (자바스크립트 문법의 확장) JavaScript + XML/HTML , JavaScript and XML의 앞글자를 따서 JSX라 한다. 자바스크립트 코드와 HTML 코드를 같이 쓰는 형태 const element = Hello, world! 쉽게 말해 HTML 태그를 JavaScript 문법과 같이 사용할 수 있다. JSX 역할 JSX는 내부적으로 XML, HTML 코드를 자바스크립트 코드로 변환하는 과정을 거쳐서 최종적으론 자바스크립트 코드가 나온다. 이때 리액트의 createElement가 변환하는 역할을 맡는다. // JSX 사용한 코드 class Hello extends React.Component { ren..
인프런 처음 만난 리액트 [무료] 처음 만난 리액트(React) - 인프런 | 강의 자바스크립트와 CSS 기초 문법과 함께 리액트의 기초를 탄탄하게 다질 수 있습니다., 깔끔한 강의자료, 꼼꼼한 설명으로쉽게 배우는 리액트 강의입니다. 👨🏫 리액트의 세계로초대합니다 💫 www.inflearn.com 개인 프로젝트를 A-Z로 진행하기 위한 준비과정으로 리액트 공부를 시작했다. 백엔드 개발자지만 항상 어느 정도 프론트에 대한 지식과 코드를 작성할 수 있어야 한다는 생각을 갖고 있었는데 이번 기회에 리액트란 어떤 것인지 명확하게 인지하고 기본적은 사용법을 익혀보자. 들어가기 전 SPA(Single Page Application) 전통적으로 화면에는 각 html 페이지가 존재했다. 다른 컨텐츠를 보기 위해선 다..
쉬운코드 강의 relational data model relation은 수학에서 나온 개념, 수학적 relation을 이해하기 위해 배경지식인 set를 알고 있어야 한다. set은 집합으로, 서로 다른 elements를 가지는 collection 하나의 set에서 elements의 순서는 중요하지 않다. 수학에서 릴레이션 수학에서 말하는 relation은 카다시안 곱(Cartesian Product)의 부분집합이다. (subset of Cartesian Product) 수학에서 relation 개념을 relational data model에 적용 set -> domain (relational data model에서 도메인마다 이름을 붙일 수 있다.) 동일한 domain이 같은 릴레이션에서 두 번 사용될 ..
좋은 글 쓰기란 남의 생각을 그대로 옮겨서 쓰는 것이 아닌 본인의 경험과 생각을 자신의 스타일대로 쓰는 것이라고 생각한다. 좋은 글을 쓰려면 지속적으로 써야 한다고 생각한다. 예전에는 완벽한 글을 쓰려고 신경 쓰다 보니 임시저장된 글만 늘어 갔다. 마치 깔끔한 코드를 작성하기 위해 기능 구현(마무리)이 완성하지 못한 코드를 작성한 것이다. 기능 구현 후 리팩토링을 하자 강의를 보며 단순히 필기하는 글이더라도 꾸준히 글을 써보려고 한다. 쓰다 보면 강의 내용에 대한 정리 능력이 향상될 거라 본다. 누군가가 말하는 내용을 잘 듣고 정리하는 능력은 협업에 첫 단계라 생각한다. 나만의 글을 쓰기 전 배운 지식을 잘 정리하는 글을 쓰자
유튜브에 있는 데이터베이스 강의를 통해 DB 기본을 다시 공부해보자. 쉬운 코드 데이터 베이스 기본 개념 데이터베이스관련 기본 개념을 이해하기 쉽게 설명해주는 영상 Database(DB) 전자적으로(electronically) 저장되고 사용되는 관련 있는(related) 데이터들의 조직화된 집합 (organized collection) 전자적으로 : 컴퓨터를 이용하여 데이터를 저장 및 사용 관련 있는 데이터 : 같은 서비스 안에서 생성되는 데이터들 조직화된 집합 : 잘 정리되어 있는 데이터의 집합, 잘 정리되어 있으면 데이터도 빠르게 찾을 수 있고, 불 일치도 막을 수 있다. DBMS (Database management systems) 사용자에게 DB를 정의하고 만들고 관리하는 기능을 제공하는 소프트웨..
개발 블로그가 트렌드라고 느낀다. 구글링을 하면 무수히 많은 개발 블로그가 나타난다. 그 중 눈에 띄는 블로그들도 있지만, 대부분 남의 지식을 옮긴 듯한 블로그들이 많다. 개발 공부를 시작하면서 블로그를 해야지라는 마음가짐으로 블로그를 개설을 했다. 남의 지식을 옮기는 느낌보다 좀 더 공드린 개발 블로그를 쓰고 싶었다. 하지만 공부한 내용 필기 수준의 글을 못 벗어났다. 생각보다 개발에 대한 좋은 글을 쓰는데 시간이 오래걸렸고, 공부한 것 외에 것들을 추가적으로 더 알아봐야했다. 그런 노력을 귀찮아서 하지 않았다. 그렇게 블로그를 방치해두었다. 이직한 회사에서 새로운 시작과 함께 다시 블로그에 글을 쓰려고 한다. 우선 시작은 부담없이 개발에 대한 나의 생각들을 위주로 글을 쓸 계획이다. 글을 쓰는 것이 ..
테스트 코드에 낯선 주니어 개발자 입장에서 테스트 코드를 짜는 방법보다 어떻게 테스트 코드 작성 전략을 가져가는 것을 정하는 것이 어렵다. 테스트 작성 방법도 익숙지 않은 상태에서 올바른 테스트 코드 전략이 무엇인지 생각해야 하기 때문이다. 팀프로젝트 시작 당시에 우선 구글링에서 찾은 테스트 전략 가이드를 따라 진행 했다. 서비스는 @SpringBootTest , 컨트롤러는 Mock 객체 사용 (테스트 더블 사용) 작업을 진행 중 애매모호한 부분이 많아서 테스트와 단위 테스트와 TDD에 대해 공부가 필요해 보였다. 테스트란? 개발 주기에 검증단계에 있는 부분 소프트웨어 개발 주기는 요구사항/ 설계 → 구현 → 검증 → 배포 → 수정 → 구현 → 검증 → 배포 순으로 진행 검증을 잘할수록 버그 수정이 감소..
Git 사용함에 있어서 독립적으로 작업을 진행하기 위한 개념 각각 필요에 따라 만들어지는 브랜치는 다른 브랜치의 영향을 받지 않는다. 따라서 여러 작업을 동시에 할 수 있게 만들어줌 여러 작업을 동시에 진행하다가 작업이 완료되면 브랜치 병합 -> 다시 새로운 하나의 브랜치로 모을 수 있다. Master 브랜치 Repository를 처음 만들면 나타나는 브랜치 ( Master 브랜치를 통합 브랜치로 사용한다고 보면 된다 ) 통합 브랜치 언제든지 배포할 수 있는 버전을 만들 수 있어야 하는 브랜치 안정적인 상태 유지가 필요 ( 정상 동작하는 상태 ) 애플리케이션에 문제가 발생 혹은 새로운 기능 추가 등은 토픽 브랜치에서 작업한다. 토픽 브랜치 기능 추가나 오류 수정 등을 작업하는 브랜치 ( 개발 브랜치 혹은..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.