ふらっと C#,C♯,C#(初心者用) Part148at TECH
ふらっと C#,C♯,C#(初心者用) Part148 - 暇つぶし2ch1:ななC ◆jPpg5.obl6
20/05/27 10:14:39 wHIUQvvs.net
■前スレ
ふらっと C#,C♯,C#(初心者用) Part147
スレリンク(tech板)
■関連スレ
C#, C♯, C#相談室 Part94
スレリンク(tech板)
■コードを貼る場合は↓を使いましょう。
URLリンク(ideone.com)
URLリンク(dotnetfiddle.net)

■情報源
URLリンク(docs.microsoft.com)
URLリンク(docs.microsoft.com)
URLリンク(docs.microsoft.com)
URLリンク(referencesource.microsoft.com)
・Insider.NET > .NET TIPS - @IT
URLリンク(www.atmarkit.co.jp)
・DOBON.NET .NET Tips
URLリンク(dobon.net)

2:デフォルトの名無しさん
20/05/27 18:48:16 E9pm4anV.net
Unity使わずに3Dやりたい場合ってWPFが標準?
WPFってもうオワコン?

3:デフォルトの名無しさん
20/05/27 18:52:05 JktWhmx6.net
OpenTKは?

4:デフォルトの名無しさん
20/05/27 19:32:33 Pggemlyq.net
前スレ>>980ですが、スレッド見てなくて立て忘れてました すみません
代わりに立ててくださってありがとうございました

5:デフォルトの名無しさん
20/05/27 19:39:02 pH9kEpz5.net
ここはワッチョイ無しの スレリンク(tech板) の重複スレだから
ワッチョイ有りの スレリンク(tech板) の次スレはまだ立っていない

6:デフォルトの名無しさん
20/05/27 20:16:20 UPd6axBX.net
>>2
始まってすらいないけどWPFでいいよ

7:デフォルトの名無しさん
20/05/27 20:30:34 Pggemlyq.net
ふらっと C#,C♯,C#(初心者用) Part148
スレリンク(tech板)

8:デフォルトの名無しさん
20/05/27 21:17:51.51 E9pm4anV.net
WPFで3D試してみました
Blender+Pythonで描いてるのと同じくらい
気持ち良いです
ほんとうにありがとうございました

9:デフォルトの名無しさん
20/05/27 22:16:13 WtULuqKB.net
WPFって内部的にはDirect2D使ってコントールとか関係なくいっぺんに描写してるんだよね?
対照的にWinFormsはコントロール一つ一つがミニウインドウ的に重ねてるだけと
以上のことからWPFの方が圧倒的にパフォーマンス良さそうなはずなのにWPFの方がもっさりしてるのはなんで?

10:デフォルトの名無しさん
20/05/27 22:29:46 XqYGA5UJ.net
WPFはレイアウト処理がゴミのように遅い
ボックス化を繰り返す、素人でもやらないようなアレな設計

11:デフォルトの名無しさん
20/05/27 23:14:05.38 6lGW3OEc.net
個人的にはワッチョイ嫌いだからこっち使うわ

12:デフォルトの名無しさん
20/05/27 23:17:36.26 ZJh/NQcj.net
>>11
ワッチョイ無しがよければこっちへ
ふらっと C#,C♯,C#(初心者用) Part141
スレリンク(tech板)

13:デフォルトの名無しさん
20/05/28 16:37:07 C7xsfscB.net
WindowsってまともなUIフレームワークがない

14:デフォルトの名無しさん
20/05/28 16:49:14 VMjOSmuX.net
本来UWPがそうなるはずだったんだけどな
一時期、一向に進化しないWindowsのUIに痺れを切らしたMSの.NET陣営が暴走し、Windowsを完全に無視してスクラッチで作られたWPFという奇形を生み出した
その後、WindowsのUI基盤は刷新され開発も早くなったけど、時すでに遅し
結果としてWPFは変な分断だけを残して死亡し、以後モダンなWindowsのUIフレームワークは完全に開発者に見放された

15:デフォルトの名無しさん
20/05/28 17:10:53 1YUJThtf.net
>>13
まともなUIフレームワークがあるOSって?

16:デフォルトの名無しさん
20/05/28 17:54:38.10 TOqrHko/.net
俺言いましたよね、じゃないけど、Win10の登場時に
「Silverlightもストアアプリもあっさり捨てられたのを見せつけられた後で
UWPに飛びつくのはお勉強マニア以外にいるはずがない」と思った。
実際その通りになったね
あの頃これからはUWPの時代だって鼻息荒かった人たちは今息してるかなw

17:デフォルトの名無しさん
20/05/28 18:06:50.64 9BCjMbxe.net
>>16
ストアアプリは捨てられてないやん

18:デフォルトの名無しさん
20/05/28 20:23:11.71 KWiWaMH2.net
今.NET(以外でもいいけど)でまともなWindowsのGUIアプリ作ろうと思ったら何使えば良いんだ?

19:デフォルトの名無しさん
20/05/28 20:26:29.01 EbwElpou.net
>>18
winformが鉄板

20:デフォルトの名無しさん
20/05/28 20:30:49.29 KWiWaMH2.net
>>19
なんかチープにならない?
個人で開発するならこれでも十分だとは思うけどさ

21:デフォルトの名無しさん
20/05/28 20:39:14.58 wn0+e+em.net
paint.netはwin32apiをオーバーライドして
実装しているな

22:デフォルトの名無しさん
20/05/28 20:39:38.41 8oignfAr.net
>>20
Windows Formsはチープと言えばチープだし高DPI対応が面倒
弱点が無い鉄板と言えるのは今は無い
自分なら消去法でWPFかな

23:デフォルトの名無しさん
20/05/28 20:43:34.58 KWiWaMH2.net
>>21-22
ありがと
参考になった

24:デフォルトの名無しさん
20/05/28 20:57:52 C7xsfscB.net
>>18
Electronだな
完璧で先進的なUIをいくらでも作成できる
ただし無能には作れないが

25:デフォルトの名無しさん
20/05/28 21:02:19 wn0+e+em.net
どうして、どうして、エレクトロンしないのよ~

URLリンク(i.imgur.com)

26:デフォルトの名無しさん
20/05/28 21:34:10.37 LUx1kcCx.net
>>12
ども

27:デフォルトの名無しさん
20/05/28 22:00:24 TOqrHko/.net
イキってる連中の乗ってる船は必ず沈むw
これこの業界の経験則

28:デフォルトの名無しさん
20/05/28 22:04:08 SZ4a9lb+.net
>>20
モダンにしたいならwpfで作って、Mha.AppsとmaterialDesignToolKit当てるのがいいと個人的には思う

29:デフォルトの名無しさん
20/05/28 22:08:13 cEdXJu0u.net
winformsもパネル使ったり枠なくしたりなんかフレームワーク使ったりすればいい感じにならない?

30:デフォルトの名無しさん
20/05/28 22:21:21 m8lmYopl.net
>>28
MahApps.MetroとMaterial Design In XAML Toolkit
じゃない

31:デフォルトの名無しさん
20/05/28 22:27:25 X1DbHHaB.net
WinFormsでも全部自前でペイントしていけばモダンなマテリアル風に出来るよ

32:デフォルトの名無しさん
20/05/28 22:31:59 HqV/ilfL.net
うちの周りじゃ「ふつうwpfだよな」という雰囲気。
まあmfcはまだあるけど。

33:デフォルトの名無しさん
20/05/28 22:41:09 qJPp+k5L.net
material designカッコ悪すぎやろ
あれは小さい画面ではかっこよく見えるけど
デスクトップアプリだと間抜けに見える

34:デフォルトの名無しさん
20/05/28 22:45:01 qJPp+k5L.net
URLリンク(github.com)
Modern WPFもなんだかな
Vistaみたいな派手派手UIはやりすぎだけど、今どきのUIはシンプルすぎやな

35:デフォルトの名無しさん
20/05/28 23:00:46 qJPp+k5L.net
ちなみに見た目にこだわるなら
URLリンク(community.idera.com)
Delphi/C++Builderが手っ取り早いww

Qtはどうなってるのかしらんが

36:デフォルトの名無しさん
20/05/28 23:26:36 C7xsfscB.net
>>31
俺はWinFormではそうやってる
しかしペイント使うのは面倒くさすぎ

37:デフォルトの名無しさん
20/05/28 23:29:53.24 C7xsfscB.net
>>35
なにこの古くてダサいやつ

38:デフォルトの名無しさん
20/05/28 23:47:56.88 iJkLM7fA.net
メトロUIに勝手にしてほしい

39:デフォルトの名無しさん
20/05/29 13:25:57 6pfV3tMJ.net
>>30
28だけど、それだ

40:デフォルトの名無しさん
20/05/29 20:34:03 2er99IBx.net
WPF意外と良いわ
薦めてくれた人有賀豚

41:デフォルトの名無しさん
20/05/29 21:09:30 CAp2AFjh.net
MVVMでしっかり作るとまともなライブラリ無くてな、、、
LivetかPrismとReactivePropertyをMS公式にしてドキュメントしっかり整備すればもうちょい流行るだろうに

42:デフォルトの名無しさん
20/05/30 00:31:57 eRMsZJUS.net
MSによるとMVVMはオワコンで今後はMVUらしいよ
そしてWPFにMVUは来ない

43:デフォルトの名無しさん
20/05/30 00:48:54.23 a2a+yc5I.net
.NET MAUI自体はXAMLを用いたMVVMもサポートしてる

44:デフォルトの名無しさん
20/05/30 07:40:03 Z2NT1d95.net
>>41
ライブラリがMSから出て無いから俺はMVVMにがっつり取り組むの止めた

45:デフォルトの名無しさん
20/05/30 16:23:05 Azg3TY3W.net
今後はMVUになるってバインディングが遅くて使い物にならないってことか

46:デフォルトの名無しさん
20/05/30 16:35:47.59 a2a+yc5I.net
> .NET MAUI は Xamarin.Forms の進化版で、
> 今後、MVU と XAML の両方のプログラミング モデルを提供するために拡張されます。
今後はMVUってどこの情報?

47:デフォルトの名無しさん
20/05/30 18:35:33 8I5vqKhE.net
>>46
大本営で言ってるじゃん。
URLリンク(devblogs.microsoft.com)
結構楽しみ。

48:デフォルトの名無しさん
20/05/30 18:48:22.21 a2a+yc5I.net
>>47
.NET MAUIに移行とは書いてあるけど、MVUパターンにとは書いてないようだけど

49:デフォルトの名無しさん
20/05/30 19:07:11 8I5vqKhE.net
>>48
Part of the vision for one .NET is providing developer choice in the areas of personal preferences so you can be most productive using .NET.
This manifests in which IDE you use whether Visual Studio 2019, Visual Studio for Mac, or even Visual Studio Code.
.NET MAUI will be available in all of those, and support both the existing MVVM and XAML patterns as well as future capabilities like Model-View-Update (MVU) with C#, or even Blazor.
中略
In addition, we are enabling developers to write fluent C# UI and implement the increasingly popular Model-View-Update (MVU) pattern.
MVU promotes a one-way flow of data and state management, as well as a code-first development experience that rapidly updates the UI by applying only the changes necessary.
For more information about MVU as a pattern, check out this Elm Programming guide and this blog from Thomas Bandt.

俺誤読してる?

50:デフォルトの名無しさん
20/05/30 19:12:20.76 986wFptC.net
本当か嘘かは知らんけど一応まだこれからもMVVMが主力と言ってるじゃん。
MVUは追加という扱い。

