LoginSignup
1
0

More than 5 years have passed since last update.

アプリケーション開発の勉強について思うコト。

Last updated at Posted at 2018-12-23

はじめに

どうも。HAL東京IT学部WEB開発学科3年のYana氏です。
今回、初のHALアドベントカレンダーという事で、アプリケーション開発についての持論を語ろうかと思います。

まず、今から書くことについては、あくまでも個人的見解です。

一番ベストな方法は、
自分に合ったやり方で、学習を進めていく
のが、ベストです。

とは言っても、そう簡単に自分に合ったやり方は見つかるわけない。
なので、参考程度に聞いてください。

勿論、この記事読んで「いやぁ、無理だよ。俺には合わなそう....」とか思ったら、全然スルーしちゃってください。

アプリを作るということ

まず、僕が初期に作ったiOSアプリ作品をいくつか載せておきます。

3D地球儀

スクリーンショット 2018-11-03 13.39.46.png

SwiftのScenekitを使って、作ったアプリです。その名の通り、3Dの地球儀です。
正直これ、めちゃめちゃコード短いです。

earth.swift
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

スクリーンショット 2018-07-02 13.15.33.png

英単語が1400語収録されているインプット英単語学習アプリ。
結構シンプルな機能(UIKitの部品のみ)を使って、構成しています。

2つ共通して言えることは、そこまで深く作り込まれたアプリじゃないということです。

アプリ開発を勉強するなら、まずゴールを決めるべき

アプリ開発の勉強に関してですが、
今の僕の考えとしては、技術本の内容を全部写経してから、アプリ開発するのは結構効率が悪いと思います。
(プログラミング言語に関しては、写経しながらじゃないと厳しいと思いますが。。)

まずは、何を作るか決めることが大事なのではないか、と思います。
アプリ開発の勉強のゴールが明確化されることで、モチベーションがかなりアップします。
とりあえず、簡単なアプリを企画してみてください
後は、自分が作りたいものを作りながら、分からないことがあれば、技術本で調べるのがいいと思います。
結局、作っていくうちに、色々壁にぶつかって、技術本でインプットしていくので、自然と技術本の内容が入ってくるはずです。

アプリをどんどん企画する

簡単なアプリが出来たら、「次何作るか?」みたいな感じで、どんどん企画してみてください。
とにかく、自分の頭で、アプリ開発の勉強のゴールを作ることが大事です。
そして、もう一つ大事なことは、 徐々に作品のレベルを上げていく事です。
格段に、開発のレベルも向上すると思います。

楽しい開発ライフを送ろう!

やっぱりアプリケーション開発は、「楽しさ」あってこそだと思います。
楽しい、開発ライフを送ろう!

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0