Django & React – Full Stack Web App Tutorial

이 예제 프로젝트를 가지고 설명한다.

https://www.youtube.com/playlist?list=PLzMcBGfZo4-kCLWnGmK0jUBmGLaJxvi4j

이 예제 프로젝트는 react를 django app으로 만들어서 관리한다.

위 그림을 보면 django app관련 화일과 react관련 파일, 폴더가 혼재 되어 있는 것을 알수 있다. 

package.json은 npm 관련 화일이며 npm 명령어를 통해 설치한 라이브러리 (디펜던시) 목록을 보여준다. 또한 스크립트 명령어로 실행되는 라이브러리를 확인할수 있다.

package.json화일 내용은 위와 같으며

npm run dev를 실행하면 webpack 라이브러리가 작동하는 것을 알수 있다.

webpack 라이브러리는 여러 js화일을 종합해 하나의 js화일을 만든다.

아래 그림을 보면 /static/frontend에 종합된 화일을 출력하는 것을 볼수 있다.

이 예제에서는 index.js를 가지고 main.js를 만든다.

위의 main.js는 django templates폴더의 index.html 안에서 <script> 를 통해 들어가는 것을 알수 있다. 

webpack 이 만드는 main.js는 index.js를 가지고 만드는데 그 내용,위치는 아래와 같다.

app.js에서 만들어진 것을 알수 있다.

/components/App의 내용은 아래와 같다.

original source : https://youtu.be/zPVLRvpzOOU

settings 라는 폴더를 만들어 각 상황에 맞는 setting 파일을 만든다.

DJANGO_SETTINGS_MODULE 환경변수에 정의되어있는 기존의 경로를 변경한다.

original source: https://youtu.be/vFfbb1bfvhA

image

openFileInput()은 context의 method이다. 내장 메모리내의 package의 공간에 접근하는 경우외에는 android에서 제공되는 File class나 file path를 FileInputStrem()에 construct arg로 전달해서 FileInputStrem obj를 만든다.

openFileInput -> InputStreamReader -> BufferedReader -> StringBuilder를 이용해서 읽어낸다.

===========================================================

image

MODE_PRIVATE이 내장메모리에 쓸때 기본으로적용되는 mode이다. 

MODE_APPEND, MODE_WORLD_WRITEABLE등이 있다.

참조) android docs   https://developer.android.com/reference/android/content/Context#MODE_PRIVATE

openFileOutput -> BufferedWriter 를 이용해 파일을 쓴다.

===========================================================

===========================================================

===========================================================

===========================================================

===========================================================

모니터하는 path는 미리 존재하고 있어야 하므로 보통 실제 존재하는지 확인하고 observing 작업을 한다. recursive하게 observing하지는 않는다.

===========================================================

===========================================================

===========================================================

===========================================================

original source : https://youtu.be/h71-G8T73Hk

===========================================================

===========================================================

===========================================================

===========================================================

===========================================================

context obj를 이용하여 내외장에 있는 내 자신 app package 폴더에 접근할수 있다.

===========================================================

내자신 app관련 파일이 내외장 폴더에 존재하는 예시를 보여주고 있다.

===========================================================

Environment obj를 통해 접근 가능하다.

===========================================================

===========================================================

Saving and reading files in the internal storage

Saving and reading files in the internal storage

Is there a way to get line number and function name in Swift language?