분류 전체보기
-
[Swift] 타입캐스팅(type casting)iOS/Swift 2022. 8. 24. 23:53
💡 스위프트의 타입 캐스팅은 C++과 다르다는 걸 이해하고 넘어가자!!! 이걸 모르고 공부하면 헷갈린다 C++의 형변환(타입 캐스팅) - 묵시적 형변환 컴파일 할 때 자동으로 형변환 된다. float a = 3.14; int b; b = a; // 3 - 명시적 형변환 개발자가 직접 타입을 명시해준다. float a = 3.14; int b; b = (int)a; // 3 Swift의 형변환(이니셜라이저) var a: Double = 3.14 var b: Int = Int(a) print(b) // 3 Swift는 기존 값(a)을 전달인자로 받는 이니셔라이저를 통해 새로운 인스턴스를 생성한다. 💡 스위프트의 타입 캐스팅 인스턴스의 타입 확인 자신을 다른 타입의 인스턴스인양 행세하기 1️⃣ 인스턴스의 타입..
-
[JS Deep Dive] 04. 변수Front-end/javascript 2022. 8. 23. 22:35
1️⃣ 변수란 무엇이고 왜 필요한가? 💡 컴퓨터는 아래 식을 어떻게 계산할까? 1 + 2 메모리 상의 임의의 위치(메모리 주소)에 1, 2 숫자 값이 각각 저장되고, CPU에서 값을 읽어들여 연산을 수행한다. 연산 결과로 생성된 숫자 3도 메모리 상의 임의의 위치에 저장된다. 😨 만약 연산 결과 3을 재사용하고 싶다면? 3이 저장된 메모리 공간에 직접 접근해야 하지만 오류 발생 확률이 높기 때문에 자바스크립트는 메모리 제어를 허용하지 않는다. 따라서 기억하고 싶은 값을 메모리에 저장하고, 저장된 값을 읽어들여 재사용하기 위해 변수 메커니즘을 사용한다. ⭐️ 변수 : 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름이다 변수를 사용하면 직접 메모리 주소를 ..
-
[100DaysOfCode] 30강Front-end/100DaysOfCode 2022. 8. 23. 18:43
Hi, JavaScript! 👋 변수(variables) 데이터를 담는 박스에 이름을 붙인 것 let age = 32; age라는 박스에 32 값이 들어있다 HTML 파일에 .js 파일 연동하기 실습 코드 // 큰따옴표, 작은따옴표 중 무엇을 써도 상관 없지만, 하나를 정하면 일관되게 사용해야 한다 // 따옴표는 시작과 끝을 명시해주는 역할을 하기 때문에, 문자열 안에서 출력해 사용하고 싶다면 역슬래시를 사용하면 된다 //value alert('"안녕하세요 저는 김연수입니다"'); //내장된 자바스크립트 명렁어, alert를 브라우저에게 전송 alert(24); //variable let greeting = "Hi, I'm Bonny🐰"; alert(greeting); let age = 24; alert..
-
[Swift] 상속 (Inheritance)iOS/Swift 2022. 8. 22. 23:08
💡 클래스는 메서드나 프로퍼티 등을 다른 클래스로부터 상속받을 수 있다! 자식 클래스: 상속받은 클래스 부모 클래스: 자식에게 특성을 물려준 클래스 기반 클래스: 다른 클래스로부터 상속을 받지 않은 클래스 클래스 상속 시 부모 클래스의 프로퍼티, 메서드 등을 재정의하거나, 자신의 기능을 추가할 수 있다 재정의(override) 부모 클래스로부터 물려받은 특성을 그대로 사용하지 않고 변경하여 사용하는 것 ⭐️ 새로운 정의 앞에 override 키워드 사용 Q. 재정의를 하고 난 뒤에 부모 클래스의 특성을 사용하고 싶다면? ⭐️ super 키워드 1️⃣ 프로퍼티 재정의 - 프로퍼티를 재정의하는 것은 프로퍼티 자체가 아니라, 프로퍼티의 접근자, 설정자, 감시자 등을 재정의하는 것이다 - 부모 클래스에서 읽기 ..
-
[100DaysOfCode] 27강 - 28강Front-end/100DaysOfCode 2022. 8. 21. 23:55
다양한 종류 text - 텍스트 한 줄 입력 필드 - default email - 모바일의 경우 최적화된 (@, .com 등) 키패드가 나타남 - 잘못된 이메일 형식 입력 시 브라우저에서 알림 number - 모바일의 경우 숫자 키패드가 나타남 - number의 경우 숫자 조절 화살표 버튼을 자동으로 생성하는데, step: "값"을 통해 버튼의 변화폭 조절 가능 password 입력하는 텍스트가 숨겨져서 보여짐 date 브라우저가 날짜 선택기를 오버레이해서 보여줌 radio 다양한 옵션들 중 하나를 선택할 수 있는 버튼 checkbox - yes / no "toggle" - 동의 file 유저가 파일을 선택할 수 있게 함 ... 다른 속성들은 브라우저마다 지원 유무가 다르기 때문에 참고 - name: 텍..
-
[Swift] 서브스크립트(subscript)iOS/Swift 2022. 8. 20. 23:45
서브스크립트 클래스, 구조체, 열거형 등의 타입의 요소에 접근하는 문법이다 별도의 설정자(setter)와 접근자(getter) 메서드를 구현하지 않아도 인덱스를 통해 값을 설정하거나 가져올 수 있다 서브스크립트 중복정의: 여러 개 구현 O -> 값의 타입을 유추해서 적잘한 서브스크립트를 선택하여 실행한다 매개변수의 타입과 반환 타입에 제한이 없다 ⭐️ subscript 키워드 - 읽고 쓰기 - 읽기 전용 서브스크립트 정의 문법 // 읽고 쓰기 subscript(index: Int) -> Int { get { } set(newValue) { } } // 읽기 전용 subscript(index: Int) -> Int { } 예시 코드 // School 클래스 서브스크립트 구현 struct Student { ..
-
[Mac/Github] 하나의 repository에 여러 개의 프로젝트 폴더 올리는 방법Github 2022. 8. 20. 02:31
이 방법을 찾아내기 전에는 직접 github에서 Add file을 눌러 파일들을 일일이 첨부해주는 식으로 업로드를 했는데, 문제점은 아무리 커밋 메세지를 남겨도 히스토리가 남지 않는다는 점이었다... 여러번의 삽질과 구글링 끝에 하나의 repository 안에 여러 프로젝트를 만들고, 폴더 별로 업로드하는 방법에 대해 알아내서 기록하고자 한다 1. 새로운 repository를 생성해준다 2. 여러 개의 프로젝트가 모여있는 '최상위 폴더' 에서 마우스 오른쪽을 눌러 해당 위치의 터미널을 연다 3. 순서대로 따라해준다 (README.md 파일을 추가해주지 않으면 branch -M 부분에서 오류가 난다) 4. ⭐️ 폴더들을 따로따로 add 해준 뒤에 커밋 메세지를 작성한다 예시) git add ./DiceGa..
-
[100DaysOfCode] 26강Front-end/100DaysOfCode 2022. 8. 18. 23:37
오늘 배운 내용 Form element HTML form은 user input을 수집하기 위해 사용된다. user input은 프로세스을 위한 서버로 보내진다 form 태그가 다른 input 요소들을 감싸주는 형태이다 (text fields, checkboxes, radio buttons, submit buttons, ...) form 태그로 감싸면서 검색 엔진과 장치들에게 입력 양식이 시작할 것이라 알려주는 역할을 수행한다 양식이 어떻게 제출될지 제어하는 역할을 수행한다 input element input element는 closing tag가 필요 없는 void element이다 💡 종류: text, radio, checkbox, submit, button action Specifies where t..