2020年6月1日月曜日

速習TypeScriptレビュー

表題のレビューをします。

今までJavaScriptはずっと使っていましたが、そろそろTypeScriptにも手を出さないと・・・といった感じでした。

本書はJavaScriptには慣れているが、TypeScriptは触ったことがない、という方を対象にしています。
内容はJavaScriptとは書き方が違っている部分を取り上げて、短いサンプルを例としています。

 TypeScriptでソースコードを書く

JavaScriptに変換

実行

 上記の流れでプログラムを作成するため、当然ですがコンパイルする時にエラーにならなくても実行時にエラーが 出た場合にはJavaScriptのどの部分でエラーになっているか見なくてはいけないため、JavaScriptの知識は必須です。
そのため、本書の内容もJavaScriptを理解している事を前提に書かれています。

習熟者にとっては無駄な部分が少なく、ざっと短時間でTypeScriptを書けるようになるのでかなりいいと思います。 これ一冊で大部分をカバーできているのではないでしょうか。 (tsconfig.jsonについて調べてたら、最後に書いてありました・・・)
これからTypeScriptを書いてみよう、という方は一度サラッと読んでおくといいのではないでしょうか。

あとはreadonlyについて補足を
配列やタプルは参照型なので、constを使ってもそのままではデータの変更ができてしまいます。 これは本書で書かれているとおりです。
そこで、以下のように書く事でデータの変更を防ぐことができます。

const DATA: readonly number[] = [1, 2, 3, 4];
const TUPLE: readonly [number, string, boolean] = [1, 'val1', true];

これでデータの追加、変更、削除を行おうとするとエラーになります。
残念ながらこの方法は連想配列では使えないようですが

2020年3月19日木曜日

作って楽しむiPhoneアプリ超入門レビュー

表題の本をレビューします。

自分のスキルはオブジェクト指向言語は色々やっているが、Swiftは他の本で勉強していて躓いたまま、といった感じでした。(SwiftではなくXcodeの使い方で)

本書は全くのプログラミング初心者にお勧めできる本だと感じました。
プログラミング初心者が躓きそうなところを丁寧にカバーしていました。

他の言語経験者は少し物足りなさを感じるとは思いますが、私はこの本を読み進めたあとで前述の本を読むと躓いた部分も進めることができました。
なので最初のとっかかりとしてはお勧めできます。
集中して進めれば二日あれば終わるでしょう。

ひとまず画面遷移、リスト表示、Json受信、画像の取得など一通りの事は出来るようになるので、終わったらWebで情報を調べながら理解を深めるのもいいです。

微妙に気になった部分があったので、そこだけ・・・

P.96
グローバル変数→インスタンス変数だと思います。

P.207
initメソッドでのインスタンス変数への代入がselff付きと無しで初心者にはどういう意味かわかりづらいかもしれない。

次に、私が引っかかって著者に確認して解決した事があるので書いておきます。

ボタンなどのラベルがXcode上で変更してもシミュレーターや実機で反映されなくなった場合、Xcodeのメニューから「 Product」ー「Clean Build Folder」を選ぶ事でキャッシュがクリアされ、次回ビルドした際に変更が反映されるようになります。

この本は初心者でも分かりやすくするために最小限必要になる知識に抑えて書かれているため、詳しい言語仕様を知りたければAppleのデベロッパードキュメントを調べるか、「Swift実践入門」を読むといいと思います。
Swift実践入門はSwift4対応ですが、特に問題はないでしょう。(私も細かいところまでは確認していないので断言はできませんが)
「詳解Swift」は恐らくこの本を読んだばかりのレベルでは辛いです。

結論です。
まず最初に買う本として最適!
新入社員への教育にもとてもいいです。
これからiOS開発をやってみたい・・・という方は是非手にとってみましょう。