51:デフォルトの名無しさん
20/05/30 19:14:11.96 MlE9UdsR.net
>>47
相変わらずいろんなのが出てきては完成させず放置を繰り返すよなあMSは
これもグダグダになるんだろ

52:デフォルトの名無しさん
20/05/30 19:24:19 HM6Qo6hR.net
>>50
同じことだよ
MVVMが旧式のスタイルになったことは事実だし、MVUはReactのようなWebで流行のデザインパターンの流れを汲んでいて.NETに限らず世間の流れに沿っている
MVVMを実践してきたような真面目で神経質で意識の高い人達が、時代遅れのパターンであることを自覚しながらなおMVVMを使い続けるコンプレックスに耐えられると思うか?

53:デフォルトの名無しさん
20/05/30 19:35:02 xslsMmtK.net
流行かw
できれば一生関わりたくない世界だなw

54:デフォルトの名無しさん
20/05/30 19:41:35 8I5vqKhE.net
>>50
本腰を入れると受け取ったけどな。ますますポピュラーになるMVUを使えるようにするぞ、って言い方のような。
今までのスタイルから、突然はしご外す気は無いから安心しろよ、怒るなよ、っていう方向のように読めるんだが。

55:デフォルトの名無しさん
20/05/30 19:50:50 986wFptC.net
>>54
実際はそうなると俺も思うけど、一応大本営発表ではまだそこまで言ってないということ。

56:デフォルトの名無しさん
20/05/30 19:57:07 8I5vqKhE.net
>>55
なるほど。確かに字面ではIn additionとかいう言い方か。
そっちが正しそう。すまんかった。

57:デフォルトの名無しさん
20/05/31 17:45:09 x+1l8ufV.net
そうはいかんね

58:デフォルトの名無しさん
20/06/01 16:20:40 JphI8rwQ.net
Unity と XNA と WPF の違いについて教えてください

59:デフォルトの名無しさん
20/06/01 17:20:11.84 1AaIRgOP.net
>>58
まずこんなところで説明しきれない
キーワードわかるものは自分でググれ

60:デフォルトの名無しさん
20/06/01 17:41:48.81 TiDSS0MJ.net
スキャナを起動し画像を保存したいです。
機種は決まっているので取り込むまでを自動でやりたいのですが
サンプルが見つからないです
お詳しい方ご教示いただければ幸いです。

61:デフォルトの名無しさん
20/06/01 17:41:48.81 TiDSS0MJ.net
スキャナを起動し画像を保存したいです。
機種は決まっているので取り込むまでを自動でやりたいのですが
サンプルが見つからないです
お詳しい方ご教示いただければ幸いです。

62:デフォルトの名無しさん
20/06/01 17:41:48.81 TiDSS0MJ.net
スキャナを起動し画像を保存したいです。
機種は決まっているので取り込むまでを自動でやりたいのですが
サンプルが見つからないです
お詳しい方ご教示いただければ幸いです。

63:デフォルトの名無しさん
20/06/01 17:51:45 PXuRIRX4.net
スキャナを起動し画像を保存したいです。
機種は決まっているので取り込むまでを自動でやりたいのですが
サンプルが見つからないです
お詳しい方ご教示いただければ幸いです。

64:デフォルトの名無しさん
20/06/01 17:59:11 EcU6otQL.net
TwainDotNet かな

65:デフォルトの名無しさん
20/06/01 18:08:51 TiDSS0MJ.net
ありがとうございます。
とりあえずTwainDotNetで調べてみます。 

66:デフォルトの名無しさん
20/06/01 18:27:33.91 AZ2OFtPt.net
大事なことだからって繰り返し過ぎワロタw

67:デフォルトの名無しさん
20/06/01 23:35:02 5NIHbXOS.net
まだ22歳の学生社長が得た、23億円の「使い道」
あの橋本環奈をCMに使うバイトアプリの雄
URLリンク(toyokeizai.net)
中学時代の車いす生活から、17歳で起業するまで
URLリンク(www.advertimes.com)
ミャンマー発 AIダイニングアプリ「Yathar」をしかける日本人起業家
URLリンク(roboteer-tokyo.com)
自分の視野は「世の中の0.001%」と自覚せよ。ビジネスチャンスを掴む4つの習慣
URLリンク(headlines.yahoo.co.jp)
アプリの視聴率がわかる 高専卒起業家の独創力
URLリンク(www.nikkei.com)
1万人の若者を支援!インターンが日本を変えるかも!? glowshipの若き創業者・足立卓也氏インタビュー
URLリンク(sogyotecho.jp)
大学生起業家が設立1年で20億円調達! 単発バイトアプリに外食企業など出資【タイミー】
URLリンク(foodfun.jp)

