대학교/iOS프로그래밍기초

[iOS 프로그래밍기초] 2주차

ㅈㅣㄴ 2024. 9. 12. 15:26

 

맥 키보드

 

 

//
//  GameViewController.swift
//  FlappyBird
//
//  Created by Nate Murray on 6/2/14.
//  Copyright (c) 2014 Fullstack.io. All rights reserved.
//

import UIKit
import SpriteKit

extension SKNode {
    class func unarchiveFromFile(_ file : String) -> SKNode? {
        
        let path = Bundle.main.path(forResource: file, ofType: "sks")
        
        let sceneData: Data?
        do {
            sceneData = try Data(contentsOf: URL(fileURLWithPath: path!), options: .mappedIfSafe)
        } catch _ {
            sceneData = nil
        }
        let archiver = NSKeyedUnarchiver(forReadingWith: sceneData!)
        
        archiver.setClass(self.classForKeyedUnarchiver(), forClassName: "SKScene")
        let scene = archiver.decodeObject(forKey: NSKeyedArchiveRootObjectKey) as! GameScene
        archiver.finishDecoding()
        return scene
    }
}

class GameViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

        if let scene = GameScene.unarchiveFromFile("GameScene") as? GameScene {
            // Configure the view.
            let skView = self.view as! SKView
            skView.showsFPS = true
            skView.showsNodeCount = true
            
            /* Sprite Kit applies additional optimizations to improve rendering performance */
            skView.ignoresSiblingOrder = true
            
            /* Set the scale mode to scale to fit the window */
            scene.scaleMode = .aspectFill
            
            skView.presentScene(scene)
        }
    }

    override var shouldAutorotate : Bool {
        return true
    }

    override var supportedInterfaceOrientations : UIInterfaceOrientationMask {
        if UIDevice.current.userInterfaceIdiom == .phone {
            return UIInterfaceOrientationMask.allButUpsideDown
        } else {
            return UIInterfaceOrientationMask.all
        }
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Release any cached data, images, etc that aren't in use.
    }
    
}

https://bbiguduk.gitbook.io/swift

 

다음 내용은 컴퓨터가 멈춰서 다 날라갔습니다...

 

데이터 타입설명

Int 정수형 데이터 타입. 32비트 또는 64비트 정수를 표현.
UInt 부호 없는 정수형 데이터 타입. 32비트 또는 64비트 부호 없는 정수를 표현.
Float 단정도 부동 소수점 숫자. 32비트 크기.
Double 배정도 부동 소수점 숫자. 64비트 크기.
Bool 불리언 타입. true 또는 false 값을 가짐.
String 문자열 데이터 타입. 유니코드 문자 시퀀스를 표현.
Character 단일 문자 데이터 타입.
Array 동일한 타입의 값들을 순서대로 저장하는 컬렉션.
Dictionary 키-값 쌍으로 데이터를 저장하는 컬렉션.
Set 중복되지 않는 값들의 집합.
Optional 값이 있을 수도 있고 없을 수도 있는 타입. nil을 허용.
Any 모든 타입을 수용할 수 있는 타입.
AnyObject 모든 클래스 타입을 수용할 수 있는 타입.

 

import UIKit

var greeting = "Hello, playground"

var x : Int = 10
print(x)

 

 

 

웹 플랫폼 웹 브라우저를 통해 접근할 수 있는 애플리케이션 및 서비스. HTML, CSS, JavaScript로 개발.
모바일 플랫폼 스마트폰 및 태블릿에서 실행되는 애플리케이션. iOS, Android 등이 포함됨.
데스크톱 플랫폼 개인용 컴퓨터에서 실행되는 애플리케이션. Windows, macOS, Linux 등이 포함됨.
게임 플랫폼 비디오 게임을 실행하는 시스템. 콘솔(PlayStation, Xbox), PC, 모바일 게임 등이 포함됨.
클라우드 플랫폼 클라우드 기반 서비스 및 애플리케이션을 제공하는 플랫폼. AWS, Google Cloud, Microsoft Azure 등이 포함됨.
IoT 플랫폼 사물인터넷 기기를 관리하고 연결하는 플랫폼. 예: AWS IoT, Google Cloud IoT.
임베디드 플랫폼 특정 기능을 수행하기 위해 하드웨어에 내장된 소프트웨어. 예: 자동차, 가전제품 등.
VR/AR 플랫폼 가상 현실(VR) 및 증강 현실(AR) 애플리케이션을 위한 플랫폼. Oculus, HoloLens 등이 포함됨.
블록체인 플랫폼 분산 원장 기술을 기반으로 한 플랫폼. Ethereum, Hyperledger 등이 포함됨.
소셜 미디어 플랫폼 사용자 간의 상호작용을 촉진하는 온라인 플랫폼. Facebook, Twitter, Instagram 등이 포함됨.

 

print(Int.max) //9223372036854775807

 

 

프로그래밍 언어큰따옴표 (" ") 용도작은따옴표 (' ') 용도

Python 문자열을 정의하는 데 사용. 이스케이프 문자 지원. 문자열을 정의하는 데 사용. 이스케이프 문자 지원.
JavaScript 문자열을 정의하는 데 사용. 템플릿 리터럴과 함께 사용 가능. 문자열을 정의하는 데 사용.
Java 문자열을 정의하는 데 사용. 문자(char)를 정의하는 데 사용.
C# 문자열을 정의하는 데 사용. 문자(char)를 정의하는 데 사용.
C/C++ 문자열을 정의하는 데 사용. 문자(char)를 정의하는 데 사용.
PHP 문자열을 정의하는 데 사용. 변수 치환 가능. 문자열을 정의하는 데 사용. 변수 치환 불가.
Ruby 문자열을 정의하는 데 사용. 이스케이프 문자 지원. 문자열을 정의하는 데 사용. 이스케이프 문자 지원.
Swift 문자열을 정의하는 데 사용. 문자(char)를 정의하는 데 사용.
Go 문자열을 정의하는 데 사용. 문자열을 정의하는 데 사용.

 

var x = 10
print("x=\(x)") //x=10

 

프로그래밍 언어별 문자열 보간 방법

Python f-string: f"Hello, {name}!"
JavaScript 템플릿 리터럴: `Hello, ${name}!`
Java String.format("Hello, %s!", name) 또는 String의 MessageFormat 사용
C# $"Hello, {name}!"
Ruby "Hello, #{name}!"
Swift "Hello, \(name)!"
Go fmt.Sprintf("Hello, %s!", name)
PHP "Hello, {$name}!" 또는 heredoc 사용
Kotlin "Hello, $name!"
Rust format!("Hello, {}!", name)

 

 

x code 에서 도움말을 보는 방법 : 해당 단어를 alt 키를 누르고 클릭한다

 

 

다른 방법 : 구글링한다.

궁금한 단어 swift

apple developer

 

 

여기에서 확인 가능!