가로세로 배치하는 법과 Scaffold

** ctrl + space로 자동완성 잘써라.. 외우지말고

 

1. 기본 앱의 구성 (Top, Body, Bottom)

 

2. 위젯 가로 배치

 

3. 위젯 세로 배치  : Row -> Column으로 변경

 

4. 정렬

  가로기준 가운데 정렬 :

mainAxisAlignment: MainAxisAlignment.center,

  가로기준 가운데 정렬 1줄 꽉 차게 퍼뜨려서 배치

mainAxisAlignment: MainAxisAlignment.spaceEvenly,

  가로기준에서 세로 정렬?

crossAxisAlignment: CrossAxisAlignment.center,

 

! 숙제 코드

'플로터(Flutter) > 기본' 카테고리의 다른 글

코딩애플 Flutter 0강 (세팅)  (0) 2022.12.27
코딩애플 Flutter 5강  (0) 2022.12.21
코딩애플 Flutter4강  (0) 2022.12.21
코딩애플 Flutter 3강(박스 다루기)  (0) 2022.12.21
코딩애플 Flutter 1강  (0) 2022.12.21

 

4가지 위젯

1. 텍스트 위젯

Text('Hello')

 

2. 아이콘 위젯

Icon(Icons.shop)

 

3. 이미지 위젯

  가. 이미지 보관용 assets폴도 만들기

  나. pubspec.yaml에서 assets폴더 등록하기

  다. Image.asset('경로')     예) Image.asset('flower.png')

 

4. 박스 위젯

  가. Container()

  나. SizedBox()

  다. Center()

  라. 스타일은 width, height는 단위가 LP로 50LP는 1.2cm를 의미 // color: Colors.blue

 

참고강의: https://www.youtube.com/watch?v=mLQ-ehf3d6Y&list=PLfLgtT94nNq1izG4R2WDN517iPX4WXH3C&index=3

 

 

C++을 사용하고 있고 cin/cout을 사용하고자 한다면,  ios_base::sync_with_stdio(false)와 cin.tie(NULL)를 둘 다 적용해 주고, endl 대신 개행문자(\n)를 쓰자. 단, 이렇게 하면 더 이상 scanf/printf/puts/getchar/putchar 등 C의 입출력 방식을 사용하면 안 된다.

 

Java를 사용하고 있다면, Scanner와 System.out.println 대신 BufferedReader와 BufferedWriter를 사용할 수 있다. BufferedWriter.flush는 맨 마지막에 한 번만 하면 된다.

 

Python을 사용하고 있다면, input 대신 sys.stdin.readline을 사용할 수 있다. 단, 이때는 맨 끝의 개행문자까지 같이 입력받기 때문에 문자열을 저장하고 싶을 경우 .rstrip()을 추가로 해 주는 것이 좋다.

 

 

아래 정보는 백준온라인 게시글을 참고한 것입니다.

출처: https://www.acmicpc.net/blog/view/56

 

참고로 mmap쓰는 방법은 아래 사이트 참고하세요

https://doocong.com/algorithm/fast-input-mmap/

 

 

소수점으로 표현하기 위해서는 실수 자료형(float) 나누기 연산( / )을 해야한다.

 

cout.precision(n);

- n자리 수까지 소수점을 표현한다.

- n+1자리에서 반올림하여 n자리를 맞춘다.

 

cout<<fixed;

- 4.2 / 2.1의 결과는 2이다. 이럴때는 precision옵션을 줘도 딱 2만나온다.

- 그래서 강제로 소수점이하 몇자리를 표현할 때 사용한다.

 

예시)

cout<<fixed;

cout.precision(3);

cout<<4.0/2.0<<endl;

 

결과: 2.000

 

 

관련문제(출처: 백준온라인저지)

https://www.acmicpc.net/problem/4344

 

 

* 필자는 DSM 6.2버전을 기반으로 설치하였다. 만약 7.X버전인 경우에는 본인의 글과 글 하단의 참고 1을 같이 확인해서 해결하시면 될 것 같다.

 

1단계 설치:  우선 패키지 센터에서 필요 패키지를 설치한다.

  1) Web Station설치

  2) Apache HTTP Server 2.X 버전 설치

  3) PHP 7.X 설치(자신에게 필요한 버전으로)

  4) MariaDB 10설치 (5버전도 상관없을 듯?)

  5) phpMyAdmin 설치

 

