- Видео 6
- Просмотров 35 915
syncprim【プログラミング解説】
Япония
Добавлен 15 дек 2022
初心者でもわかりやすい解説動画を目指しています!
製作の都合上、動画内の技術用語や英語訳が厳格に正しい表現でない場合がありますが、分かりやすさを優先しております。ご了承ください。
製作の都合上、動画内の技術用語や英語訳が厳格に正しい表現でない場合がありますが、分かりやすさを優先しております。ご了承ください。
【IT解説】ずんだもんと学ぶ二進数【VOICEVOX解説】
動画作成は不慣れですので、お手柔らかにお願いします。
もし気に入っていただけたらチャンネル登録よろしくお願いします!
■音声ソフト:
VOICEVOX:ずんだもん
VOICEVOX:四国めたん
■立ち絵:坂本アヒル様
#2進数
#数学
#プログラミング
#プログラミング解説
#VOICEVOX解説
#ずんだもん
#四国めたん
もし気に入っていただけたらチャンネル登録よろしくお願いします!
■音声ソフト:
VOICEVOX:ずんだもん
VOICEVOX:四国めたん
■立ち絵:坂本アヒル様
#2進数
#数学
#プログラミング
#プログラミング解説
#VOICEVOX解説
#ずんだもん
#四国めたん
Просмотров: 290
Видео
Zundamon's Lesson "Why Singleton is evil?"
Просмотров 17 тыс.Год назад
動画作成は不慣れですので、お手柔らかにお願いします。 もし気に入っていただけたらチャンネル登録よろしくお願いします! ■音声ソフト: VOICEVOX:ずんだもん VOICEVOX:四国めたん ■立ち絵:坂本アヒル様 #デザインパターン #オブジェクト指向 #プログラミング #プログラミング解説 #VOICEVOX解説 #ずんだもん #四国めたん
【解説】ずんだもんと学ぶC言語とポインタ【VOICEVOX解説】
Просмотров 3,1 тыс.Год назад
動画作成は不慣れですので、お手柔らかにお願いします。 もし気に入っていただけたらチャンネル登録よろしくお願いします! ■音声ソフト: VOICEVOX:ずんだもん VOICEVOX:四国めたん ■立ち絵:坂本アヒル様 #c言語 #プログラミング #プログラミング解説 #VOICEVOX解説 #ずんだもん #四国めたん
【プログラミング解説】ずんだもんと学ぶC言語の便利機能4選!【VOICEVOX解説】
Просмотров 3,2 тыс.Год назад
動画作成は不慣れですので、お手柔らかにお願いします。 もし気に入っていただけたらチャンネル登録よろしくお願いします! ■音声ソフト: VOICEVOX:ずんだもん VOICEVOX:四国めたん ■立ち絵:坂本アヒル様 #プログラミング #プログラミング解説 #VOICEVOX解説 #ずんだもん #四国めたん
Zundamon's Lesson "Video Game"
Просмотров 713Год назад
動画作成は不慣れですので、お手柔らかにお願いします。 もし気に入っていただけたらチャンネル登録よろしくお願いします! ■音声ソフト: VOICEVOX:ずんだもん VOICEVOX:四国めたん ■立ち絵:坂本アヒル様 #技術解説 #VOICEVOX解説 #ずんだもん #四国めたん
Zundamon's Lesson "C++ Programming Language"
Просмотров 12 тыс.Год назад
プログラミング言語C の紹介動画です。動画作成は不慣れですので、お手柔らかにお願いします。 もし気に入っていただけたらチャンネル登録よろしくお願いします! ■音声ソフト: VOICEVOX:ずんだもん VOICEVOX:四国めたん■立ち絵:坂本アヒル様 #ずんだもん #四国めたん #VOICEVOX解説 #プログラミング #プログラミング解説
once_cell 最高
密結合を避けるって話かな
実質枝豆VOICEにしゃべらせて聞かせるだけの動画なのに、BGMの音量が大きすぎて内容が頭に入らない。 RUclipsに上げる前にチェックしろよ。
Cとの互換性があってunix.hとかwindows.hなどのシステムコールである程度フルスクラッチで動作させられるって理由でc++をメインに選んだけど、正直未だに7割も理解してない気がするしそれでも最低限やりたい事が出来ているから他の言語に切り替えるのが億劫になって今まで来てる… Pythonも一瞬触ったけどエンコードと属性の不透明さにストレスが溜まるし、makefileを書いていると関数型の言語も違う感じがするしで丁度良い乗り換え先が見つからない
C言語のポインタはかなり難しい概念です。 qr.ae/p2KGhZ この動画ではおそらくその辺を意識してポインタとアドレスは同じものではないと伏線を張っていて感心しました。
つまむだけならC言語をそこそこ理解できていれば日本語リファレンスをチラ見するだけで簡単に使えるし、むしろCより分かりやすいと思うので初学者はC++から入るべきだとは思う…C言語やPythonで変な癖つけてしまって矯正に苦しんでいる人を見ると余計に
これ、自分しか使わない場合はいいんだけど、 ライブラリをユーザーに提供するときは、ユーザーが依存関係とか意識せずにコンストラクタを呼べるメリット があるんですよねー。
メンバーが不変なシングルトンをセットとして渡すのは不要なやつが入りすぎてない前提でOK。問題は変更の自由度が高く拡散してる場合。いつどこでどれがどのように
javaのspring bootとかの話だとシングルトンはController,Serviceなど一つのインスタントだけでよい場合などで利用されている。 なぜ一つだけにする必要があるのかは無駄にメモリを消費しないようにするため。 シングルトンはマルチスレッドになったときに問題が発生するのでテストが難しい。
このチャンネル分かりやすくて好きです😊
確かにC++動画珍しいですね😍
mallocはメモリの断片化が起きるので扱いは難しいですね。 小さいものであれば可変配列のほうがいいかも・・・
CRC計算するプログラム作ってる時にめちゃんこ考えたww
プログラミング言語においても銀の弾丸はないので、何にでも使えるという話を聞いたら何に使っても使いづらいぐらいの意味だと捉える方がいいでしょう。 実際、現代において C++ の採用は、本当に適用するべき分野なのかを熟考した上での選択でないなら間抜けな判断としか言えない状況です。 その仕事により適した道具がないのかどうかを考え、複数の道具から最適な道具を選んで使い分けられるようになるのが理想的です。
一部のコンパイラ開発者の間ではC++はもうええって、という空気になっているらしい。
C++は、シープラスプラスじゃなくて、シープラプラって言ってました。自分のいた会社だけ?
シープラプラという略称は、日本のIT業界では標準化されています(嘘
しーぴーぴーやぞ
うちの会社だとシープラです
C++って、CのVer2.0と勘違いして、今C言語使えるという事はC++を指すと勘違いしている人が居たりしました。 別言語と言っても良いと思いますが。 ++で拡張された機能が特に不要だったので、C言語のみでやってました。が、その勘違いで、変に++使いにされてしまった経験があります。勘違いを勘違いと認めなかったため、とっさにPHPのプロジェクトに逃げた事がありました。
「絶対使うな」には反対だけど、動画内で全てのユースケースについて言及するのは難しいので、コメントで色んな意見残してくれるのありがたい。
「絶対に使うな」に反対と書き込もうとしてた。「安易に使うな」が正しいですね。 対象の業界が違ったりすると本当にフィットする状況があったりするのだけれど、なんでもかんでもアンチパターンのように呼んでレッテルを貼ってしまうと、それはもう原理主義になる。 思考停止せず常に最適な方法を探し続ける事が重要だと感じています。
シングルトンパターンを使うな、ではありません。グローバル領域の代わりにシングルトンパターンを使うな、です。 そのためにはクラス設計をしっかりとしろ、です。結果として1インスタンスにしかなり得ない場合はシングルトンパターンを使う事になります。 ここから継承はあり得ない、あるいは継承させない時にはスタティッククラス(全フィールド、全メソッドをスタティック)にすることもあります。
アセンブラを書いてみればポインタは簡単に判る、アセンブラのCPU依存を消したのがC言語 元々の開発経緯から当然そう成っている。 アセンブラではポインタは使わずにプログラムを書けないので自動的に覚える。
アセンブラもいいですけれど、シミュレーターとかでCPUを作るのもいいですよね
@ 最近「コンピュータシステムの理論と実装」O’Reilly をやってみました。ハードからコンパイラまで自分で作れて、簡単に実装出来る仕様が素晴らしかったです
Cが機能増やして C++ と互換性が無くなると、C++ へ持って行けなくなるから困る、返って不便になるから使わない
2:58 Designated の読みはデジネーテットよりデジグネーテットのほうが正しいと思います。
引数が多いこととシングルトンを使うことの関係がわからないかな… ただ、これは Java を前提で考えたからなので、 C++ などの言語ではどうなのかはわからん。なお、 Java では DI(Spring/Quarkus/Helidon...etc) がよくできていて、シングルトンの管理も DI コンテナに任せるだけなので、シングルトンパターン自体がもう解決済みなので、勉強する必要性ももうないかもしれない。
自分は DI 自体が好みではないですね。コンパイル型言語の利点をほとんど殺してると感じます。 Go 言語を体験して、余計な物がない世界がどれだけ素晴らしいことかを知りました。
C言語も進化してるんだなぁ 低レベルでテコ入れが進んでるのRustぐらいだと思ってた
シングルトンは単体利用するとバグの巣窟になる。その経験をするとfactoryやfacadeを組み合わせたDIの利点が学べる。GoFは23パターンだが座学レベルだから、業務レベルで使うのはMVC以降の新パターンだから注意やね。
パフォーマンスが欲しいケースなら私はrustでよいかな。かつ安全(らしいし)
動画で指してる問題点は、クラス中にグローバルインスタンスを突然使うな、と言うものやん。 シングルトンは初期化前にグローバルインスタンスを使わせないという目的で作られてるんだから、シングルトンを批判するのは間違ってるよ。 少なくともグローバルインスタンスになる想定のクラスを作る側はグローバルにするぐらいなら、シングルトンにすべきだし、 使う側はシングルトンだろうと何だろうとカプセル化した中でグローバルインスタンスにアクセスするな、と言うだけ。
それシングルトンというかグローバルインスタンスの問題点では
loggerの使い方に困惑してる人、そこそこいるよね
みんなどんな言語・設計の話をしているのか分からないけれど、シングルトンな型はプログラムの基本で、ありふれたものだと思うんだけど違うのかな?値を1種類しか取らない列挙型と何が違うんだろう。
シングルトンを多用するとオブジェクト指向ではなく手続き型と変わらなくなりますね。使い所は見極めないといけない。何でもかんでもユーティリティに突っ込んじゃうとか駄目よねえ。
たこやきみたいだな
abc予想の証明よりC++の方が難しい事を証明したが、ここにそれを書くには余白が狭過ぎる
一言「ナーマギリ女神からのお告げより事実」と書けばいいんだよ
ゲームではサウンドの再生を担当するクラスはシングルトンにしてます 他のクラスに影響を及ぼさず値も返さないvoid関数のみを持つクラスであれば、シングルトンパターンにしても依存関連のバグは生まないはずなので、その場合シングルトンは使っても良いと思っています とはいえ、私も乱用は避けるべきだとは思います 得に大人数でのプロジェクトではstaticのデータは思いもよらない使われ方をしたりもするので
Unity でゲーム作っていますが、シングルトン使えないと詰む。 幾つかの危険性があるというのは理解できるが、使うなというのはチョット何言っているのか判らない。
絶対に使わないようにすべきっていうのは言い過ぎでは? 例えばKotlinは後発の言語だけど、objectっていうシングルトンをサポートする構文が言語レベルで存在する。 何も考えずに使うなっていうのが正解な気がするけど。
むかしプレステ1の開発時にポリモーフィズムが欲しくて導入したら いつのまにか V-Table がメモリを圧迫してて往生しました。たしかメインメモリは2メガバイトでした。 10年ほど前にヘルプで入ったプロジェクトでは、テンプレートで魔改造されたコードだらけでまいりました。 ビルドも遅かったな。今はどうなんでしょうね。
C++を取り上げるのは珍しいですね、215人しか居ないし、日本ではマイナーに成ってしまいましたね、C++14 あたりのモダンな書き方に限れば Java なんかより綺麗に書けて std::move とか Rust と同等のメモリー管理も可能と思います。 Web 系でも WebAssembly とか Drogon が出て来ています。C言語から習うとモダンまで辿り着かないので、モダン化前を切り捨てた仕様をまとめて出してもらい標準化すれば初心者にも使い易い言語に成るのにと思っています。Python 並に使い易くなると思っています。
Drogon、良いんだけどわざわざ採用する理由が無さすぎる… 実際弊チームでも採用した事があるけれどパフォーマンス向上のために採用するくらいならRustのaxumでエエやんになってしまった
接続管理クラスには普通に使うでしょ
templateとか面白いよ
だいたいつよつよエンジニアがC++で書いたコードを別言語でラッピングしてくれるから(numpyとか)直接触らなくてもなんとかなっちゃう ゲームとかハードウェア触るなら必須なんだろうけど一生触りたくない
gccのスタックサイズのデフォルトはもっと大きいで
敵だ!
拡張につぐ拡張で、(アスキーコード上の)使える記号が足りなくて 文法で意味が変わるのが多いんだよね。 例えば「&」は、・アドレス取り出す。 ・論理演算のAND ・比較演算のAND ・参照 みたいに同じ記号が違う意味で使われているのが多い。
python のデコレータに使う @ を残しているのは、次の規格でデコレータを入れるつもりなのかも
@@神谷了どういう事? C++にデコレーター実装されるって事? 文章うまく読み取れ無くてすまん。
C++が拡張されていってラムダ式まで書ける様になったけど 未だにこの文法判らんし、なんか好きになれない
[]が余分なだけで、他の言語のラムダ式と同じと思うけど、外部変数のキャプチャーとかでしょうか? [&] といつも書いてます、飾りと思えば似たようなものです。
DIコンテナ使うようにしたので参考にしまーす\(^o^)/
シングルトンパターンは、ファイルの書き込みなどのIOに代表される操作したい人はたくさんいるけど、実際に操作できるのは1つ、の時に待ち行列とかする時に使う。 そのシチュエーションを自分のアプリケーションコードで書くことはほぼ無いはずなので、使わない、としても基本には問題ないことが多い。 が一点注意は必要。 一番使われるパターンとしてはログ書き込み。 逆に言えば、ログ書き込みを自分でそのままファイル出力で書くと衝突してトラブルになる。 これを知っていれば、ログ書き込みライブラリが大抵あるので良い感じにシングルトンで制御してくれる。
組み込み系なら絶対に覚える必要がある言語の一つ。その他の所でも覚える必要がある場所も少なくない
確かに自分達が書くアプリケーションコードにシングルトンを使うなら注意だけどフレームワークの実装ではよく使われてるんだよな
これ習えばゲーム作れるかな?
できますが、最近は初心者に優しいと有名なC# とかもよく使われますね。
ゲームを作る場合に重要なのは、言語よりもその言語の世界に存在するライブラリの方です。 グラフィックだったりサウンドだったりジョイスティックだったり。 Cは、そういうライブラリは豊富に存在しております。 ただ、まとまりはないので難しいのです。
C++ のゲームフレームワークと言えば Unreal Engine です。フォートナイト とか米国の高性能ゲームは、ほぼこれで書かれています。
学ぶことで一番大事なのはモチベーションを保つことだしPythonがおすすめだぞ。あと、少し高いけどちゃんと書籍買うのが大事! 「ゲームで学ぶプログラミング!」みたいな書籍がたくさんあるからね!