68:デフォルトの名無しさん
20/06/02 18:06:23 GmzbpgQI.net
Windowsフォーム使って開発してる(C#4.0/NUnit)んだけど良いテストの見本プロジェクトとかないですか?(参考になるサイトでも構いません)
なんか画面とくっいてるところが思ったようにテストできなくて全然書けない

69:デフォルトの名無しさん
20/06/02 20:20:25 xXpMulBl.net
ないよ
WinFormsなんて基本ドカタ案件なのでテストなんか書くわけない
人力でクリックしてスクショ撮ってExcel方眼紙に貼るの

70:デフォルトの名無しさん
20/06/02 20:44:29 kqj+tD5+.net
コードビハインドにビジネスロジックゴリゴリ書いてるなら無理だな

71:デフォルトの名無しさん
20/06/02 20:55:15.92 GmzbpgQI.net
マジすか…
土方案件(プロパー)なのは事実でテストはあるけど一部のロジックだけで何ら役に立たないゴミなんだよなあ
Form内にゴリゴリにロジックが絡まってるし
Singoletonを多用してインターフェイスを使うという概念が無いからどうにもならんし
見なかったことにするわ

72:デフォルトの名無しさん
20/06/03 01:52:25 6MfosVLb.net
>>68
udemyのC#でドメイン駆動開発ってやつがテストにも言及してて自分的には分かりやすかった
動画は有料だけどサイトでも解説してるからそっちを見てみたらどうだろう

73:デフォルトの名無しさん
20/06/03 03:24:26.43 3xzVi2aI.net
WinFormはVB6の延長線上にある感じだな。
Formモジュールにビジネスロジック書いて
複数のFormで共通する処理があれば標準モジュールに書く。
Classなにそれ喰えるの?

74:デフォルトの名無しさん
20/06/03 09:26:10 wbZbutmL.net
>>69
ちょまどさんですね判りますω

75:デフォルトの名無しさん
20/06/03 17:43:20 lD/1VqSb.net
世界全体だとC#って5位くらいの位置づけっぽいけど
日本だけで言うと5chの勢いなどから推察するに3位くらいには使われてるとみて良いの?

76:デフォルトの名無しさん
20/06/03 18:13:25.33 qHwqb4JI.net
分野による

77:デフォルトの名無しさん
20/06/03 19:34:26.93 JOV2jyl/.net
5chの勢いがなんの参考になるんだ

78:デフォルトの名無しさん
20/06/03 22:49:53 lrkVbNIP.net
C#は基本ホビーの人向けだよ
前はwin必須だったけど今はlinuxOKになったので幅広い分野に向けて手を広げてるはずだけど全然思ったように広がらない
既存のものをリプレイスするだけの利点は今のところないから移ってくる人が少ないんだと思う
嫌な特徴としてOSSが弱い
異常に弱い
何かやろうとするとOSSのライブラリが全然充実してないことに気づく
そういうのはpythonやjsに任せておけばいいのかもしれないけど悲しい

2002年から使い始めたけどC#使ってる人に初めて会ったのは数年前…
しかも高校生
田舎のアマチュアだから仕方がないのかも
java python rubyの勉強会は田舎でも行われてるけどc#は気配がない

79:デフォルトの名無しさん
20/06/03 22:58:52 lrkVbNIP.net
c++
java
javascript

これらは業務の人が使ってて田舎でも求人がある
あとVB6 python 意外なことにperlとか
何に使ってるのかは知らない

80:デフォルトの名無しさん
20/06/04 01:31:22 tpxvVokJ.net
>>78
自分はMS Officeとの親和性の高さからC#(というかMicrosoftの開発環境)を使っている。
 結局ユーザーが使うのはWindows10上でWord、Excelであり、それのドキュメントを食って処理が始まる以上、OSSの中途半端なライブラリには頼れない。

81:デフォルトの名無しさん
20/06/04 02:18:15.36 XEcYdvMd.net
>>78
OSSのライブラリが充実してない?具体的に比較してみて

82:デフォルトの名無しさん
20/06/04 09:22:46.32 6ZR/QutM.net
>>79
VB6は過去のレガシー案件だろ

83:デフォルトの名無しさん
20/06/04 10:03:16.26 8e2Cwycp.net
OSSが充実してないのは何となくわかる
中途半端に開発止まってて全機能網羅してないC#ラッパーとか結構見かける

84:デフォルトの名無しさん
20/06/04 10:27:08 AYX3XxxN.net
C#erを名乗るおれですら最近はPython使ってるもんね
機械学習系のことやるならPythonになっちゃうんだよなあ

85:デフォルトの名無しさん
20/06/04 10:39:43 Tu9B6l3N.net
C#というよりはWindowsの問題だと思うなあ
俺もC#でプログラミング覚えて仕事でも一番よく使うのはC#だったけど、Web系に行ってからはWindowsの壁を感じるようになって、今では全く使ってないわ
C#な人って出来合いのものを活用するという考え方が薄くて、わりと自分でコード書いてなんでも解決しようとする人が多いように思う

86:デフォルトの名無しさん
20/06/04 10:58:46 E7Cd+5Oq.net
携わる分野が変われば言語も変わるという普遍的な話なだけでは

87:デフォルトの名無しさん
20/06/04 11:31:40.46 6ZR/QutM.net
Pythonはライブラリを組み合わせるだけだからつまらないのがな

88:デフォルトの名無しさん
20/06/04 11:32:53.20 XEcYdvMd.net
DropboxはPythonの負債に四苦八苦してるよね

89:デフォルトの名無しさん
20/06/04 16:35:14 scp7afg6.net
NuGet使ったら「訳のわからんもん使うな」と上司と喧嘩になった

90:デフォルトの名無しさん
20/06/04 16:53:36.43 XEcYdvMd.net
訳のわからんライブラリを使うなってのならわかるけど、NuGet自体を使うなってのはキチガイ

91:デフォルトの名無しさん
20/06/04 16:53:57.22 6NmuY8JB.net
そこでPacketですよ

92:デフォルトの名無しさん
20/06/04 17:10:37.74 6ZR/QutM.net
NuGetで持ってくるライブラリ次第だな
MSや大手メーカーならそれなりに信頼出来るけども、
個人で作ってるライブラリは実用例が無いと信頼出来ないし
あとライセンス

93:デフォルトの名無しさん
20/06/04 18:05:56.12 aHALqn6q.net
linux屋がいないとossは発展しづらい
linuxのc#は比較的最近になるから

94:デフォルトの名無しさん
20/06/04 18:16:05 dmqdgjzk.net
CUIで作るとして何が欲しい?

95:デフォルトの名無しさん
20/06/04 18:18:03 ZjzlgC2r.net
C#で作るのにCUIとかゴミ

96:デフォルトの名無しさん
20/06/04 19:05:50.14 kOCYL5JR.net
じゃPowerShellはゴミだね

97:デフォルトの名無しさん
20/06/04 19:08:35.14 dmqdgjzk.net
荒らしはスルーで

98:デフォルトの名無しさん
20/06/04 19:12:40 4cMxmUl+.net
かまってちゃんもスルーで

99:デフォルトの名無しさん
20/06/04 19:40:14 AYX3XxxN.net
>>85
わかる。車輪再開発ばかりだわ

100:デフォルトの名無しさん
20/06/04 20:06:13.33 aW9GlgKj.net
Windowsは伝統的にCUI環境が貧弱で、UNIXのように既製の小さなコマンドをちょこちょこっと組み合わせてやっちゃうという風にはいかないことが多かった
しかもクライアントアプリの開発が多く、システムに入っているコマンドに頼ると環境に依存しやすいために忌避されやすい
結果として、インプロセスのコーディングに頼る文化ができたんだろうね
必然的に細かい要件がコードに入り込みやすく、OSSにできるような汎用的なものが生まれにくい

101:デフォルトの名無しさん
20/06/04 20:09:24.15 XEcYdvMd.net
なぜ最後の文の結論になったw

102:デフォルトの名無しさん
20/06/04 20:24:38.50 dmqdgjzk.net
OWINがあるから、CUIでもweb i/fは作れるから
と思ったんだけどね

103:デフォルトの名無しさん
20/06/04 21:28:55.14 YseI1m6v.net
>>94
dockerでフィクスチャ作るような奴欲しい

104:デフォルトの名無しさん
20/06/05 18:07:08 t6SsxgaE.net
WindowsではOSSが少ないのではなく、64ビットのWindows7が浸透してきたころから
OSSが減ってきているって感じじゃないかな

Win7 64はアプリでもなんでも署名が必要で、特にドライバは署名が正しく行われて
いないと嫌がらせのような開発者モードでしかシステムが動かない
署名が悪いとは思わないけど、署名を取得するには個人の開発者ではまかなうのが
大変なレベルのお金がかかるし、ドライバ作れないのであれば古い機器を有効活用
したりアイデア機器とかも作れないしでOSS作ってくれる層からみるとつまらない

Androidもユーザが自由にやれていたころはOSSが多かったけど、どんどん変な縛りが
増えてPlayに怪しげなS/Wは増えたけどOSSのプロジェクトはどんどん減っている

ちょっとしたアプリなら今でも作れるよねっていうのは分かるけど、大型のOSS
プロジェクトをやってくれる人は、意味のない縛りの多いプラットフォームではやってて
面白くないからWindowsのOSSをどんどんやめていってるんじゃないかな

105:デフォルトの名無しさん
20/06/05 18:17:13 Gc/z/0xy.net
妄想おつ

106:デフォルトの名無しさん
20/06/05 20:09:48 Lq81HhXC.net
Microsoft自体がOSS推してるのを知らないのか?

107:デフォルトの名無しさん
20/06/05 20:18:30.44 8wwt63Ui.net
開発リソース割けなくなった製品の姥捨山として考えてるイメージ

108:デフォルトの名無しさん
20/06/05 20:27:24 Gc/z/0xy.net
>>107
現実を見なさい

109:デフォルトの名無しさん
20/06/05 21:58:19.72 td6kQI8l.net
質問だけど
Windowsアプリ作るにあたり
VisualBasicを使っちゃいけなくて(好まれなくて)C#を使うべきっていうのは
どういう理由からですっけ?

110:デフォルトの名無しさん
20/06/05 22:07:18 G2EzgRxv.net
>>109
古いからって理由だと思う

111:デフォルトの名無しさん
20/06/05 22:13:26 G2EzgRxv.net
でもマイクロソフトも新規機能は付けないって言ったり
vbオワコン感あるね
今からやるのは絶対避けた方がいいな

112:デフォルトの名無しさん
20/06/05 22:35:39.50 td6kQI8l.net
そうざますかなるほど

113:デフォルトの名無しさん
20/06/06 23:27:10 Ty36+cj5.net
>>109
オブジェクト指向言語に寄せていくとC#とかJavaみたいなシンタックスになっていくって聞いたことある。VBみたいな書き方は向いてないんだって。

114:デフォルトの名無しさん
20/06/07 11:35:44.28 s05OkEKn.net
自分をオブジェクト指向だと思い込んでる手続き型言語のイメージ
クラス定義をしてるというよりも、クラス定義をする命令を書いてる感じがする
End句とか特に

115:デフォルトの名無しさん
20/06/07 11:36:39.69 s05OkEKn.net
ごめん
意味不明な事書いた
忘れて

116:デフォルトの名無しさん
20/06/07 12:01:10.67 OpsuUylK.net
>>113
なるほどVBはオブジェクト指向に対応してないと。
これですっきり理解できました。

117:デフォルトの名無しさん
20/06/07 12:07:01.26 bN0eQpRN.net
>>116
納得しちゃダメw

118:デフォルトの名無しさん
20/06/07 13:34:29 ABh2E5hx.net
誰得

119:デフォルトの名無しさん
20/06/07 13:38:21 ysGPyHPQ.net
IT掲示板群 URLリンク(x0000.net)

学術の巨大掲示板群 - アルファ・ラボ URLリンク(x0000.net)<)
UIライブラリ (C#, 2D) を作ったよ
URLリンク(x0000.net)
連続と離散を統一した!
URLリンク(x0000.net)
4Dエンジン(画像有り)
URLリンク(x0000.net)
matrixのライブラリ
URLリンク(x0000.net)
ある強力なFor関数
URLリンク(x0000.net)
SQLライブラリ
URLリンク(x0000.net)

PS malloc / free を実装してみた (C#)
URLリンク(up.x0000.net)

120:デフォルトの名無しさん
20/06/07 15:21:59 HbOCC7H8.net
ネイティブアプリを作ってるのですが、
パスワードがかけられたファイルをオープンしたりしようとしています。
コンパイルされるからパスワードはコードにリテラルで書こうと思っています。
が、
c#のコンパイル物の逆コンパイル性はかなり容易なのでしょうか?
Javaはコンパイルしても逆コンパイルで全部戻せれるそうですが。

121:デフォルトの名無しさん
20/06/07 15:26:10 RWTT3Yr/.net
>>120
C#の逆コンパイルはフリーウェアでほぼ完全にできるレベル

122:デフォルトの名無しさん
20/06/07 15:26:15 BQDkQ1pk.net
>>120
一瞬で逆コンパイルできるから、ソースにパスワード埋め込んだ状態で配布するとか論外

123:デフォルトの名無しさん
20/06/07 15:27:26 BQDkQ1pk.net
>>120
てかVisual Studio使ってるなら簡単に逆コンパイルできるの知ってるやろ?omnisharpですら最近できるようになったし、昔からilspy等はよく使われてる

124:デフォルトの名無しさん
20/06/07 15:45:43.26 YQeR/K+2.net
パスワード判定アプリだけc++で書いてc#からキックするって手もある
わかるやつにはわかっちゃうけど

125:デフォルトの名無しさん
20/06/07 15:48:05.93 a/lkIPFo.net
>>120
クライアントに配布する時点で秘匿は無理だと思え

126:デフォルトの名無しさん
20/06/07 15:50:18.31 MDOjbT3v.net
ここもVBA質問スレのレベルかね

127:デフォルトの名無しさん
20/06/07 16:56:57 odk7pmo/.net
そもそもネイティブアプリって何さ?

128:デフォルトの名無しさん
20/06/07 16:59:43 BQDkQ1pk.net
>>127
Webアプリに対してクライアント側だけで動作するアプリ、って意味合いでネイティブって言ってるんだろな

129:デフォルトの名無しさん
20/06/07 17:00:17 DbjJE1m7.net
>>126
重複の上テンプレさえ不完全にされた失敗スレに何を期待しているの?
>>127のようにグーグル検索すら使えない人が来るのに

130:デフォルトの名無しさん
20/06/07 17:11:15 dzDK5z44.net
パスを見られたくないのなら認証されたユーザーからの要求があった場合にはサバ側でパス保護ファイルを開いてそのバイナリをネットで送るって形にするしかないな

131:デフォルトの名無しさん
20/06/07 22:07:54.57 6TqvWrlZ.net
そんな糞めんどくさいことしなくてもインストール時か初回起動時に
ユーザーにパスワード(っていうか復号コードだと思うけど)を入力してもらえばいいでしょw

132:デフォルトの名無しさん
20/06/07 23:42:30 +YSUT0gy.net
Ruby on Rails では、

暗号化キーのmaster.key は、Github へ保存しないけど、
暗号化済みのcredentials.yml.enc は保存する

それを、master.key で復号すると、YML 形式で、下のような設定が書いてある

aws:
access_key_id: 123
secret_access_key: 345

つまり、暗号化済みの文字列は、公開しておいてもOK。
キーが分からないので、復号できないから

逆に、キーは公開したり、アプリ内に含めるとダメ!

133:デフォルトの名無しさん
20/06/08 07:22:56 yGStluWB.net
例外って一度考え始めちゃうとめっちゃ難しいな
色んなサイトのコードとか見てると例外を乱用してるようにしか見えないものが多いように感じる(特にネットワーク関連)
だからといってどこを例外にすれば正しいコードになるのか全然わからん
やっぱり例外処理は全く使わないで済むようにくらいの勢いで想定される例外を自力で検出するのが一番良いんだろうか

134:デフォルトの名無しさん
20/06/08 07:36:06 SQAF69LT.net
>>133
なんか基準があるはずよ
落ちるのだけはやめてって言われてるなら
GUIの操作するメソッド全部でcatchしてメッセージでも出さんといかんじゃん
それとも「ああ、死んじゃっていいよ」って言われるかもしれんし
この場合は何もしないし
「ログにだけ出して」
ってのもあるし

そもそも各クラス例外を出す方針に一貫性がない
開こうと思ったファイルが開けないときの動作は普通は例外にしたくないけど例外が飛んでしまうときはcatchしないといけないわけで
まあ、個別に対処が必要?

135:デフォルトの名無しさん
20/06/08 07:41:47 CwjbcTvy.net
Rubyの話をする奴は、ちょっと話が違うとか理解することはできんのかな。

136:デフォルトの名無しさん
20/06/08 07:45:18 CwjbcTvy.net
>>133
例外は、Catchしたとて復帰不可能なものはアプリケーションエラーにして落とすのに使ってるかな。
そのメソッド内で完結できるならばCatchするというか。
後始末してから結局throwするケースもあるけど。

上っ面がアプリケーションからバッチ処理に変わっても同じように使える事、ぐらいを想定して例外処理書くと統一感出ると思うよ。

137:デフォルトの名無しさん
20/06/08 09:12:40 yGStluWB.net
>>134
自作だからその辺りの基準はないなあ
とはいえ世間でも基準は割とバラバラなのか
今回作ってるのはネットワーク関連のクラスなんだけど、初めて手を出す分野だからどれが個別に対処できるかは正直よくわかってないんだよね
参考にしてる資料に忠実に作ったら、ちゃんと動くんだけど例外処理だらけなのが見ててすごく気持ち悪くて、これで本当に正しいのかわからなくなったというか

>>136
使い分け方参考になります
あまり考えたくなったけどちゃんとしたものを組むなら例外の内容毎にきちんと仕分けしなきゃだめなのか・・・なんか逆にどんどん複雑になりそうで胸が熱くなるな
こう考えると寧ろサンプルはシンプルに纏まってて良いものに感じてきたわ

例外は普段最低限しか使用しないものだからイメージできなかったけど二人のお陰でなんとなく輪郭が見えてきた気がする、ありがとう

138:デフォルトの名無しさん
20/06/08 11:34:14 dXkaUtDt.net
例外は1つ残らず握りつぶせ

139:デフォルトの名無しさん
20/06/08 12:23:59 CwjbcTvy.net
>>137
例外って究極のgotoだからね。
その場でやっつけないなら慎重に受ける場所とその後の動きを検討しないといかんよ。
毎回その場でやっつけて、エラーとして呼び出し元に帰すって方針ならそれはそれでいいかも知れんけど、
誰かキャッチするだろって方針で、続行不能だからと適当に例外吐いて落とさせてると、あとで困る。特にバッチ処理。

140:デフォルトの名無しさん
20/06/08 13:24:22 MRA6597x.net
URLリンク(ufcpp.net)

141:デフォルトの名無しさん
20/06/08 14:31:54.71 T+olwkzM.net
>>135
そいつはこの板のあちこちに出没する有名な荒しだからスルー推奨。
いくら指摘しても自分に都合のいい話しか目に入らないから相手するだけ無駄で、スレを汚すことになる。

142:デフォルトの名無しさん
20/06/08 14:45:08 XmX+evHg.net
>>133
エラーハンドリングの基本的な考え方はこのシリーズ読むと良いと思う
URLリンク(docs.microsoft.com)

143:デフォルトの名無しさん
20/06/08 21:31:29.92 g8QOms8D.net
>>138
これはネタで書いたんだろうけど、例外は適切な場所で握りつぶすのが大事だよな。
「知ってる例外はcatchするけどあとはスルー」ってのが最悪。

144:デフォルトの名無しさん
20/06/09 05:12:12.64 qGXJUMNV.net
色々資料をご紹介いただきありがとうございます
つまり、例外が大好きな.NETを呪いながら潰せる例外はメソッド内で潰し、潰せなければどのような例外があったかをきちんと調べられるようにすれば良いわけかな
今回は例外が発生してもクラッシュせず、かと言ってメソッド内で処理する事はできないようにする予定なので、例外が発生する可能性があるメソッド全てに例外の種類を特定できるような戻り値を与える方向で進めていく予定でやってみます

145:デフォルトの名無しさん
20/06/09 05:30:56.43 pfkm8l8b.net
例外が出る処理はすべてcatch書いて適切な処理を書けばいいだけ。簡単。

146:デフォルトの名無しさん
20/06/09 07:53:14.85 JJE9ezaH.net
>>145
どこでどんな例外が発生するかを全部把握して漏れなくやるのはそれなりに大変だなあ

147:デフォルトの名無しさん
20/06/09 08:08:09 iKljlpbe.net
>>146
かといって、Javaの検査例外の仕組みはちょっとフットワークが重たくなるんだよな。
あれ自体は悪い仕組みじゃないどころか、発想としては初期の割に進んでたんだけど。

148:デフォルトの名無しさん
20/06/09 08:50:30.25 1J1p6pRh.net
全ての例外をcatchすればいいんじゃね?

149:デフォルトの名無しさん
20/06/09 09:04:01.05 khWV6688.net
後にも先にもJavaしか採用していない悪い仕組みだよ
呼び出し階層の途中をすっ飛ばして高層階と低層階の間で例外の関心が繋がるという、
高階関数やフレームワーク等において普通に存在する極めて重要な例外のユースケースを検査例外は無視している

150:デフォルトの名無しさん
20/06/09 09:29:05.21 iKljlpbe.net
うーん、むしろ、例外が漏れるケース、throwsを書かざるを得ないケースってのを減らすべきだと俺は思ってたけどなぁ。
低層階で発生したものを高層階でハンドリングする事が正しいとはあんまり思わんな。
IOのExceptionみたいな、高層階側ではどうしようもない事を上げられても困ると思う。

151:デフォルトの名無しさん
20/06/09 09:44:56.94 xkuk2TPr.net
検査例外ほんと楽

152:デフォルトの名無しさん
20/06/09 10:19:25.97 LXNCuYlO.net
けんされいがいって何だろうと思って調べたんだが、素人目には良い仕組みに見えてしまった
ただ例外を前提にするなら、もはや例「内」のような気が

153:デフォルトの名無しさん
20/06/09 10:21:47.06 0Ox9n+fW.net
Anders Hejlsbirgの検査例外に対する批判
URLリンク(www.artima.com)
検査例外は失敗、とっくの昔に結論出てる

154:デフォルトの名無しさん
20/06/09 11:04:45.35 V/up5vUs.net
高層側でどうしようもない例外が上がってきてるならそれは下層側が間違ってるだけでは

155:デフォルトの名無しさん
20/06/09 11:27:54 /rzxY16Z.net
>>149
>後にも先にもJavaしか採用していない悪い仕組みだよ
Swiftで採用されてるよ
シグニチャによって呼び出し側にエラーハンドリングを強制する方法自体は悪い仕組みではない
例外ではないがRustも考え方としては同じだし>>142の赤間さんの考え方もベースは同じ

156:デフォルトの名無しさん
20/06/09 11:29:03 iKljlpbe.net
チェック例外の発想は悪くないしいい機能だと思うけど、Javaのやりかただとバージョニング諸々で破滅的な事になりがちだから、静的解析なりなんなりのツールで確認すべきかなーっていう主張に読めたんだけど?

157:デフォルトの名無しさん
20/06/09 12:02:30.29 GiCu1zyF.net
何の例外がくるのか意識してかけ派なのか
何の例外も気にするな派なのか
そのどちらであっても書き手の例外テロに強制的に付き合わなければならない
そのごった煮であることを受け入れた上でプロジェクトのスタンスを決めなければならない

158:デフォルトの名無しさん
20/06/09 12:06:21.98 0Ox9n+fW.net
>>155
Swiftの例外宣言は「例外を投げる」という指定ができるだけで、型の指定はないよ
>>153の話で言えば、あらゆるメソッドにthrows Exceptionが付けられて破綻した状態を正しいものとして受け容れてるわけ

159:デフォルトの名無しさん
20/06/09 12:32:13 +J3ztXKO.net
>>150
呼び出し階層が関心事の包含関係を反映しないケースは普通にある
ラムダなんかいい例で、君は x.Select(y => y.Hoge) でSelectがHogeの投げる例外を知っていなければならないと言ってるんだよ

160:デフォルトの名無しさん
20/06/09 12:43:43 XPvdX8TV.net
>>144
例外をエラーコードに変換して何の意味があるのw
例外の発生個所でそれを適切に処理できないなら何もしなくていいでしょw
後々のメンテナンスを考えて、あえてcatchして再スローするコードを書いておくのはありだとは思うけど。

161:デフォルトの名無しさん
20/06/09 12:50:07.05 LXNCuYlO.net
>>149
関心が繋がるって意味が分からないんだが、要するに因果関係があるってこと?

162:デフォルトの名無しさん
20/06/09 13:18:10.16 iKljlpbe.net
>>159
俺の主張は違うよ。
Hogeは例外を投げてはいけないと言ってるつもり。

163:デフォルトの名無しさん
20/06/09 17:30:22 aSDBpvhy.net
>>162
例外を投げることを主張するばかりか、それを上位で処理することを強要する仕組みに賛同してなかったか?

164:デフォルトの名無しさん
20/06/09 17:38:45.69 SzX0azwe.net
>>163
してないよ。
上位で拾うならアプリケーションを落とすぐらいしかやりようがないって言ってるんだけど。
throwsを書かざるを得ないケースの逆の、書かないケースってどう言う事かわかる?
そのメソッドでは例外が発生しないって事になってるって事だよ。

165:デフォルトの名無しさん
20/06/09 17:59:59.91 8zzTjSiL.net
ホント役に立たない議論好きだな
ここから出ないでずっとやっててくれ

166:デフォルトの名無しさん
20/06/09 18:18:44.12 hAic2KbQ.net
> IOのExceptionみたいな、高層階側ではどうしようもない事を上げられても困ると思う。
どんなに対処してもFileNotFoundExcpetionって防ぎよう無いけど例外受けてUIでエラー表示とかもしないってこと?
低層でexceptionを捕まえて実装者定義の情報に変えてそれでエラーハンドリングしろってこと?

167:デフォルトの名無しさん
20/06/09 19:00:49.38 ZQ97UuIm.net
会社の共有フォルダに配置されており、パソコン起動時に実行されて、特定の時刻になったらトースト出すプログラムを作りたいのですが、どのようなプロジェクトが向いていると思われますか?
WPFのプログラムを起動して5分おきに時刻をチェックし時間になったらトースト通知という仕組を考えたのですが、タスクバーに常駐してるのもなぁと思いまして
スマートな方法がありましたらご教示下さい

168:デフォルトの名無しさん
20/06/09 19:03:38.70 GiCu1zyF.net
誰がトリガーなのかイマイチわからなかった

169:デフォルトの名無しさん
20/06/09 19:11:59.72 TTuCfF7e.net
>>167
タスクスケジューラとpowershell

170:デフォルトの名無しさん
20/06/09 19:13:58.26 ZQ97UuIm.net
>>169
100台近くあるクライアントにタスクスケジューラは辛いです

171:デフォルトの名無しさん
20/06/09 19:16:14.88 GiCu1zyF.net
>>169
ワラタ
全部そいつでいーじゃん

172:167
20/06/09 19:26:51.59 ZQ97UuIm.net
クライアントパソコンは起動時に実行ファイルを実行出来る配布済みのものです
実行時に実行ファイルを常駐させる他ないかなと思いつつも適材適所のプロジェクトがあればお伺いしたいなと思っております

173:デフォルトの名無しさん
20/06/09 19:30:24.74 5mqVZkdG.net
>>160
.NETがcatchを強要するようなオブジェクトなんかを用意するから悩んでる
結局その場で何もできないなら多くのサンプルコードのように、catchした例外内容をコンソール上に表示する(または再スローする)だけの形が正解でいいのかな?
呼び出し元にも例外処理させるのはあまりやりたくないけどこういうのは仕方ないのか

174:デフォルトの名無しさん
20/06/09 19:43:10.68 XPvdX8TV.net
>>172
別にWindowsのスタートアップに登録して常に起動させておく方法でも問題ないと思うけど、
どうしても嫌なら既に指摘されてる通りWindowsのタスクスケジューラーのタスクに登録すりゃいいでしょ。
ユーザーにそれを手動でやらせろ、と言ってるわけじゃなく、
あなたが作るプログラムがそれをやればいいってことね。

175:デフォルトの名無しさん
20/06/09 19:43:33.99 5mqVZkdG.net
.Net介してタスクスケジューラにアクセスできるみたいだし無理ではないんじゃね知らんけど

176:デフォルトの名無しさん
20/06/09 19:47:14.39 DD0S+2l+.net
むしろ呼び出し元にも例外処理させるために例外があるんだろ
ファイル書き込みをオブジェクトに任せて書き込もうとしたら書き込めなかった
その後の処理を呼び出し側に書かんでどうすんの?

177:デフォルトの名無しさん
20/06/09 19:57:00.94 1J1p6pRh.net
例外をcatchしたらログに吐き出して上位にthrowすればいいじゃん

178:デフォルトの名無しさん
20/06/09 20:20:05.71 5mqVZkdG.net
Oh...深く考える必要はなかったってことね
まあ例外に関しては立ち止まって考える機会を得れて十分に学習できたからこれはこれで良かったわ

179:デフォルトの名無しさん
20/06/09 20:47:35.88 JJE9ezaH.net
>>149
>呼び出し階層の途中をすっ飛ばして高層階と低層階の間で例外の関心が繋がるという、
それは例外機構そのものの問題だと思うがな。
検査例外はそれを静的にチェックするからすぐ目に付くけど、それ以外の言語は
その関係が動的暗黙的で表に見えないだけ。ある意味よけい悪い。

180:デフォルトの名無しさん
20/06/09 21:17:50.01 /rzxY16Z.net
>>173
何もしないならその場でcatchしちゃだめだって
ログ出力のような共通処理は集約例外ハンドラに任せる

181:デフォルトの名無しさん
20/06/09 21:23:32.42 /rzxY16Z.net
まず、大原則を覚えてください。
よほどのことがない限り、アプリケーションで try-catch を書いてはいけません。
もう一度繰り返します。
よほどのことがない限り、アプリケーションで try-catch を書いてはいけません。
もう一度(ry、すみませんしつこいですね^^。でもこれ、めちゃめちゃ重要なのです。
URLリンク(docs.microsoft.com)

賛同するかどうかは別だけど
これがMS推奨の定跡

182:デフォルトの名無しさん
20/06/09 21:33:11.86 /5vAUGTr.net
かこいー

183:デフォルトの名無しさん
20/06/09 21:34:51.57 GiCu1zyF.net
>>181
嘘だよ
まず、アプリケーションをストップさせたくないときはcatchしないと駄目だよ
そもそもファイルがない程度で例外出しやがるお前(Microsoft)みたいなのがいるから足並みが揃わないんだろうが
そもそもみんな例外の扱いに困ってんのはお前(Microsoft)のせいだお前(Microsoft)の
それと例外自体が造り手の思想依存であって
飛んできた例外に例外であることの正当性の保証はない
みんながみんな好き勝手飛ばすし
正当な処理結果なのに例外としてcatchさせるような作り方もできる
こんな状況なので方針というのは作れなくて1つ1つのメソッドでどういう動作にするか考えなくてはならない

184:デフォルトの名無しさん
20/06/09 21:45:54.45 5mqVZkdG.net
>>180
キャッチしないとその場でクラッシュするから・・・
例えば、通信先の接続に失敗しただけで例外になるからこれでクラッシュするのは避けたいって時とか
そうすると色々教えてもらった結論としてはcatchしてから何もせず再スローするしかないと思ったんだよね
でもやっぱり気持ち良いものではないから代替案があればそっちにしたいけどいかんせん俺の知識が足りない

185:デフォルトの名無しさん
20/06/09 21:54:22.43 /rzxY16Z.net
>>183, 184
なんなんだよもう
脊髄反射でレスする前に一通り読めよ
リンク見つけられないのかもしれないからシリーズのURL貼っとくわ
URLリンク(docs.microsoft.com)
URLリンク(docs.microsoft.com)
URLリンク(docs.microsoft.com)
URLリンク(docs.microsoft.com)
URLリンク(docs.microsoft.com)
URLリンク(docs.microsoft.com)
>>153がリンク貼ってるAnders Hejlsbergも同じ考え方やで

186:デフォルトの名無しさん
20/06/09 22:22:59.33 5mqVZkdG.net
>>185
すまん、集約例外ハンドラが全然理解できてなかったから頓珍漢なこと言った
ちょっとちゃんと読ませてもらうわ

187:デフォルトの名無しさん
20/06/09 22:33:12.16 DuX3svuW.net
>>183
FileNotFoundExceptionが出て欲しくないなら
きちんと事前にファイルの存在を確認すれば良いだけだろ

188:デフォルトの名無しさん
20/06/09 23:22:54 hAic2KbQ.net
ファイルの存在確認してからファイルオープンの間までにファイルが消えることがあるんですが…

189:デフォルトの名無しさん
20/06/09 23:30:26.73 SzX0azwe.net
ライブラリ内、関数内でcatchして、ファイルが無かった旨の結果を返すか、
(必然的に、成功、失敗のいずれかと付随する結果を持つ結果オブジェクトを返すことになる)
もしくは誰もキャッチせずアプリケーションエラーにしてアプリごと落としてしまうのが良いんじゃないの?
要は、ファイルが無い場合ってのは、それをもってなにか処理したい場合、正常系の1パターンであって、無理に救う異常系ではないと思う。

190:デフォルトの名無しさん
20/06/09 23:46:24.77 JzXG4Km2.net
結局どの階層でもファイルが見つからない状況に興味がなければ
そのアプリは落ちるしかあるめえなあ

191:デフォルトの名無しさん
20/06/10 01:16:04 uuofLs7B.net
>>189
落とした方がいいかどうかなんて
そんなのお前が決める問題じゃないじゃん

192:デフォルトの名無しさん
20/06/10 01:30:48 uuofLs7B.net
作るメソッドが例外を飛ばしまくるくせに
ドキュメントを書かないなんて奴は最悪で完全に制御するためには
メソッドの中のソース読んで例外が今回の仕様にマッチするかどうかまで調べないといけない現実
ファイルがなかったから飛んだ例外なのかファイルを開いて編集できなかったから飛んだ例外なのか
造り手はそれに気を使う義理はないが

193:デフォルトの名無しさん
20/06/10 04:06:10.84 YByuqf7A.net
全部catchしてそのままthrowが基本。

194:デフォルトの名無しさん
20/06/10 08:41:52.94 5C8ycaaS.net
そのまま投げるならキャッチする必要ないけど?

195:デフォルトの名無しさん
20/06/10 09:04:43.18 K14nATts.net
>>194
catchしないとそこで止まる

196:デフォルトの名無しさん
20/06/10 12:25:52.43 5C8ycaaS.net
キャッチされなかった例外はそのまま上位へ伝播したとおもったが

197:デフォルトの名無しさん
20/06/10 12:43:33.19 Zx+vJVNc.net
>>196
それであっているしそうしないとthrowの意味が半減する
catchして何か処理したうえで再スローするのならともかくそのままthrowって言っている>>193とそこで止まるって言っている>>195は例外処理の基本すらわかっていない

198:デフォルトの名無しさん
20/06/10 12:44:04.48 QxZHo/84.net
いっぱいとらいきゃっち書いてそう

199:デフォルトの名無しさん
20/06/10 12:46:06.23 ZZdZ0hPp.net
多分Java屋崩れ

200:デフォルトの名無しさん
20/06/10 13:03:07.18 5C8ycaaS.net
>>199
検査例外の対応がそうするのが主流ってことか?

201:デフォルトの名無しさん
20/06/10 13:08:48.62 YjHyIyr2.net
catchしてそのまま何もせず再スローはメンテを意識して書く場合はあっていいよw
// ここで○○が××の場合HogeExceptionが発生
とかコメントで書くよりよっぽどいい。
記憶力抜群の人はどうだか知らないけど、だいたい忘れちゃうんだよ。
どこでどんな例外が起こる可能性があるかなんて

202:デフォルトの名無しさん
20/06/10 13:38:18.89 VsaDrFv7.net
何もしないで再throwにしても
イベントログに描き込んだり
ログファイルに出力したり
黙ってても出来ることはある

203:デフォルトの名無しさん
20/06/10 14:23:24.58 y/XlP2+v.net
>>201
再スローする時にthrow exp;とかやってるあほなJava屋上がりを見たことがある

204:デフォルトの名無しさん
20/06/10 14:26:03.03 PhLjERI1.net
try{
....
}
catch{
throw;
}

205:デフォルトの名無しさん
20/06/10 15:06:38.37 5C8ycaaS.net
>>202
ログ出力してるのになにもしてないとか言うと話がかわるんだが

206:デフォルトの名無しさん
20/06/10 15:08:51.68 5C8ycaaS.net
>>201
たしか標準のドキュメントコメントに例外あったはずだか、それより良いと?

207:デフォルトの名無しさん
20/06/10 15:10:25.22 ZZdZ0hPp.net
設定ファイルを触っておいて
何もしてないのに起動しなくなりました
って言う奴と同じだなぁ

208:デフォルトの名無しさん
20/06/10 15:16:17.31 uuofLs7B.net
iniファイルがよく壊れるソフトの開発者に限ってユーザのせいにするんだぜ

209:デフォルトの名無しさん
20/06/10 15:17:25.83 yPI+9HIl.net
例外処理のものっそい便利なライブラリとかないん?

210:デフォルトの名無しさん
20/06/10 20:56:55.10 FCXoWDTQ.net
- エラーは戻り値じゃなく例外を投げるべき
- 検査例外は糞
- 想定しない例外が発生したら潔くプロセスを落とすべき
声が大きい例外君はこんなのが多いよな

211:デフォルトの名無しさん
20/06/10 22:02:29 uuofLs7B.net
>>210
ファイルが無い程度でふっ飛ばされんのかよ

だから夢みんなよ
例外なんて書くやつの匙加減一つでとんでもない仕様になりうるっていい加減理解しろ
誰でも好きに書けるんだからそらそうなるだろ

212:デフォルトの名無しさん
20/06/10 23:17:52 khHcCKsN.net
業務要件次第って思うんだが。。
要件詰めてないからブレるだけで

213:デフォルトの名無しさん
20/06/11 02:07:01.03 IsdTc1b2.net
例外ガーって吠えてる人が何を勘違いしてるのか少し分かった気がする。
彼は結果に過ぎないものを原因だと錯覚してるんだな多分w
問題領域が複雑だから(原因)煩雑な例外処理が要求される(結果)のに、
彼は例外処理が問題を複雑にしているという逆立ちした認識に陥っている。
もっと根本的にそもそも安全側に倒す意義が分かってないような気もするけどw

214:デフォルトの名無しさん
20/06/11 03:19:29.26 RDVRKDbg.net
x 例外ガーって吠えてる・・・
o 例外が、って吠えてる・・・
正しい日本語を使いたまえ。

215:デフォルトの名無しさん
20/06/11 03:32:04.56 lk03undl.net
頭悪そう

216:デフォルトの名無しさん
20/06/11 06:28:00.20 m7gaY4Qp.net
過学習くん

217:デフォルトの名無しさん
20/06/11 07:23:56.49 kcRACwfn.net
トーストとかポップアップヒントとかネットに転がってるサンプルプログラムを動かしても無反応です
ひょっとしてOS側で機能制限されてるのでしょうか?
一年前は普通に出てた気がするので
なお、コードはここ様とか参考にしました
URLリンク(www.ipentec.com)

218:デフォルトの名無しさん
20/06/11 08:12:57 jgipLoEz.net
これはひどい、>>214

219:デフォルトの名無しさん
20/06/11 08:41:31 ZV+1UqXa.net
>>217
イベント設定した?
public FormMain()
{
InitializeComponent();
button1.Click +=button1_Click;
}
それでも出ないのなら自分でなにかOS設定でやらかしている

220:デフォルトの名無しさん
20/06/11 10:51:47.05 lkbUBWj2.net
URLリンク(pineplanter.moo.jp)
URLリンク(dobon.net)

221:デフォルトの名無しさん
20/06/11 11:30:26.55 hXL34I3w.net
>>217
NotifyIcon にアイコン設定した?

222:デフォルトの名無しさん
20/06/11 13:55:52.32 0fl6GOfP.net
StreamReader から文字列サーチして先頭の Position 得るライブラリとかありますか?
改行ないので ReadLine() は効かず ReadToEnd() はメモリが足らん状況です

223:デフォルトの名無しさん
20/06/11 14:26:32.33 JpYLw7MR.net
改行無いならバイナリでバイト数指定して読め

224:デフォルトの名無しさん
20/06/11 18:23:47.52 YkN74GSh.net
そういうのを作ること自体が面白いと思えないとつらいねw

225:蟻人間 ◆T6xkBnTXz7B0
20/06/11 18:30:31 9OB4DptL.net
>>222
バイト位置を更新しながら、バイト列を繰り返し読む。
読み込んだバイト列の中からターゲットのバイト列の最初のバイトを探す。
最初のバイトにマッチしたらそこの位置からターゲットのバイト列の長さだけ読み込んで、
バイト列がターゲット文字列に一致するかを確認する。
一致すればそこの位置を返す。

226:デフォルトの名無しさん
20/06/11 18:31:15 EKtCO5aX.net
そういうのは自動テストやってるなら楽しいが手動でテストしなきゃいけないなら作りたくない

227:デフォルトの名無しさん
20/06/11 18:34:01 YkN74GSh.net
>>225
初心者相手だとそれだね
手ぬるいと感じてしまう自分はおかしいんだ

228:デフォルトの名無しさん
20/06/11 18:44:13 YkN74GSh.net
>>226
プログラムというのはそういうものじゃないかな
アルゴリズムを自分で考えるのが面白いと思えないならつまらないコーディング生活になる

自分の頭で考えるのが嫌だったり忍耐力が皆無ならまあ正直向いていない!

どーしても自分の頭でアルゴリズムを考えたくないならググるしかない

229:デフォルトの名無しさん
20/06/11 19:28:20.95 kcRACwfn.net
>>221
アイコンをブランクにしておりました
設定したら動作しました
ご指摘ありがとうございます

230:デフォルトの名無しさん
20/06/11 20:08:26.73 g/lvOsiL.net
アイコン表示されてないなら無反応は仕方ないなw

231:デフォルトの名無しさん
20/06/11 21:17:42.03 4cF8OH1R.net
>>213
例外は「安全側に倒す」とは真逆だと思うんだがなぁ。
緊急停止ボタンみたいなもんだけどそれは機器にとって安全な停止方法じゃないように。

232:デフォルトの名無しさん
20/06/12 00:23:47.90 UGclBUpq.net
アルゴリズムなんか正直ネットでいくらでも手軽に使えるのが落ちてるからなあ
俺にとってプログラミングなんて手段でしかないから結局作りたいものを好きなように作ってる時が一番楽しいわ

233:デフォルトの名無しさん
20/06/12 00:30:09.23 379Cwn2v.net
N=13ぐらいのおねえさん問題をC#で解いてくれ
URLリンク(youtu.be)

234:デフォルトの名無しさん
20/06/12 04:11:30 S6o7Ge4R.net
バイト列で文字列検索するとコードページによっては死ぬ

235:デフォルトの名無しさん
20/06/12 05:29:27 RIe6byUM.net
>>233
量子コンピュータならなんとかなるはず!

236:デフォルトの名無しさん
20/06/12 07:11:08.22 379Cwn2v.net
>>235
最後まで見た?w
クヌースの教本の4Aに出て来る
ZDD,BDDアルゴリズムを使うと実用時間内
に解ける。
開発したのは北海道大学でソースも公開されているよ~

237:デフォルトの名無しさん
20/06/12 11:31:33.61 F8A7CVPb.net
>>233
正しい数え方
URLリンク(www.youtube.com)
URLリンク(www.edu.kobe-u.ac.jp)

238:デフォルトの名無しさん
20/06/12 11:41:43.17 F8A7CVPb.net
>>236
URLリンク(www.nii.ac.jp)
URLリンク(art.ist.hokudai.ac.jp)

239:デフォルトの名無しさん
20/06/12 11:43:29.53 379Cwn2v.net
嫌、知ってるよ。著作も持ってるしw

240:デフォルトの名無しさん
20/06/12 11:45:40.79 o7InCAO2.net
なんでお前が返事してんの

241:デフォルトの名無しさん
20/06/12 11:51:36.64 379Cwn2v.net
なんでだろぅ。
レスアンカーがついてるからだな

242:デフォルトの名無しさん
20/06/12 12:26:50 kFexpNJ3.net
お姉さん問題って、北大の湊教授だろ

確か、Ruby 用のモジュールもある

243:デフォルトの名無しさん
20/06/12 14:11:20.32 p6HEXq8F.net
C#で年月日を取得してその日が満月かどうか(満月でなければ月齢)調べるライブラリを教えてください

244:デフォルトの名無しさん
20/06/12 14:22:55 p6HEXq8F.net
解決しました
URLリンク(stackoverflow.com)
URLリンク(www.nuget.org)

245:デフォルトの名無しさん
20/06/12 20:04:37.29 OUEkVPNx.net
こういう病気なんだろうな

246:デフォルトの名無しさん
20/06/12 21:56:01.79 iTIscQNV.net
phoon

247:デフォルトの名無しさん
20/06/12 22:54:55.57 fcA97dwX.net
Programクラスの中にあるスタティックメンバって、他のオブジェクトからProgram.Propみたいにアクセスできないの?

248:デフォルトの名無しさん
20/06/12 23:14:36 QA4LrPy/.net
>>247
むしろ何でできないと思った?

249:デフォルトの名無しさん
20/06/12 23:15:08 dTuswZtd.net
>>247
できるでしょ
Programクラスってのが何を指してるかよく分からんが
URLリンク(dotnetfiddle.net)

250:デフォルトの名無しさん
20/06/12 23:30:07.82 fcA97dwX.net
ごめん、本当にできた
ネームスペースが違ってただけだった、ほんとすまんかった

251:デフォルトの名無しさん
20/06/13 14:20:22 Np7u0gvH.net
最近プロジェクト変わってC#触り始めたんだけどみんななんでMSDNの説明理解できるの
マジでたまに8割くらい何言ってるかわからん

252:デフォルトの名無しさん
20/06/13 14:26:40 NFdTbe4l.net
俺も英語は読めないわ。
機械翻訳は意味わからんし。

253:デフォルトの名無しさん
20/06/13 14:28:09.56 rZLMUl8a.net
MSDNの日本語版は日本語の様に見えるが日本語じゃないな
英語版の方が意味が判る

254:デフォルトの名無しさん
20/06/13 14:28:51.96 gm1IvgiV.net
MSの技術をMS公式資料だけで理解できる人なんていない。
日本語訳は糞だし、そもそもオリジナルの英文からして糞らしい。
MSDNに限って言えば載ってるサンプルコードが参考になるくらい。

255:デフォルトの名無しさん
20/06/13 14:50:48.36 Np7u0gvH.net
英語の方がわかりやすいっていうのすごいわかるわ
Javaから来た人間にはとても厳しい
みんな動作の検証繰り返してなんとなく仕様理解してる感じなの?

256:デフォルトの名無しさん
20/06/13 14:53:23.90 OrNCRCRQ.net
C#のリファレンスというかMSのリファレンスは
他に比べるとかなりわかりやすいほうだぞ
MSの外の世界に出るとありがたみがわかる

257:デフォルトの名無しさん
20/06/13 14:57:37.44 YToltj6/.net
JAVA屋はJava世界にお帰りなさい。
二度とこっちくんな

258:デフォルトの名無しさん
20/06/13 15:26:19.21 Np7u0gvH.net
ひでぇーそんなこと言わんといてや

259:デフォルトの名無しさん
20/06/13 15:29:31.18 YToltj6/.net
物を作る=ツールの使い方と、ライブラリーの
探し方でマウント取る奴らだからな

260:デフォルトの名無しさん
20/06/13 15:34:58.24 rZLMUl8a.net
マウントはどうでもいいが
Javaの話を敢えて出す意味は無いな

261:デフォルトの名無しさん
20/06/13 16:01:12 8SrQpLbj.net
>>251
MSDNって古いドキュメントの方じゃない?最近はdocsだと思うけど…見るとこまちがってない?

262:デフォルトの名無しさん
20/06/13 16:12:46 HIznEFyC.net
MS関連の開発は分野が広がり過ぎてMSDNの頃に比べりゃ雑なドキュメントが目につくようにはなってるけど
割とポジティブなニュアンスで「あるだけマシ」みたいなところはいまだにあるからな

263:デフォルトの名無しさん
20/06/13 16:16:28 Np7u0gvH.net
>>261
docsであってる!名前間違ってたや

264:デフォルトの名無しさん
20/06/13 16:27:35 H/5wIr6f.net
なんでもdocsだしな。最近。
まあ確かにあるだけマシだけど、本格的に何言ってるかわからんは増えてきた印象。

265:デフォルトの名無しさん
20/06/16 10:10:51 CInIEXBA.net
GoogleDriveApi利用してる方いないでしょうか?
Create, Delete, List, Getなどは問題なく出来るのですが、既にドライブ上に存在するファイルを上書きするためにUpdate(file, fileId, stream, null)を行おうとしてもうんともすんとも行きません
Listで列挙した中からファイルIdを取得しているため正確なIdを渡せてるはずなのですが、例外は出ないものの全く該当ファイルが更新されません

266:デフォルトの名無しさん
20/06/16 10:36:12.77 Ho5qWxry.net
可能性
・権限が足りない
・別のファイルが造られてる

267:デフォルトの名無しさん
20/06/16 10:52:10.96 CInIEXBA.net
>>266
ScopeはDriveService.Scope.Driveのみを乗せていますが、CreateやDeleteはちゃんと出来るので権限は足りているかと
別のファイルが作られている可能性も追いましたが実際にブラウザで確認したところそういう事もなく、操作履歴を見ても最終更新物はUpdateを行う前の物で止まっています
しかしながらApi利用状況で確認をするとUpdateリクエスト自体はちゃんと送られているようです
DeleteしてからCreateし直すというやり方でも希望は達成できますが、明らかに正攻法ではないですよね・・・

268:デフォルトの名無しさん
20/06/16 10:54:54 Ho5qWxry.net
Response(ヘッダも含めて)ちゃんと観てる?

269:デフォルトの名無しさん
20/06/16 11:09:16 CInIEXBA.net
>>268
そこはよく見てません
具体的にこのようなコードでUpdateを行っています
ほぼ同じようなコードでもCreateなら問題なく出来ております

var file = new File() { Name = item.CloudFileName, Parents = item.Parents, Id = item.FileId };
var req = Service.Files.Update(file, item.FileId, stream, null);
req.Upload();

270:デフォルトの名無しさん
20/06/16 13:19:41.64 Pxsoz+NK.net
APIの質問だからスレ違いなんだがResponse見ずにうまくいきませんなぜでしょうかってw

271:デフォルトの名無しさん
20/06/22 13:16:57.22 YINVwUSI.net
非管理者なんですがWindows10でVScodeのデバッグはできないのでしょうか?
非管理者用のインストールスクリプトでAPPdataにインストールされたまでは良かったのですがそっからどうにもならずです

272:デフォルトの名無しさん
20/06/22 14:03:47.61 hrYQrQw6.net
VScodeスレに行くかMSのコミュニティだかなんだかに聞けば

273:デフォルトの名無しさん
20/06/22 14:20:08.79 YINVwUSI.net
できました

274:デフォルトの名無しさん
20/06/22 14:20:29.84 YINVwUSI.net
じこかいです

275:デフォルトの名無しさん
20/06/22 16:12:43.82 ZSej1vKL.net
>>274
解決内容を書けボンクラ

276:デフォルトの名無しさん
20/06/22 17:16:25.14 5VJoOXgM.net
>>275
教えてほしいなら、もう少し丁寧に頼んだほうが良いんじゃないの。
>>274 様、解決方法をご教授くださいませ、みたいに。

277:デフォルトの名無しさん
20/06/22 17:20:06.28 U5dyqWhp.net
掲示板の質問で自己解決したらそれを書くのがマナーだと思っているけど、そもそもスレ違いだな
>>271 様チラシの裏に書くようにしてくださいお願いします

278:デフォルトの名無しさん
20/06/22 18:13:52.45 5VJoOXgM.net
チラシの裏に書けってよく見るけど。
便所の落書きでダメな理由がわからない。

279:デフォルトの名無しさん
20/06/22 18:35:11.06 GrUKDhRg.net
他人の目に触れるか否かという
途轍もなく大きい差があるのだが

280:デフォルトの名無しさん
20/06/22 18:39:03.08 5VJoOXgM.net
でかいウンコしたら流す前に人に見せるだろ普通。

281:デフォルトの名無しさん
20/06/22 18:41:12.88 EaiuYDfN.net
そうだね、見せるね

282:デフォルトの名無しさん
20/06/22 18:45:55.11 6gQqm8wo.net
>>276
スレチでしたすみませんの一言も言えないのかクソ
しょんべんたらしてごめんなさいだろ

283:デフォルトの名無しさん
20/06/23 01:14:34.66 jTCkQrxl.net
LINQとか拡張メソッドとかの書き方を学んだんだけど今いち使うタイミングがわからん
コードリーディングに使える良質なコードってどこかにありますか?GitHubとかでおすすめのがあれば教えてください

284:デフォルトの名無しさん
20/06/23 08:33:14.80 ZppV0ZCV.net
paint.net 難易度高め

285:デフォルトの名無しさん
20/06/23 10:35:15.89 4kHZmTBE.net
でかいウンコはそもそも流れないので隠したくても隠せない

286:デフォルトの名無しさん
20/06/23 10:37:37 4kHZmTBE.net
>>283
LINQ使わないと書けないってことはないが
描きやすいと思うときは使えば良い

287:デフォルトの名無しさん
20/06/23 10:45:17.37 Tc0CH7yK.net
流れないほどのウンコを体内に貯めておくのは体に悪い
体内に毒素がまわる

288:デフォルトの名無しさん
20/06/23 14:16:18.04 XkXn91jv.net
vs2013でwebフォームを作ってます。IIS10上で動作しています。
使用人数が5→20人程に増えたところSessionが切れるような現象がたまに発生するようになりました。
IISのセッション状態で、Cookieを使用するモードで、タイムアウトを設定していますが、その前に失われます。
IISの接続数のようなものが関係しているのでしょうか?それともASP.NETの方の設定で何かあるのでしょか?

289:デフォルトの名無しさん
20/06/23 15:30:36.95 j7/O73Nc.net
IIS って久しぶりに聴いたな
まだ使ってる人居たのか

290:デフォルトの名無しさん
20/06/23 15:31:32.54 bE26MwSl.net
↑馬鹿2匹

291:デフォルトの名無しさん
20/06/23 16:14:38 cGQfLLXt.net
マカーぽい

292:デフォルトの名無しさん
20/06/23 16:26:52.84 Tc0CH7yK.net
マカーって久しぶりに聴いたな

293:デフォルトの名無しさん
20/06/23 16:30:49.30 jyrEAGC5.net
>>288
Sessionが切れるような現象とは?
最近IIS使ってないからわからないけど
昔と同じならセッションをInProcで管理してれば
タイムアウトに関係なくApplication Poolのリサイクル時に切れる

294:デフォルトの名無しさん
20/06/23 16:55:17 XkXn91jv.net
>>293
あるセッション変数がnullになります。
他のセッション変数もnullになってる可能性はありますが、チェックしてないので分かりません。

295:デフォルトの名無しさん
20/06/23 19:54:26.31 9aUYlARG.net
デスクトップ上にテロップをカッコよく流したいのですが、jqueryみたいなライブラリってあるでしょうか?

296:デフォルトの名無しさん
20/06/23 19:55:58.36 9aUYlARG.net
テロップは自分で作ると昭和のホームページみたくなると予想されるので
できあいのカッコいいのがあればお教え下さい

297:デフォルトの名無しさん
20/06/23 20:00:32.95 AMcrD26I.net
なんでjqueryが出てくるの?
テロップってなに?
サービスでやるの?GUIアプリでやるの?
そもそもwindowsなの?
なんでc#で聞いてるの?UWPとかWPFでやりたいの?
少しは自分で考えたの?

298:デフォルトの名無しさん
20/06/23 20:06:16.65 sGv82Fvd.net
昭和にホームページってあったの?

299:デフォルトの名無しさん
20/06/23 20:10:49.69 T+fRCnFj.net
草の根ネットでおまんこ生画像DLして衝撃を受けた

300:デフォルトの名無しさん
20/06/23 21:00:30.78 GDQGx7vP.net
>>297
容赦ない連続攻撃ワロス
全部筋が通っているし
>>295
せめて具体例出して「こんなことやりたいです」って聞かないと
WinAPIで画面に直接表示するか、フォームを表示したうえで必要な部分以外を透過することになると思うけど
どっちもあまりお勧めできないしWindows以外では実現もできない
前者は表示・非表示の切替が面倒だし後者は表示している部分がスクリーンに対してアンチエイリアスが使えないので汚い見た目になりやすい

301:デフォルトの名無しさん
20/06/23 21:05:28.89 UicElvK7.net
>>297
通常攻撃が全体攻撃で二回攻撃のお母さんは好きです
>>295
テレビチューナーボードを買って来て付ければ良いと思うよ

302:デフォルトの名無しさん
20/06/23 21:18:31.03 UicElvK7.net
>>298
良い質問ですね
URLリンク(gigazine.net)
によると
>日本最初のホームページは1992年9月30日にできたらしい。
ので1992年は平成4年。
つまり昭和の日本ではホームページを見れなかった事になりますね。

303:デフォルトの名無しさん
20/06/23 22:17:04.32 t/H9E3mi.net
因みに、DOOMも初期バージョンは
NEXTやで
macosの最初のFPS「マラソン」は残念Soft

304:295
20/06/24 07:16:26 LXD6LIQ4.net
舌足らずですみません
テロップとはデスクトップ画面上にメッセージを流す仕組みです
最適な技術は経験不足で不明です
フォームアプリでも出来るかと思うのですが味気ない文字が出てくるだけなのは寂しいと
jqueryの下りは出来合いのカッコいいモジュールを見ているので、ああいうのがあると捗るなと思った次第です

305:デフォルトの名無しさん
20/06/24 07:23:13.48 ib1NZqNH.net
デスクトップマスコットみたいなんでいけるやろ

306:デフォルトの名無しさん
20/06/24 08:37:14 BIyLVKwI.net
>>304
だったらC#じゃなくてまずHTMLとCSSからやれよ
それからJavaScriptをやってp5.jsちゃうか?
URLリンク(i.imgur.com)
たぶん3Dの文字列もやろうとしてるっぽいから

307:デフォルトの名無しさん
20/06/24 11:43:09.80 ON15/aWU.net
>>304
こんなのが欲しいという具体例があると分かりやすいと思う。
一般論としてはWindows Form(というかGDI+)は静的なグラフィックについては過不足なくできるが
フレームレートやアニメーションの滑らかさが重要な分野には不向き。
半透明のウィンドウ内で文字だけ不透明で表示とかも基本的にできない。
マーキーみたいな単純なアニメーションならWPFの方が向いてるんじゃない?

308:デフォルトの名無しさん
20/06/24 13:13:23.91 6+kkBVmV.net
>>304
setLayeredWindowAttributes

309:デフォルトの名無しさん
20/06/24 18:46:02.25 H9m4GMw8.net
このAPI、Windows8以降とそれ以前で
子windowに対する動作が違うので
要注意アルね。

310:デフォルトの名無しさん
20/06/24 18:58:38.77 JMDGovWD.net
変わったのって Vista あたりじゃなかった?

311:デフォルトの名無しさん
20/06/24 19:07:18.38 z8T89c4R.net
>>309
このAPIが何か知らないが
>>310
デスクトップのWindow表示回りとかはVistaで新しくなったのが多いな
でも.NETから使えるGDI+のライブラリには関係ないし、これスレ違い

312:デフォルトの名無しさん
20/06/24 20:41:54.95 H9m4GMw8.net
当然、直前に書かれている。SetLayer~だね
「Win8から子ウィンドウ単体をレイヤードウィンドウにする事ができるようになりました」
7-8の差異だが?少しは調べてから書けや

313:デフォルトの名無しさん
20/06/25 02:26:08 5IWclQqc.net
DirectCompositionの都合に伴う単純な機能強化だから別に要注意点ってわけでもないじゃろ

テロップとやらがどういう挙動が知らんけど透過イメージで非矩形ウィンドウ作りたいだけなら
WPFのWindow.AllowsTransparencyとかを設定する手法が取り敢えず楽(やってることはSetLayeredWindowAttributes
まんま)

それでも実装としては古いものになるからパフォーマンスが気になるなら
生Win32に下りてWS_EX_NOREDIRECTIONBITMAP指定したウィンドウでゴリゴリやるしかないね

314:デフォルトの名無しさん
20/06/25 02:37:28.51 2IuBbNfV.net
テロップの例
URLリンク(imgcc.naver.jp)

315:デフォルトの名無しさん
20/06/25 02:45:58.97 2IuBbNfV.net
テロップ魔法の例
URLリンク(imgcc.naver.jp)

316:デフォルトの名無しさん
20/06/25 05:18:58.64 iFkwrz99.net
>>313
挙動を合わせるには、マニフェスト設定
もいるからし、子Winが表示されなく
なったりするから、注意しろよって
のがそんなに可笑しいか?

317:デフォルトの名無しさん
20/06/25 06:41:03 5IWclQqc.net
>>316
わざわざ子ウィンドウをレイヤー化させたりしない限りマニフェストに追記要らないし
今で通り使うなら特別な配慮はいらないからね

318:295
20/06/25 07:20:58.62 U43KJZDw.net
色々とアドバイスありがとうございます
WPFで作ると良いのですね
なお、テロップはユーザのデスクトップ画面に文字を出すシステムです
文字が表示されれば目的を達成しますが、今風のカッコいい出力があれば良いなと思っております
WindowFormはスマホのアプリとか見慣れてると古いかなと思ってしまい

319:デフォルトの名無しさん
20/06/25 08:24:17.62 u7clvRGJ.net
イマイチ目的が分からんけど、トーストじゃダメなの?

320:デフォルトの名無しさん
20/06/25 10:16:03 Q34w5rfS.net
>>319
かわいい女の子を表示したいって書いてあるだろ
どこ見てんだよ

321:デフォルトの名無しさん
20/06/25 11:00:05 BS9i3YsE.net
どこ見てんのよー?きょうりつ美容外科❤

322:デフォルトの名無しさん
20/06/25 12:11:54.94 2XRewe5U.net
>>304
Ou voyez vous?

323:デフォルトの名無しさん
20/06/25 13:23:41.28 WeDG/Ixn.net
>>318
仕様も決められない馬鹿はプログラム以前の問題

324:デフォルトの名無しさん
20/06/25 13:40:27.63 04uq3tBI.net
SEとPGの仕事を混同してる奴にまともな人間は居なかった

325:デフォルトの名無しさん
20/06/25 13:45:09.61 XTBYRGNK.net
そんな区別が存在する環境にまともな人間はいません

326:デフォルトの名無しさん
20/06/25 14:25:52.48 WeDG/Ixn.net
>>324
自分が自分用に作るプログラムの仕様がわからんような馬鹿なプログラマー

327:mini09memo ◆c8LWSEqWhiEh
20/06/25 14:29:38 Gb/hW0E1.net
プログラマーなんて所詮皆自分の知識をひけらかしたいだけの承認欲求高いやつらしかいないから。

328:デフォルトの名無しさん
20/06/25 15:43:31 2XRewe5U.net
∃と∀を区別出来ないひとはプログラミングするべきじゃないね

329:デフォルトの名無しさん
20/06/25 16:13:47 zNYtXInc.net
C#の話とはずれまくるけど、専用のスレがないからAdobe XDとの連携について教えて欲しいんだけどさ
これのXAML書き出し(特にXamarin.forms向けに)って実用になるレベルのもんなの?適切なサイズの画像リソースとかも自動で用意してくれたりもするのかな?
実用になりそうならXDの練習始めようかなと思うんだけど・・・どうなんだろう

330:デフォルトの名無しさん
20/06/25 20:43:26.74 iFkwrz99.net
>>317
その理由は後付けだの。
見苦しい。恥をしれ

331:
20/06/25 21:40:48.74 A5fKc4NZ.net
>>328
>∃と∀を区別出来ないひと
∃∀と∀∃の意味の違いを把握していない人は結構いるかもしれません…

332:デフォルトの名無しさん
20/06/26 05:50:27.27 cJZUJNnU.net
>>331
教えてください

333:デフォルトの名無しさん
20/06/27 10:41:22 CamiLVbL.net
C#のswitch文めちゃくちゃ短く書けるんだな
クソ読みやすい

334:デフォルトの名無しさん
20/06/27 11:07:55.12 CiV3+vm0.net
>>333
詳しく

335:デフォルトの名無しさん
20/06/27 11:11:20.27 nVWlQ22s.net
switch文なんてどの言語でも同じだろ
C++だとインデントつかないとかその程度の差で

336:デフォルトの名無しさん
20/06/27 11:25:38.52 k1sG5WNB.net
python始めたけどインデントでブロックになるなんて糞だと思ったわ。

337:デフォルトの名無しさん
20/06/27 11:34:22.91 qJyof1ZF.net
8.0から使えるswitch expressionのことじゃない?
URLリンク(docs.microsoft.com)

338:デフォルトの名無しさん
20/06/27 12:04:53.13 2aBVemHB.net
一番近いのはRustのmatchかな?
まあイマドキのは似たような構文結構あるで

339:デフォルトの名無しさん
20/06/27 15:24:53.61 Fil4ka9J.net
>>335
インデント?
switch文って結構仕様違うぞ
C/C++はcaseに整数に評価できる定数しか書けないけどC#7.0は文字列とかも書ける
VBAは(switchじゃないけど同等のSelect Case文の)Caseには 1 To 2の形式で範囲書いたり、1, 2, 5とかで複数の選択肢を書けたりする

340:デフォルトの名無しさん
20/06/27 15:34:06 QSLeN3Uh.net
switch が整数のみのときは
id 毎に id を key にして関数 (Action とか Func) を value にして
そのままテーブル参照で関数に飛ばすのが C/C++ と親和性が良い

341:デフォルトの名無しさん
20/06/27 16:17:48.62 I/sSKApj.net
>>340
こういうアホがコードを無駄に複雑にして見通しを悪くする

342:デフォルトの名無しさん
20/06/27 16:27:40.21 HPebGJtJ.net
>>340


343:デフォルトの名無しさん
20/06/27 18:06:53.32 /Di+UKtI.net
ではもう少しスマートな解決方法示してくれませんかね?

344:デフォルトの名無しさん
20/06/27 19:13:34.61 1qWAlezY.net
そのままC/C++でコンパイルもできないのに親和性とかよくわからんものにこだわってコード読みにくくして誰が得するの

345:デフォルトの名無しさん
20/06/27 19:29:11.89 Fil4ka9J.net
要件が不明確な状態で議論しても無意味だし

346:デフォルトの名無しさん
20/06/28 07:06:26.39 ltJ6HbID.net
意味分からんけど今後は親和性重視で行くわ

347:デフォルトの名無しさん
20/06/28 13:28:40.67 h57n4OGN.net
東京アラートはよ

348:デフォルトの名無しさん
20/06/28 16:19:28.11 xy8oD7Jo.net
デバッグが面倒になるだけの気がするけどまあやりたければやればいい
IDがただの数字で意味を持たないなら別にいいけど意味のある記号なら他のアプローチもあるだろう
ただ要素数がわからんのでどうするかは個別に考えるしかない

349:デフォルトの名無しさん
20/06/30 02:10:36.84 TjVZdiFx.net
ASPで
セッション変数って明示的に削除したほうがいいの?
いつか消えるから放置はだめ?
まともな理由がほしいんだけど調べても出てこない

350:デフォルトの名無しさん
20/06/30 02:31:40.60 3L4XfeFx.net
ASP(Active Server Pages)の既定の
言語はVBScriptだからスレチじゃないかな?
Web板のほうかな?

351:デフォルトの名無しさん
20/06/30 09:06:50.77 SDw3+RFk.net
>>349
放置でいいよ
消すコード仕込んだらコードめちゃくちゃになるでしょ
セッションの使いすぎでメモリが足りなくなるんだったらセッション状態をスケーラブルなサーバー(外部セッションストレージ)に移す
あるいはセッションを使わないようにプログラムを改修する

352:デフォルトの名無しさん
20/06/30 12:14:52 i/3g7BYw.net
皆さんPythonとどっちが好きですか?

353:デフォルトの名無しさん
20/06/30 12:17:47 GiU27GCt.net
そんなカッコ付かない言語は触れねぇ

354:デフォルトの名無しさん
20/06/30 12:20:04 i/3g7BYw.net
うまい返しだな

355:デフォルトの名無しさん
20/06/30 12:55:04.89 ENakWQya.net
>>349
サーバ側の話だよな
セッションが不要になれぱ消せば良い
ただそれが検知できないだけ

356:デフォルトの名無しさん
20/06/30 13:04:47 NrFrJ9Y0.net
>>352
Pythonよりおっぱいがいいかな

357:デフォルトの名無しさん
20/06/30 18:58:00.20 xlJwr/Le.net
そりゃPythonかおっぱいかと問われればおっぱいだろ

358:デフォルトの名無しさん
20/06/30 19:09:26.86 iEkOdn7r.net
>>352に胸があるかわからないじゃないか

359:デフォルトの名無しさん
20/06/30 19:27:30.16 5syfeZMc.net
URLリンク(i.imgur.com)

360:デフォルトの名無しさん
20/06/30 21:15:20.63 i/3g7BYw.net
>>358
最近、大きくなって来ちゃいました
唐揚げとか食べ過ぎて

361:デフォルトの名無しさん
20/07/01 00:07:20 3IOwQk8y.net
>>360
C ++ C#ってほとんどDなんかな?
手に余るような手に負えないような良いサイズ感
最先端に触れちゃいたいけどFはイキ過ぎなんで
>>359はBBQしすぎでしょ

362:デフォルトの名無しさん
20/07/01 01:35:37.58 c68en2u5.net
>>359
グロ

363:デフォルトの名無しさん
20/07/02 10:11:25.35 HaSFIuTi.net
質問なんですが、サーバーエクスプローラー-データ接続ー接続の追加で
ローカルのデーターベース新規作成したいのですが、データベースファイルのパスを
絶対パスじゃなくて、実行ファイルからの相対パスにできないのでしょうか?
データーソースはMicrosoft SQL Server データベース ファイル (SqlClient)です、よろしくおねがいします

364:デフォルトの名無しさん
20/07/02 16:39:20 P2k5coQc.net
接続の方を複数造る方が良いと思う

365:デフォルトの名無しさん
20/07/02 19:21:47.02 HaSFIuTi.net
>>364
レスさんくすです
接続を複数作るってのは、SQLiteとかでデータベース作って、SQLServerとかで接続とかでしょうか?
ごめんなさいよくわかりません

366:デフォルトの名無しさん
20/07/02 19:26:32.31 FYmRe4TQ.net
何をしたいんだ?
自分が考えた方法はいったんおいといて目的だけを言ってみて

367:デフォルトの名無しさん
20/07/02 19:41:27 bCVa7LJt.net
>>363
Application.ExecutablePathなどからパスを作らず相対パスでなければならない理由があるの?

368:デフォルトの名無しさん
20/07/02 19:45:01 yyWNrU1A.net
質問の前に真の目的があって
自分なりに考えた方法だとこうすればできる
でもそれには障害があるのでうまくいかない
んで質問するときには障害を取っ払うにはどうすればいいんですかって質問が化けちまうんだよ
だからまずは真の目的を話せ

369:デフォルトの名無しさん
20/07/02 19:53:24.61 0i6zzb7G.net
それだと本人のPCにしかないプログラムを公開するところから始めないといかんのだが

370:デフォルトの名無しさん
20/07/02 20:09:50.82 5bABENE6.net
んなこたぁない

371:デフォルトの名無しさん
20/07/02 21:10:39.21 Ad2HRd1R.net
やりたいことを書いて頭に「C#」つけてグーグル先生に聞けばだいたい解決する

372:デフォルトの名無しさん
20/07/02 21:18:45 j3S5Aqle.net
>>368
おおー、これはいいレス

373:デフォルトの名無しさん
20/07/02 21:33:57 4sq19x0Q.net
翻訳すると、
ググれカス

374:デフォルトの名無しさん
20/07/02 22:29:07.87 HaSFIuTi.net
>>366
さんくすです
SQLを勉強したい→自炊した本のフォルダ名に本の名前書いてあるから
フォルダ名をデータベースに、サーバーエクスプローラーからデータベース作ると
C:\USER\ドキュメントフォルダに.mdfファイルが作られる、これを避けたいのです
>>367
れすさんくすです
もちろん実行パスさえ取得できれば絶対パスでもOKです
ただサーバーエクスプローラーからデータベース作ろうとしたら
Application.ExecutablePath使えなくて
>>368
そのアプリでしか使わないデーターベースの保存先を
実行ファイルと同じ場所にしたいのです、レスさんくすです

375:デフォルトの名無しさん
20/07/02 22:45:15.31 cWLbwDw4.net
>>374
死ねよ

376:デフォルトの名無しさん
20/07/02 23:07:05 R7WrWDDA.net
社員数分200台のコンピュータに共有フォルダに置いた常駐するexeファイルを実行させたいのですが、半分くらいが上手く起動してくれません
調べてもそういう情報は無いのですが、exeファイルの接続数等に何か制約があるのでしょうか?

377:デフォルトの名無しさん
20/07/03 00:27:13 aiLC+msI.net
>>376
それC#の質問じゃなくない?

378:デフォルトの名無しさん
20/07/03 02:38:45.71 hVBUXcHj.net
>>374
アプリと一緒に、.mdf ファイルも配布すれば?

379:デフォルトの名無しさん
20/07/03 04:37:08 ASRnm0+K.net
>>374
開発環境と実行環境は別ものと考えるのが常識だ
サーバーエクスプローラーが絶対パスの直指定しかできなくても
アプリケーションは相対パスから計算して接続文字列を組み立てられる
実行時にexeとmdfが揃ってればいい
開発時は別にどこにあってもいい

380:デフォルトの名無しさん
20/07/03 06:59:07.42 Ul5hp/bW.net
>>376
実行ファイルはC#なのですがVBでも同じと言われれば同じでした

381:デフォルトの名無しさん
20/07/03 07:26:53.47 WuuXk3Fg.net
共有フォルダに同時アクセス制限が掛かってる可能性ない?
NASとかじゃなくてWindowsが共有元になってると
フォルダ右クリ→プロパティ→共有→詳細な共有で見られる同時に共有できるユーザー数がデフォルトは20になってるはず(ホストがWindowsServerだともっと大きいけど)
スレ違いだけどな


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch