はじめに
どうも。HAL東京IT学部WEB開発学科3年のYana氏です。
今回、初のHALアドベントカレンダーという事で、アプリケーション開発についての持論を語ろうかと思います。
まず、今から書くことについては、あくまでも個人的見解です。
一番ベストな方法は、
「自分に合ったやり方で、学習を進めていく」
のが、ベストです。
とは言っても、そう簡単に自分に合ったやり方は見つかるわけない。
なので、参考程度に聞いてください。
勿論、この記事読んで「いやぁ、無理だよ。俺には合わなそう....」とか思ったら、全然スルーしちゃってください。
アプリを作るということ
まず、僕が初期に作ったiOSアプリ作品をいくつか載せておきます。
3D地球儀
SwiftのScenekitを使って、作ったアプリです。その名の通り、3Dの地球儀です。
正直これ、めちゃめちゃコード短いです。
let sv = SCNView(frame: CGRect(x: 0, y: 0, width: w, height: h))
sv.showsStatistics = false
sv.allowsCameraControl = true
sv.autoenablesDefaultLighting = true
sv.backgroundColor = .black
view.addSubview(sv)
let ss = SCNScene()
sv.scene = ss
let cn = SCNNode()
cn.camera = SCNCamera()
cn.position = SCNVector3(x: 0, y: 0, z: 10)
ss.rootNode.addChildNode(cn)
let gm = SCNSphere(radius: 2.0)
gm.firstMaterial?.diffuse.contents = UIImage(named: "earth.jpg")
ss.rootNode.addChildNode(SCNNode(geometry: gm))
これで、終了です。
このコードについて、詳しい解説すると長くなってしまうので、要約すると、
・球体を生成して、3Dで作成されたメルカトル図法の世界地図の画像を貼り付けた
だけです。
英単語1400
英単語が1400語収録されているインプット英単語学習アプリ。
結構シンプルな機能(UIKitの部品のみ)を使って、構成しています。
2つ共通して言えることは、そこまで深く作り込まれたアプリじゃないということです。
アプリ開発を勉強するなら、まずゴールを決めるべき
アプリ開発の勉強に関してですが、
今の僕の考えとしては、技術本の内容を全部写経してから、アプリ開発するのは結構効率が悪いと思います。
(プログラミング言語に関しては、写経しながらじゃないと厳しいと思いますが。。)
まずは、何を作るか決めることが大事なのではないか、と思います。
アプリ開発の勉強のゴールが明確化されることで、モチベーションがかなりアップします。
とりあえず、簡単なアプリを企画してみてください。
後は、自分が作りたいものを作りながら、分からないことがあれば、技術本で調べるのがいいと思います。
結局、作っていくうちに、色々壁にぶつかって、技術本でインプットしていくので、自然と技術本の内容が入ってくるはずです。
アプリをどんどん企画する
簡単なアプリが出来たら、「次何作るか?」みたいな感じで、どんどん企画してみてください。
とにかく、自分の頭で、アプリ開発の勉強のゴールを作ることが大事です。
そして、もう一つ大事なことは、 徐々に作品のレベルを上げていく事です。
格段に、開発のレベルも向上すると思います。
楽しい開発ライフを送ろう!
やっぱりアプリケーション開発は、「楽しさ」あってこそだと思います。
楽しい、開発ライフを送ろう!