휴가 나와 작성해보는 회고 및 계획
·
생각
군대에 입대한 지 255일이 흘렀다. 아직 군생활은 절반 넘게 남았지만, 휴가 나온 김에 이때까지 내가 군대에서 무엇을 해왔는지에 대해 정리해 두려고 한다. 입대 전 ( ~ 20.06.22 ) 입대 및 주니어 프론트 개발자의 회고 입대 및 주니어 프론트 개발자의 회고 5월 육군 운전병으로 입대해야 하는 걸, 굳이 6월 육군 전술 c4i운용으로 해서 6월 22일 자로 논산훈련소에 입대하게 되었다. 무엇보다 빨리 끝내고 나오고 싶어서 이 타이밍에 육군을 택했지만.. so-tired.tistory.com 훈련소 ~ 후반기 ( 20.06.22 ~ 20.08.20 ) 예전에 "좋은 개발자가 되기 위해선, 어떤 분야든 Managed Language의 개념이 잘 잡혀있어야 한다.라는 말을 들은 적이 있다. 나는 이 ..
C언어에서 선언된 배열 값외의 배열 주소에 접근이 가능할까?
·
Programming/C
군대에서 C언어를 복습하다가 포인터와 배열의 관계에 대해 궁금한점이 생겨서 한 번 알아보았다.궁금한 점은 사진에 나와있는 코드를 실행해보고 생겼는데, '어째서 존재하지 않을 int arr[2][0]의 주소(메모리)에 접근이 가능한가?' 였다. 그리고 '접근이 가능하더라도 왜 그 값은 쓰레기 값이 아닌, int arr[1][1]의 주소에 4바이트를 더한 정상적인 주소값이 나오는지' 가 궁금했다. 이 결과를 보고 왜 그런지 알아보기 위해, 일단 sizeof 연산자를 이용해보았다. 하지만, 배열의 크기는 16바이트로 정상적인 값이 나왔다. 그리고 int arr[3][0]이나 다른 주소값에도 접근을 해보았지만 에러만 발생했다. 아는대로 왜 그런지 알아보려고 했지만 알 수 없어서 질문을 한 결과. 《 int ar..
입대 및 주니어 프론트 개발자의 회고
·
생각
5월 육군 운전병으로 입대해야 하는 걸, 굳이 6월 육군 전술 c4i운용으로 해서 6월 22일 자로 논산훈련소에 입대하게 되었다. 무엇보다 빨리 끝내고 나오고 싶어서 이 타이밍에 육군을 택했지만.. 아마 북한이나 육군 특성상 힘들 것 같다. 하지만, 조금이라도 컴퓨터와 관련 있는 분야에 가고 싶었기 때문에 후회는 없다... 생길수도 있다. 고등학교를 졸업하고 나서부터 지금까지 시간을 낭비하기 싫었기 때문에 프로그래밍에 몰두했었다. 특히, 프로그래밍 분야 중에서도 특히 프론트엔드 분야에 대한 공부를 했었다. 중학교 때는 게임개발자, 고등학교 때는 인공지능, 소프트웨어 개발자가 되고 싶었던 것 같다. 왜냐하면 그 당시에는 저런 분야에 관심이 많았었으니까. 지금 와서 저런 분야에 관심이 없어진 것도 아니고 프..
Typescript 알아보기
·
Programming/Typescript
Typescript 알아보기 Anders Hejlsberg가 개발을 주도한 Typescript는 Javascript의 대체 언어의 하나로써, Javascript(ES5)의 Superset(상위확장, 초집합) 이다. Javascript는 인터프리터 기반의 언어로써 실행과 동시에 렌더링 되는데, Typescript는 인터프리터 방식이 아닌 컴파일 후에 실행되는 컴파일 언어이다. (전통적인 컴파일 언어와는 차이가 있어 Transpile 이라는 용어를 사용하기도 한다.) Typescript는 정적 타이핑을 지원하며, ES6(ECMAScript 2015)의 Class, Module 등과 ES7의 Decorator 등을 지원한다. (Typescript는 정적 타입의 언어이기 때문에 디버깅 하기 쉽다는 장점이 있다...
컴파일(Compile) 언어, 인터프리터(interpreter) 언어, 트랜스파일러(Transpiler)
·
Reference/용어 사이트
transpiler 하나의 언어를 다른 형태의 언어로 변환해 주는 기능을 부각시키는 표현으로 compiler라는 표현보다 transpiler라는 표현을 쓴다. ( 번역이라는 말과 합쳐진 듯 하다 .) ex. TypeScript, Babel 프로그래밍 언어 기초 - 인터프리터(interpreter)언어와 컴파일(compile)언어 인터프리터 언어 (Interpreter) 인터프리터 언어는 실행 언어이다 그때그때 실행하여 확인이 가능하다. 실행 속도가 느리지만, 컴파일 과정을 거치지 않아 수정이 간단하고 빠르다 실행기를 통해서 borystoryblog.tistory.com 컴퓨터공학 10. 컴파일언어와 인터프리터언어 컴파일언어와 인터프리터언어 비교 fabl1106.github.io
React-Redux 개념 잡기 #1
·
Programming/React
소개 Redux는 상태(state) 관리 라이브러리이다. Redux는 컴포넌트들의 상태 관련 로직들을 다른 파일들로 분리시켜서 효율적으로 상태를 관리할 수 있다. 특히, 컴포넌트끼리 상태를 공유해야 할 때, 기존의 여러 컴포넌트를 거쳐 전달해야 하는 방식과는 달리 Store를 통해 쉽게 상태 값을 전달할 수 있다. Redux는 React 외에도 jQuery 혹은 Angular를 사용하는 애플리케이션에서도 사용할 수 있지만, 이 글에서는 React 기반으로 서술할 것이다. Redux는 글로벌 상태 관리에 효과적이다. 굳이 '글로벌 상태 관리'라는 말을 하는 이유는 굳이 Redux를 사용할 필요는 없기 때문이다. 간단한 애플리케이션이라면, Redux를 사용하지 않더라도 상태를 관리하는데 큰 어려움 겪지 않을..
앞으로..
·
생각
생활코딩 react를 다 듣고 나서 react에 대해서 든 생각은 복잡함이였다. 무엇보다 코드 가독성이 별로 좋지 않았다. 단점만 있는건 아니다. 일단 react를 왜 쓰는 지는 알 것 같다. 필요한 부분의 UI만 고쳐서 불필요한 rendering을 줄일 수 있다는 것과 코드의 유지, 보수가 간편했다. react에 대해서 앞으로 공부를 어떻게 할까 공부하다가 react trello를 만들어 보면 좋을 것 같다고 생각했는데, 만드는 과정에 redux가 있었다. 그래서 redux 공부를 조금 해보니 anti-redux라고 react만 이용하는 방식이 있는 것 같은데... 그럼 anti-redux 방식을 따라야 할 지, redux를 사용해도 될지 모르겠다. 그렇다고 생활코딩 react 강좌 하나 들었다고 re..
React Flux 란?
·
Programming/React
Flux란? Flux는 Facebook에서 클라이언트-사이드 웹 어플리케이션을 만들기 위해 사용하는 어플리케이션 아키텍쳐이다. 또는 애플리케이션에서 데이터를 다루기 위한 패턴이라고 할 수 있다. Flux 이전 방식(MVC)의 문제점 Facebook에서 React를 사용할 때, Flux이전에는 다음과 같은 방식으로 데이터를 처리하였다. 어떠한 Action이 입력되면 Controller는 Model이 지니고 있는 데이터를 조회하거나 업데이트 하며, 이 변화는 View에 반영된다. 사용자와의 상호작용(UI)이 뷰를 통해서 일어나기 때문에, 사용자의 입력(input)에 따라 뷰가 가끔씩 모델을 업데이트 할 수도 있다. 이러한 디자인 패턴은 작은 어플리케이션에는 큰 문제없이 작동한다. 하지만, Model과 Vie..