목록전체 (303)
처음부터 차근차근

만드는 과정 실행 결과 코드 import UIKit class ViewController: UIViewController { @IBOutlet weak var lblCal: UILabel! @IBOutlet weak var lblResult: UILabel! @IBOutlet weak var txtNum1: UITextField! @IBOutlet weak var txtNum2: UITextField! @IBOutlet weak var lblError: UILabel! @IBAction func btnCalType(_ sender: UIButton) { if (sender.tag == 0){ lblCal.text = "+" } else if(sender.tag == 1) { lblCal.text = "-..

Attribute attribute란, 선언(declaration)과 타입에 부가적인 정보를 제공하는 것이다. attribute의 종류는 2가지가 있다. 선언에 적용되는 것 ex) @discardableResult, @available(iOS 10.0, macOS 10.12, *) type에 적용되는 것 형태 @attribute명(매개변수) 예시 @discardableResult func test() { return "apple" } test() @discardableResult : 함수를 정의하고 리턴값을 사용하지 않으면 컴파일러가 에러를 보이는데, 이 에러를 띄우지 않도록하는 attribute. 함수 리턴값 꼭 사용안해도 되게 만든다. 인터페이스 빌더(Interface Builder)에서 사용하는 a..
순서코드(Sequence Code) 코드화 대상 항목에 일정한 순서로 번호를 부여한 코드이다. 즉 1, 2, 3, 4...이렇게 번호를 부여한다. 이 코드는 단순해서 이해하기 쉽고, 새로 생긴 항목에 번호를 추가하기 용이하다는 장점을 가지고 있지만 명확한 분류 기준이 없어 코드로 부터 얻을 수 있는 정보가 적고, 분류하기도 어렵다는 단점을 가지고 있다. 그리고 중간에 자료를 삽입하기도 어렵다. 예시 : 대기 번호(은행, 식당, 병원...등) 대기번호 001번, 대기번호 002번 구분 코드(Block Code) 공통적인 특징이 있는 것끼리 블록으로 구분하고, 각 블록에 번호를 부여한 코드이다. 공통적인 특성을 가지고 있는 것끼리 나눈 것이기 때문에 분류하기 쉽고, 데이터를 분류별로 찾기 편하다. 그리고 적..

config.php file 수정 $config['encryption_key'] = ''; // 32글자의 문자를 입력한다. $config['sess_use_database'] = TRUE; // 세션의 데이터를 데이터베이스에 저장한다. $config['sess_match_ip'] = TRUE; // 보안을 위해서 $config['sess_driver'] = 'database'; // session을 database에 저장하겠다. 디폴트 값은 files임. $config['sess_save_path'] = 'ci_sessions'; // 데이터베이스 테이블명 $config['sess_time_to_update'] = 6000; // session을 업데이트할 시간(6000은 100분) autoload.p..

로컬 환경에서 sftp 서버를 연결하는 방법이다. 1. 왼쪽 메뉴바에서 아래와 같은 아이콘을 누르고 표시한 것을 다운받는다.(install 클릭) * 필자는 이미 다운을 받아서 install 버튼이 보이지 않지만 처음 다운받는 것이라면 install 버튼이 보일 것이다. 2. 빈 로컬 폴더를 하나 만들고 vscode에서 그 폴더를 연다. 3. f1 키를 누르고 SFTP : Config를 누른다. 이렇게 하면 로컬 폴더 안에 .vscode 폴더가 자동으로 생성되고 그 안에 sfrp.json 파일이 만들어질 것이다. 4. sfrp.json 파일을 수정한다. name : 이 연결을 설명할 수 있는 이름 host : 연결할 서버 주소 port : 서버 포트 username : 연결할 서버의 username re..

sftp 연결을 한 뒤 파일의 내용을 수정하면 아래와 같은 error가 발생했다. 파일은 서버에서 잘 수정이 되는데 file을 찾을 수 없다는 오류가 계속 떴다. 오류의 이유는 Visual Studio Code 버전이 1.56.0으로 업그레이드 된 이후에 라이브러리 호환성의 문제 때문이었다. 해결 방법 Window 기준 C:\Users\user\.vscode\extensions\liximomo.sftp-1.12.9\node_modules\ssh2-streams\lib\sftp.js 위의 경로로 가서 sftp.js 파일을 연다. 이 파일에는 options.emitClose = false; 가 두 곳 있는데, 이 밑에다가 options.autoDestroy = false;를 추가해주면 된다. 이렇게 하면 N..

gitignore이란? git으로 버전 관리를 할 때 원격 저장소에 보안 상 올라가면 안되는 파일이 있다. 예를 들어 설정 파일, 데이터베이스 관련 문서, gradle파일 등이 있다. 이 파일들을 제외시키고 git의 원격 저장소에 올리는 방법이 바로 gitignore 사용하는 것이다. gitignore이란, 버전 관리에 제외시키는 파일들을 기록해놓는 파일이다. 즉, gitignore에 적혀있는 파일들은 git에 의해 추적되지 않는다. 그래서 gitignore 안에 있는 내용들은 파일에 변경이 있어도 git에서 무시한다. gitIgnore 파일 만들기 gitignore 파일을 만들 때는 최상위 폴더에다 만들어야한다. 최상위 폴더 바로 아래에 .gitIgnore이름으로 파일을 만들고, 그 안에다 추적을 제외..
사용자 페이지 게시글 작성 : 제목, 내용(CKEditor 사용) 작성 후 게시글 저장기능, 해쉬태그 기능, 게시글 수정/삭제 기능(글을 쓴 작성자만 가능하게) 회원가입 : 이름, 이메일, 비밀번호 사용해서 회원 가입 로그인 : 이메일, 비밀번호 사용해서 로그인 댓글 작성 : 회원 가입 후 댓글 작성 기능, 대댓글 작성 기능 마이페이지 : 나의 게시글 확인, 나의 정보 확인(email, 이름, 댓글 알림(email로)수신 여부), 회원 탈퇴 기능 About 페이지 : Blog 웹 애플리케이션 소개하는 글