2단계 Web Station세팅

  1) Web Station열기

  2) 상태창에서 apache와 php가 설치되었는지 확인

  3) 일반 설정에서 백엔드 서버와 PHP를 잡아줌

  4) PHP 설정에서 원하는 php버전을 선택하고 편집을 눌러준다.

    - 설정창이 뜨면 아래 이미지처럼 모두 체크한다. 확장은 모두 체크하면 됨

  5) 가상호스트선택 후 생성

    - 호스트 이름은 추가할 외부 도메인을 쓰는 것 같은데, 필자는 일단 나스접속할 때 사용하는 도메인(퀵 커넥트에서제공하는)을 입력하였음//(외부도메인안쓸거면 굳이 입력하지 않아도 되려나하는 고민이 되는데 확실치는 않음 그냥 자기가 사용하는 도메인 쓰자..)

    - 포트 체크

    - 문서 루트는 호스팅할 위치를 찾으면되는데, 많은 프로젝트를 하실 분은 web폴더에 별도의 폴더를 만들어서 진행하면 되고 필자는 일단 하나만 호스팅할거라 제일 상위 폴더인 web을 지정하였음(이해가 어려우면 파일스테이션으로 web폴더에 가보면 index.html이 있을 겁니다.)

    - 백엔드 서버와 php도 아파치로 세팅

    - 참고로 php에 onyou라고 되있는건 4번) php설정에서 프로파일 이름을 onyou라고 바꿔서 그렇습니다. 여러분은 아마 Default Profile이라 뜨실 듯

3단계 FTP(기본은 21번포트)와 HTTP(기본은 80번포트, HTTPS는 443포트) 포트들을 포트포워딩하기

  1) FTP 확인 및 포트포워딩하기

    - 사실 나스 쓰시는분들은 대부분 FTP세팅은 다 되어있으시겠지만 혹시나 해서 간단히 정리해본다.

    - 제어판 -> 파일 서비스 -> FTP에 가보면 자신의 FTP포트가 있을 것이다. 없다면 세팅하셔야함

    - 필자는 iptime공유기를 사용하고 있어서 iptime공유기를 기준으로 설명할 것이다.

    - 포트포워드를 설정할 때 규칙이름은 자유, 내부 IP주소는 NAS가 물려있는 IP주소를 써야한다.

    - 외부 포트는 21~21, 내부 포트 21~21을 입력하고 저장해준다.

    - 그러면 외부에서 21번 포트로 FTP서비스를 이용하려고하면 공유기 내부에 있는 NAS의 21번 포트로 연결해줘서 나스의 FTP서비스를 사용할 수 있다.

 

  2) HTTP 확인 및 포트포워딩하기

    - 메인메뉴(왼쪽상단버튼)를 누르면 EZ-Internet이 있는 이 것을 통해 HTTP서비스의 80번포트에 대한 외부 액세스를 허용해야한다.(DSM 6.2기준 , 만약 DSM7의 경우에는 제어판->외부 액세스->라우터 구성에서 라우터 설정을 해야함)

    - 다음을 눌러주다보면 내장 응용 프로그램이 나오는데 내가 사용할 서비스(포트80)를 체크하고 다음을 눌러주고 하라는 거 다 하도록 한다.

    - 그리고 나서 제어판 -> 외부 액세스 -> 라우터 구성에 보면 web Station이 80번 포트에 잡혀있는 것을 볼 수 있다. 활성화가 안되있다면 활성화를 시켜주자

    - 우리는 이 80번 포트도 포트포워딩을 해줘야한다. (내부 IP주소는 나스 내부 IP를 입력) 아래 그림 참고

  3) 웹서버가 잘 열렸는지 확인하기

    - 자신의 도메인주소를 쳐보자. 안된다면 자신의 도메인주소에 포트번호 80(ex-abcde.i234.me:80)을 붙여서 접속해보자. 처음보는 이상한 webstation뭐시기 파란화면이 뜰 것이다. 뜬다면 잘 연결된 것이다.

 

4단계 데이터 베이스 접속하기

  1) phpmyadmin접속

    - 데이터 베이스는 phpmyadmin을 설치하였기 때문에 web폴더에 가면 phpmyadmin폴더가 있을 것이다.

    - http://abcde.i234.me/phpMyAdmin/

    - http://abcde.i234.me:80/phpMyAdmin/

    - 위 두 예시처럼 자신의 도메인에 phpMyAdmin/을 붙여서 접속해보자 그럼 로그인 주소가 뜰 것이다.

    - 필자는 마지막에 /를 안붙이면 접속이 잘 안되던데... 혹시 모르니 접속이 안되면 꼭 마지막에 /를 붙여보길 바란다.

 

  2) phpmyadmin 계정 생성

    - 아.. 위 과정을 거치면서 어디선가.. db접속 암호를 입력했던 것 같은데 어디서 했는지 기억이안난다...;;

    - 어쨌든 우리는 위 주소를 입력하면 아래와 같은 로그인 페이지로 접속이 된다.

    - 우선 사용자명은 root, 암호는 어디선가 입력했던 그 암호를 입력해준다..;;

    - 들어가면 아래와 같은 화면이 나올 텐데 DB는 만들지말고 관리할 사용자 계정을 바로 만들자

    - 사용자 계정을 누르면 중간 쯤에 사용자 추가가 있을 것이다. 추가를 누르자.

    - 사용자명은 우리 방법에서는 DB명이자 사용자 아이디가 될 것이므로 적당한 것을 써준다.

    - 호스트명은 localhost

    - 암호도 입력해주고 , 암호 생성은 건들지말자.

    - 그리고 동명의 데이터베이스를 생성하고 모든 권한을 부여 체크

    - 아래 전체적 권한 모두 체크도 체크

    - 그리고 나서 새로 만든 계정으로 로그인을 해보자.

