大宮盆栽デイズ - Omiya Bonsai Days -

冗談めかす埼玉のファインマン

島を作る@コードを学ぼう2

変数や関数の名前を付けるのがヘタクソだと思い続けています。Playgrounds が一通り終わったら、コードについての本を読みたいと思います。

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

// 島を作る@コードを学ぼう2
let allCoordinates = world.allPossibleCoordinates
// Create two empty arrays of type [Coordinate].
// (訳:二つの「からっぽ」の配列を作りなさい
var islandArray: [Coordinate] = []
var seaArray: [Coordinate] = []

// 中心の座標が(6,6)なので、そことその周辺の
// 座標情報をislandArrayにアペンド(追加)する
// 4 < coodinate.column < 8, かつ、 4 < cocoodinate.row <8 の範囲
// それ以外の座標は「海」として seaArray にアペンドする
for coordinate in allCoordinates {
    if coordinate.column < 8 && coordinate.column > 4 && coordinate.row < 8 && coordinate.row > 4{
        // Append to island array.
        islandArray.append(coordinate)
    } else {
        // Append to sea array.
        seaArray.append(coordinate)
    }
}
// For your island array, place blocks.
for coordinate in islandArray {
    world.place(Block(), at: coordinate)
}

// For your sea array, place water.
for coordinate in seaArray {
    world.removeAllBlocks(at: coordinate)
    world.place(Water(), at: coordinate)
}

youtu.be