No Coding, No Life.
Swiftをはじめとして、モバイルアプリケーション開発に役立つ情報を発信中。
Vaporフレームワークによるサーバサイドアプリケーション開発や、MongoDBやRealmなどのデータベースに関する情報もどんどん掲載しています。

iOSアプリだけでなく、Swiftでサーバサイドアプリケーションも作ってみます。
- SwiftUIで作ったモーダルシートでデリゲートを使ってみる
SwiftUIで作ったViewにてデリゲート(delegate)を使い、呼び出し元に処理を委譲してみます。macOS向けに作ったアプリで、モーダルシートを閉じる処理と本の情報をmongoDBから削除する処理の2つを呼び出し元に実装してみます。 - macOSアプリでiOSアプリのようなListViewを実現する
SwiftUIが登場した今、MacOS向けのアプリでもiOS向けのアプリのようなListViewがもしかしたらできるのでは?昔MacOSアプリを作った時に表計算ソフトのような表が現れたのをみてがっかりしておりましたが、改めて挑戦してみました。 - レスポンスを返すPOSTメソッドもVapor4に対応させてみる
POSTメソッドもVapor4に対応させるべく書き換えていきます。EventLoopFutureの仕組みなど非同期処理のことをもっと深く知っておくべきでしたね。試行錯誤の末、エラーを出さずに処理を行うことができるようになりました。 - DBから取得した値をViewに載せて返してもらう(Vapor4対応)
POSTメソッドのときの構文と静的ページ取得のGETメソッドの構文の組み合わせで、動的ページ生成に対応してみたいと思います。データベースから取得したデータを一覧表示する時など、静的なページを返すよりも動的にページを生成することのほうが圧倒的に多いように思います。 - Vapor4に対応するべくVapor3のGETメソッドを書き換えてみる
Vapor3のプロジェクトをVapor4に対応させるべく、パッケージのアップデートやフレームワーク周りの書き換えをしてみました。その結果、routes.swiftはエラーの嵐です。公式サイトにもある通りメソッドがかなり変わっています。これを一つずつ潰していきます。

UI周りが格段に扱いやすくなりました。使いこなせるよう、日々格闘中です。
- 入力値に8%加算して返してくれるUIパーツを作ってみたい
テキストフィールドに入力された値に対して、何か処理をすることってよくある話だと思います。そこで、テキストフィールドに1文字入力されるたびに正の整数かどうかを判定し、8%加算して値を返してくれるUIを作ってみようと思います。 - SwiftUIで作ったモーダルシートでデリゲートを使ってみる
SwiftUIで作ったViewにてデリゲート(delegate)を使い、呼び出し元に処理を委譲してみます。macOS向けに作ったアプリで、モーダルシートを閉じる処理と本の情報をmongoDBから削除する処理の2つを呼び出し元に実装してみます。 - macOSアプリでSwiftUIによるモーダルシートを表示する
iOSアプリの手法を活用して、MacOSアプリでもSwiftUIによるモーダルシートを表示させてみます。お題として、選択した本のデータをモーダルシートに渡して表示し、削除するかどうかの確認ダイアログを作ってみようと思います。 - macOSアプリでiOSアプリのようなListViewを実現する
SwiftUIが登場した今、MacOS向けのアプリでもiOS向けのアプリのようなListViewがもしかしたらできるのでは?昔MacOSアプリを作った時に表計算ソフトのような表が現れたのをみてがっかりしておりましたが、改めて挑戦してみました。 - バックグラウンド処理の待機中にViewをぼかしたい
SwiftUIのViewにBlurを使ってぼかしをかけます。ぼかしたViewを重ねる方法と、ぼかしたいView自体のblurモディファイアを使ってぼかしをかける方法の2通りを試しました。

iPhoneやMacのアプリを作るなら、Swiftは必須です。日頃気になったことや発見したことを綴っています。
- 依存性の注入でクラス間を疎結合にしてRealmを使いやすくする
知っていたけれども使い所が分からず使ったことがなかった依存性の注入を試してみようと思います。Realmデータベースにデータの読み書きをするクラスとRealmのデータモデルが密結合になっているので、これを依存性の注入を用いて疎結合にしてみます。 - 入力値に8%加算して返してくれるUIパーツを作ってみたい
テキストフィールドに入力された値に対して、何か処理をすることってよくある話だと思います。そこで、テキストフィールドに1文字入力されるたびに正の整数かどうかを判定し、8%加算して値を返してくれるUIを作ってみようと思います。 - SwiftUIで作ったモーダルシートでデリゲートを使ってみる
SwiftUIで作ったViewにてデリゲート(delegate)を使い、呼び出し元に処理を委譲してみます。macOS向けに作ったアプリで、モーダルシートを閉じる処理と本の情報をmongoDBから削除する処理の2つを呼び出し元に実装してみます。 - macOSアプリでSwiftUIによるモーダルシートを表示する
iOSアプリの手法を活用して、MacOSアプリでもSwiftUIによるモーダルシートを表示させてみます。お題として、選択した本のデータをモーダルシートに渡して表示し、削除するかどうかの確認ダイアログを作ってみようと思います。 - macOSアプリでiOSアプリのようなListViewを実現する
SwiftUIが登場した今、MacOS向けのアプリでもiOS向けのアプリのようなListViewがもしかしたらできるのでは?昔MacOSアプリを作った時に表計算ソフトのような表が現れたのをみてがっかりしておりましたが、改めて挑戦してみました。

VaporアプリケーションからNoSQL系DBを扱う情報が少ない中、果たして使うことはできるのか?
- SwiftUIで作ったモーダルシートでデリゲートを使ってみる
SwiftUIで作ったViewにてデリゲート(delegate)を使い、呼び出し元に処理を委譲してみます。macOS向けに作ったアプリで、モーダルシートを閉じる処理と本の情報をmongoDBから削除する処理の2つを呼び出し元に実装してみます。 - レスポンスを返すPOSTメソッドもVapor4に対応させてみる
POSTメソッドもVapor4に対応させるべく書き換えていきます。EventLoopFutureの仕組みなど非同期処理のことをもっと深く知っておくべきでしたね。試行錯誤の末、エラーを出さずに処理を行うことができるようになりました。 - DBから取得した値をViewに載せて返してもらう(Vapor4対応)
POSTメソッドのときの構文と静的ページ取得のGETメソッドの構文の組み合わせで、動的ページ生成に対応してみたいと思います。データベースから取得したデータを一覧表示する時など、静的なページを返すよりも動的にページを生成することのほうが圧倒的に多いように思います。 - VaporアプリケーションでMongoDBのドキュメントを部分一致検索をしてみよう
WebページからVaporアプリケーションを通じてMongoDBのドキュメントの一覧を表示するところまでできました。今回は、タイトルの部分一致検索ができるようにしてみます。部分一致検索の絞り込みとページネーションの順序に注意が必要です。 - WebからMongoDBのドキュメントを更新したり削除したりしてみる
LeafテンプレートによるWebフォームから、MongoDBのドキュメントの更新や削除をしてみます。Formタグのmethod属性に使えるのはGETとPOSTのみなので、VaporアプリケーションのDELETEとPUTメソッドを少し修正して対応します。






