5단계 비쥬얼스튜디오코드(VSC)에서 서버 원격 접속하기

  1) vsc에서 ftp-simple 익스텐션 설치

  2) F1누른 후 ftp-simple config찾아서 열기

  3) json형태의 config파일 작성

    - name은 편한걸로 적어주기  

    - host는 자신의 http접속 도메인을 적어준다. abcde.i234.me  처럼

    - port는 FTP포트를 쓰는데 건들지 않았다면 21번임

    - username은 나스 접속 아이디

    - password는 나스 접속 패스워드

    - confirm은 false로

  4) F1누른 후 ftp-remote찾아서 열고 자신이 작성한 name을 누르면 아래와 같은 화면이 나올 것이다

그럼 web를 누르고 . Current directory:/ 를 눌러주면 FTP연결이 끝난다.

 

유의! 이렇게 공유는 하지만 사실 내가 다음에 세팅할 때 참고하기 위해 작성한 글이라 이해하기 어려울 수 있다.

모두 세팅에 성공하시길 빈다!

 

 

 

참고

1. https://kb.synology.com/ko-kr/DSM/tutorial/How_to_host_a_website_on_Synology_NAS

 

Synology NAS에서 어떻게 웹사이트를 호스팅합니까? - Synology 지식 센터

 

kb.synology.com

2. https://leey99.tistory.com/26

 

시놀로지 NAS 웹서버 APM 구축

오늘 저희 사무실에 시놀로지 DS218 NAS가 도착해서 웹서버로 쓰려고 세팅했어요. 우선 [패키지 센터]에서 웹서버 관련 패키지를 설치하세요. 아래 순서대로 설치하세요. 1. Web Station 2. Apache HTTP Serv

leey99.tistory.com

3. https://webmini.tistory.com/915

 

[나스]시놀로지 NAS에 웹서버 구축하기 1탄(필수 패키지 설치)

시놀로지 NAS에 웹서버 구축하는 방법입니다. (1탄) 패키지 센터에서 필수 패키지 설치 나스에 접속해서 '패키지 센터'에서 아래 패키지들을 설치합니다. Web Station, Apache HTTP Server, PHP, MariaDB, phpMy.

webmini.tistory.com

3번자료는 위 915번글과 함께 916번글, 918번글, 919번글도 같이 참고하길 바랍니다.

 

 

 

이 문제는 pip 버전과 기존 패키지 버전이 맞지 않아 발생할 확률이 높음

 

 

[해결책 1] 실수로 pip나 사용하고자 하는 패키지를 업그레이드 했다면 원래 버전으로 다운그레이드 해서 맞추면 됨(requirements.txt)파일로 프로젝트별 버전을 잘 관리했다면 뭐 지우고 그 버전을 다시 깔면 될 듯?

 

[해결책 2]

최신버전을 써도 상관없다면 

python -m pip install --upgrade pip

python -m pip install --upgrade [패키지]

둘다 최신으로 업데이트 해서 해결해도됨..

 

=> 과거에 진행했던 프로젝트 버전은 왠만하면 건들지말자...(이유없이 업그레이드 노노!!)

 

참고

https://smorning.tistory.com/394

 

 

사건발생: 1달 만에 열어서 실행해본 프로젝트에서 계속 패키지가 없다고 설치하라고 나옴;;;

원인발견: 예전에 한 번 프로젝트 경로를 바꾸고 폴더 이름을 바꿔서 activate.bat파일에 경로가 예전 경로로 되어 있음..

그래서 activate.bat파일 열어서 저 경로를 현재 바뀐 경로대로 수정해서 다시 실행하니 잘 됨!!

 

 

참고

https://studyprogram.tistory.com/256

 

 

1. color Script 사용하기

https://colorscripter.com/

 

Color Scripter

Simple & Flexible Syntax HighLighter

colorscripter.com

2. 위 사이트에 코드를 복붙하면 거의 알아서 언어를 감지한다.

3. 오른쪽 하단에 있는 HTML로 복사 클릭해서 ctrl+c복사

4. 글쓰기 사이트에서 html보기로 들어가서 복사한 것 붙여넣기 끝~

 

아래는 예시

1
2
3
4
5
6
def test(**kwargs):
    print(type(kwargs))
    for k, v in kwargs.items():
        print(k, v)
 
test(a=1, b=2, c=3)
cs

 

참고

https://devpouch.tistory.com/121

'컴퓨터 일반' 카테고리의 다른 글

VSC + github 연동  (0) 2022.08.28

+ Recent posts