Размер видео: 1280 X 720853 X 480640 X 360
Показать панель управления
Автовоспроизведение
Автоповтор
これだけレベルの高い方が私のような初心者の気持ちが理解できてるって感心してしまいます。共感できることがたくさんあります。
初心の時の気持ちを大切にして、動画を作成しています。時間がかかっても、言語化しています。解説はかなり手間がかかるので、世の中の媒体では、プログラムを書ける人の脳の働きについては、省かれています。その辺がわかってこそ、わかったということだと考えています。プログラムをやってみようとした、始めのドキドキするような、気持ち、夢をわすれないでほしいなと思います。
デザインパターン初心者です💦とても参考になりました!ありがとうございます!ゲームが会社の入社テストで、デザインパターンについて出題されるのですが、どれ位の理解度で挑んだら良いかアドバイスなどあればありがたいです🙇♂️
高評価ありがとうございます。ゲーム会社の入社テストなら、目的はC++かC#あたりのオブジェクト指向プログラムの力量はどのくらいかを図ることでしょうね。意外と、できる人から見ると、少しの質問の回答で力量は大体見抜けてしまいます。なので、今からのテスト対策は、「コードレベル」でデザインパターンを「平易な自分の言葉」で、「使い道と構造」を説明できるようにしておけばいいかと予想します。そのための準備は、[ゲームの開発環境 デザインパタン]→例えば[Unity factory]で検索すると、サンプルコードが出てくるので、それを見ながら、使い道と構造を理解するのを何個かやってみるといいと思います。デザインパターン23のうち、使えそうなサンプルコードのものに絞るのも手でしょうかね。デザインパターンはテンプレートですので、ポイントは、「使い道と構造」です。ゲーム会社なら、デザインパターンの他に、コルーチンやクーロンやコールバックあたりの基本もチェックしたほうが良さそうです。
@@nekopro_firesoft 早い返信ありがとうございます!本当に勉強したことないところだったので、ありがたいです😭是非参考にさせて貰います‼︎
実践的!
シングルトンパターンはアンチパターンと言われることが多いです。グローバル変数と実質的に同じ、マルチスレッドプログラミングでバグが出やすいなどの問題があります。使うのはLogger周りでしょうか。
既にフレームワークやライブラリ内で、オブジェクト自体がシングルトンとして設計されている場合が多いため、ここ数年、自分でシングルトンを設計する機会は少なくなってきたと感じます。やみくもに変数を同期性のある共通変数にするのは、適切ではありません。Loggerも同様ですが、特に独自の機能が必要で、かつ実装箇所が分散している場合に、シングルトンを使う傾向が強いと思います。動画内では割愛しましたが、シングルトン内部のコードにはバグが出やすい書き方もあります。確実に同期が取れるように、慎重にコードを書く必要があります。
『オブジェクト指向における再利用のためのデザインパターン』はもともと使っていた各々のデザインに名前をつけることによってエンジニア間の共通言語としてのカタログ的な意味合いで使ってくれとのこと。「めいっぱいJavaやってて、どうやったら優れたオブジェクトの構成ができるか研究し続けていて、、、」は少しおかしいと思います。サンプルコードもc++やSmalltalkになっています。原著にはJavaはでてきません。
少しおかしいですね。「めいっぱいJavaやってて」は、「めいっぱいオブジェクト指向プログラミング言語やってて」が正しいですね。カタログ的な意味合いで使うについては、もう一歩だけ踏み込んで構造的に捉えています。『Java言語で学ぶデザインパターン入門(初版)』ぐらいの感じです。
ファサードは使ってほしくないパターン第一位。動画にあるように既存の複雑なモジュールを再利用する場合ならまだいいが、たまに新規開発で〇〇ファサードなんてクラス名を見ると頭を抱えてしまいます。ファサード作る前に、そもそも複雑なモジュールを作るなよと。
なるほど。(^^)Facadeの読みこみや修正のお鉢が回り、そもそもなにしてんの、ってなったことがあったんですね。そういう意味だと、使ってほしくないパターン第一位はsingleton。AndroidのMVVMで、アーキテクチャのlivedataやcompanionを使うように指示してますね。
多かれ少なかれファサードパターンは誰しも使っている気がする。ファサードをクラス名に冠するのは確かに避けた方がいいと自分も思います。窓口、ということですべての処理をそこから呼び出せるようにして神になることもあり得る。適切な命名をした方がよろしいかと。
@@nekopro_firesoft
くちがまめってない
( ^o^ )
これだけレベルの高い方が私のような初心者の気持ちが理解できてるって感心してしまいます。共感できることがたくさんあります。
初心の時の気持ちを大切にして、動画を作成しています。時間がかかっても、言語化しています。解説はかなり手間がかかるので、世の中の媒体では、プログラムを書ける人の脳の働きについては、省かれています。その辺がわかってこそ、わかったということだと考えています。
プログラムをやってみようとした、始めのドキドキするような、気持ち、夢をわすれないでほしいなと思います。
デザインパターン初心者です💦とても参考になりました!ありがとうございます!
ゲームが会社の入社テストで、デザインパターンについて出題されるのですが、どれ位の理解度で挑んだら良いかアドバイスなどあればありがたいです🙇♂️
高評価ありがとうございます。
ゲーム会社の入社テストなら、目的はC++かC#あたりのオブジェクト指向プログラムの力量はどのくらいかを図ることでしょうね。意外と、できる人から見ると、少しの質問の回答で力量は大体見抜けてしまいます。
なので、今からのテスト対策は、「コードレベル」でデザインパターンを「平易な自分の言葉」で、「使い道と構造」を説明できるようにしておけばいいかと予想します。
そのための準備は、[ゲームの開発環境 デザインパタン]→例えば[Unity factory]で検索すると、サンプルコードが出てくるので、それを見ながら、使い道と構造を理解するのを何個かやってみるといいと思います。デザインパターン23のうち、使えそうなサンプルコードのものに絞るのも手でしょうかね。
デザインパターンはテンプレートですので、ポイントは、「使い道と構造」です。
ゲーム会社なら、デザインパターンの他に、コルーチンやクーロンやコールバックあたりの基本もチェックしたほうが良さそうです。
@@nekopro_firesoft 早い返信ありがとうございます!
本当に勉強したことないところだったので、ありがたいです😭是非参考にさせて貰います‼︎
実践的!
シングルトンパターンはアンチパターンと言われることが多いです。
グローバル変数と実質的に同じ、マルチスレッドプログラミングでバグが出やすいなどの問題があります。
使うのはLogger周りでしょうか。
既にフレームワークやライブラリ内で、オブジェクト自体がシングルトンとして設計されている場合が多いため、ここ数年、自分でシングルトンを設計する機会は少なくなってきたと感じます。やみくもに変数を同期性のある共通変数にするのは、適切ではありません。Loggerも同様ですが、特に独自の機能が必要で、かつ実装箇所が分散している場合に、シングルトンを使う傾向が強いと思います。動画内では割愛しましたが、シングルトン内部のコードにはバグが出やすい書き方もあります。確実に同期が取れるように、慎重にコードを書く必要があります。
『オブジェクト指向における再利用のためのデザインパターン』はもともと使っていた各々のデザインに名前をつけることによってエンジニア間の共通言語としてのカタログ的な意味合いで使ってくれとのこと。「めいっぱいJavaやってて、どうやったら優れたオブジェクトの構成ができるか研究し続けていて、、、」は少しおかしいと思います。サンプルコードもc++やSmalltalkになっています。原著にはJavaはでてきません。
少しおかしいですね。
「めいっぱいJavaやってて」は、「めいっぱいオブジェクト指向プログラミング言語やってて」が正しいですね。
カタログ的な意味合いで使うについては、もう一歩だけ踏み込んで構造的に捉えています。『Java言語で学ぶデザインパターン入門(初版)』ぐらいの感じです。
ファサードは使ってほしくないパターン第一位。動画にあるように既存の複雑なモジュールを再利用する場合ならまだいいが、たまに新規開発で〇〇ファサードなんてクラス名を見ると頭を抱えてしまいます。ファサード作る前に、そもそも複雑なモジュールを作るなよと。
なるほど。(^^)Facadeの読みこみや修正のお鉢が回り、そもそもなにしてんの、ってなったことがあったんですね。そういう意味だと、使ってほしくないパターン第一位はsingleton。AndroidのMVVMで、アーキテクチャのlivedataやcompanionを使うように指示してますね。
多かれ少なかれファサードパターンは誰しも使っている気がする。
ファサードをクラス名に冠するのは確かに避けた方がいいと自分も思います。
窓口、ということですべての処理をそこから呼び出せるようにして神になることもあり得る。
適切な命名をした方がよろしいかと。
@@nekopro_firesoft
くちがまめってない
( ^o^ )